什么是存储证明,它们如何改进预言机?

  • starkware
  • 发布于 2023-04-22 19:39
  • 阅读 24

本文介绍了存储证明的概念及其在区块链中的应用,特别是在增强或替代预言机方面的潜力。存储证明允许跨链验证特定状态的存在和有效性,无需信任第三方。文章探讨了存储证明的用例,包括跨链信息访问、简化的跨链投票系统、替代跨链桥以及增强账户抽象的用户体验,并讨论了存储证明如何与预言机进行对比,以及如何在某些情况下替代或增强预言机的功能,最后探讨了在Starknet上使用存储证明增强预言机的可行性。

什么是存储证明,它们如何改进预言机?

Starknet 上的无需信任的跨链信息访问

介绍

存储证明是一种跟踪区块链信息,以便在链之间共享的密码学方法。与预言机类似,存储证明提供了信息真实的证明。然而,与预言机不同,它们不需要对第三方信任来获得此证明;相反,对于存储证明,信任是构建在存储中的。

在某些情况下,存储证明可以取代预言机。在其他情况下,存储证明可以增强它们,并开启以前不可能实现的新的区块链用例。

因此,让我们详细了解存储证明——它们是什么,它们如何工作,它们的用例,以及它们如何增强(有时取代)预言机。

什么是存储证明?

存储证明允许你打开状态的加密承诺,可以通过将它们与S[N/T]ARKS结合使用来优化它们。这些有效性证明证明了特定的状态存在,并且在过去的特定区块中是有效的。

从根本上讲,区块链是包含使用 Merkle 树,Merkle Patricia 树,Verkle 树等加密提交的数据的数据库。由于所有数据都已提交,我们可以证明某些信息被封装在给定的状态中。但是,使用简单的承诺方案,随着它包含的数据的大小变大,此证明的大小也变得更加突出。在链上验证此类证明变得过于昂贵而不切实际。

另一方面,存储证明在与 STARK 或 SNARK 结合使用时,可以相对较小,并且允许你验证特定时间点的特定状态,并在任何领域——无需信任第三方。它们不依赖于第三方,而是依赖于底层链本身的安全性。

为什么这很重要?今天的以太坊不再是几年前的简单的单片链(L1)。随着 L2 解决方案的出现,数据现在分布在多个链上。

关于链状态的同步假设不再成立。现在有许多共享数据的解决方案已经上线,例如 L1->L2 消息传递系统、跨链桥和预言机。但是这些当前解决方案的问题在于它们包括对第三方的信任,例如中继器、多重签名者和委员会。存储证明允许我们使用密码学承诺验证区块链在任何时间点的状态,而无需信任第三方。

存储证明的用例

由于存储证明允许我们有效地“压缩”区块链并将数据传输到其他地方,因此它们具有很多应用。经济实惠的验证成本是存储证明不可或缺的属性,它允许在目标链上验证证明,从而最大限度地减少了开发跨链消息传递系统的需求。

潜在的用例包括:

  • 从另一个链通用信息访问关于区块链上的状态和交易。
  • 简化的跨链投票系统。通常,用户将他们的资产保存在速度较慢但更安全的链 A 上,但是一些基于代币的投票发生在交易费用更便宜的链 B 上。这迫使用户要么跳过投票,要么支付巨额交易费用将他们的资产从 A 桥接到 B,进行投票,然后将它们桥接回 A。在这种情况下,存储证明使用户能够在给定区块中证明他们在链 A 上的代币余额,并在链 B 上无缝地进行投票。
  • 跨链桥的替代方案。目前,跨链桥假设对第三方存在一定程度的信任,因为它们通常涉及中介,例如托管人或去中心化自治组织(DAO)。该中介负责确保中介在源链上收到一定数量的代币,并且负责在源链上持有资产。之后,将在目标链上铸造相应的代币。存储证明可以实现无需信任的跨链桥,因为目标链上的智能合约应用程序可以验证交易,其中资产已转移到源链上的桥智能合约并铸造桥接资产。但是,在许多情况下,可能不需要在链之间转移资产,因为可以使用存储证明简单地证明另一个链上的资产所有权。
  • 增强账户抽象 (AA) 用例的 UX。AA已在不同的链中实施,并被认为是将前十亿用户引入区块链领域的一项关键创新。通过存储证明,钱包可以包括额外的功能,即仅当钱包长时间未发送任何交易时才恢复访问权限。还可以强制执行需要使用来自其他链的一些数据的其他检查。

存储证明示例

在与 EVM 兼容的链上生成存储证明非常简单。例如,Web3.js 库具有“getProof”函数,该函数可以生成以太坊(以及其他与 EVM 兼容的链(例如 Polygon 或 BSC))上合约状态的证明。必须将合约地址和合约的存储插槽传递给该函数。

在以太坊中,智能合约使用键值存储将数据存储在其存储中。每条数据都存储在称为“存储插槽”的特定位置。存储插槽是合约存储中的内存位置,并通过唯一索引进行标识。让我们看一个示例智能合约,该合约具有以下代码,该代码已部署在以太坊主网上的 0xcc...da8b

“owner”变量将存储在插槽 0 中。现在,要生成此合约的“所有者”是地址 A 的证明,我们可以使用“getProof”函数,如下所示:

上面代码的输出如下所示:

