状态通道是最早的扩容方案之一,目前存在着两点比较明显的限制。首先,状态通道的使用范围仅限于加入通道的用户,无法向通道外的用户发送资金;其次,状态通道内的资产在逻辑层面必须要有「所有者」,Uniswap 智能合约等没有明确所有者的对象无法使用状态通道,这就导致其应用场景大大受限,只能在一些有限的支付场景使用。 相关项目:闪电网络 状态通道最知名的应用便是比特币的「闪电网络」。闪电网络是为了缓解比特币交易拥堵、实现小额快速支付的技术。近期,萨尔瓦多宣布成为首个将比特币作为法定货币的国家,该国曾与加密货币钱包 Strike 建立合作伙伴关系,Strike 就是使用闪电网络进行支付结算。 方案2:PlasmaPlasma 可以理解为一个侧链框架,加密领域以往出现过很多侧链解决方案,侧链的核心难点在于双向锚定(2WP)的安全实施。其中前向锚定(从主链转移资产至侧链)是比较简单的,通用方案是用户将资产锁定在主链上,然后在侧链生成对应的资产。难点在于后向锚定(从侧链提取资产至主链),由于侧链无法达到主链的安全性,所以存在侧链被攻击/侧链运营商监守自盗导致资金无法提取/资金被他人恶意提取的可能性。Plasma 为了解决该问题,引入了「挑战期」的设定。 具体而言,用户将资产从主链转移至 Plasma 链(基于 Plasma 方案构建的侧链)时,需要将主链资产发送至管理 Plasma 链的智能合约,该资产即可进入 Plasma 链中进行交互。每隔一段时间,Plasma 链的操作者(或称作验证者、运营商或节点,即 Plasma 链上的维护者)就会对该时间段内 Plasma 链的交易进行一次「批处理」并生成 Merkle 树,相当于生成一个区块。操作者会将 Merkle 树的 Merkle 根发布到主链上,另外还会将该 Merkle 树中涉及某项资产交易的 Merkle 分支发送给该资产当前的所有者。 当用户申请将资产从 Plasma 链提取到主链时,则需要向主链的智能合约提交该资产最近一次交易对应的 Merkle 分支,用来证明资产提取操作的合法性,智能合约会发起一个挑战期(例如 7 天)。在挑战期内,任何人都可以使用其他的 Merkle 分支来验证和质疑该项提取操作的合法性,如果挑战期内有人能证明此为欺诈交易(例如用户在提取资产时并不拥有该资产),那么用户将提取失败,否则会提取成功。 如下图所示,例如用户 A 在主链上拥有资产 X,并将其转入了智能合约,在 Plasma 链上获得对应资产 P(X)。后续用户 A 在 Plasma 链上把资产 P(X) 转给了用户 B,这笔交易被记录在区块 1 Merkle 树的交易 4 位置。Plasma 链的操作者在打包区块 1 时,会将 Merkle 根发布到主链,并将交易 4 对应的 Merkle 分支发送给资产 P(X) 当前的所有者用户 B。用户 B 此时申请提取该资产到主链,则需要向主链智能合约提交交易 4 的 Merkle 分支,智能合约发起挑战期,如果挑战期内无人证明该项操作存在欺诈,则用户 B 成功提取资产。 (责任编辑:admin) |