Інтеграція Axelar: безпечні крос-чейн виклики та передача токенів

Проєктуємо та розробляємо блокчейн-рішення повного циклу: від архітектури смарт-контрактів до запуску DeFi-протоколів, NFT-маркетплейсів та криптобірж. Аудит безпеки, токеноміка, інтеграція з наявною інфраструктурою.
Показано 1 з 1Усі 1305 послуг
Інтеграція Axelar: безпечні крос-чейн виклики та передача токенів
Середній
~3-5 днів
Часті запитання

Напрямки блокчейн-розробки

Етапи блокчейн-розробки

Останні роботи

  • image_website-b2b-advance_0.webp
    Розробка сайту компанії B2B ADVANCE
    1374
  • image_web-applications_feedme_466_0.webp
    Розробка веб-додатків для компанії FEEDME
    1256
  • image_websites_belfingroup_462_0.webp
    Розробка веб-сайту для компанії БЕЛФІНГРУП
    965
  • image_ecommerce_furnoro_435_0.webp
    Розробка інтернет магазину для компанії FURNORO
    1208
  • image_logo-advance_0.webp
    Розробка логотипу компанії B2B Advance
    667
  • image_crm_enviok_479_0.webp
    Розробка веб-додатків для компанії Enviok
    954

При розробці крос-чейн рішень безпека мостів — головний ризик. Злами Cross-chain bridge та Ronin показали вразливість multisig-схем з 5-of-9 валідаторами: компрометація групи призводить до втрати коштів. Ми використовуємо Axelar — децентралізовану мережу з порогом атаки 2/3 з ~75 валідаторів за стейком. Це в 10 разів безпечніше, ніж Multichain. Наш досвід — 5+ років у Web3 та 20+ успішних інтеграцій — гарантує надійність реалізації.

Чому Axelar безпечніший за інші мости?

Axelar використовує proof-of-stake з threshold signatures (BLS). Валідатори мають частку в мережі, і для підпису транзакції потрібна кооперація >2/3 стейку. Це в 10 разів складніше зламати, ніж міст з 5-of-9 multisig. Крім того, Axelar регулярно проходить аудит безпеки провідними фірмами, такими як Trail of Bits. В документації Axelar зазначено: Gas Service автоматично оплачує газ на цільовому ланцюзі, позбавляючи користувача ручного управління.

Проблеми, які вирішуємо

Крос-чейн взаємодія стикається з трьома основними викликами:

  • Безпека: вразливі мости з малою кількістю валідаторів.
  • Газові витрати: подвійна оплата газу на обох ланцюгах, часто з переплатою.
  • Складність інтеграції: необхідність управляти ключами, релеями та статусами.

Axelar вирішує всі три: threshold signatures підвищують безпеку, Gas Service автоматизує оплату, а GMP спрощує виклики. Типова помилка — невірний розрахунок газу для цільового ланцюжка, що призводить до недоставки повідомлення. Використання AxelarGMPRecoveryAPI дозволяє уникнути цього.

Що вміє Axelar

GMP (General Message Passing) — передача довільних повідомлень між ланцюгами. Не тільки токени: можна викликати функцію смарт-контракту в іншому ланцюжку з довільними даними.

Canonical token bridging — стандартизований переказ токенів. USDC через Axelar — це Circle's native USDC (через Circle CCTP) або Axelar Wrapped USDC (axlUSDC), залежно від налаштування.

Squid — DEX агрегатор поверх Axelar, дозволяє виконувати cross-chain swaps в одну транзакцію (swap на вихідному ланцюзі + bridge + swap на цільовому).

GMP інтеграція

Контракт на вихідному ланцюзі

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

import { AxelarExecutable } from "@axelar-network/axelar-gmp-sdk-solidity/contracts/executable/AxelarExecutable.sol";
import { IAxelarGateway } from "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGateway.sol";
import { IAxelarGasService } from "@axelar-network/axelar-gmp-sdk-solidity/contracts/interfaces/IAxelarGasService.sol";

contract SourceContract {
    IAxelarGateway public gateway;
    IAxelarGasService public gasService;
    
    constructor(address _gateway, address _gasService) {
        gateway = IAxelarGateway(_gateway);
        gasService = IAxelarGasService(_gasService);
    }
    
    function sendCrossChainMessage(
        string calldata destinationChain,      // "Polygon", "avalanche", "binance"
        string calldata destinationAddress,    // адреса контракту-отримувача
        bytes calldata payload
    ) external payable {
        // Оплачуємо газ для виконання на цільовому ланцюзі
        gasService.payNativeGasForContractCall{value: msg.value}(
            address(this),
            destinationChain,
            destinationAddress,
            payload,
            msg.sender
        );
        
        // Надсилаємо повідомлення
        gateway.callContract(destinationChain, destinationAddress, payload);
    }
}

