在上一篇?ZKSwap團隊解讀零知識證明PLONK電路?主要描述了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
Zunami Protocol遭價格操縱攻擊,損失至少210萬美元:金色財經報道,據派盾監測,收益聚合協議Zunami Protocol遭價格操縱攻擊,損失至少210萬美元。目前被盜資金已流入Tornado Cash。
此前消息,收益聚合協議Zunami Protocol遭到攻擊,建議用戶采取必要行動[2023/8/14 16:24:26]
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),即:
F(X)=T(X)*Z(X)==>T(X)=F(X)/Z(X)
如果能證明T(X)是一個多項式,則說明多項式F(X)與Z(X)有相同的零點,進而說明門約束關系成立。
數據:Curve創始人已售出2925萬枚CRV換取1170萬美元資金來償還借款:金色財經報道,據鏈上分析師余燼監測數據,截至目前,Curve創始人Michael Egorov已通過OTC方式共售出2925萬枚CRV,以0.4美元的價格(有6個月禁售期),并獲得1170萬(美元)資金來償還借款。其中1750萬枚CRV流向0xf51開頭地址;500萬枚CRV流向justinsuntron地址;425萬枚CRV流向天使投資人DCF God;250萬枚CRV流向0x4d3開頭地址。[2023/8/1 16:11:28]
一般過程應該如下:
P計算F(X)并把F(X)發送給V;V根據Z(X)直接校驗F(X)/Z(X)但是如此過程存在兩個問題,一個是復雜性問題,假如F(X)的階為n,那通信復雜度就是O(n);而是安全性問題,多項式F(X)完全暴露給V。
那應該如何解決這兩個問題呢?最佳的答案可能就是:多項式承諾
多項式承諾
什么是多項式承諾?就是證明方P用一個很短的數據來代表一個多項式F,這些很短的數據可以被驗證方V用來驗證多項式F在某一點的值確實為證明方P聲稱的值z。
馬斯克:有必要開展AI業務抗衡谷歌和微軟,推特與特斯拉可成為AI公司合作伙伴:5月24日消息,馬斯克在倫敦舉行的《華爾街日報》CEO理事會峰會上表示,有必要開展AI業務,與谷歌和微軟相抗衡。馬斯克暗示,推特可能會是他創建AI業務努力的一部分。特斯拉一直在使用AI來改善其先進的輔助駕駛功能。馬斯克稱,推特和特斯拉可以成為一家AI公司的合作伙伴,類似微軟和OpenAI之間的關系。[2023/5/24 15:22:44]
具體看一下論文里的定義:
由圖可知:
Setup:初始化,生成計算多項式承諾需要的一些必備參數;Commit:計算多項式承諾,其結果是一個值;Open:返回與多項式承諾對應的多項式函數;VerifyPoly:驗證多項式承諾是否和多項式函數一致;CreateWitness:證明多項式函數在某一點的值是否是證明方P聲稱的值,具體的數學方法就是:判斷多項式是否能被整除,即:VerifyEval:驗證方V驗證多項式函數在某一點的值是否是證明方P聲稱的值,具體的數學方法是:利用雙線性配對驗證其數學乘法邏輯關系。繼續回到我們上面的問題:
知情人士:Coinbase曾在硅谷銀行破產后向Circle提供30億美元即時信貸額度:金色財經報道,Coinbase曾在SVB破產后向Circle提供了約30億美元的即時信貸額度,以保證USDC儲備的全部流動性,并確保穩定幣可以在SVB破產后的周一早上兌換成美元。Coinbase原計劃披露這一信貸額度,但隨后危機很快解除。Circle拒絕對此事置評,但也并未否認。
此前報道,Circle宣布在硅谷銀行中有33億美元存款,盡管只占其400億美元總資產的小部分,但由于恐慌情緒,USDC一度脫錨至0.9美元以下。(《財富》雜志)[2023/3/21 13:16:11]
證明方如何證明: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,因此根據協驗證方只需要證明:
英格蘭銀行副行長:加密貨幣必須建立明確的監管框架:7月13日消息,英格蘭銀行(Bank of England)副行長Jon Cunliffe將加密貨幣市場比作一架不安全的飛機,“人們不會在不安全的飛機上待太久。需要一個明確的加密貨幣監管框架來解決與市場低迷相關的風險。加密貨幣技術提供了真正的金融創新。然而,成功和可持續的創新需要一個可靠管理風險的框架。”
早些時候,他表示,“加密貨幣也需要在傳統金融市場層面進行監管。在傳統金融市場中,存在保護投資者免受無法彌補損失的監管。”(Cointelegraph)[2022/7/13 2:09:07]
e(Commit(T(x)),x*G)=?e(Commit(F(x))+Commit(T(x)),G)(雙線性配對的性質)
可以看出,利用多項式承諾的數學工具,既可以實現復雜度的優化,又可以實現隱私保護。
協議
接下來分析一下完整的PLONK協議:
Relation
上圖表示了PLONK算法里,要證明的一種關系,需要說明的是:
w代表著電路里的輸入、輸出,總共3n個,n是電路里乘法門的數量,每個門都有左輸入,右輸入和輸出,因此w總共有3n個;q*代表著選擇向量,它的取值對應這這個是乘法門,還是加法門等類似的約束類型σ代表著置換多項式,其表示門之間的一致性約束索引倒數第一個公式代表門之間的約束成立倒數第二個公式代表門的約束關系成立CRS&P_Input&V_Input
上圖表示了PLONK算法里的CRS設置,以及證明方P和驗證方V的一些輸入,需要說明的是:
整個協議都是基于多項式的,因此需要構建對應的多項式形式。多項式σ的階是3n的,由于和多項式承諾相關的CRS最高的階位n+2,因此需要把σ拆分成3個多項式S,分別記錄每個多項式的置換關系(L、R、O);為了減少通信復雜度和保護隱私,協議基于多項式承諾構建,因此驗證方V的輸入都是承諾值。Prove
上圖表示了PLONK算法里證明方的一些操作,需要說明的是:
b1...b9是隨機數,從用法看是為了安全,但是我暫時也沒明白,不加這個隨機數,又會有什么安全問題?a(X)、b(X)、c(X)分別是代表了電路里的左輸入,右輸入和輸出、、表示多項式的承諾值,參考多項式承諾小節里的承諾計算方法
上圖表示了PLONK算法里證明方的一些操作,主要是置換校驗,參考第一篇的置換校驗的協議過程,生成多項式z(X),需要說明的是:
β和?都是用來生成置換校驗函數的參數,詳見第一篇里f(x)和g(x)的生成過程;z(X)的生成方式對應置換校驗里跨多項式的生成過程,Li(X)為拉格朗日多項式基,性質滿足,盡在x=i的時候為1,其他為0;注意區分ω和w,ω是群H的生成元,是多項式的自變量的取值。w是電路的左輸入,右輸入和輸出,是多項式L,R,O在在群H上的取值。
上圖表示了PLONK算法里證明方P的一些操作,主要是把門約束和門之間的一致性約束組合到一起,通過α,需要說明的是:
根據前面的描述,門約束多項式和一致性約束多項式在群H上的所有元素都是取值為0的,因此都會被多項式ZH(X)整除,等同于上面所述的T(X);因此,證明方只要能證明整除的結果的確是多項式,那就能證明,門約束多項式和一致性多項式在群H所有元素上取值為0,即所有約束關系成立,即電路邏輯成立;可以知道的是t(X)的階最高為3n,但是用于計算承諾的CRS只到了n的級別,因此需要把多項式t(X)拆分,然后單獨計算承諾值。
上圖表示了PLONK算法了證明方P的一些操作,主要根據多項式承諾的協議,前面P算出了多個多項式在點x=z處的值是多少,現在要用多項式承諾協議去證明,這些計算是正確的,需要說明的是:
為了減少驗證方V的操作復雜度,t(X)的分子部分r(X)在x=z處的值,P計算好,然后驗證方直接驗證,其他的操作類似;v的值看起來是為了更安全;Wz(X)對應多項式協議里的CreateWitness操作,證明這些多項式r(X),a(X),b(X)等在x=z處的值確實等于r,a,b等,對Wzw(X)同理,并返回承諾值。Verify
至此,證明方P的所有操作都完事了,接下來都是驗證方V的操作。
上圖表示了PLONK算法里驗證方V的一些操作,主要重新生成相關的參數,確保證明方P沒有作惡。需要說明的是:
從輸入看,比較清晰,就是一些公開的輸入和證明方P的證明輸出;根據輸入,生成置換校驗過程中需要的一些參數
上圖表示了PLONK算法里驗證方V的一些操作,對于一些公開的,并且計算復雜度很小的多項式,其在x=z處的值還是需要自己計算,更為方便。需要說明的是:
根據證明方P的過程來看,驗證方V的核心工作就是驗證兩個多項式承諾;兩個多項式承諾驗證需要兩個配對,可以通過一個參數組合成一個配對,即μ;在驗證前,先計算Wz(x),Wzw(x)的分母在x=z處的值,兩部分,減數和被減數,分別對應、。μ作為系數的,就是對應Wzw(X)多項式的。最后通過一個雙線性配對操作完成兩個多項式承諾的驗證。結束
至此,PLONK算法的協議原理已全部分享完成,公式很密集,但是細分下來,又很有層次感。能堅持看完,已實屬不易。
以太坊上主要的去中心化交易所Uniswap,近幾個月來一直在暗示其平臺即將升級到新版本。他們計劃添加許多新特性,以維持他們領先的DEX地位,這些新特性包括更大的擴容性,更便宜的手續費以及與中心化.
1900/1/1 0:00:00本文作者為NewBloc策略分析師Barry,5年外匯黃金市場交易經歷。隨著比特幣愈加吸引全球投資者的關注,處在該領域的最上游組織挖礦行業也受到了機構們的青睞,我們知道挖礦的成本有礦機的價格和耗.
1900/1/1 0:00:00熱門一:證券板塊 邏輯概述:到上周五收盤,已有9家上市券商發布年報成績預告。其間,華鑫股份、紅塔證券、中信建投、長城證券、國元證券等6家上市券商,年凈利潤同比增幅別離超50%,估計達1002%、.
1900/1/1 0:00:00SBF、Caroline Ellison曾認為隨著FTX崩盤,比特幣會下跌更多:金色財經報道,據美國商品期貨交易委員會(CFTC)周三提交的一份FTX內部聊天記錄,11月6日晚上.
1900/1/1 0:00:00金佳說幣:1.23大餅午間多單完美走出--后續操作策略:恭喜跟金佳說幣實盤BTC布局多單的朋友們,午間給出BTC32250—32350多單進場,剛剛上漲到33450位置.
1900/1/1 0:00:00國際黃金行情分析: 國際黃金走勢可能更傾向于“階梯走勢”,即金價將逐步上漲。金價1825美元水平應該會保持住,如果不能,那么1800美元將能守住。技術上,圖表模式仍然具有建設性.
1900/1/1 0:00:00