上一篇主要描述了PLONK協議里的一個核心部分,用置換校驗的方法去證明電路門之間的一致性;接下來,將繼續分享如何證明門的約束關系得成立,以及整體的協議剖析。
門約束
舉個簡單的例子,假如存在一個電路,電路中僅有3個乘法門,對應的約束如下:
L1*R1-O1=0
L2*R2-O2=0
L3*R3-O3=0
進行多項式壓縮:定義多項式函數L(X),R(X),O(X)滿足:
L(1)=L1,R(1)=R1,O(1)=O1
L(2)=L2,R(2)=R2,O(2)=O2
L(3)=L3,R(3)=R3,O(3)=O3
此時,定義新的多項式函數F(X),令F(X)=L(X)*R(X)-O(X)
則有:
F(1)=L(1)*R(1)-O(1)=0
F(2)=L(2)*R(2)-O(2)=0
F(3)=L(3)*R(3)-O(3)=0
也就是表明:如果多項式函數F(X)在X=1,2,3處有零點,則說明門關系約束成立。
多項式函數F(X)在X=1,2,3處有零點則表明多項式F(X)可以被(X-1)(X-2)(X-3)整除,為了和論文一致,我們把這個多項式函數設置成Z(X),即:
Ripple公共政策主管敦促美國在加密監管方面向歐盟和英國學習:4月24日消息,在美國缺乏明確的加密貨幣監管的情況下,Ripple公共政策主管Susan Friedman敦促美國從歐盟和英國的監管方法中汲取靈感。
她近日警告說,缺乏此類法規會推動離岸活動,最終阻礙對非法和犯罪活動的監測。她指出,這直接與批評者的目標相矛盾。
Friedman還贊揚了歐盟在加密貨幣監管方面的進步做法,與美國注重執法而不是透明度形成鮮明對比。她還對Ripple在歐洲市場的增長表示興奮。(Crypto Globe)[2023/4/24 14:22:54]
F(X)=T(X)*Z(X)==>T(X)=F(X)/Z(X)
如果能證明T(X)是一個多項式,則說明多項式F(X)與Z(X)有相同的零點,進而說明門約束關系成立。
一般過程應該如下:
1.P計算F(X)并把F(X)發送給V;
2.V根據Z(X)直接校驗F(X)/Z(X)
但是如此過程存在兩個問題,一個是復雜性問題,假如F(X)的階為n,那通信復雜度就是O(n);而是安全性問題,多項式F(X)完全暴露給V。
那應該如何解決這兩個問題呢?最佳的答案可能就是:多項式承諾
多項式承諾
歷史上的今天丨“學習強國”平臺上線《區塊鏈技術入門》視頻學習課程:2019年10月27日,由中宣部主導開發的“學習強國”平臺已上線《區塊鏈技術入門》視頻學習課程。視頻共有25集,內容主要包括區塊鏈初步介紹、區塊鏈中的共識協議、比特幣初步、以太坊與智能合約初步、區塊鏈性能提升、區塊鏈的安全性、區塊鏈與大數據等方面的基礎知識,以及通過對區塊鏈實例的深入分析和具體的編程代碼示例。[2020/10/27]
什么是多項式承諾?就是證明方P用一個很短的數據來代表一個多項式F,這些很短的數據可以被驗證方V用來驗證多項式F在某一點的值確實為證明方P聲稱的值z。
具體看一下論文里的定義:
由圖可知:
1.Setup:初始化,生成計算多項式承諾需要的一些必備參數;
2.Commit:計算多項式承諾,其結果是一個值;
3.Open:返回與多項式承諾對應的多項式函數;
4.VerifyPoly:驗證多項式承諾是否和多項式函數一致;
5.CreateWitness:證明多項式函數在某一點的值是否是證明方P聲稱的值,具體的數學方法就是:判斷多項式是否能被整除,即:
學習時報:借助區塊鏈等工具實現具體問題與治理主體、解決方案的智能匹配:學習時報發表《如何運用數字技術提升治理效能》文章,文章表示,什么是數字技術?它以數據為基本要素,運用信息通信技術、計算機以及各類智能傳感器收集數據,借助5G、大數據、云計算、物聯網、邊緣算法、區塊鏈等工具存儲、分析、處理和傳遞數據,通過高效的云服務、公共數字平臺、開放的深度學習框架和人工智能算法等數據基礎設施,實現具體問題與治理主體、解決方案的智能匹配,達到精準精細高效治理的目的。簡言之,數字技術是智慧的治理技術,它通過增量式賦權和重構式創新,有效提升治理能力和效能。(人民網)[2020/3/30]
6.VerifyEval:驗證方V驗證多項式函數在某一點的值是否是證明方P聲稱的值,具體的數學方法是:利用雙線性配對驗證其數學乘法邏輯關系。
繼續回到我們上面的問題:
證明方如何證明:T(X)=F(X)/Z(X),我們再簡化一下場景,就令Z(X)=X-1,則:
T(X)=F(X)/(X-1)==>T(X)*(X-1)=F(X)==>T(X)*X=F(X)+T(X)
對應多項式承諾的協議可知:證明方P其實是想證明多項式函數F(X)再X=1處的值為0,因此根據協驗證方只需要證明:
e(Commit(T(x)),x*G)=?e(Commit(F(x))+Commit(T(x)),G)(雙線性配對的性質)
動態 | 山西電力春節將開展區塊鏈等新技術學習與培訓:據新華網消息,山西電力將開展區塊鏈等新技術學習與培訓,其2019年春節后的學習內容主要集中在大數據、互聯網、區塊鏈等與電網發展密切相關的新技術新趨勢方面,讓員工了解泛在電力物聯網并預熱相關工作。[2020/1/3]
可以看出,利用多項式承諾的數學工具,既可以實現復雜度的優化,又可以實現隱私保護。
協議
接下來分析一下完整的PLONK協議:
Relation
上圖表示了PLONK算法里,要證明的一種關系,需要說明的是:
1.w代表著電路里的輸入、輸出,總共3n個,n是電路里乘法門的數量,每個門都有左輸入,右輸入和輸出,因此w總共有3n個;
2.q*代表著選擇向量,它的取值對應這這個是乘法門,還是加法門等類似的約束類型
3.σ代表著置換多項式,其表示門之間的一致性約束索引
4.倒數第一個公式代表門之間的約束成立
5.倒數第二個公式代表門的約束關系成立
CRS&P_Input&V_Input
動態 | 九江市委常委會召開會議學習研究區塊鏈等技術發展應用:據中國江西網報道,11月22日,九江市委常委會召開會議,傳達學習貫徹習近平總書記和李克強總理重要講話精神,研究九江市貫徹落實意見。會議傳達學習了《習近平總書記在十九屆中央局第十八次集體學習時的講話》。會議指出,我們要深刻領會習近平總書記關于區塊鏈技術的重要論述,抓好抓實區塊鏈產業發展。要加強學習研究,順應新形勢,加強學習,認真研究區塊鏈的發展,結合九江實際,找準發展重點、路徑和措施。要加緊布局謀劃,依托九江市現有的人工智能、大數據、物聯網、5G商用等數字產業,探索區塊鏈技術在產業發展、城市建設、社會治理、民生服務等領域的深度融合。特別是鄱陽湖生態科技城要充分發揮平臺優勢,結合數字經濟發展,加大引資引才力度,引進培育一批區塊鏈產業項目和研究團隊。[2019/11/23]
上圖表示了PLONK算法里的CRS設置,以及證明方P和驗證方V的一些輸入,需要說明的是:
1.整個協議都是基于多項式的,因此需要構建對應的多項式形式。
2.多項式σ的階是3n的,由于和多項式承諾相關的CRS最高的階位n+2,因此需要把σ拆分成3個多項式S,分別記錄每個多項式的置換關系(L,R,O);
3.為了減少通信復雜度和保護隱私,協議基于多項式承諾構建,因此驗證方V的輸入都是承諾值。
Prove
上圖表示了PLONK算法里證明方的一些操作,需要說明的是:
1.b1,...b9是隨機數,從用法看是為了安全,但是我暫時也沒明白,不加這個隨機數,又會有什么安全問題?
2.a(X),b(X),c(X)分別是代表了電路里的左輸入,右輸入和輸出
3.,,表示多項式的承諾值,參考多項式承諾小節里的承諾計算方法
上圖表示了PLONK算法里證明方的一些操作,主要是置換校驗,參考第一篇的置換校驗的協議過程,生成多項式z(X),需要說明的是:
1.β和?都是用來生成置換校驗函數的參數,詳見第一篇里f`(x)和g`(x)的生成過程;
2.z(X)的生成方式對應置換校驗里跨多項式的生成過程,Li(X)為拉格朗日多項式基,性質滿足,盡在x=i的時候為1,其他為0;
3.注意區分ω和w,ω是群H的生成元,是多項式的自變量的取值。w是電路的左輸入,右輸入和輸出,是多項式L,R,O在在群H上的取值。
上圖表示了PLONK算法里證明方P的一些操作,主要是把門約束和門之間的一致性約束組合到一起,通過α,需要說明的是:
1.根據前面的描述,門約束多項式和一致性約束多項式在群H上的所有元素都是取值為0的,因此都會被多項式ZH(X)整除,等同于上面所述的T(X);
2.因此,證明方只要能證明整除的結果的確是多項式,那就能證明,門約束多項式和一致性多項式在群H所有元素上取值為0,即所有約束關系成立,即電路邏輯成立;
3.可以知道的是t(X)的階最高為3n,但是用于計算承諾的CRS只到了n的級別,因此需要把多項式t(X)拆分,然后單獨計算承諾值。
上圖表示了PLONK算法了證明方P的一些操作,主要根據多項式承諾的協議,前面P算出了多個多項式在點x=z處的值是多少,現在要用多項式承諾協議去證明,這些計算是正確的,需要說明的是:
1.為了減少驗證方V的操作復雜度,t(X)的分子部分r(X)在x=z處的值,P計算好,然后驗證方直接驗證,其他的操作類似;
2.v的值看起來是為了更安全;
3.Wz(X)對應多項式協議里的CreateWitness操作,證明這些多項式r(X),a(X),b(X)等在x=z處的值確實等于r,a,b等,對Wzw(X)同理,并返回承諾值。
Verify
至此,證明方P的所有操作都完事了,接下來都是驗證方V的操作。
上圖表示了PLONK算法里驗證方V的一些操作,主要重新生成相關的參數,確保證明方P沒有作惡。需要說明的是:
1.從輸入看,比較清晰,就是一些公開的輸入和證明方P的證明輸出;
2.根據輸入,生成置換校驗過程中需要的一些參數
上圖表示了PLONK算法里驗證方V的一些操作,對于一些公開的,并且計算復雜度很小的多項式,其在x=z處的值還是需要自己計算,更為方便。需要說明的是:
1.根據證明方P的過程來看,驗證方V的核心工作就是驗證兩個多項式承諾;
2.兩個多項式承諾驗證需要兩個配對,可以通過一個參數組合成一個配對,即μ;
3.在驗證前,先計算Wz(x),Wzw(x)的分母在x=z處的值,兩部分,減數和被減數,分別對應,。μ作為系數的,就是對應Wzw(X)多項式的。
4.最后通過一個雙線性配對操作完成兩個多項式承諾的驗證。
結束
至此,PLONK算法的協議原理已全部分享完成,公式很密集,但是細分下來,又很有層次感。能堅持看完,已實屬不易。各位讀者有什么不同的簡介,還請指教,謝謝。
據EmergingEurope1月8日報道,斯洛文尼亞加密貨幣公司Eligma獲得400萬歐元融資,RogerVer旗下公司Bitcoin.com領投,使該公司估值達到5000萬歐元.
1900/1/1 0:00:0012月14日,2020雄安區塊鏈論壇暨雄安區塊鏈底層系統發布會在雄安市民服務中心會議中心舉行。國內首個城市級區塊鏈底層系統——雄安區塊鏈底層系統在會議上發布。 雄安新區是千年大計、未來之城.
1900/1/1 0:00:00無論是《民法總則》,還是即將生效實施的《民法典》,對于數據和網絡虛擬財產的保護,都持有開放的態度.
1900/1/1 0:00:00EOS再一次上了幣圈熱搜,這一次,EOS創始人DanielLarimer宣布辭去自己在EOS母公司Block.one?的CTO職位.
1900/1/1 0:00:0012月16日,澎湃新聞發布最新數字人民幣調查報告。報告顯示,51.52%的被調查者選擇了數字人民幣是“數字化的現金,有一定匿名性”,這與官方定義一致,29.85%的被調查者認為數字人民幣是“另一.
1900/1/1 0:00:001月18日消息,波卡Polkadot創始人GavinWood在接受采訪時表示,希望看到更多的服務,包括鏈下服務和鏈上服務以及其他有助于公共利益的平行鏈,如連接到其他鏈的橋.
1900/1/1 0:00:00