Контракт на цільовому ланцюзі

contract DestinationContract is AxelarExecutable {
    event MessageReceived(string sourceChain, string sourceAddress, bytes payload);
    
    constructor(address gateway) AxelarExecutable(gateway) {}
    
    // Викликається Axelar коли повідомлення доставлено
    function _execute(
        string calldata sourceChain,
        string calldata sourceAddress,
        bytes calldata payload
    ) internal override {
        // Декодуємо payload
        (address recipient, uint256 amount) = abi.decode(payload, (address, uint256));
        
        // Виконуємо бізнес-логіку
        _processMessage(sourceChain, sourceAddress, recipient, amount);
        
        emit MessageReceived(sourceChain, sourceAddress, payload);
    }
}

Як інтегрувати GMP за 2-4 тижні?

Процес включає наступні кроки:

  1. Проектування: вибір ланцюгів, контрактів, дизайн взаємодії.
  2. Розробка смарт-контрактів на Solidity з використанням Foundry/Hardhat.
  3. Деплой на testnet та налаштування Gas Service.
  4. Тестування крос-чейн сценаріїв на testnet.
  5. Аудит безпеки (опціонально).
  6. Деплой на mainnet та моніторинг.
Етап Тривалість Опис
Аналітика 1-2 дні Визначення ланцюгів, контрактів, маршрутів
Розробка 5-10 днів Написання контрактів, налаштування SDK
Тестування 3-5 днів Testnet, gas estimation
Деплой + аудит 2-4 дні Mainnet, аудит коду

Як розрахувати газ для крос-чейн виклику?

Ключова деталь Axelar GMP — Gas Service. Користувач оплачує газ для обох ланцюгів в одній транзакції (на вихідному ланцюзі). Axelar Gas Service конвертує нативний токен і оплачує реле на цільовому ланцюзі. Розрахунок необхідного газу через AxelarGMPRecoveryAPI:

import { AxelarQueryAPI, Environment, GasToken } from "@axelar-network/axelarjs-sdk";

const api = new AxelarQueryAPI({ environment: Environment.MAINNET });

const gasEstimate = await api.estimateGasFee(
  "Ethereum",           // source chain
  "Polygon",            // destination chain
  GasToken.ETH,
  300_000,              // gas limit на destination
  1.1                   // 10% buffer
);

// gasEstimate — сума в wei для передачі в payNativeGasForContractCall

Середня вартість газу для одного виклику становить близько $10, але економія на автоматизації може досягати $5000 на місяць для активних проектів. Зв'яжіться з нами для оцінки вашого проекту.

Token Transfer з GMP

Для transfer токена + виклик функції на цільовому ланцюзі — callContractWithToken:

function sendTokenAndCall(
    string calldata destinationChain,
    string calldata destinationAddress,
    bytes calldata payload,
    string calldata symbol,  // "USDC", "WETH"
    uint256 amount
) external payable {
    IERC20(gateway.tokenAddresses(symbol)).transferFrom(msg.sender, address(this), amount);
    IERC20(gateway.tokenAddresses(symbol)).approve(address(gateway), amount);
    
    gasService.payNativeGasForContractCallWithToken{value: msg.value}(
        address(this), destinationChain, destinationAddress, payload, symbol, amount, msg.sender
    );
    
    gateway.callContractWithToken(destinationChain, destinationAddress, payload, symbol, amount);
}

Порівняння Axelar з іншими мостами

Характеристика Axelar Multichain Ronin
Механізм валідації PoS + threshold signatures Multisig 5-of-9 Multisig 5-of-9
Кількість валідаторів ~75 9 9
Поріг атаки >2/3 стейку 5 ключей 5 ключей
Крос-чейн виклики GMP (будь-які дані) Тільки токени Тільки токени
Підтримка Cosmos Так (IBC) Ні Ні

Squid інтеграція для cross-chain swaps

import { Squid } from "@0xsquid/sdk";

const squid = new Squid({ baseUrl: "https://apiplus.squidrouter.com" });
await squid.init();

const { route } = await squid.getRoute({
  fromAddress: userAddress,
  fromChain: "1",                // Ethereum
  fromToken: "0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE", // ETH
  fromAmount: "1000000000000000000", // 1 ETH
  toChain: "137",                // Polygon
  toToken: "0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174", // USDC
  toAddress: recipientAddress,
  slippage: 1.0,                 // 1%
  enableBoost: true,
});

