▫️What is a Bridge?

Bridge - WebGlide

A system that transmits information between blockchains is called a bridge (also known as a crosschain messaging protocol or an interoperability network).

Even though there are various bridges in existence today, they all have the same basic design and parts.

Messaging Layers

Transport

Without making any assumptions about the accuracy of the data, transport is the process of reading a payload of data from one domain and posting it to another.

One or more offchain actors commonly perform this by keeping an eye on a data outbox on the origin chain and posting the matching data to an inbox on a linked destination domain. Protocols will often communicate merkle roots rather than data in raw form to keep this process scalable.

Verification

Cross-chain communication is safeguarded by verification. A bridge will validate the data after a payload has crossed chains before it can be used on the destination domain.

There are several approaches to cross-domain message verification, each with its own trade-offs in terms of cost, trust, and delay. A more thorough explanation of this step may be found in Message Verification.

Execution

To "push" a confirmed payload into a target function after it has been made available on the destination, some offchain infrastructure is required.

Developers will often deal with bridge execution levels when integrating with a bridge. To execute a transaction on the destination chain against the target function the developer desires to engage with, execution layers gather gas costs (in WebGlide, this is collected as additional gas paid on the origin chain).

The creation of merkle roots on each origin domain and the subsequent generation of a merkle proof against those roots on a destination domain may also fall under the purview of execution layers.

Application Layers

Bridges may implement one or more application layers that specify how particular usecases are enabled across domains in addition to the communications levels mentioned above.

Last updated