如何在不损害区块链核心原则的情况下实现计算完整性,是摆在我们眼前的一大挑战。

原文:Extreme Integrity in Decentralized World(StarkWare)

作者:Eli Ben-Sasson

编译:zCloak Network

原用标题(译后)去中心化世界里的极端计算完整性

封面:Photo by Shubham Dhage on Unsplash

  • CS Lewis  说,完整性即 “做正确的事,即使没有人在看”。
  •   尖端的密码学将使区块链能够根据这一理念管理每个人的数据。 

当人们发现到我离开大学是为了去区块链行业工作时,他们经常说我正忙着解决一个不需要解决的问题。

一个理智的学者应该知道不要被时代的浪潮丢下。我坚信区块链将显著增长,也正是因这样的信念我才离开大学,并且相信我可以仅仅依靠数学研究成果,让区块链以大规模的计算完整性运行。这并不是抽象的预测:我是 StarkWare 的联合创始人,我和同事们已经用这种数学方法建立了一系列先进的区块链技术。

这次职业转变的原因是,我希望看到区块链提供的东西能给人类的生活状况带来明显的改变。我希望它能用一个更透明、更公平、更民主的新体系,取代那些在我们所有的金融交易中起到中介作用的中心化机构,同时以主流金融公司所承诺的同等水平的,甚至是更高水平的,完整性来运营。

伟大的 C. S. Lewis 写了大量关于完整性和其它崇高具有价值观的文章,都抓住了完整性这个词的力量。他把它定义为 “ 做正确的事,即使没有人在看”。这正是我对处理我的资金的人或与之相关的计算所期望的: 一切都能符合我所说的计算完整性的标准。

早在区块链之前,计算机科学家就一直致力于此,尽管使用的是不同的语言。在 1991 年的一篇开创性文章中,四位理论计算机科学家——László Babai、Lance Fortnow、Leonid Levin 和 Mario Szegedy——预见到了这样一种情况:” 一台可靠的 PC 可以监控一群超级计算机的运行,这些超级计算机可能使用了极其强大但不可靠的软件和未经测试的硬件。” 用 Lewis 话说,即确保在涉及到促进我们金融交易的大量计算时,系统总是在 “做正确的事”。

但是,也有人提出” 如果它没有坏,就不要修理它” 这样的观点,他们认为区块链是为了改变而改变,并没有带来什么特别的好处,目前的系统就很好了,考虑到区块链所支持的现行系统,这个观点值得在此加以讨论。

1. 信誉良好的可信方反复博弈

在过去的一个世纪里,我们已经习惯了由银行这样的可信机构来处理和授权我们的金融互动。如今这样的机构有很多,包括 Visa、SWIFT 和许多交易所。

这些机构承担了所有有关计算和记录的艰苦工作和它们所导致的麻烦问题。但主要的缺点是,我们都被期望要完全信任他们,无需我们再做出任何监督。问题是,我们为什么要满足于此呢?特别是在一项技术能带来更透明的解决方案的时代,即区块链时代。

诺贝尔奖获得者经济学家 Paul Krugman 给出了一个有趣的答案。他说,现在已经有一种 “ 技术” 可以让民众相信,可信机构在以诚信行事

他创造性地使用了 “ 技术 “ 这个词来谈论声誉问题。” 思考这个问题的一种方式是,声誉是一种技术,” 他说,” 我们通过将一次性游戏改变为重复游戏来解决了许多经济问题,即将人们拿钱就跑的一次性游戏,转变为人们在某一时期都有良好行为动机的重复游戏,这样你就会在下一个时期信任他们,并一次往复操作。” 所以,在他看来,银行和其它可信任的机构为我们提供了良好的服务。

这是一个重要的观点,但在我看来,这经不起推敲。区块链预示着太多的承诺以至于不能被忽视。而且,今天的局势对我们有利的说法也不是正确的。如果银行是可信机构的缩影(有些人可能会质疑这种说法),那么请记住,全世界至少有约 17 亿成年人仍然没有银行账户——没有机会接触银行或金融机构。但他们正在慢慢发现加密货币。在非洲,有 140 万人持有加密货币,且这个数字在不断增长。此外,直到几十年前,人们和小企业之间几乎所有的金融交易都是在没有银行中介的情况下完成的。向电子货币的现代转型,使得几乎所有交易都通过一小群 “大而不倒” 的机构进行,从而让它们获得了巨额的、本不应获得的利润。因此在我看来,现有的可信机构系统为通过区块链进行重大改进留下了空间。