// Виконання свапа
const tx = await signer.sendTransaction(route.transactionRequest);

Що входить в роботу

  • Аналітична документація: схема взаємодії ланцюгів, вибір контрактів.
  • Розробка та деплой смарт-контрактів на Solidity (з використанням Foundry/Hardhat).
  • Налаштування Gas Service та розрахунок газу.
  • Інтеграція Squid для крос-чейн свапів (опціонально).
  • Тестування на testnet та mainnet.
  • Документація з інтеграції та підтримка після запуску.

Оцінимо ваш проект під ключ. Залиште заявку на консультацію — ми допоможемо реалізувати крос-чейн функціонал безпечно та вчасно.

Розробка крос-чейн мостів: архітектура, ризики, реалізація

Ми займаємося розробкою крос-чейн мостів та крос-чейн рішень під ключ. Знаємо, як уникнути катастроф. Кілька років тому міст Binance BNB Chain втратив $570M — атакуючий підробив Merkle proof у BSC's native bridge. Того ж року Wormhole втратив $320M (Wormhole bridge exploit): верифікація підписів guardians була обійдена через баг у Solana's secp256k1 program. Ronin Bridge — $625M. Це не випадковості. Мости — найбільш атакована інфраструктура в Web3, тому що вони агрегують ліквідність і мають складну міжланцюгову логіку верифікації. Замовте консультацію, щоб отримати захист від подібних вразливостей уже на етапі проєктування.

Чому мости ламаються: три архітектурних класи вразливостей

Проблема finality та reorg. Ethereum має probabilistic finality до Merge та economic finality після (2 епохи, ~12 хвилин). Bitcoin — ~6 блоків (~60 хвилин). Solana — ~400ms. Якщо міст мінтить wrapped tokens на цільовому ланцюгу одразу після 1-2 блоків на вихідному — reorg на 3+ блоків дозволяє атакуючому отримати токени на цільовому ланцюгу при відкаті транзакції на вихідному. Правильний захист: чекати finality confirmation, специфічний для кожного ланцюга. Для Ethereum — 64+ блоків (2 епохи). Не один блок.

Верифікація підписів. Більшість мостів використовують multisig committee або threshold signature: N з M валідаторів повинні підписати подію з вихідного ланцюга. Wormhole використовував 13 з 19 guardians. Атака була не на самі ключі — атакуючий знайшов вразливість у коді верифікації підписів на Solana, де застарілий sysvar account приймався як валідний без перевірки. On-chain верифікація підписів — складніше, ніж здається.

Lock-and-Mint vs Burn-and-Mint. У Lock-and-Mint моделі оригінальні токени заблоковані в контракті на вихідному ланцюгу, wrapped токени мінтяться на цільовому. Контракт на вихідному ланцюгу — honeypot: там весь locked TVL. Один баг в unlock логіці — і всі кошти доступні атакуючому без необхідності щось робити на цільовому ланцюгу. Native Burn-and-Mint (як у Circle CCTP для USDC) безпечніший: немає locked pool. Правильно спроектований міст з rate limiting може зекономити до $500k потенційних втрат при атаці.

Як обрати messaging layer під ваш проект?

LayerZero — протокол передачі довільних повідомлень між ланцюгами. Не міст сам по собі, а інфраструктура для побудови мостів та omnichain додатків.

Архітектура: Endpoint контракт на кожному ланцюгу, Executor (доставляє повідомлення на цільовий ланцюг), DVN (Decentralized Verifier Network — верифікує факт транзакції на вихідному ланцюгу).

Source chain:
  OApp.send() → Endpoint.send() → [emits packet event]

Destination chain:
  DVN verifies packet hash → Executor calls Endpoint.deliver() → OApp.lzReceive()

У v2 розробник обирає DVN: офіційні (LayerZero Labs, Google Cloud, Polyhedra), або кастомні. Можна налаштувати required DVN + optional DVN: повідомлення приймається тільки якщо всі required DVN підтвердили. Це дозволяє будувати мости з різним trade-off між безпекою та швидкістю.

OApp (Omnichain Application) — базовий контракт для інтеграції. Наслідуєш OApp, реалізуєш _lzSend та _lzReceive. Для токен-мостів — OFT (Omnichain Fungible Token) стандарт з коробки робить burn-on-source / mint-on-destination. LayerZero OFT інтегрується в 3 рази швидше, ніж кастомний міст.

