Skip to content

Commit

Permalink
Update erc-7533.md
Browse files Browse the repository at this point in the history
try change erc-7533 to eip-7533
  • Loading branch information
JXRow committed Dec 12, 2023
1 parent 4583c51 commit 8790b42
Showing 1 changed file with 5 additions and 5 deletions.
10 changes: 5 additions & 5 deletions ERCS/erc-7533.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ To attract cross-chain bridge projects to participate, aside from reducing the n

This EIP divides the cross-chain ecosystem into 3 layers and defines the SendPort contract and IReceivePort interface at the foundational layer. The implementation of the other layers is left to ecosystem project participants.

![](../assets/erc-7533/0.png)
![](../assets/eip-7533/0.png)

Under this EIP, an official SendPort contract is deployed on each chain as a unique entity. It is responsible for collecting cross-chain messages on that chain and packing them. SendPort operates as a public, permissionless, administrator-free, and automatic system. Cross-chain bridge operators retrieve cross-chain messages from the SendPort and transport it to the target chain to complete the cross-chain messaging process.

Expand Down Expand Up @@ -238,7 +238,7 @@ Let:

The essence of cross-chain is to inform the target chain about events happening on the source chain. This process can be divided into 3 steps. The following diagram illustrates the overall principle:

![](../assets/erc-7533/1.png)
![](../assets/eip-7533/1.png)

### 1.Add cross-chain message

Expand All @@ -250,17 +250,17 @@ The `SendPort.addMsgHash()` function can be called by different cross-chain brid

Upon the completion of packing a new MerkleTree, the package carrier (usually the cross-chain bridge project) pulls the root from multiple chains and stores it in the IReceivePort contract of each chain. It is important to note that the traditional approach involves using a push method, as depicted in the following diagram:

![](../assets/erc-7533/2.png)
![](../assets/eip-7533/2.png)

If there are 6 chains, each chain needs to push to the other 5 chains, resulting in the requirement of 30 cross-chain bridges, as shown in the diagram below:

![](../assets/erc-7533/3.png)
![](../assets/eip-7533/3.png)

When N chains require cross-chain communication with each other, the number of cross-chain bridges needed is calculated as: num = N * (N - 1).

Using the pull approach allows the batch of cross-chain messages from 5 chains into 1 transaction, significantly reducing the number of required cross-chain bridges, as illustrated in the following diagram:

![](../assets/erc-7533/4.png)
![](../assets/eip-7533/4.png)

If each chain pulls messages from the other 5 chains onto its own chain, only 6 cross-chain bridges are necessary. For N chains requiring cross-chain communication, the number of cross-chain bridges needed is: num = N.

Expand Down

0 comments on commit 8790b42

Please sign in to comment.