分析跨链桥:第 1 季
Last updated
Last updated
今天,桥接和桥梁一直是人们关注的焦点和城市的话题。随着桥接成为“流行语”,重要的是要打破它的含义并真正理解它的含义!
今天的桥接是将代币从一个网络转移到另一个网络,从技术上讲,它代表目标链上的代币。
在资产桥接期间,我们与一个名为 token-bridge 的应用程序进行交互
例如。将 ERC20 代币从以太坊(源链)转移到 Polygon(目标链)。
在深入了解桥接的幕后魔力之前,让我们首先了解 dapps 是如何通信的。
在我们的合约示例中,我们有:
合约A包含transfer
进行代币转账的功能,即从一个账户存入另一个账户
具有该transfer_check
功能的合约 B,检查是否发送了所述数量的代币,然后使用合约 A 调用转账函数A.transfer
调用目标地址(合约 A 的地址)和一些参数组合的输入A.transfer
称为调用数据。
因此,合约调用结构有一个合约使用目标地址和调用数据调用另一个合约。
以上示例适用于在同一条链上交互的合约。对于跨链通信的合约,我们还需要回答以下问题:
如何在目的链上识别合约的目标地址?
如何以可理解且安全的方式传达通话数据?
继续我们的 Ethereum-Polygon 示例……
在跨链通信时,源链上的合约缺少目标链上目标地址的信息。为了解决跨链的地址不对称问题,源端的合约映射到目标链上对应的目标(合约)地址。
例如,以太坊上的 ERC20 合约地址会知道 Polygon 上的哪个 ERC20 合约地址代表同一个代币。
您可以将映射视为将源链合约地址映射到其在目标链上的表示的注册表。
建立映射后,我们需要传达调用数据,这将允许导致状态链中同步的操作。
现在为了管理合约调用,在源链和目标链上都设置了管理器合约,它们从验证器发出和接收数据。在 Ethereum-Polygon 的情况下,源管理器合约被称为根链管理器,目标合约被称为子链管理器。
管理器合约负责映射注册表并将调用数据编码为可以发送给验证器的标准格式。
验证器从源合约管理器获取发出的消息,对其进行验证,然后对其进一步解码,以便polygon智能合约能够理解它,然后最终提交给目标合约管理器。
一旦目标合约管理器收到消息,它就可以在目标合约地址的帮助下执行调用,该地址是通过验证器提供的映射和解码调用数据通知的。
从源管理器合约开始的整个过程被称为 StateSync,这就是建立以太坊和polygon之间的通信通道的原因。
当用户尝试桥接资产时,他们与源链上的智能合约交互,该智能合约向目标链上的智能合约发送消息以最终提供资产。这些端点与智能合约的交互构成了桥接应用程序。
所以我们所了解的整个桥接过程的整个幕后魔术只有通过渠道才能成为可能!
因此,通道是桥梁应用程序用于结算的底层基础设施,桥梁继承了它们的大部分属性。
在这篇文章中,我们已经给出了关于 StateSync 通道和桥应用 PoS 桥如何存在的提示。接下来,我们将深入研究 lock 和 mint,这是PoS Bridge等应用程序使用的流行机制。
敬请关注!
回顾,为了在由信任边界分隔的链之间传递消息,我们需要某种协调器来填补空白,在这种情况下,协调器的角色由验证器(相同的验证器参与polygon的共识),从而满足活跃假设。