Wormhole використовує мережу з 19 guardians (великі компанії типу Jump Crypto, Everstake тощо), кожен з яких підписує спостережувані події. Threshold — 13 з 19. VAA (Verified Action Approval) — підписане повідомлення, яке приймається на цільовому ланцюгу.

Головна відмінність від LayerZero: Wormhole має нативну підтримку не-EVM: Solana, Aptos, Sui, Algorand, Near. Для проектів, яким потрібен міст між Ethereum та Solana — Wormhole часто єдиний production-ready варіант.

Після експлойту Wormhole додав Native Token Transfers (NTT) — архітектура без locked pool, аналогічна CCTP. NTT + Hub-and-Spoke модель: надлишкова ліквідність не накопичується на одному ланцюгу.

Relay архітектура та light client верифікація

Relay-based мости (IBC в Cosmos ecosystem, Succinct's Telepathy) верифікують стан вихідного ланцюга через light client на цільовому ланцюгу. Для EVM→EVM: контракт на Ethereum зберігає та верифікує BLS-підписи блоків вихідного ланцюга.

ZK-bridges — наступний рівень. Succinct, Polyhedra zkBridge, Electron Labs генерують ZK-proof коректності консенсусу вихідного ланцюга. На цільовому ланцюгу верифікується proof, не підписи валідаторів. Усуває довіру до committee. Але верифікація ZK-proof дорога по газу — від 200k до 500k gas на Ethereum L1 залежно від системи доведень. ZK-bridge безпечніший за relay-based міст, але вимагає в 2-3 рази більше газу на верифікацію.

Характеристика LayerZero Wormhole IBC (Cosmos) ZK-bridge
EVM підтримка Всі EVM + Solana, Aptos Всі EVM + Solana, Aptos, Sui Cosmos chains Зростає
Модель довіри DVN (обирається) 13/19 guardians Light client ZK proof
Latency 1-5 хв 1-5 хв ~30 сек 5-30 хв
Gas на верифікацію ~100-150k ~150-200k ~200-300k 200-500k

Що потрібно врахувати до першого рядка коду?

Обов'язкові компоненти будь-якого production мосту:

Паузер. Emergency pause функція, що викликається мультисигом або автоматично при виявленні аномалії (підозрілий обсяг, нехарактерна послідовність викликів). Більшість зламаних мостів не мали або не використовували паузер вчасно.

Rate limiting. Обмеження обсягу виводу за часовий інтервал. Якщо атакуючий дренує міст — rate limit дає час на реакцію. Реалізація: transferVolume[currentEpoch] += amount; require(transferVolume[currentEpoch] <= epochLimit).

Finality checks. Специфічні для кожного ланцюга. Не "почекати 1 блок", а використовувати finality API або чекати потрібної кількості confirmations.

Relayer моніторинг. Автономний сервіс, який слідкує за станом обох сторін мосту. Якщо повідомлення відправлено але не доставлено за N хвилин — alert. Якщо locked balance розходиться з totalSupply wrapped token — critical alert.

Що входить в розробку крос-чейн мосту

Ми реалізуємо проект під ключ і передаємо повний набір результатів. Наші замовники отримують:

Етап Результат
Аналіз та вибір архітектури Технічне завдання, обґрунтування вибору messaging layer
Проектування смарт-контрактів Специфікація, діаграми потоків, опис моделі довіри
Розробка та тестування Вихідний код, unit/інтеграційні тести, симуляція cross-chain сценаріїв
Аудит безпеки Звіт зовнішніх аудиторів, виправлені вразливості
Деплой та моніторинг Контракти в mainnet, дашборд з алертами, документація для експлуатації
Підтримка після запуску 3 місяці гарантійної підтримки, допомога з експлуатацією

Строки та вартість

Простий ERC-20 міст поверх існуючого messaging layer (LayerZero OFT або Wormhole NTT) — 4-8 тижнів включаючи тестування та аудит. Кастомний міст з власною верифікацією, multi-chain підтримкою, rate limiting, моніторингом — 12-24 тижні. ZK-bridge з кастомними proof circuits — від 6 місяців.

Аудит мосту займає більше часу, ніж аудит звичайного DeFi протоколу: потрібно тестувати cross-chain сценарії, finality edge cases, атаки через reorg. Мінімум 3-4 тижні для production-grade рішення.

Вартість розраховується індивідуально після оцінки обсягу робіт. Маємо понад 5 років досвіду в індустрії, реалізували 15+ проектів у галузі блокчейн-інфраструктури. Свяжитесь с нами для детальної консультації — оцінимо ваш проект і запропонуємо оптимальну архітектуру мосту.