[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-d4HECsCP-1666251107863)(htTPS://tva1.sinaimg.cn/large/e6c9d24ely1h4r0auxvmxg20tr04ojug.gif)]
桥是一种通信协议,用于促进区块链之间的信息传输(消息、资金或其他数据)。建造桥虽然有用,但却是一件有风险的事情。区块链历史上最代价惨重的一些黑客攻击都仅针对桥。
据估计,截至2022年,过去一年损失的资金中,69%是由于桥攻击造成的,损失达数十亿美元。
在本文中,我们关注使用零知识证明(ZKP)的桥结构的具体实现。虽然有些黑客攻击不能仅仅因使用ZKP而做到预防,但ZKP的可靠性将区块链共识协议的安全性扩展到了桥。
桥与零知识证明
近年来,我们看到零知识证明(ZKP)在应用方面取得了巨大的进展,其稳定性为提供安全和去中心化的应用程序创造了条件。因此,ZKP也被用于制定桥建设是有意义的。下面,我们回顾和比较这一领域的三个有趣的发展:
这些项目利用zk-SNARK的特性来重新定义桥应该如何设计。以上所有假设都存在一个轻客户端协议,该协议确保节点可以同步最终区块链状态的区块头。将ZKP rollup背后的思想应用于桥的两个主要挑战是:首先,与rollup相比,桥中涉及的电路大小要大几个数量级;其次,如何减少链上的存储和计算开销。
共识证明的简明验证(Succinct Labs)
Succinct Labs为以太坊2.0权益共识证明构建了一个轻客户端,在Gnosis和以太坊之间构建了信任最小化的桥,它使用zk-SNARK(非零知识)的简洁属性来高效地验证链上共识有效性证明。
该设置由以太坊中每 27 小时随机选择的 512 名验证者组成的同步委员会组成。这些验证者被要求在其运行周期内对每个区块头进行签名,如果超过2/3的验证者对每个区块头进行签名,则以太坊的状态被认为是有效状态。验证过程主要包括:
上述验证需要每27小时在链上存储512个BLS公钥,并且要对每个区块头验证签名都进行验证,这将导致512个椭圆曲线添加(在曲线BLS12-381中)和链上的配对检查,该操作的成本是高昂的。这里的核心思想是使用zk-SNARK (Groth16)来生成有效性证明(大小恒定),并且可以在Gnosis上进行有效的链上验证。
使用 zk-SNARKS的简洁性来摆脱昂贵的链下验证
以太坊轻客户端在Gnosis