以太幣交易所 以太幣交易所
Ctrl+D 以太幣交易所
ads
首頁 > 聚幣 > Info

技術干貨 | 理解零知識證明算法之Bulletproofs:Range Proof I_PRO

Author:

Time:1900/1/1 0:00:00

前言

Bulletproofs,又一個有意思的零知識證明算法,相信讀者已經很熟悉它了。和zk-snark相比,它不需要可信設置;和zk-stark算法相比,它具有較小的proofsize。根據論文,它有兩個方面的應用:1.用于rangeproof;2.用于一般算術電路的零知識證明。下面,讓我們先看一下Bulletproofs是如何高效的實現第一點。

Rangeproof

1.?預備知識

aL:表示向量{a1,a2……an}

2n:表示向量{20,21…2n-1}

<a,b>:表示向量內積∑ai*bi,結果是一個值

aob:向量對應位相乘,{a1*b1……an*bn},結果是一個向量

2.?證明

Alice想要證明

v?

=>則,需要證明一個relation得成立,如下所示:

{:V=grhv^v?}

public-x??????????witness-wrelation-R

即,對于公開信息x,Alice有隱私信息w,使得關系R成立。

令aL為金額v的在范圍內的二進制形式,則aL={a1,a2……an}?{0,1}n,且滿足<aL,2n>=v。因此,證明者需要證明以下幾個等式相等:

Tether首席技術官:比特幣今年可以“重新測試”歷史高點:金色財經報道,Tether首席技術官 Paolo Ardoino 與 CNBC 的 Arjun Kharpal 討論了比特幣今年上漲的原因以及他對加密貨幣的展望。Tether首席技術官表示,比特幣今年可以“重新測試”歷史高點。[2023/3/23 13:22:35]

V=grhv????(1)

<aL,2n>=v???(2)

aLoaR=0n??(3)

aR=aL-1n???(4)

等式(1)確保了承諾V和金額v的綁定關系,等式(2)確保了v的范圍,等式(3)(4)確保了a

L元素只屬于{0,1}。等式(2)/(3)/(4)總共包含了2n+1個約束,其中公式(2)1個,公式(3)(4)各n個。接下來,為了效率,我們需要把2n+1個約束轉換成1個約束。

3.?2n+1個約束轉換成1個約束

=>預備:從Zp中任意選擇一個數y,則b=0n是等式<b,yn>=0成立的充分條件;因為當b!=0n,等式成立的概率僅有n/p,p是有限域,遠大于n。因此,如果有<b,yn>=0,那么驗證者愿意相信b!=0n。

利用這個理論,我們把等式(2)/(3)/(4)做以下轉換:

新華網:運用區塊鏈等技術推進機關、檢察機關、審判機關、司法行政機關等跨部門大數據協同辦案:8月2日消息,新華網發布中共中央關于加強新時代檢察機關法律監督工作的意見,意見指出加強檢察機關信息化、智能化建設,運用大數據、區塊鏈等技術推進機關、檢察機關、審判機關、司法行政機關等跨部門大數據協同辦案,實現案件數據和辦案信息網上流轉,推進涉案財物規范管理和證據、案卷電子化共享。(新華網)[2021/8/2 1:30:03]

1.驗證者隨機選取一個數y發送給證明者;

2.證明者要證明:

<aL,2n>=v(5)

<aL,aRoyn>=0???????(6)

<aL-1n-aR,yn>=0???(7)

同理,等式(5)確保了v的范圍,等式(6)(7)確保了a

L元素只屬于{0,1}。此時2n+1個約束轉換成3個約束,接下來,還需要做進一步的處理:

1.驗證者隨機選取一個數z發送給證明者:

2.證明者利用z對公式(5)(6)(7)進行線性組合,得到如下公式:

z2*<aL,2n>+z*<aL-1n-aR,yn>+<aL,aRoyn>=z2*v???(8)

至此,我們已經把2n+1個約束轉換成1個約束。下面我們對公式(8)做進一步的優化,把三個點積優化成1個點積

聲音 | 日本財務省官員談Libra:希望在保護消費者的同時推動技術創新:據Coinpost消息, 日本財務省副財務官三村淳在出席V20會議時就Facebook的Libra發表了自己的看法。三村淳表示,現階段Libra受到世界各國監管機構關注,雖然FATF已構筑了AML和CTF的高標準框架,但是仍然沒有適用于Libra的一般標準。我們最終將審查并考慮相應的標準,但我們也希望在保護消費者的同時推動技術創新。[2019/6/30]

