真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

ProofCompression-創(chuàng)新互聯(lián)

1. 引言

借助zk-SNARKs的靈活性,可讓DeFi隱私交易更便宜更簡(jiǎn)單。

創(chuàng)新互聯(lián)長(zhǎng)期為1000多家客戶(hù)提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊(duì)從業(yè)經(jīng)驗(yàn)10年,關(guān)注不同地域、不同群體,并針對(duì)不同對(duì)象提供差異化的產(chǎn)品和服務(wù);打造開(kāi)放共贏平臺(tái),與合作伙伴共同營(yíng)造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為山陰企業(yè)提供專(zhuān)業(yè)的成都網(wǎng)站建設(shè)、網(wǎng)站建設(shè),山陰網(wǎng)站改版等技術(shù)服務(wù)。擁有10年豐富建站經(jīng)驗(yàn)和眾多成功案例,為您定制開(kāi)發(fā)。

Aztec團(tuán)隊(duì)致力于讓通用零知識(shí)交易盡可能簡(jiǎn)單的同時(shí),對(duì)zk密碼學(xué)進(jìn)行大幅改進(jìn),使這些交易簡(jiǎn)單的同時(shí)還足夠便宜。

2. 設(shè)計(jì)證明系統(tǒng)的取舍

在零知識(shí)證明系統(tǒng)中,Prover致力于讓Verifier信服某statement是正確的,同時(shí)Prover給Verifier分享的statement信息盡可能少。
零知識(shí)證明系統(tǒng)主要分為2個(gè)階段:

  • 1)證明生成階段
  • 2)證明驗(yàn)證階段

理想情況下,這2個(gè)階段應(yīng)都足夠快且計(jì)算高效,但是,現(xiàn)實(shí)情況是通常需要在二者之間進(jìn)行取舍權(quán)衡。從計(jì)算角度來(lái)說(shuō),構(gòu)建證明的計(jì)算量要遠(yuǎn)大于驗(yàn)證證明的計(jì)算量,當(dāng)提到某“fast” 構(gòu)建證明算法時(shí),“fast”是相對(duì)于某基準(zhǔn)線(xiàn),而不是相對(duì)于verification的。

在Aztec的zk-rollup中,有3個(gè)不同的角色參與創(chuàng)建和驗(yàn)證SNARK proofs,每個(gè)角色具有不同的計(jì)算能力和限制:

  • 1)用戶(hù):用戶(hù)擁有秘密信息,如其balance,其歷史交易。用戶(hù)想在保持隱私的情況下,參與交易,并與DeFi協(xié)議交互。用戶(hù)可在web瀏覽器中生成證明,瀏覽器通常運(yùn)行在低計(jì)算能力的設(shè)備,如手機(jī)上。
  • 2)Rollup Provider:rollup provider負(fù)責(zé)將用戶(hù)交易進(jìn)行打包和壓縮,該流程中包含了生成proof和驗(yàn)證proof(具體看下面的recursion討論)。rollup provider通??稍L(fǎng)問(wèn)商用級(jí)別硬件。
  • 3)區(qū)塊鏈:Ethereum Virtual Machine(EVM)為計(jì)算高度受限的環(huán)境,EVM中的每個(gè)運(yùn)算有所不同,但通常都是昂貴的,相應(yīng)的開(kāi)銷(xiāo)必須由用戶(hù)以交易手續(xù)費(fèi)支付。EVM負(fù)責(zé)驗(yàn)證一個(gè)proof(其中可能包含了多個(gè)其它proof)。

為了給Aztec的用戶(hù)帶來(lái)實(shí)惠的、真正的零知識(shí)交易,我們跨遞歸邊界將不同的證明系統(tǒng)(特別是PlonK的不同、美味口味)融合在一起。對(duì)于用戶(hù)來(lái)說(shuō),這意味著在客戶(hù)端證明生成期間降低了計(jì)算成本,同時(shí)通過(guò)最小化EVM上的計(jì)算降低了貨幣成本。

3. Recursion

由于驗(yàn)證某proof p p p本身也是某種計(jì)算,因此可引入另一個(gè)零知識(shí)證明 p ? p^* p?來(lái)證實(shí)“驗(yàn)證某proof p p p 成功”,從而實(shí)現(xiàn)遞歸證明。同時(shí) p ? p^* p?本身也必須被驗(yàn)證。
接下來(lái)看如何將2個(gè)不同的證明系統(tǒng)進(jìn)行結(jié)合或組合?

將證明系統(tǒng)看成是 ( P , V ) (\mathbf{P},\mathbf{V}) (P,V)算法組,存在2個(gè)參與者Prover和Verifier。
假設(shè):

  • 存在某證明系統(tǒng) ( P , V ) (\mathbf{P},\mathbf{V}) (P,V),其構(gòu)建proof cheap,但驗(yàn)證proof昂貴;(如TurboPlonK)
  • 存在另一證明系統(tǒng) ( P ? , V ? ) (\mathbf{P}^*,\mathbf{V}^*) (P?,V?),其構(gòu)建proof 昂貴,但驗(yàn)證proof cheap;(如PlonK)

