配对是许多加密协议的核心组成部分,是零知识密码学现代发展的许多加密对象的基础:BLS数字签名、KZG多项式承诺和zkSNARKs。原文标题:《DAOrayaki|zkPairing:椭圆曲线配对的zkSNARKs》
撰文:?JonathanW.,VincentH.,andYiSun
编译:SkyhighFeng
配对是许多加密协议的核心组成部分。本文我们介绍circom-pairing1,一种在Circom用于椭圆曲线配对的zkSNARK电路的概念验证实现。
简介
基于配对的密码学(PBC)建立在一个叫做椭圆曲线配对的数学对象存在的椭圆曲线密码学之上。虽然配对的定义相对复杂,但它们是零知识密码学现代发展的许多加密对象的基础:BLS数字签名、KZG多项式承诺和zkSNARKs。
由于ZK生态系统中的这个关键角色,在zkSNARKs?中实现配对极大地扩展了可寻址密码构造的范围,并增加了SNARKs的反射能力。特别是,我们设想的应用程序的ZK身份,区块链扩容,和可编程的SNARKs。最后的「解锁」可能会带来一个未来,任何人都可以在运行中自由组合和联合不同的SNARKs。
美联储利率掉期显示,美联储5月加息的几率超过三分之二:金色财经报道,美联储利率掉期显示,就业数据公布后,美联储5月加息的几率超过三分之二。[2023/4/7 13:50:36]
由于配对涉及许多复杂的椭圆曲线操作,在zkSNARK中实现它们会带来许多挑战。首先,对于非自然域上的椭圆曲线算法,我们必须使用zk-ECDSA6的大整数和ECC优化,但是要适应我们的曲线和BLS12-381的配对涉及到在域扩展上操作的事实。其次,Miller的计算配对算法Miller'salgorithm7允许在标准计算模型中进行许多优化,我们将这些优化移植到zkSNARK?设置中。最后,由于配对计算的复杂性,即使最终优化的电路也可能相当大,这意味着需要一些基础设施的最佳实践来适应?Circom?工具栈。
在这一系列的文章中,我们提出了一个在BLS12-381曲线上的最优Ate配对的概念验证Circom实现,以及一个在BLS签名验证中的应用实例。然后,我们概述了其他潜在的应用,如递归SNARK和多项式承诺验证,我们认为这种方法很容易推广应用。
摩根大通:美联储下周加息100个基点的概率不到三分之一:金色财经报道,摩根大通首席美国经济学家Michael Feroli表示,美联储官员下周开会时不太可能将利率提高100个基点。他在周三给客户的一份报告中称,提高100个基点的可能性低于三分之一,“优秀的司机不会在接近目的地时加快速度”。
Feroli表示,上调100个基点意味着美联储基准利率见顶的位置会比5%还高,“我们对此表示怀疑”。他还警告说,现在加大货币政策刹车力度可能加强对美联储在2023年降息的押注。这将使美联储通过放宽金融条件来应对价格压力的工作变得更加困难。(彭博社)[2022/9/15 6:57:03]
循环配对
我们实现了循环配对circom-pairing8代码库,它为BLS12-3819曲线上的以下操作提供未经审核的ZK电路:
Tate配对是最简单的椭圆曲线配对之一。该算法满足双线性特性,适用于密码学领域,对椭圆曲线的计算和算法的正确实现起到了很好的检验作用。
Coinbase市值跌至336亿美元,约为IPO市值三分之一:3月15日,雅虎行情数据显示,Coinbase当前市值已跌至336亿美元,约为IPO市值三分之一,当前价格为153.19美元。Coinbase此前IPO开盘价为381美元,初始市值为996亿美元,开盘当日曾一度涨到429.54美元,对应市值为1120亿美元。[2022/3/15 13:57:41]
最佳配对:最佳配对是实践中最常用的配对。计算类似于Tate配对(使用Miller的算法,我们将在以后的文章中讨论);然而,涉及的步骤较少,而每一步的算法更加复杂,最终的结果是一个较短的总计算。
BLS10签名验证(短公钥):签名验证允许检查一个BLS签名.给定签名s,生成元G,公钥xG,和哈希hash,验证电路转换hash到椭圆曲线点H(m),?使用maptoG2下面的电路,然后验证s确实是由给定的公钥和消息生成的签名。BLS签名验证涉及到评估两个最优的Ate配对来验证这一点e(s,G)=e(H(m),xG),e表示最佳的Ate配对
HIVE Blockchain新投运750台蚂蚁S17+ 算力提高约三分之一:总部位于温哥华的上市区块链挖矿公司HIVE Blockchain宣布,在其最近收购的魁北克比特币挖矿业务中,已有750台新的比特大陆S17+蚂蚁矿机投入运营。根据HIVE的数据,新的S17+将使该公司的比特币算力提高约三分之一,达到229 PH/s。该公司预计,在购买更多的新机器后,算力将在不久的将来进一步增加。(Finance Magnates)[2020/5/12]
散列hash到曲线:maptoG2的BLS签名验证操作通过计算椭圆曲线上的点对。正在签名的消息必须首先散列成一个数值。然后,这个散列值被转换成椭圆曲线上的一个点;散列到曲线电路执行这种转换。
更详细的文件,我们的电路在这里可用。这些电路没有经过审核,也不打算用作生产级应用的库。
演示
为了说明我们的电路,我们在zkpairing.xyz11实现了一个演示,它允许用户生成任何BLS签名(以特定的输入格式)有效性的证明。如果用户没有一个特定的BLS签名他们可以指定以太坊信标链上的任何块号,并且演示会将块数据解析为适当的格式,并生成一个验证该验证者签名的证明区块。对于每个证明,我们提供所有的数据-在三个小文件中-任何人都可以用来在自己的计算机上验证证明!
已有三分之一的央企明确涉足区块链领域:3月初,国资委监管的央企复工复产率已超90%,在央企的带动下,中小企业复工复产率也在稳步提升。央企作为产业“火车头”的带动力,也作用于区块链领域,央企参与的区块链正在协同产业链的中小微及服务机构快速上链。中国链网的雏形已经显现。据统计,当前的96家央企中(截至2019年12月,国务院国资委管理),已有32家明确涉足区块链领域,占比升至三分之一。(互联脉搏)[2020/3/21]
基准
所有基准测试都运行在32核3.1GHz、256GRAM、1T硬盘和400G交换机(AWSr5.8xlarge实例)上。
运行大型电路
请注意,验证和Tate配对是非常大的电路,因此它们需要特殊的硬件和设置来运行。特别是,必须使用C++生成见证服务器,使用rapidsnark进行证明,使用补丁版本的Node.js而不使用垃圾收集生成密钥。所有这些都必须在具有大容量内存的机器上完成;我们的设置工作流程在《大电路最佳实践》文档中有详细说明。
我们能用zkPairing做什么?
因为配对是许多加密协议的核心组成部分,所以用于配对计算的zkSNARKs允许我们将以下高级原语放入SNARK中:
BLS签名验证:Boneh-Lynn-Shacham(BLS)数字签名是一种基于椭圆曲线配对的签名方案。由于能够使用BLS有效地计算聚合签名和阈值签名,它目前被用于区块链,如Etherum2.0、ZCash?和?Dfinity。验证BLS签名涉及到一个配对检查,检查两个椭圆曲线配对是否相等,因此通过zkPairing直接启用。这解锁了潜在的可伸缩应用程序,比如轻型客户机和桥接的签名聚合。
递归SNARK验证:因为Groth16证明验证只涉及配对检查,所以SNARK-ing配对允许SNARK-ing整个验证算法,称为递归验证。这使我们能够构建一个zkSNARK的zkSNARK的...无限广告,使开发人员能够构建不同的SNARK证明,而不是构建一个单一的大型SNARK和大大增加可能的SNARK的复杂性。我们正在调整我们的电路,以递归Groth16验证BN254,并希望在不久的将来发布一个概念证明。
KZG多项式承诺验证:KZG多项式承诺是PlonK的基础,PlonK是具有通用可信设置的新一代zkSNARK之一。因为验证KZG承诺涉及到一个配对检查,zkSNARK-ing配对使我们能够验证任何建立在SNARK中的KZG承诺之上的东西,包括PlonK验证本身!
很快就会看到第2部分讨论了zkPairing的实现技术!
参考1.https://github.com/yi-sun/circom-pairing2.https://en.wikipedia.org/wiki/Pairing-based_cryptography3.https://medium.com/@VitalikButerin/exploring-elliptic-curve-pairings-c73c1864e6274.https://en.wikipedia.org/wiki/Elliptic-curve_cryptography5.https://0xparc.org/blog/zk-id-26.https://0xparc.org/blog/zk-ecdsa-27.https://crypto.stanford.edu/pbc/notes/ep/miller.html8.https://github.com/yi-sun/circom-pairing9.https://hackmd.io/@benjaminion/bls12-38110.https://datatracker.ietf.org/doc/html/draft-irtf-cfrg-bls-signature-0411.https://zkpairing.xyz/12.https://hackmd.io/V-7Aal05Tiy-ozmzTGBYPA?view来源:金色财经
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。