来源:vitalik.ca
作者:Vitalik Buterin
编者注:
数据可用性采样?(data availability sampling) 是 Dankshading 的关键部分,为实现这一密码协议,需要使用 KZG 仪式对数据可用性证明方案所需要的参数进行初始化。
因此,KZG 受信任初始化是实现 EIP-4844 (proto-danksharding) 和完整版 Danksharding 的重要前提条件。
除此之外,其他密码学协议如 ZK-SNARKs 领域也需要有受信任初始化阶段。
本文介绍了受信任初始化的运作原理以及其验证过程。
《分片 + 数据可用性采样》www.ethereum.cn/sharding-proposal
必要的背景知识:elliptic curves and elliptic curve pairings。
另请参阅:Dankrad Feist's article on KZG polynomial commitments。(中文版:KZG多项式承诺)
特别感谢 Justin Drake、Dankrad Feist 和 Chih Cheng Liang 的反馈和评审。
许多密码协议尤其是在数据可用性采样和 ZK-SNARKs 领域都依赖于受信任初始化。受信任初始化仪式是一个用于生成一批数据的一次性流程。
后续,每次运行某些密码协议时都必须使用这些数据。生成这些数据需要一些秘密信息;“信任”来源于这样一个事实,即必须由某个人或某组人来生成这些秘密,使用秘密来生成数据,然后发布数据并销毁这些秘密。
然而,一旦生成了数据并销毁了秘密,仪式创建者就不需要进一步的参与。
受信任初始化有很多类型。在主流协议中最早使用的受信任初始化的实例是 2016 年的 Zcash 启动仪式。这个仪式非常复杂,而且需要多轮的通信交互,因此只能有六名参与者。
彼时彼刻,每个使用 Zcash 的人都必须相信六名参与者内至少有一名是诚实的。新式协议一般会使用 powers-of-tau 初始化技术,其遵循 1-of-N 信任模型,N 值通常为数百。
也就是说,数百人一起参与生成数据,只需其中一人是诚实的并且不公开秘密就能保证最终输出的安全性。实践上,像这样的执行良好的受信任初始化通常被认为是“足够接近于去信任”的。
本文将介绍 KZG 初始化如何运作及其工作原理,以及受信任初始化协议的未来。任何精通代码的人都可以随意地浏览以下代码实现:https://github.com/ethereum/research/blob/master/trusted_setup/trusted_setup.py.
Powers-of-tau 初始化是怎样的?
Coinswitch Ventures和GravityX Capital联合推出Web3加速扩展项目:金色财经报道,Coinswitch 旗下 Web3 投资部门 Coinswitch Venturess 宣布与 Web3 风投公司GravityX Capital 联合推出 Web3 加速项目LevitateX,旨在为选定的早期 Web3 初创公司提供发布准备、加速牵引和运营等方面的支持,也为中后期阶段的 Web3 企业解决业务增长和规模扩展等问题,以及为希望进军亚太市场的全球 Web3 创企给予资金帮助。据悉该计划还将帮助选定的公司完善其产品、增强用户体验并优化技术基础设施,以确保在 Web3 领域的稳健和成功推出。(thehindubusinessline)[2023/8/16 21:26:17]
powers-of-tao 初始化由两系列的椭圆曲线点组成,如下所示:
和?
是两个椭圆曲线群的标准生成元;在 BLS12-381 中,
占用 48 字节(压缩形式),
占用 96 字节。
,
分别是初始化输出的
?,
生成点列的长度。一些协议要求
=2,另一些协议要求
的值都较大,一些协议属于中间情形(例如,当前的以太坊数据可用性采样方案要求
=4096和
=16)。
是用于生成点列的秘密值,使用后需要销毁。
为了对多项式
生成 KZG 承诺,我们简单选取一个线性组合
,其中
Vitalik Buterin:FTX的欺诈行为比Mt.Gox和Luna更严重:11月12日消息,以太坊创始人Vitalik Buterin第一次对FTX崩盘事件发表直接评论,称FTX的欺诈行为比Mt.Gox和Luna更严重,Mt.Gox看起来很粗狂,但从未过份粉饰自己,Luna也是如此,FTX则相反,它完全是在做合规的美德信号(与合规不一样),第二种欺诈行为比第一种更严重。[2022/11/12 12:54:27]
(受信任初始化中的椭圆曲线点列)。
用于验证我们所承诺的多项式的值;我不会在此讨论验证流程的细节,更多的细节参见 Dankrad 的文章(https://dankradfeist.de/ethereum/2020/06/16/kate-polynomial-commitments.html)。
直观地说,受信任初始化提供了什么价值?
从更深层次理解这里面到底发生了什么,以及受信任初始化为何能够提供这些价值。
多项式承诺使用大小为
的对象(单个椭圆曲线点)对一段大小为
的数据进行承诺。我们可以用简单的 Pedersen 承诺来做到这一点:
只需将
的值设置为
个不相关的随机椭圆曲线点,然后如前所述对
多项式进行承诺。实际上,这正是 IPA 证明所做的。(https://vitalik.ca/general/2021/11/05/halo.html)
然而,任何基于 IPA 的证明都需要
时间来验证,有一个不可避免的原因:使用基点
生成的承诺会对应于使用基点
的另外一个多项式。
TokenBetter平台GTX(Gravitation-X)日内涨幅为289%:据TokenBetter行情显示,截至今日18:50(UTC+8),TokenBetter平台内创新区币种GTX(Gravitation-X)日内涨幅为289%,24H最高报价0.1499USDT,现报价0.08517USDT。
Gravitation-X(GTX)随着区块链技术的发展和区块链产业数量的增长,区块链项目的财务应用出现了竞争。因此,我们必须通过创建可用的游戏模型来解决竞争问题,这是毁灭证明,缩写为 POD。
Gravitation-X 的 POD 不仅基于智能合约,还基于 DAPP 系统设置。 从开始每天都会销毁大量的代币。随着更多令牌被释放,更多将被销毁,目标是通过结合 CryptoNote 协议和智能合约等一些经过验证的最佳技术,创建一种先进区块链技术,增强可靠性,隐私性,安全性,可用性和可移植性,从而实现创建私人智能合约。[2020/8/2]
在一组基点下对多项式
的一个有效承诺等效于另一组基点下对多项式
的一个有效承诺。
如果我们想对某些命题生成基于 IPA 的证明(例如,该多项式在
时等于 3826),该证明在基于第一组基点时应当验证通过,而在基于第二组基点时应当验证失败。
因此,无论验证流程如何,都无法避免以某种方式考虑每一个
值,因此不可避免地需要
时间。
然而,如果有受信任初始化的话,点间存在着隐藏的数学关系。可以保证任意两个相邻点之间有着相同的因子
使得
。如果
是有效的初始化输出,“被篡改的输出”?
是无效的。
因此,我们不需要
的计算量;相反,我们利用这个数学关系就可以在
时间下验证我们需要验证的任何东西。
然而,数学关系必须保密:如果
已知,那么任何人都可以提出一个表示众多不同多项式的承诺:如果
Strix Levithan首席信息官质疑PlanB提出的S2F模型:加密货币分析师PlanB于去年3月提出了Stock-to-Flow(S2F)模型,用于预测比特币价格。该模型是基于稀缺资产(如黄金、白银以及比特币)的价值与它们的稀缺性密切相关的观点。据PlanB估计,比特币和黄金和白银一样稀缺,唯一不同的是它是一种数字资产,这使得它在我们的时代更加珍贵。从模型分析来看,比特币的价格似乎更有可能在未来攀升,甚至可以达到10万美元的价格。
然而Strix Levithan首席信息官Nico Cordeiro对此提出了质疑。在6月30日发布的一份报告中,他对黄金稀缺性与价格之间关系的基本假设提出了质疑,称其为“变色龙模型(A Chameleon Model)”。另一个反对该模型的观点是,它假设比特币的价格到2045年将达到2350亿美元——在Cordeiro看来,这完全没有道理。实际上,该模型可以完美地用于基准测试,但是它缺乏使其完全可靠的具体因素。而基于该模型得出的不切实际的价格预测已经引起了业界专家的大量质疑。(Zycrypto)[2020/7/2]
的承诺,那么它也是
或许多其他多项式的承诺。这将完全破坏所有多项式承诺应用的根基。
因此,虽然在某个时间点上必须存在一些秘密值
,让
值之间的数学联系成为可能,从而实现高效验证,但是
也必须被销毁。
多方受信任初始化如何运作?
单个参与者进行初始化是很简单的:只需选择一个随机值
,并使用
值生成一系列椭圆曲线点。但单个参与者的受信任初始化是不安全的:你必须信任某个特定的人!
解决方案是多方受信任初始化,其中“多”指的是很多参与者:超过 100 人是正常的,对于较小计算量的初始化方案,可能会超过 1000 人。以下是多方 powers-of-tau 初始化的工作原理。
以一个已有的初始化输出为切入点(注意,你不知道
的值,你只知道一系列的椭圆曲线点):
现在,选择你自己的随机秘密值?
。计算:
动态 | EOS今日Activity指数为4380万 排名第一:据IMEOS报道,根据blocktivity.info的数据显示,截止北京时间18年12月03日11点00分 ,区块链活跃度指数排名前五名分别为:EOS,WAX,BitShares,Steem,Kin。其中EOS的Activity指数为43,808,494,排名第1。Activity指数为最近24小时内在区块链上执行的操作数量。[2018/12/3]
请注意,这相当于:
也就是说,您已经创建了一个秘密值
相对应的有效初始化输出!你永远不会把你的秘密值?
给到之前的参与者,同时之前的参与者也不会把他们的秘密值
给到你。
只要任意一个参与者是诚实的,并且没有透露他那部分的秘密值,那么组合起来的秘密值就不会被泄露。
特别地,有限域具有这样的性质:如果你知道
但不知道
是被安全随机地生成的,那么你对
的值一无所知!
验证受信任初始化
为了验证每个参与者确实参与了受信任初始化,每个参与者都可以提供这样一个证明,包括 (i) 他们收到的点
和 (ii)
,其中 tt 是他们引入的秘密值。
这一系列的证明可用于验证最后的初始化输出将所有的秘密值组合起来 (与之相反的是,最后一个参与者只是舍弃了前面的值,并输出了仅由他自己秘密值生成的初始化结果,他可以自行保留这个秘密值,从而在任何使用该初始化输出的协议中欺诈)。
是第一个参与者的秘密值,
是第二个参与者的秘密值,以此类推。在每个步骤中的配对检查验证了每个步骤的初始化输出确实源自前一步骤初始化输出以及参与者在当前步骤中已知的新秘密值的组合。
(译者注:配对的特性
每个参与者都应该在一些公开可验证的媒体(例如个人网站、来自其 eth 地址的交易、推特)上披露他们的证据。
请注意,这个机制并不能阻止某些人声称参与了某个阶段,而实际上是另外的人(假设其他人已经透露了他们的证据),但通常会认为这不成问题:如果有人愿意就参与的情况撒谎,他们也会愿意就秘密的删除情况撒谎。只要公开声称参与的人中至少有一人是诚实的,那么初始化就是安全的。
除了上述检查以外,我们还想验证初始化中的所有椭圆曲线点的幂次都是正确的(即,它们是相同秘密值的幂)。(译者注,即椭圆曲线可以表示为序列
为此,我们可以进行一系列配对校验,验证
(其中
是初始化中
的值)。
这验证了每个
之间的因子与
之间的因子相同。然后,我们可以在 G_{2}G2 侧执行相同的操作。(译者注,即验证
然而,这需要很多次配对,成本很高。相反,我们采用随机线性组合
,及相同线性组合移动一位的结果:
。我们使用单个配对校验来验证它们是否匹配得上:
我们甚至可以将
侧和
侧的校验过程结合在一起:除了如上所述计算
,我们还计算
是另一组随机系数)和
,然后验证
拉格朗日形式的受信任初始化
在许多用例中,你不太愿意使用系数形式的多项式(例如
,你更愿意使用点值形式的多项式(例如
是在域
模 337 的值为
的多项式)。(译者注:此处的逻辑是,n 次多项式需要 n+1 个点来进行确定,点值形式其实指的是
,如此类推)
点值形式有很多优点(例如,您可以在
时间内进行多项式的乘法,某些情况下的除法运算),你甚至可以把它用在
时间内求值。特别地,数据可用性采样要求 blobs 使用点值形式进行表示。
为了处理这些情况,通常可以便捷地将受信任初始化转换为点值形式。这让你能得到点值(上面的例子中为
,并直接使用它们来计算承诺值。
使用快速傅里叶变换(FFT)是最为便捷的手段,但是要将曲线点而非数值作为输入进行传递。我将避免在此重复对 FFT 进行详细的解释,但这里有一个实现;FFT 实际上并不难。
受信任初始化的未来
Powers-of-tau 并不是唯一的受信任初始化方案。其他一些(实际上或潜在)值得注意的受信任初始化方案包括:
旧版的 ZK-SNARK 协议中使用的更为复杂的初始化方案(例如,参见此处)有时仍会被使用(特别地,Groth16),因为它验证成本会比 PLONK 更低。
一些密码协议(例如,DARK) 依赖于隐阶群,群中元素不知道进行多少次乘法运算才能得到零元素。目前存在着完全无信任的版本(请参阅:class groups),但目前为止,最高效的版本使用的是 RSA 群(的幂 mod?,其中,未知)。遵循 1-of-n 信任假设的受信任初始化方案是可能的,但实现起来非常复杂。
如果/当不可区分混淆变得可行时,许多依赖于它的协议将会涉及:某人创建和发布一个混淆程序,该程序使用内部的隐藏秘密来执行某些操作。这就是受信任初始化流程:创建者需要持有秘密值来创建程序,而且之后需要把秘密值删除。
密码学仍然是一个快速发展的领域,受信任初始化的重要性很容易会改变。
采用 IPA 和 Halo 式思想的技术方案可能会被改进到让 KZG 变得过时和不必要的程度,或者在十年后量子计算机让基于椭圆曲线的所有方案都变得不可行,届时我们将不得不使用无需受信任初始化基于哈希的协议。
KZG 改良得更快,或者出现一个依赖于另一种受信任初始化的全新密码学领域都是有可能的。
在一定程度上,受信任初始化是必要的,重要的是要记住,并非所有受信任初始化都水平相当。176 个参与者比 6 个更好,2000 个更佳。
相比于要求运行一个复杂软件包,成本小得可以在浏览器或手机应用上进行的受信任初始化仪式(例如,ZKopru 初始化就是基于Web应用)能够吸引多得多的参与者。
理想情况下,每个仪式都应当让参与者运行多个独立构建的软件实现,并且运行在不同的操作系统和环境之上,以减少共模故障的风险。
参与者只需一轮交互的仪式(如powers-of-tau)远远优于多轮交互的仪式,这既是因为能够支持更多参与者,也是因为编写多个实现会更加简单。
理想情况下,仪式应该是通用的(一个仪式的输出能够支持大量协议)。这些都是我们可以并应当继续钻研的事情,以保证受信任初始化尽可能的安全可靠。
特别感谢 ECN 社区翻译志愿者 @doublespending 对本文的翻译贡献。
点击“阅读原文”获取文章内部链接!
原文链接:https://vitalik.ca/general/2022/03/14/trustedsetup.html
ECN的翻译工作旨在为中国以太坊社区传递优质资讯和学习资源,文章版权归原作者所有,转载须注明原文出处以及ETH中文站。若需长期转载,请联系eth@ecn.co进行授权。
周四,一份新修订的13D文件显示,埃隆·马斯克召集了团队,从他440亿美元的推特收购报价中拿出了71亿美元。 这很有趣,原因有几个。 首先,这意味着埃隆“根本不在乎经济”的说法不再成立.
多元化到其他加密资产,无论是稳定的还是非稳定的,正迅速成为 DAO 资金管理议程的核心,但如何做到这一点仍有待讨论。财库互换 (Treasury Swaps) 代表了 DAO 在与其他协议形成战略联盟的同时,从自己的治理代币多样化的最新尝试。
来源:老雅痞 在2015年的一篇博文《Carlota Perez框架》中,USV的Fred Wilson写道:Carlota Perez的推论是“没有崩溃就没有重要的事情发生”.
转载公号:老雅痞 除非你曾试图驾驭金融监管或建立慈善机构,否则很难理解分散自治组织(DAO)的革命性.
网络神经元系统(NNS)是 DFINITY 的治理系统,由神经元(Nervous)组成,负责未来互联网计算机在各个方面的决策和优化。参与NNS治理需要质押ICP通证,同时也会有相应的奖励,具体取决于质押的数量和时间。 根据DFINITY最新透露的消息,NNS的目标是要将ICP总量的90%锁入神经元参与治理。
熊市已至,或许并非坏事 最近一个月内,加密市场可谓是利空不断,二级市场跌跌不休,许多机构又连锁暴雷,连环冲击之下,整个市场弥漫着一股悲观的气氛,市场恐慌情绪久久无法散去.