所以支持转向加密货币的人说 “让我们扔掉会带来重复游戏和声誉的社会技术,并尝试建立一个完全基于一种算法来运行系统,让该算法来保证我们拥有我们所需要的东西”。

2. 拥抱区块链的原貌

区块链依赖于 “分布式账本” 的理念而不是信任的机构,开辟了一个全新的金融交易世界。这些账本通过被广泛共享和详细审查,实现了计算完整性。换句话说,交易不是由银行家或其它可信的一方来验证,而是通过数量来验证。

这是一个了不起的进步。那么,为什么我不能对此感到满意,并接受区块链的现状呢? 为什么要去改变区块链的工作方式呢?

答案是,区块链面临一个巨大的障碍,即扩展性问题。区块链通常每秒只能处理 10 到 15 笔交易,这实在太小了,以至于使区块链无法成为规模化的应用。

大多人没意识到区块链的扩展危机,但它实际上影响着我们每个人。仔细想想,为什么我们日常使用的加密货币应用程序没有得到很好的发展,为什么没能让技术普及开来使得普通人也能充分利用区块链的力量?因为面对目前的需求,区块链承受着压力,这使它的速度变得很慢,并导致交易费用飙升,这不利于这项创新技术的发展,那么更何谈使大规模的人群从中受益。当扩展性能为区块链创造了喘息空间时,我们将看到加密货币应用程序的建设热潮。

让我们看看系统的具体细节,以了解阻止区块链扩展的原因。

区块链实际上是在构建完整性 ,这好比你在餐厅与服务员的互动,服务员在你点单后附送一张清单,担当起你的点单 “Prover(证明人)” 的角色,而你验证这份清单,使你成为 “Verifier(验证者)”。你可以通过简单重复地计算 Prover 做过的计算来验证计算的(清单的)完整性。因此你是通过 “ 简单的重复操作” 来建立的完整性。

区块链的工作原理与此类似。提交给区块链的每笔交易都被视为点餐清单,区块链的每个节点都必须通过简单的重复计算来验证这些交易。如此就不需要可信方,如果有人作弊,每个节点都能看到。

缺点是,很多节点都需要做大量的计算。以及更重要的是,这种计算繁重的模式限制了区块链的扩展性,其每秒钟的交易量上限很低。如果区块链上的所有设备都需要是拥有许多内核和巨大磁盘空间的超级计算机,那么这一点就需要得到纠正,因为这将很快使区块链类似于它试图颠覆的旧系统——用运行一小批超级计算的公司取代银行。为了防止这种情况,真正去中心化的区块链推崇的一个关键原则是包容性问责制(inclusive accountability),即验证整个区块链的完整性必须能够通过我们日常的笔记本电脑来完成。

因此,基于验证其完整性的包容性,区块链的巨大优势——记录的保存是完全可靠的——就显现出来了,但这是以吞吐量为代价的。这好比民主制度下的每个决定都是由公民投票做出的,这是一个非常包容的过程,但在时间、精力和系统能力需求方面是繁重费力的。

这就是为什么区块链社区中虽然存在着不满情绪,但对可扩展解决方案拥有巨大的兴趣。在关于如何尽可能好地做到这一点的讨论中,我和我的团队被称为是扩展的首要支持者,但也极力反对任何与区块链相关的安全、速度或其它优点做出妥协。StarkWare 的精神是在保持完全计算完整性的同时进行扩展。

对于今天的许多人来说,究竟如何扩展区块链,似乎是一个无关紧要的技术问题。然而就像对社会上其它大型基础设施的选择一样,包括如何组织民主或构建税收和福利制度,可能会对我们所有人产生重大影响。

3. 别太复杂了,相信芯片就可以了

一个现成的解决方案不是就在眼前吗?区块链使我们无需信任像银行这样由人类管理的实体。本着这种精神,如果我们想扩展它,就把我们的信任放在硬件上。

被称为可信执行环境 (TEE) 的芯片提供了这样的解决方案。如果你想在区块链上写入许多交易,就把所有相关输入都传输给 TEE,TEE 会生成一个将被写入链上的签名密钥,并表明 TEE 已正确处理了所有交易。因此,链上的节点不再需要验证长字节的计算,而是验证由 TEE 发出的证明了许多交易完整性的短的签名密钥。基于向链上添加的数据越少验证完整性所需的计算也就越少这一点,区块链可以被扩展,无需使用超级计算机来替代验证它的笔记本电脑。