4.?三個點積優化成1個點積

=>z2*<aL,2n>+z*?<aL-1n-aR,yn>+<aL,aRoyn>=z2*v

=><aL,z2*2n>+<aL,z*yn>-<z*1n,yn>-<z*aR,yn>+<aL,aRoyn>=z2*v

=><aL,aRoyn+z*yn+z2*2n>-<z*1n,yn>+<z*1n,ynoaR>=z2*v

=><aL,aRoyn+z*1noyn+z2*2n>-<z*1n,yn+ynoaR>=z2*v

=><aL,(aR+z*1n)oyn+z2*2n>-?<z*1n,yn+ynoaR>=z2*v

前摩根士丹利駐香港執行董事:懷疑加密貨幣的比特幣持有者應理解加密貨幣潛在的技術:據btcmanager消息,香港的加密貨幣企業家,前摩根士丹利駐香港執行董事Wayne Trench表示,所有因價格波動的不穩定性對加密貨幣持懷疑態度的比特幣持有人,應該摒棄這一想法并理解加密貨幣潛在的技術。[2018/4/10]

=><aL,(aR+z*1n)oyn+z2*2n>-?<z*1n,(aR+z*1n)oyn+z2*2n-z*1n*yn+yn-z2*2n>?=?z2*v

=>?<aL-z*1n,(aR+z*1n)oyn+z2*2n>-<z*1n,-z*1n*yn+yn-z2*2n>=?z2*v

=>?<aL-z*1n,(aR+z*1n)oyn+z2*2n>=z2*v+<z*1n,-z*1n*yn+yn-z2*2n>

=>?<aL-z*1n,(aR+z*1n)oyn+z2*2n>=z2*v+<z*1n,(-z*1n+1n)*yn>-<z*1n,?z2*2n>

=>?<aL-z*1n,(aR+z*1n)oyn+z2*2n>=z2*v+(z–z2)*<1n,yn>-z3*<1n,2n>???(9)

波多黎各總督看好區塊鏈技術:波多黎各總督Ricardo Rossello在接受CNBC獨家專訪時表示,他的政府將充分利用區塊鏈技術,因為它對于政府和經濟發展具有變革意義。波多黎各經濟發展部和州長辦公室正在積極準備下個月即將舉行的“Puerto Crypto”會議,以吸引更多的加密貨幣領域的投資者。[2018/2/16]

=>?令

L=?aL-z*1n

R=?(aR+z*1n)oyn+z2*2n

δ=?(z–z2)*<1n,yn>-z3*<1n,2n>

5.驗證:

1.證明者把L/R/V發送給驗證者;

2.驗證者事先算好δ

3.驗證者根據L算出來aL,根據<aL,2n>=v算出v

4.驗證者根據L,R,v,δ驗證等式<L,R>=z2*v+δ

因為y,z都是驗證者提供,因此如果驗證者如果能驗證公式(9)成立,則相信等式(5)(6)(7)成立,則相信等式(2)(3)(4)成立,則相信v滿足關系v?。

但是,可以看到上述過程,泄露了v的信息,因此需要一個零知識證明協議。

6.?一個零知識證明協議

由于L,R包含了v的相關信息,因此,我們需要添加兩個盲因子s

L

、s

R來隱藏a

L,a

R。如公式(10)(11)所示:

l(X)=(aL-z*1n)+sL*X)??(10)

r(X)=(aR+z*1n+sR*X)oyn+z2*2n???(11)

此時,定義公式(12)

t(X)=<l(X),r(X)>=t0+t1*X+t2*X2???(12)

可以看出系數t

0是l(x)和r(x)常數項的乘積,即滿足:

t0=<L,R>=z2*v+δ

因此,問題由證明:

<L,R>=z2*v+δ

轉化成了,在任意一點x,驗證者驗證多項式值l(x),r(x),t(x)滿足關系:

<l(x),r(x)>=t(x)

多項式值l(x),r(x),t(x)由證明者提供,為了保證l(x),r(x)well-formed,即:

l(x)=(aL-z*1n)+sL*x)

r(x)=(aR+z*1n+sR*x)oyn+z2*2n

需要校驗:

