Інтеграція з Hyperlane

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

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

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

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

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

Інтеграція з Hyperlane

Hyperlane — permissionless протокол interoperability. Ключова відмінність від Axelar та LayerZero: кожен може розгорнути Hyperlane на будь-якому чейні без дозволу протоколу. Це робить його придатним для нових L2/L3, appchains та кастомних середовищ.

Архітектура

Hyperlane складається з:

  • Mailbox — смарт-контракт на кожному чейні, через який відправляються та отримуються повідомлення
  • Interchain Security Module (ISM) — кастомізована верифікація повідомлень
  • Relayers — off-chain агенти, які передають повідомлення між чейнами
  • Validators — підписують checkpoint'и стану Mailbox

ISM — кастомна безпека

Унікальність Hyperlane: кожен контракт-одержувач визначає свій ISM. Ви самі вирішуєте як верифікувати вхідні повідомлення.

Варіанти ISM:

  • Multisig ISM — M-of-N підписи від валідаторів
  • Aggregation ISM — комбінація кількох ISM
  • Routing ISM — різні ISM для різних чейнів
  • Optimistic ISM — оптимістична верифікація
  • ZK ISM — верифікація через zero-knowledge proofs

Відправка повідомлень

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

import {IMailbox} from "@hyperlane-xyz/core/contracts/interfaces/IMailbox.sol";

contract HyperlaneMessageSender {
    IMailbox public mailbox;
    
    constructor(address _mailbox) {
        mailbox = IMailbox(_mailbox);
    }
    
    function sendMessage(
        uint32 destinationDomain,
        bytes32 recipientAddress,
        bytes calldata messageBody
    ) external payable {
        uint256 fee = mailbox.quoteDispatch(destinationDomain, recipientAddress, messageBody);
        require(msg.value >= fee, "Insufficient gas payment");
        
        bytes32 messageId = mailbox.dispatch{value: fee}(
            destinationDomain,
            recipientAddress,
            messageBody
        );
        
        emit MessageSent(messageId, destinationDomain);
    }
}

Отримання повідомлень

import {IMessageRecipient} from "@hyperlane-xyz/core/contracts/interfaces/IMessageRecipient.sol";

contract HyperlaneMessageReceiver is IMessageRecipient {
    mapping(uint32 => bytes32) public enrolledSenders;
    
    function handle(
        uint32 origin,
        bytes32 sender,
        bytes calldata message
    ) external payable override {
        require(msg.sender == address(mailbox), "Only mailbox");
        require(enrolledSenders[origin] == sender, "Unknown sender");
        
        (address recipient, uint256 amount) = abi.decode(message, (address, uint256));
        _processMessage(origin, recipient, amount);
    }
}

Domain IDs

Chain Domain ID
Ethereum 1
Polygon 137
Arbitrum 42161
Optimism 10
Base 8453
BSC 56

Інтеграція Hyperlane — 2-3 тижні для базового GMP. Особливо цінна для кастомних L2/L3 та appchains.