这个解决方案听起来很完美,但事实并非如此。让我们假设芯片是按照最高标准设计和制造的,安全性也和我们所希望的一样高。然而,尽管如此,每个芯片都依赖于一个隐藏的内置密钥。虽然提取密钥极其困难且昂贵,但如果这样做能带来巨大的收益,就总会有人愿意去尝试。需要强调的是,一旦 TEE 芯片被发送,它就不再受制造商的控制,可能会落入恶意之人手中,包括作为其安全性前提的密钥。这意味着,即使攻击在现在不可行,也可能在一两年后变得可行,然后系统就会受到威胁或被破坏。

2010 年,前美国军事安全专家 Christopher Tarnovsky 发现了德国英飞凌公司号称 infineon 不可破解的 SLE66 CL PE 芯片的一个弱点,他使用了一台电子显微镜、酸和其它工具破解了该芯片。虽然这些物品不是家常所用,但对于任何想破坏金融系统的人来说,它们肯定是唾手可得的。

随着技术的进步,用于恶意用途的技术也在进步,芯片的破解也将会越来越容易,越来越便宜。破解芯片的价值高低取决于对它们的使用,当破解它们带来的收益价值越高就意味着破解成本越低,彼时破解动机就会上升。

4. 信任数学

对于区块链,理想的情况是,通过最少的计算,使得节点能够保证添加至链上的所有内容。如此人们将有能力向链上添加更多的项目,区块链也就可以大规模地扩展。

我所关注的研究分支提供了一种仅靠数学就能生成 “ 证明 “ 的方法,以证明许多交易的完整性。与其将这些交易发送给网络的所有节点检查,不如由单个证明程序处理它们,并向区块链提交一个简洁的计算完整性证明。

谈论证明听起来很抽象,让我们更具体一些。它们是一堆协议,旨在说服任何观察它们的人相信这些声明都是正确的,就像在法庭上执行的公开、透明的协议,旨在说服听众正义已经得到了伸张。我参与发明的证明系统——STARK,要求证明者 Prover 提交一个证明(执行计算的注释日志),以证明成千上万个交易的完整性。

对于 Verifier 来说,要检查计算是否有效,不需要重复 Prover 进行的计算,也不需要阅读提交的日志。相反,Verifier 对该日志中的条目进行随机抽样(几千字节),而这些样本中的数字模式提供了验证计算完整性所需的所有信息。有且只有计算是有效的,Verifier 才认为证明是有效的,并同意接受将交易提交到链上。

由此可见,这里没有可以被黑客攻击的硬件,只有已发布的、同行评议的和公开审查的数学及其在公开可用的软件代码中的实现。该软件仅验证证明,即使证明是由恶意方使用有故障的硬件产生的,计算完整性仍然有效。

长久以来,我一直梦想着将数学的 “真理” 用于这些奇妙的证明系统之下,让人们对运行在现代生活中的系统(包括但不限于金融系统)更有信心。STARK 证明系统使数学的真理像自然规律一样不可篡改。就像万有引力迫使物体落地一样,STARK 证明系统迫使计算中的 “ 杂质 “ 被暴露出来。

自 20 世纪 80 年代以来,STARK 系统的理论前身一直被大力研究,但最初的结构效率太低,无法在实践中使用。在我的研究生涯中,有整整十年都在致力于克服这一障碍,首先是理论上的,然后是实践上的,并且我不确定如何将我的研究应用到社会运行中。STARK 系统并不是为区块链设计的研究,但在 2013 年我参加了在 San Jose 举行的比特币会议,我开始意识到它非常适合用于处理区块链的挑战。如今在许多优秀团队的努力下,基于数学的区块链扩展正在迅速推进,Zcash、Aztec、The Matter、Hermez 和 Miden 就是显著的例子。与 StarkWare 的优秀团队合作是一段令我振奋的经历,StarkWare 不仅将我们的研究带入生活,而且以我无法想象的独特方式扩大和创新。

最近的一项创新是 StarkNet,这是一个开放的网络,可以帮助所有基于以太坊构建的软件扩容。今天,任何人都可以使用它来部署任何智能合约,而任何用户都可以向这些智能合约发送交易。使用数学和加密证明来验证区块链的完整性,形成了一类称为有效性证明(Validity Proofs)的扩展解决方案,StarkNet 只是解决方案之一。