P=A*Sx*g(-z)*(h`)z*yn+z^2*2^n

=hαgaLhaR*(hρgsLhsR)x*g(-z)*(h`)z*y^n+z^2*2^n

=hαgaLhaR*?hρxgsL*xhsR*x*g(-z)*(h`)z*y^n+z^2*2^n

=hα+ρx*gaL+sL*x–z*1^n*haR+sR*x*(h`)z*y^n+z^2*2^n

=hα+ρx*gaL+sL*x–z*1^n*(h`)y^no(aR+sR*x)*(h`)z*y^n+z^2*2^n

=hα+ρx*gaL+sL*x–z*1^n*(h`)y^no(aR+sR*x)+z*y^n+z^2*2^n

=hα+ρx*gaL+sL*x–z*1^n*(h`)y^no(aR+sR*x+z*1^n)+z^2*2^n

=?hμgl(h`)r

=>當且僅當l/rwell-formed,等式成立

為了保證t(x)well-fromed,即:

t=t0+t1x+t2x2

需要校驗:

=>gthτx=?Vz^2*gδ*T1x*T2x^2

=>gthτx=?(hrgv)z^2*gδ*(gt1)x*(hτ1)x*(gt2)x^2*(hτ2)x^2

=>gthτx=?hz^2*r+τ1*x+τ2*x^2*gz^2*v+δ+t1*x+t2*x^2

=>gthτx=?hz^2*r+τ1*x+τ2*x^2*gt0+t1*x+t2*x^2

=>t=?t0+t1*x+t2*x2&&τx=?z2*r+τ1*x+τ2*x2

=>當且僅當t和τxwelle-formed,等式成立

具體的協議流程圖如下圖所示:

總結

從上述流程可以看出,一次rangeproof,證明者需要發送總共{

l/r/t/

τ

x

/

μ

/T1/T2/A/S}個元素給驗證者,總共2n+3個Z

p元素,4個G元素。下一篇文章將細講,Bulletproofs如何將交互復雜度降低到對數級O(log(n))

附錄

1.Bulletproofs論文:

chrome-extension://cdonnmffkdaoajfknoeeecmchibpmkmg/assets/pdf/web/viewer.html?file=https%3A%2F%2Feprint.iacr.org%2F2017%2F1066.pdf

Tags:PROROOProof加密貨幣CPRORugProofEvident Proof Transaction Token加密貨幣市場行情走勢分析

聚幣
觀點 | 硬件錢包的開源并不代表錢包升級,而是一次重大的安全妥協_比特幣

來源:Medium_Cobo官博 編譯:頭等倉 編者注:原標題為《觀點:硬件錢包應該開源嗎?》作為開源軟件的熱情倡導者,我們非常尊重那些將他們的工作分享給全世界的先驅開發者,毫無疑問.

1900/1/1 0:00:00
權威解讀:區塊鏈50指數影響幾何_區塊鏈

來源:通證通研究院 事件 ??? 2019年12月24日,深圳證券交易所和深圳證券信息有限公司發布深證區塊鏈50指數,指數代碼399286,指數簡稱“區塊鏈50”.

1900/1/1 0:00:00
走向應用爆發前夜:區塊鏈技術加速落地還差什么?_區塊鏈

來源:21世紀經濟報道 作者:駱軼琪 區塊鏈作為底層技術的一種,在政策風向的支持下,正吸引越來越多應用落地的探索.

1900/1/1 0:00:00
2020預測(海外版):USDT成為市值第三名、Ray Dalio宣布持有BTC…_比特幣

編譯:橙皮書 來源:tokendaily編者注:本文作了不改變作者原意的刪減。每年末尾,tokendaily都會邀請國外crypto圈的KOL對新一年做一次預測.

1900/1/1 0:00:00
分析:推特創始人Jack Dorsey 為什么要開發協議而不要平臺?_比特幣

作者:王廣忠 編者注:原標題為《要協議不要平臺》2019年12月11日,Twitter創始人JackDorsey發推宣布,要出資成立一個獨立的開放標準研發團隊,開發一套社交應用的協議.

1900/1/1 0:00:00
Filecoin測試網絡即將上線,這些改動需要注意_FIL

明天凌晨,Filecoin項目將啟動測試網,對于這樣一個重量級項目,對未來的影響將是巨大的,我們第一時間聯系了Filcloud的張勇,了解到當前階段的幾個重大改動,這對于生態的礦機廠商.

1900/1/1 0:00:00
ads