欢迎进入UG环球官网(环球UG)!

买usdt有没有手续费(www.caibao.it):一文解读零知识证实最新希望:RedShift红移算法

admin4周前44

USDT自动API接口

菜宝钱包(caibao.it)是使用TRC-20协议的Usdt第三方支付平台,Usdt收款平台、Usdt自动充提平台、usdt跑分平台。免费提供入金通道、Usdt钱包支付接口、Usdt自动充值接口、Usdt无需实名寄售回收。菜宝Usdt钱包一键生成Usdt钱包、一键调用API接口、一键无实名出售Usdt。

写在前面

随同着区块链的手艺生长,零知识证实(ZKP,Zero Knowledger Proof)手艺先后在隐私和 Layer2 扩容领域获得越来越多的应用,手艺也在连续的迭代更新。从需要差其余 Trust Setup 的 ZKP(例如Groth16),到需要一次 Trust Setup 同时支持更新的 ZKP(例如Plonk),再到不需要 Trust Setup 的 ZKP(例如 STARK),ZKP 算法逐渐走向去中央化,从依赖经典 NP 问题,到不依赖任何数学难题,ZKP 算法逐渐走向抗量子化。

我们固然希望,一个不需要 Trust Setup 同时也不依赖任何数学难题、具有抗量子性的 ZKP 算法也具有较好的效率和较低的庞大度(STARK 的证实太大),它就是 REDSHIFT。

REDSHIFT

《REDSHIFT: Transparent SNARKs from List Polynomial Commitment IOPs》,从名字可以可出,它是基于 List 多项式答应且具有透明性的 SNARK 算法。算法自己和 PLONK 有大部门的相似之处,唯一差其余是多项式答应的原语差异。下面先简朴的通过一张表格来展示 REDSHIFT 和 PLONK 算法的异同之处,详细如下:

因此,只要对 PLONK 算法有深入领会的读者,信托再明白 REDSHIFT 算法,将是一件相对简朴的事。ZKSwap团队在此之前已经对 PLONK 算法举行了深入的剖析,我们在文章《零知识证实算法之 PLONK --- 电路》详细的剖析了 PLONK 算法里,关于电路部门的详细设计,包罗表格里的《Statement -> Circuit -> QAP》历程,而且还详细形貌了 PLONK 算法里,关于“Permutation Check”的原理及意义先容,文章零知识证实算法之 PLONK --- 协议对 PLONK 的协议细节举行了剖析,其中多项式答应( Polynomial Commitment)在内里施展了主要的作用:保持确保算法的精练性和隐私性。

我们知道,零知识证实算法的第一步,就是算术化(Arithmetization),即把 prover 要证实的问题转化为多项式等式的形式。如若多项式等式确立,则代表着原问题关系确立,想要证实一个多项式等式关系是否确立对照简朴,凭证 Schwartz–Zippel 定理可推知,两个最高阶为 n 的多项式,其交点最多为 n 个。

换句话说,若是在一个很大的域内(远大于 n)随机选取一个点,若是多项式的值相等,那说明两个多项式相同。因此,verifier 只要随机选取一个点,prover 提供多项式在这个点的取值,然后由 verifier 判断多项式等式是否确立刻可,这种方式保证了隐私性。

,

usdt支付接口

菜宝钱包(www.caibao.it)是使用TRC-20协议的Usdt第三方支付平台,Usdt收款平台、Usdt自动充提平台、usdt跑分平台。免费提供入金通道、Usdt钱包支付接口、Usdt自动充值接口、Usdt无需实名寄售回收。菜宝Usdt钱包一键生成Usdt钱包、一键调用API接口、一键无实名出售Usdt。

,

然而,上述方式存在一定的疑问,“若何保证 prover 提供简直实是多项式在某一点的值,而不是自己为了能保证验证通过而特意选取的一个值,这个值并不是由多项式盘算而来?”为领会决这一问题,在经典 snark 算法里,行使了 KCA 算法来保证,详细的原理可参见 V 神的 zk-snarks 系列。在 PLONK 算法里,引入了多项式答应(Polynomial Commitment)的看法,详细的原理可在“零知识证实算法之 PLONK --- 协议”里提到。

简朴来说,算法实现了就是在不露出多项式的情形下,使得 verifier 信托多项式在某一点的取值简直是 prover 声称的值。两种算法都可以解决上述问题,然则通讯庞大度上,多项式答应要更小,因此也更精练。

协议

下面将详细先容 REDSHIFT 算法的协议部门,如前面所述,该算法与 PLONK 算法有很大的相似之处,因此本篇只针对差其余部门做详细先容;相似的部门将会标注出来利便读者明白,详细如下图所示:

协议的 1-6 步骤在 PLONK 的算法设计里都有体现,这里着重剖析一下后续的第 7 步骤。

在 PLONK 算法里,prover 为了使 verifier 信托多项式等式关系的确立,由 verifier 随机选取了一个点,然后 prover 提供种种多项式(包罗 setup poly、constriant ploy、witness poly)的 commitment,由于使用的 Kate commitment 算法需要一次 Trust Setup 并依赖于离散对数难题,因此作为 PLONK 算法里的子协议,PLONK 算法自然也需要 Trust Setup 且依赖于离散对数难题。

在 REDSHIFT 协议里,多项式的 commitment 是基于默克尔树的(简朴讲,盘算多项式在域 H 上的所有值,并看成默克尔树的叶子节点,最终形成的根,即为 commitment)。若 prover 想证实多项式在某一个或某些点的值,证实方只需要凭证这些值插值出详细的多项式,然后和原始的多项式做商而且证实获得商也是个多项式(阶是有限制的)即可。

上一篇 下一篇

猜你喜欢

网友评论

随机文章
热门文章
热评文章
热门标签