5. Optimistic

另一种扩展区块链的有趣方法是基于欺诈证明(Fraud Proofs)而不非有效性证明。与 STARK 方法一样,欺诈证明方法通过创建乐观的假定为正确的交易批次,使区块链的节点不必对每一笔交易进行 “ 简单重复计算”。验证交易所需的所有原始输入都被上传或 “rolled up “ 到区块链,所以我们称之为 Optimistic Rollup。

在基于欺诈证明的系统中,Optimistic Rollup 节点监控已处理的交易,若节点认为向链上提交的更新似乎存在问题,则可发起挑战。

如若这种情况发生,且挑战是正确的,不准确的计算就会失效,时钟就会退回到所有这些节点都同意所有计算具有效性的最近时刻(发布错误区块的一方支付罚款,检测方获得奖励)。

Optimism 带来了效率。由于交易被提前认为是有效的,所以在每个交易上花费的计算很少,如此看来,似乎欺诈证明很适合于可扩展性受限的环境。

但是,无论是由于错误还是恶意, 如果 Optimism 导致一个不可变的分类帐本中包含有错误的陈述,则会产生灾难性的后果。

如若一个不正确的状态真的被忽略了,或因攻击者设法让试图报告欺诈行为的用户沉默(通过发动拒绝服务攻击)而错过了,那么它将被写入区块链而再无任何补救措施。这意味着一个已知的虚假声明可以被接受为真实,例如”Eli Ben-Sasson 现在是世界上所有加密货币的所有者”。Optimistic Rollups 分配了一个时间框架——争议时间延迟(DTD:Dispute Time Delay)——用以对一个状态在区块链上被终态化之前对其进行争议,DTD 越长,系统原则上越安全。

当然,我们可以使用非常长的 DTD,但属于 DTD 的每个小时都是在延迟交易在链上被终态的时间。目前正在进行测试的 Optimistic Rollup 系统使用为期一星期的 DTD。用户必须等待如此长的时间才能提取资金或 NFT 等资产。流动性提供者可以为他们提供替代流动性,但这就像从发薪日贷商那里借钱一样——成本很高。

就我个人而言,我相信 STARK 有效性证明而不是欺诈证明,因为它在没有 DTD 的情况下扩展了区块链并验证了每一笔交易,而非依赖乐观的假设。它更符合区块链的核心原则:” 验证它,而非选择信任”。

很明显,区块链将塑造我们的未来,但也很明显,为了充分发挥其覆盖全球范围的潜力,区块链需要进行扩展。弄清楚如何在不损害区块链核心原则的情况下实现计算完整性,是摆在我们眼前的一大挑战。

当我们的团队每天收到来自世界各地的消息,告知我们他们正在使用 StarkNet 进行试验,基于 STARKs 运行的绝对完整性来执行合约时,我在思考这个项目将引领我们走向何方。

大约 15 年前,我们感觉到了智能手机应用程序的潜力,但我们无法想象其用途的多样性,它们将带来的一系列好处,以及它们将带来的社会和经济变革。这就是现在区块链所处的位置,而扩展是缺失的一环,它可帮助区块链的潜力得以实现并且是每个人都能体验到。

这几乎肯定意味着没有银行账户的人可以获得资金,以拥有更多的机会;也可以基于 NFT 给艺术和设计带来新的生机,并在下一次大流行之前为健康记录的保存提供急需的更新;可以帮助选举系统更容易使用,以一种更巧妙的方式指导政府选举而不是每四年进行一次大规模投票;在保护我们的个人数据和记录的战斗中,它将带来变革性的变化。

我几乎可以肯定,在十年或二十年后,我将回顾区块链在实现扩展后取得的巨大进步,那将会是一些出乎我意料的东西,一个我甚至无法想象的东西。这就是为什么在创新领域工作既激动人心又使人极其谦卑的原因,因为我们等待着看到其他人将利用我们帮助释放的技术取得什么成就。

免责声明:作为区块链信息平台,本站所发布文章仅代表作者及嘉宾个人观点,与 Web3Caff 立场无关。本文内容仅用于信息分享,均不构成任何投资建议及要约,并请您遵守所在国家或地区的相关法律法规。