A new approach to multi-chain message transmission
MEP offers a fundamentally different way of doing message transmission from existing interoperability protocols like Axelar and LayerZero. These latter protocols focus on the transmission of messages, writing messages from one chain to another. MEP’s approach, by contrast, is to store the user information on the MEP chain and then to issue certification: dApps can request this information and certification from MEP and verify it on another chain.
Functionally, these different approaches result in the following differences in the implementation of the protocol:
• MEP simplifies the “valid delivery” proposed by LayerZero by transmitting not the whole state of the underlying chain but only the essential message, which saves gas and storage costs [7]. To make this concrete, consider an asset transfer transaction on Ethereum. An event is generated after the transfer is completed: event Transfer(address indexed from, address indexed to, uint256 value);
• This message records how many tokens have been transferred from the “from” address to the “to” address. It contains all the relevant information, and it’s not necessary to store the before and after states of the Ethereum blockchain.
• To verify the validity of message m, LayerZero uses an oracle (Chainlink) and a relayer. If the oracle and relayer agree, then the message is verified. However, oracles are not in common usage among developers, and relayers are easily attacked given that they are centralized endpoints. Instead of relying on a third-party oracle like Chainlink, MEP collects messages itself directly from multiple nodes on an underlying blockchain.
• By storing the target message and providing a signature upon request, MEP allows users to trans fer the message at any time prior to the expiry. While LayerZero and Axelar are synchronous, MEP is asynchronous.