Skip to content

Latest commit

 

History

History
executable file
·
68 lines (34 loc) · 7.14 KB

Exploring ZK Bridges.md

File metadata and controls

executable file
·
68 lines (34 loc) · 7.14 KB

原文:<Exploring ZK Bridges>

作者:Zero Knowledge Validator

翻译:Junwei

在2022年跨链桥因为漏洞问题造成16亿美元的资产损失之后,行业内正在探索使用零知识证明系统(zk-SNARK)来解决目前跨链桥的扩展性和安全性问题。

零知识证明技术目前已经广泛应用于隐私和扩容。尽管如此,一波新的项目正在利用这种加密解决方案的特性,来解决区块链行业最值得关注的问题之一:跨链桥。

采用零知识证明进行跨链的原因之一是其无需信任的密码学本质,它解决了中心化跨链方案的弱点之一,而这类跨链方案是2022年黑客大规模攻击的重灾区。

跨链桥面临的问题

当前的跨链桥面临两个重要问题;可扩展性和安全性。由于跨链桥需要跟踪两条链的状态,因此它们需要强大的计算能力和存储能力。为了避免这种开销,许多跨链桥转向了基于委员会的方案,其中一小部分验证者(甚至有些时候是多签持有人)来签署状态转换,这非常容易受到攻击。

2022 年期间,由于跨链桥的漏洞,总计损失了超过16亿美元的资产。但是可以从两个角度解读这个数据。一方面,通过跨链桥的流量表明了市场对互操作性的需求不断增加。另一方面,如此重要的一块拼图却是区块链生态系统中最薄弱的环节之一。安全问题主要发生在三个方面,分别代码中的漏洞、架构中的盲点(例如缺少故障安全系统)和委员会/验证者接管攻击。

2022 年的大规模黑客攻击推动了 ZK Bridges 的发展。

这引导了开发者开始探索可替代的解决方案 —— 特别是那些依赖密码学的方案。使用zk-SNARKs本身属性,可以不再需要委员会模型,仍然同时扩展了网络。

零知识证明如何实现跨链桥?

要在没有共享安全性的情况下,在一个区块链(目标链)上验证另一个区块链(发起链)的状态,你可以在目标链上运行发起链的链上轻客户端。轻客户端或轻节点是连接到全节点来和区块链交互的软件。

这允许你在目标链的执行环境中验证发起链的共识,而不需要在每个链的共识之外添加额外的信任假设。然后目标链会将关于发起链的信息融入到自己的共识之中。

这是 ZK Bridge 工作原理的简单解释。

通过使用零知识证明系统,特别是 SNARK 的“简洁性”,现在可以使用链上轻客户端高效地执行此验证过程,还可以验证状态转换和链上共识来获得最大安全性,类似于运行一个全节点。

我们将在下面介绍四个零知识证明跨链桥的项目,他们的生态和开发阶段各不相同。

Succinct Labs

Succinct Labs开发了可以在 Gnosis 和以太坊2.0 之间建立最小化信任的桥接系统。该系统使用 SNARKS 来高效验证 Gnosis 链上共识证明的有效性。

以太坊2.0 网络有一个由 512 名验证者组成的委员会,每 27 小时随机选择一次,负责在此期间签署每个区块头。如果至少 2/3 的验证者签署了给定的区块头,则以太坊网络的状态被认为是有效的。验证网络状态有效性的过程包括存储和检查512 个验证者的 BLS 公钥,以及证明他们的签名,区块头和验证者的默克尔树证明。

这个过程在计算开销很大,所以轻客户端使用 SNARKs 来创建一个恒定大小的证明,可以在 Gnosis 链上有效地进行验证。证明是使用链下计算创建的,其中包括构建电路来验证验证者及其签名,然后生成 SNARK 证明。然后将证明和区块头提交给Gnosis 链上执行验证的智能合约。使用 SNARK 有助于减少存储开销,降低电路复杂度,并减少信任假设。然而,这种方法是以太坊 2.0 共识协议和EVM虚拟机所特有的,因此可能需要更通用化来推广到其他链上。

Electron Labs 的 zkIBC

Electron Labs正试图在 Cosmos SDK 生态系统和以太坊之间建立联系,而Cosmos SDK 生态系统是构建特定区块链应用程序的框架。具体来说,zkIBC 正在寻求复现 Cosmos 主权链使用的名为IBC(Inter Blockchain Communication Protocol)的无需信任的通信协议,并将其扩展用于以太坊。

然而,在以太坊上运行使用 Cosmos SDK 的轻客户端会带来一些挑战。Cosmos SDK 中使用的 Tendermint 轻客户端在 Ed25519 曲线上运行,以太坊区块链本身不支持该曲线。这使得在以太坊的 BN254 曲线上验证 Ed25519 签名变得昂贵且低效。Electron Labs 计划通过创建一个基于 zkSNARK 的系统来解决这个问题,该系统可以在链下生成签名的有效性证明,并且只需在以太坊链上验证该证明。

这种方案允许在以太坊区块链上的 Cosmos SDK 高效且低成本地验证 Ed25519 签名,而无需引入任何新的信任假设。这种方案的一个问题是延迟,因为证明生成过程需要跟上 Cosmos SDK 的区块生产速度。Electron Labs 计划通过使用多台机器并行生成证明并将它们组合成一个zkSNARK证明来解决这个问题。

BerkleyRDI 的 zkBridge

zkBridge是一个框架,使得可以构建在不同区块链网络之间通信的应用程序。它使用中继节点和智能合约系统来促进通信。zkBridge与其他方案的主要区别在于,它只需要在中继网络中存在一个诚实节点,并假设 zkSNARK 是可靠的。

zkBridge 使用 deVirgo,它是 Virgo zkSNARK 证明系统的并行化版本,它的证明很小,且不需要可信设置。它依赖于称为 GKR 的协议和多项式承诺方案来为验证多个签名的电路生成证明。然后使用 Groth16 证明压缩 deVirgo 证明,再交由目标区块链上的更新合约进行验证。总的来说,这种证明系统的组合可以使 zkBridge 实现高效的跨链通信,而无需外部信任假设。

=nil; foundation无需信任的数据可用性

重要数据的管理,例如跨链桥,通常需要在完全控制的受信任环境中的数据完整副本。但是,当这无法实现或成本非常高时,项目方可能会寻求可信的数据提供商,例如 AWS 或 Infura,以访问他们所需的数据。

但正如我们在这篇文章中提到的那样,信任数据提供者可能会带来审查或数据泄露问题。

=nil;无需信任的数据管理解决方案应运而生。通过使用基于“DROP DATABASE *”系统的状态和查询证明,该方案允许无需信任的桥接。在这种情况下,可以使用从协议中检索到的数据和 SNARK 正确性证明在不同协议的数据库中相互传输数据。

结论

由于零知识跨链桥领域仍处于起步阶段,我们预计未来几年跨链应用程序的研究突破、巧妙的实现和采用将呈指数级增长。由于我们知道对互操作性的需求正在增长,我们可以期待安全和可扩展的跨链技术有更多进展,这反过来可能会进一步推动零知识技术的发展。