返回的“storageProof”包含“owner”变量的存储证明。由于以太坊使用 Merkle Patricia 树来提交其状态,帐户及其存储的状态,因此生成的存储可用于证明存储插槽(或帐户状态)。但是,如前所述,这些证明的扩展性不足以讨论跨链消息传输。在此基础上使用复杂的 ZK 数学可以减少验证证明所需的计算量。

那么存储证明与预言机相比如何呢?

从设计上讲,区块链无法检索链下数据。这使区块链变得无需信任,但也限制了智能合约根据真实世界事件做出决策的能力。预言机通常也用于获取历史区块链信息,因为直接获取此数据极具挑战性,因此容易出错。

为了解决这个问题,创建了名为预言机的特殊实体来检索此链下数据(或从某些繁重的链下计算中检索结果)。目前,这些预言机需要第三方,例如机构或节点运营者的去中心化网络,才能在链上提交数据,从而向用户和智能合约公开。这种信任假设目前是不可避免的,但并不理想(尽管一些团队正在努力最大限度地减少这种信任要求,例如 Pragma)

Chainlink 是区块链预言机的一个例子,它提供各种各样的真实世界数据(股票价格、天气数据等)、链下计算服务,以最大限度地减少链上繁重计算的成本,以及在不同区块链之间读取和写入信息的跨链服务。

由于智能合约除了使用预言机外,没有其他方法知道真实世界中正在发生的事情,因此预言机已成为区块链生态系统中不可或缺的一部分。

Starknet 上预言机的状态

在Starknet 测试网上,前面提到的 Chainlink 当前为七对加密货币提供价格数据馈送,并且已与 Starkware 团队 合作 以“进一步加速 StarkNet 生态系统的应用程序开发和整体增长”。Chainlink 通过提供来自链下数据源的去中心化节点网络最大限度地减少了信任假设,但数据聚合发生在链下。

PragmaStork Network 是 Starknet 上最大的两个预言机提供商,在主网和测试网上运营。除了多个加密货币对的价格代码之外,Pragma 还在主网上实施可验证的随机性馈送,这将允许协议在链上请求安全随机性。Pragma 上的价格馈送基于大型机构和做市商的价格提交,并且价格聚合发生在链上,利用高效的 ZK 技术。

存储证明可以取代或改进预言机吗?

在某些情况下,是的,存储证明可以取代预言机。

并非预言机提供的所有数据实际上都需要由第三方提供。在某些情况下,预言机提供的数据已经可以在链上获得(以链上存储或交易的形式),并且可以通过查看区块链的先前状态来检索。在这些情况下,存储证明可以取代对第三方和预言机的信任需求,并允许智能合约完全依赖于加密承诺的安全性。

在其他情况下,如果存储证明不能完全取代预言机,它们通常仍然可以通过以下附加功能增强它们:

  • 预言机将信息从数据提供者传输到数据消费者。但是,并非所有数据消费者都在同一链上。借助存储证明,可以完成 对来自不同来源的数据进行一些计算,并将结果导出到其他链
  • 此类数据的首选源链是计算成本低廉的链,并且可以在其他目标链上以经济有效的方式完成证明验证。
  • Herodotus 是该领域的研究领导者之一,他们使用存储证明和 ZK 数学提供跨不同以太坊链的跨域数据访问。Pragma 还与 Herodotus 合作,以便在不久的将来实现跨链预言机支持。
  • 存储证明可以 统一多个汇总的状态,甚至允许以太坊层之间的同步读取。
  • 另一个增强功能是无需信任地检索链上发布的历史数据。诸如以太坊和 Starknet 之类的有状态区块链通过专门的数据结构(例如 Merkle/Verkle 树和 MPT)记录并通过加密方式维护其状态。这使得可以证明包含在这些结构中存储的任何数据。因此,任何过去在链上发布的数据也可以被信任、检索并在其他应用程序中使用(甚至不必在同一条链上)。这些存储证明允许智能合约访问甚至可以追溯到创世区块的信息。
  • Pragma 正在研究开发一个预言机作为 Starknet 上的 L3 的可行性,数据可以从该 L3 上“拉取”到其他链上,并使用存储证明进行验证。在计算成本低廉的网络(如 Starknet)之上的不同域中拥有预言机的好处包括:
  • 由于 L3 可以是高度可定制的链,因此可以调整各种参数以 更快地在区块上达成共识,从而大大减少预言机的数据延迟。
  • 结合存储证明,低延迟数据可以在源链中达成共识后异步传输到其他链
  • 可以通过在 L3 中开发内置系统来削减不诚实的数据提供商来增强对数据的信任。如果给予适当的激励,L3 上的数据提供商可以将其资产作为发布正确数据的保证来抵押。由于在其他链可以使用数据之前需要整个 L3 网络达成共识,因此预言机提供的数据可以被认为是由 L3 上验证者的股权来保护的。

结论

在过去的几个月中,L2 在以太坊上日益普及,让我们对该行业的未来有了更清晰的认识。L2 叙事已获得了 StarknetOptimismArbitrum 等网络的关注。但是,其增长的主要后盾之一是实施去中心化的跨链消息传递系统。尽管它们仍处于起步阶段,但存储证明有望对这个问题进行难以置信的改进。

非常感谢 Marcello BardusKacper Koziol 审阅本文。

  • 原文链接: starkware.medium.com/wha...
  • 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
点赞 0
收藏 0
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

0 条评论

请先 登录 后评论
starkware
starkware
江湖只有他的大名,没有他的介绍。