需對(duì)以上2種證明系統(tǒng)進(jìn)行組合,以使利益大化:

  • 1)采用證明系統(tǒng) P \mathbf{P} P來(lái)構(gòu)建proof π \pi π;
  • 2)基于證明系統(tǒng) P ? \mathbf{P}^* P?來(lái)構(gòu)建proof π ? \pi^* π?,其中 π ? \pi^* π?為a proof that attests to the correct verification of π \pi π under V \mathbf{V} V;
  • 3)驗(yàn)證 π ? \pi^* π?。

最終可由具有不同計(jì)算能力的參與者來(lái)執(zhí)行以上3個(gè)步驟。正是這種思想,使得Aztec Connect可為用戶(hù)提供便宜隱私的交易。
以Plonk和TurboPlonk這2種證明系統(tǒng)組合使用為例:

  • 1)Client:使用TurboPlonk來(lái)構(gòu)建proof π -Client \pi\text{-Client} π-Client。TurboPlonk為Plonk的變種,支持定制門(mén),從而可在計(jì)算能力受限的設(shè)備上高效構(gòu)建生成proof。
    Client將 π -Client \pi\text{-Client} π-Client發(fā)送給Rollup Provider。
  • 2)Rollup Provider:以 π -Client \pi\text{-Client} π-Client為輸入,構(gòu)建Standard(即non-Turbo)Plonk proof π -Rollup \pi\text{-Rollup} π-Rollup,以證明 π -Client \pi\text{-Client} π-Client被正確驗(yàn)證。因此,Rollup Provider受限于TurboPlonk高昂的驗(yàn)證開(kāi)銷(xiāo),以及,Standard Plonk proof構(gòu)建開(kāi)銷(xiāo)。但rollup provider是強(qiáng)大的,其可解決TurboPlonk驗(yàn)證和Standard Plonk生成證明開(kāi)銷(xiāo),以及為用戶(hù)節(jié)約開(kāi)支的同時(shí),仍能獲利。proof π -Rollup \pi\text{-Rollup} π-Rollup會(huì)發(fā)送到以太坊。
  • 3)通過(guò)部署在以太坊鏈上的StandardVerifier.sol合約,可驗(yàn)證 π -Rollup \pi\text{-Rollup} π-Rollup。

注意:為了進(jìn)一步優(yōu)化壓縮流程,Aztec rollup provider實(shí)際包含了3步recursion:

  • 2步 Turbo->Turbo遞歸(使用rollup circuits和root rollup circuits,詳細(xì)組裝解釋見(jiàn)Privacy for Pennies: Scaling Aztec’s zkRollup)
  • 1步 Turbo->Standard遞歸(使用root verifier circuit)
4. Nerds插曲:定制門(mén)

假設(shè)你為協(xié)議制定者,要求所設(shè)計(jì)的零知識(shí)證明系統(tǒng)可證明包含了類(lèi)似 a + b = c , ( a + b ) ? c = d , a ? b ? c = d a+b=c,(a+b)\cdot c=d,a\cdot b\cdot c=d a+b=c,(a+b)?c=d,a?b?c=d等加法和乘法組合的statement,但你的證明系統(tǒng)中僅包含一類(lèi)gate,形如:
q m u l t × ( w l w r ) + ( 1 ? q m u l t ) × ( w l + w r ) ? w o = 0 q_{mult}\times (w_lw_r)+(1-q_{mult})\times (w_l+w_r)-w_o=0 qmult?×(wl?wr?)+(1?qmult?)×(wl?+wr?)?wo?=0【待證明的identity degree為3】
其中 w w w表示“wires” with l = l e f t , r = r i g h t , o = o u t p u t l=left, r=right, o=output l=left,r=right,o=output, q q q為"selector"用于在乘法和加法之間切換。

當(dāng)要證明存在數(shù)字 a , b , c , d a,b,c,d a,b,c,d滿(mǎn)足 ( a + b ) × c = d (a+b)\times c=d (a+b)×c=d時(shí),相應(yīng)的電路設(shè)計(jì)模板為:
在這里插入圖片描述
相應(yīng)的電路類(lèi)似為:
在這里插入圖片描述
將 a , b , c , d , z a,b,c,d,z a,b,c,d,z值填入電路設(shè)計(jì)模板中:
在這里插入圖片描述
用戶(hù)可證明相應(yīng)的值滿(mǎn)足該claim。(此處,必須在2個(gè) z z z之間進(jìn)行約束,即使用copy constraints。)

