当前位置:首页>货币平台

a16z:详谈去中心化链上可信设置仪式的可行性

日期:2023-03-17

来源:玫瑰财经网

浏览:

    a16z:详谈去中心化链上可信设置仪式的可行性

    原文作者:Valeria Nikolaenko和Sam Ragsdale

    编译原文:Amber、Foresight News

    信任设置意识是对加密社区的挑战,但也是加密社区最有趣的部分。意识的目标是生成可靠的加密密钥,以保护加密钱包、区块链协议或零知识证明系统。这些程序是项目安全的信任根源,所以实施一点都不错的操作和可靠的安装仪式是很重要的。

    目前区块链项目正在进行多种形式的可靠设置仪式,包括blowtorches、radioactive dust、airplanes等,它们的共同点是都依赖一个中央协调者。本文档演示了如何通过智能合同替代中央协调程序集中化流程,并公开了一个库,可以在etherfall上运行加密的实务者Kate-Zaverucha-Goldberg(KZG)或“powers-of-tau”。

    我们的去中心化方法有局限性,但它仍然有用。由于当前链的数据限制,加密参数的大小必须小于或等于64 KB。但是参与者数量没有限制,任何人都可以随时提交贡献。这些短参数的应用包括小零知识SNARK、数据可用性采样、Verkle树等

    a16z:详谈去中心化链上可信设置仪式的可行性

    可信设定意识的历史和机制一般可信设定意识中,一组参与者共同生成一组加密参数。每个参与者使用本地生成的加密信息生成有助于生成这些参数的数据。适当的设置可确保加密的信息不会泄露,加密的信息只能用作协议指定,这些加密的信息在仪式结束时将被完全删除。如果意识中至少有一方保证诚实(意识结束后),破坏加密信息,整个过程可以被认为是安全的。(当然,如果代码没有错误)

    其中一些最突出的意识是Zcash推出的,是以隐私为中心的区块链项目。这些意识的参与者生成了公共参数,使Zcash用户能够构建和确认个人加密交易。6名参加者在2016年举行了第一届Zcash仪式Sprout。两年后,加密研究员Ariel Gabizon现在是Aztec的首席科学家,在意识设计中发现了破坏性的错误,这个错误是从基础研究论文中继承下来的。通过这个漏洞,攻击者可以在不被检测到的情况下制作无限制的Zcash硬币。Zcash团队对这个漏洞保密了7个月,直到系统升级Sapling(包括90名参与者)解决了这个问题。基于安全漏洞的攻击不会影响用户交易的隐私,但无限制伪造的前景会破坏Zcash的安全前提。理论上不知道是否发生了袭击。)。

    可靠设置的另一个值得注意的例子是永久性的“tau-power-of-tau”仪式,主要是为Semaphore设计的,Semaphore是以太匿名信函的隐私保护技术。该设置使用BN254椭圆曲线,迄今为止有71名参与者。以后使用此设置将Tornado .其他著名的项目,如Cash、Hermez网络、Loopring等,都在顶部执行了自己的仪式。Aztec在BLS12_381椭圆曲线上举行了类似的仪式,176名参与者参加了zkSync,这是“第二层”以太网扩展解决方案,使用零知识总结。Filecoin是一个分布式数据存储协议,在第一和第二阶段分别与19和33名参与者一起举行仪式,分离原始存储库。Celo是一层区块链,为轻量级客户端Plumo举行了仪式。

    永久仪式对参加者人数没有限制。这意味着,任何人都可以参与一定程度的安全,而不是信任其他人来运行可靠的安装。可靠的参与者确保所有结果参数的安全性。链条和最强的圆环一样坚固。顾名思义,永久仪式可以像原来的tau权力意识的前提一样永久举行。也就是说,项目通常决定意识的具体开始和结束时间,因此可以在合同中包含生成的参数,而不必担心不断更新。

    以太坊计划为即将到来的ProtoDankSharding和DankSharding升级举行小型信任设置仪式。这两种升级增加了以太网方形链向客户端提供的数据量。此数据在建议的30至60天内有效。该仪式正在积极开发中,将于明年初持续运行6周左右。(详细信息请参阅kzg-ceremony-specs)目前为止,这已经成为最大的区块链信任建立仪式。

    偏执是“美德”。尤其是涉及可靠的安装仪式时。机器的硬件或软件受损会损害生成的秘密的安全性。也很难排除泄露秘密的偷偷摸摸的方面频道攻击。例如

    a16z:详谈去中心化链上可信设置仪式的可行性

    ,手机可以通过记录CPU振动的声波来监控计算机的运行。实际上,很难消除所有可能的侧面通道攻击,包括未发现或未公开的攻击,因此,甚至有人建议将机器飞向太空举行仪式。

    目前,严格意识参与者的剧本通常如下。购买新机器(未污染的硬件)。为了防止本地机密泄露,请卸下所有网卡以进行风险隔离。在法拉第笼中远程未公开的位置运行机器(为了挫败潜在的观音者)。在伪随机加密信息生成器中设置大量熵和硬复制数据,如随机输入和视频文件的种子(使加密信息难以解密)。最后,将所有东西烧成灰烬,销毁加密信息和加密信息的所有痕迹。

    协调可靠设置仪式的所有可靠设置仪式都依赖中心化协调员。协调员是注册和加入参与者、将信息从以前的参与者传递给下一个参与者、充当中继的个人或个人服务器或其他实体,并为所有通信保持集中日志,以供审计。协调员通常有责任向公众永久提供日志,但必须承认,这种集中系统很容易因管理不善或某些不人道因素而导致信息丢失。

    具有讽刺意味的是,如果集中化是加密精神的核心原则,加密项目就必须依靠集中可靠的设定式。因此,我们决定证明在以太坊区块链上直接为可持续powers-of-tau举行小型仪式的可能性。这个设置完全中央化,不需要许可,抵制审查,任何参与者诚实就安全。根据目前的价格,参加仪式的费用根据所需结果参数的大小(在本例中为8 ~ 1024次tau之间)而定,仅为7 ~ 400美元。

    到目前为止,最好不要为了实验目的以外的目的使用代码。如果代码有问题的人向我们报告,我们将不胜感激。我们很乐意收集对我们方法的反馈和审查。

    了解KZG或“powers-of-tau”意识。让我们看一下最受欢迎的可靠设置之一,称为KZG或“powers-of-tau”仪式。感谢Etherfang联合创始人Vitalik Buterin关于可靠设置的博客文章,该文章提供了有关这一部分想法的信息。此设置生成powers-of-tau的编码。因为“tau”是表示参与者生成的秘密的变量

    a16z:详谈去中心化链上可信设置仪式的可行性

    对于一些应用程序,如Groth16、Jens Groth在2016年设计的流行的zkSNARK证明方案,设置的第一步后面是为特定SNARK电路生成参数的第二步,即多方计算(MPC)意识。但是我们的工作只集中在第一阶段。第1步创建tau的功率可用作常规SNARK(如PLONK和SONIC)和其他加密应用程序(如KZG承诺、Verkle树和数据可用性采样)的基本构造块。(DAS)。一般来说,一般SNARK参数必须非常大,才能支持大型有用的回路。包含更多门的回路通常更有用,因为它可以捕获大型计算。Tau中的力数大致对应于电路中的闸数。因此,典型的设置大小为|pp|=~40 GB,可以支持~2的电路28 Gas。由于以太目前的限制,不可能在链上放置这么大的参数,但对于小SNARK电路,可以在链上运行对Verkle树或DAS有用的小信任设置意识。

    以太坊基金会计划对大小在200 KB到1.5 MB之间的powers-of-tau进行一些小型仪式。虽然更大的意识可能看起来更好,但考虑到更大的参数可以创造更有用的SNARK电路,实际上更大的并不总是更好的。有些应用程序(如DAS)需要特别小的应用程序![原因很技术性,但如果你好奇的话,有N次幂(在G中)的设定(在G中)为1),因为KZG只允许对 n次多项式的承诺。这对于确保KZG承诺的多项式能够在所有N次评估中重建非常重要。此属性支持数据可用性采样。也就是说,只要成功获得(采样)多项式的随机评价,就可以将多项式完全重构为概率t/n。有关DAS的更多信息,请参阅Buterin在以太坊研究论坛上的文章。

    为了运行可靠的安装,戴尔设计了可以部署到以太网区块链中的智能协议。该协议将公共参数完全存储在链中,并通过用户的事务处理收集参与。

    新参与者首先阅读以下参数。

    然后对“随机关键点”进行采样,并计算更新的参数。

    把它们放在链子上,就能证明三件事。

    离散对数的知识:参与者知道。(证明对可靠设定意识的最新贡献是基于所有先前参与者的工作。

    Pp的格式良好。1:这些元素编码增量平方。(验证了新参加者对意识的良好贡献形式。

    更新未清除:‘0。(通过消除所有参与者过去的工作来破坏系统的攻击者的防御。

    智能合同验证证明,如果它是正确的,它将更新存储的公共参数。有关数学及其后面推理的详细信息可在存储库中找到。

    在Gas成本计算链中运行设置的主要挑战是使可靠的设置意识尽可能高效。理想情况下,捐款提交费用不超过50美元。(大型项目预计可以为投稿者补贴Gas,在这种情况下,数百名参与者每人花费100美元更容易想象。)接下来,提供设置中最贵部分的详细信息。Gas成本越低,贡献成本越低,部署的参数越长(更多tau功率和更大的SNARK电路)!

    我们的设置适用于椭圆曲线BN254(也称为BN256、BN128和alt_bn128),以太网支持以下预编译协议:

    ECADD允许您添加两个椭圆曲线点。也就是说,[] 1是从[]1和[]1:汽油费150计算出来的

    ECMULT允许椭圆曲线点乘以标量。也就是说[a*]1是从a和[]1:汽油6,000计算得出的

    ECPAIR可让您检查椭圆曲线对的乘积。即e ([ 1] 1,[ 1] 2) *.计算* e ([ 1] 1,[ 1] 2)=1等于确认 1 * 1

    如果EIP-2537建议的Etherbank可以激活BLS12_381,那么戴尔的设置协议也可以轻松用于其他曲线。

    我将设置更新为

    经验证的Gas成本。如上所述,每个参与者更新设置并提交由三个组件组成的证明。确认的组件1和3“个人日志知识”和“更新不能清除”非常便宜地确认。挑战是验证组件2、“PP良好的成型性”1、在链条上。需要大MSM(多标量乘法)和两对。

    其中 0,N-1是伪随机采样标量。对于预编译的智能合同,需要:

    存储数据的Gas成本。每个参与者还将链的更新存储为调用数据(每字节68 gas),占n * 64 * 68 gas。(对于熟悉椭圆曲线加密的人来说,需要注意的是,根据n=256的测量,如果保存压缩点,解压缩将主导全部成本。

    因此,Gas成本如下:

    当然,我们正在寻求降低Gas成本的解决方案。

    开放源代码库:evm-powers-of-tau

    我们已经在github . com/a16z/EVM-powers-of-tau开放了基于EVM的powers-of-tau仪式。使用我们的策略进行仪式是简单透明的。

    部署存储和验证协议(协议/KZG.sol)

    参与者从以前的事务调用数据中读取意识参数

    参与者在本地生成密钥以计算更新的参数

    贡献者生成他们的证明:pi1、pi2

    提供者通过KZG.potUpdate()向公共区块链中部署的智能协议提交更新的参数

    智能合同将验证更新的有效性,并在提交格式错误后恢复

    多个投稿者可以永久执行2-5个阶段,每个阶段都可以提高意识的安全性。

    只要开发人员对提交的数量和质量有信心,就可以在区块链中查询当前参数,并将这些值用作加密密钥。

    我们的存储库使用arkworks-rs计算第2步和第3步(rust计算可在src/pot_update.rs中找到),但用户可能希望自己创建。提交更新的整个过程可在tests/integration_test.rs的集成测试中找到。

    我们决定使用Calldata将更新的powers-of-tau参数存储在链中。因为比存储便宜几个等级。可以在src/query.rs中找到有关此数据的基于ethers-rs的查询。

    最后,可以在techreport/main.pdf的技术报告中找到证明和详细的方程。

    今后的工作计划建议,在将这种可靠的安装意识用于生产环境之前,先对数学证明和样本实现进行全面审查。

    随着实施,更新式的交易费用会随着安装大小线性增加。对于大多数应用程序(SNARKs、DAS),我们希望设置n=256。目前,每次更新的费用为73美元。

    通过有效地更新计算出的STARK证明和更新值的矢量承诺,将能够实现线性验证成本的增加。这种结构还消除了对以太网L1 BN254预编译的依赖,使更流行的BLS12-381曲线可用。

    所有的意识策略都是经过反复平衡和测试的。我们认为这个结构是可靠的,验证性和审查性都很好。但是同样,在进行更多的工作来验证我们方法的合理性之前,如果要直接使用本文提到的这个方案,仍然需要非常谨慎。

    单击下载

    European Exchange金融投资European Exchange(也称为Eurokx)是世界领先的数字资产交易所,为全球用户提供比特币、莱特货币、以太网货币等数字资产的现货和衍生品交易服务,并使用区块链技术为全球交易者提供高级金融服务。这是一个非常古老的数字货币交易平台,平台为我们提供安全、专业的数字货币交易经验,为新手提供完整的流程指导,使其易于启动,通过客服24小时在线回复提供最佳服务。

相关文章阅读

Copyright (c) 2022 玫瑰财经网 版权所有

备案号:冀ICP备17019481号

玫瑰财经网发布此信息的目的在于传播更多信息,与本站立场无关。玫瑰财经网不保证该信息(包含但不限于文字、视频、音频、数据及图表)全部或者部分内容的准确性、真实性、完整性、有效性、及时性、原创性等。
相关信息并未经过本网站证实,不对您构成任何投资建议,据此操作,风险自担。