Architecture

Cross-chain NFT Architecture

Pixelport leverages Analog GMP capabilities to bridge NFTs cross-chain. At the core of Analog GMP lies two functions that facilitate the transfer of NFTs across supported blockchains:

  • submitMessage(): This function is called on the IGateway interface to send a cross-chain message from the source contract to the Gateway Smart Contract (GSC) on the source chain. When called, the submitMessage() method forwards the cross-chain NFT message to the destination chain.

  • onGmpReceived(): This method is implemented within the IGmpReceiver interface to receive and process the cross-chain NFT message on the destination chain.

Check out Analog GMP docs for a detailed overview of the protocol.

The Pixelport’s bridging mechanism consists of the following steps:

Origin chain:

  • A user creates a bridge request on the Pixelport App.

  • The Pixelport App calls the submitMessage() function, which burns the NFT on the origin chain.

  • A burn event is emitted and validated by the shard assigned to that blockchain.

Messaging:

  • The Timechain executes the transaction and creates a GMP message for the destination shard to process.

Destination chain:

  • The destination shard randomly selects a Signer. The Signer sends and executes the transaction by calling the execute() function, and the GSC emits the GmpExecuted event.

  • The GSC calls the onGmpReceived() function on the destination contract to mint the NFTs on the destination blockchain.

Last updated