當(dāng)用戶(hù)還想要證明形如 x 5 = y x^5=y x5=y這樣的statements時(shí)(如Poseidon hash中包含了這樣fifth powers計(jì)算),若采用上面的思路,需將其分解為一系列乘法和一個(gè)加法:
x 5 ? y = [ ( ( x × x ) × ( x × x ) ) × x ] ? y = 0 x^5-y=[((x\times x)\times (x\times x))\times x]-y=0 x5?y=[((x×x)×(x×x))×x]?y=0
在這里插入圖片描述
將相應(yīng)的值填入模板,獲得execution trace形如:
在這里插入圖片描述
不同于以上方案,可引入新的custom selector,形如:
q c u s t o m × w l 5 + ( 1 ? q c u s t o m ) × ( q m u l t × ( w l w r ) + ( 1 ? q m u l t ) × ( w l + w r ) ) ? w o = 0 q_{custom}\times w_l^5 + (1-q_{custom})\times(q_{mult}\times (w_lw_r)+(1-q_{mult})\times (w_l+w_r))-w_o=0 qcustom?×wl5?+(1?qcustom?)×(qmult?×(wl?wr?)+(1?qmult?)×(wl?+wr?))?wo?=0【待證明的identity degree為6】

此時(shí) x 5 = y x^5=y x5=y的電路僅需要一個(gè)gate,形如:
在這里插入圖片描述
相應(yīng)的execution trace為:
在這里插入圖片描述
通過(guò)引入定制門(mén),將整個(gè)電路由6個(gè)門(mén)減少到了3個(gè)門(mén),從而減少了50% 的circuit size。

不過(guò),引入定制門(mén)將增加待證明的identity degree,從而意味著增加Prover的計(jì)算量,可能會(huì)抵消掉部分circuit size reduction的好處。如上例引入定制門(mén)后,待證明的identity degree由3變成了6,而circuit size減半了(由6變成了3)。若程序中僅包含少量這樣的定制門(mén)計(jì)算,則需要重新考慮引入定制門(mén)的意義,實(shí)際上,需要考慮這種情況。

同時(shí),另一個(gè)思路是:構(gòu)建不會(huì)增加identity degree的定制門(mén),或者不會(huì)增加prover太多計(jì)算量的定制門(mén)。詳細(xì)將TurboPlonk證明系統(tǒng),其關(guān)鍵創(chuàng)新在于在計(jì)算Pedersen哈希時(shí),引入了充分利用橢圓曲線(xiàn)高效scalar multiplication計(jì)算的定制門(mén)。

5. Prover和Verifier開(kāi)銷(xiāo)

在證明系統(tǒng)設(shè)計(jì)時(shí):

  • 1)Prover復(fù)雜度與circuit中的gates數(shù)緊密關(guān)聯(lián);
  • 2)Verifier復(fù)雜度與circuit size相對(duì)無(wú)關(guān),但會(huì)隨著待證明claim或identity的復(fù)雜度的增加而增加。

仍以上例為例,引入定制門(mén)后,有circuit size減少,相應(yīng)的proof構(gòu)建將更便宜;而Verifier的驗(yàn)證將相對(duì)昂貴,因其無(wú)法受益于circuit size 減少,而同時(shí)必須面對(duì)引入定制門(mén)后identity復(fù)雜度的增加。

對(duì)于Prover和Verifier來(lái)說(shuō),大量的計(jì)算開(kāi)銷(xiāo)在于需計(jì)算昂貴的橢圓曲線(xiàn)scalar multiplication。
對(duì)于Verifier來(lái)說(shuō),在identity中引入額外的selector意味著在驗(yàn)證時(shí)需增加額外的scalar multiplication運(yùn)算。
以Standard Plonk中Verifier的第9步計(jì)算為例:
在這里插入圖片描述
其中 q q q 為selector, ? \cdot ?表示scalar multiplication。更多的selector,該公式將更復(fù)雜。

6. 展望

Aztec將TurboPlonk進(jìn)一步升級(jí)為UltraPlonk,UltraPlonk為T(mén)urboPlonk+Plookup:

  • 使用lookup tables來(lái)進(jìn)步加速proof構(gòu)建,代價(jià)是增加Verifier開(kāi)銷(xiāo)。

同時(shí),Aztec還設(shè)計(jì)了名為fflonk協(xié)議:

  • proof驗(yàn)證效率高,代價(jià)是prover開(kāi)銷(xiāo)大。

fflonk為SHPlonk承諾機(jī)制的變種,具有潛力可降低約35%的EVM執(zhí)行開(kāi)銷(xiāo)。

參考資料

[1] Aztec團(tuán)隊(duì)2022年9月博客 Proof Compression

你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機(jī)房具備T級(jí)流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級(jí)服務(wù)器適合批量采購(gòu),新人活動(dòng)首月15元起,快前往官網(wǎng)查看詳情吧


網(wǎng)站名稱(chēng):ProofCompression-創(chuàng)新互聯(lián)
文章URL:http://weahome.cn/article/dccspg.html

其他資訊

在線(xiàn)咨詢(xún)

微信咨詢(xún)

電話(huà)咨詢(xún)

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部