撰文:FoxTechCEO康水躍,FoxTech首席科學家孟鉉濟前言:如果密碼學家沒有發現張量積和多項式取值之間的聯系,那就很難出現多項式承諾協議Brakedown,也就不可能誕生基于Brakedown的Orion、以及FOAKS這類全新的快速算法。
在許多依賴多項式承諾的零知識證明系統當中,使用了不同的承諾協議。根據a16z的JustinThaler在2022年8月文章“MeasuringSNARKperformance:Frontends,backends,andthefuture”的評估,Brakedown雖然有較大的ProofSize,但是無疑是當下最快的多項式承諾協議。
FRI、KZG、Bulletproof是更為常見的多項式承諾協議,但速度是它們的瓶頸。zkSync采用的Plonky、PolygonzkEVM采用的Plonky2、Scroll采用的Ultra-Plonk等算法都是基于KZG的多項式承諾。Prover涉及到大量的FFT計算和MSM運算生成多項式和承諾,這兩者都會帶來大量的計算負擔。雖然MSM有運行多線程加速的潛力,但需要大量內存,即使在高并行下也很慢,而大型FFT則嚴重依賴算法運行時數據的頻繁洗牌,難以通過分布式加速跨計算集群加載。
正是由于有了更為快速的多項式承諾協議Brakedown,才使這類運算的復雜度大幅降低。
FOAKS即FastObjectiveArgumentofKnowledges,是由FoxTech提出的一種基于Brakedown的零知識證明系統框架。FOAKS在Orion的基礎上進一步減少FFT運算,目標是最終消除FFT。此外,FOAKS還設計出一種全新的非常精妙的證明遞歸方式來減少證明大小。FOAKS框架的優勢在于在實現線性證明時間的基礎上有著較小的證明大小,非常適合應用于zkRollup場景當中。
批評人士:歐洲加密貨幣法案MiCA在生效之前就已經過時了:金色財經報道,周四,歐洲立法者批準了《加密資產市場監管》法律(MiCA),該法律將成為歐盟提供首個管理加密行業的規則。MiCA已經的制定歷經了三年,作為美國通過執法行動監管該行業的替代方案,受到了加密行業高管的歡迎。然而,批評人士表示,這項法律在生效之前就已經過時了,因為它幾乎錯過了加密貨幣寒冬,而且已經有人呼吁更新。一旦實施,MiCA將要求任何在歐盟提供加密相關服務的公司在歐盟成員國之一獲得注冊,然后允許他們在整個歐盟開展業務。歐洲銀行業管理局(EBA)和歐洲證券及市場管理局將負責確保加密平臺遵守這些規則,包括擁有足夠的風險管理和治理流程,以避免再次發生類似的加密交易所破產。[2023/4/20 14:16:42]
下文我們將詳細介紹FOAKS所使用的多項式承諾協議Brakedown。
在密碼學當中,承諾協議由證明者對某一個秘密值進行承諾,生成一個公開的承諾值,這個承諾值具有綁定性和隱藏性,之后提交者需要打開此承諾并將消息發送到驗證者,以驗證承諾與消息之間的對應關系。這一點,使得承諾協議和哈希函數的作用有許多共通之處,但是承諾協議往往依賴于公鑰密碼學領域的數學結構。而多項式承諾是一類對于多項式的承諾方案,也就是說被承諾值是多項式。而同時多項式承諾協議當中還包含了在給定的點取值并給出證明的算法,這就使得多項式承諾協議本身成為一類重要的密碼學協議,是許多零知識證明系統的核心部分。
而在最新的密碼學領域的研究當中,由于發現了張量積和多項式取值之間的聯系,所以誕生了一系列與此相關的多項式承諾協議,Brakedown是其中的代表性協議。
巴西政府準備出臺新法令以澄清加密貨幣規則:金色財經報道,巴西政府正準備發布一項法令,以填補最近批準的加密貨幣法留下的空白。該文件由財政部準備,將確定巴西中央銀行和國家證券監管機構 (CVM) 的監督和職責范圍。(News Bitcoin)[2023/2/18 12:15:00]
在詳細介紹Brakedown的協議細節之前,需要先了解一些基礎知識。我們需要先了解線性碼、抗碰撞哈希函數、默克爾樹、張量積的運算以及多項式取值的張量積表示。
首先是線性碼。一個消息長度為k,碼字長度為n的線性碼是一個線性子空間CFn,使得存在一個從消息到碼字的單射,稱為編碼,記作EC:FkC。任意的對于碼字的線性組合仍然是一個碼字。兩個碼字u,v的距離即他們的漢明距離,記作(u,v)。最短距離為d=minu,v(u,v)。這樣的碼記作線性碼,用dn表示碼的相對距離。
其次是抗碰撞哈希函數與默克爾樹。
使用H:{0,1}2{0,1}表示一個哈希函數。默克爾樹是一種特殊的數據結構,可以實現對于2d個消息的承諾,生成一個哈希值h,在打開任何消息時候需要d+1個哈希值。
默克爾樹可以被表示為一個深度為d的二叉樹,其中L個消息元素m1,m2,...,ml分別對應樹的葉子。樹的每一個內部節點都由它的兩個子節點進行哈希計算得出。打開消息mi時,需要公開從mi到根節點的路徑。
用以下記號來表示:
hMerkle.Commit(m1,...,ml)
(mi,i)Merkle.Open(m,i)
{0,1}Merkle.Verify(i,mi,h)
數據:一巨鯨從Gearbox移除1000萬枚USDC后存入Aave并借入1000枚ETH:金色財經報道,據PeckShield監測,czsb.eth地址從Gearbox USDC池中移除1000萬枚USDC流動性,之后存至AaveV2后借入1000枚ETH(約合127萬美元),并將這些ETH轉入幣安。[2022/12/13 21:41:44]
圖1:默克爾樹
我們還需要了解張量積的運算是怎么做的。數學上,張量是向量和矩陣向高維空間的擴展,是很重要的研究對象,詳細的討論張量超出本文的研究范疇,這里只介紹向量和矩陣的張量積運算。
圖2:向量和矩陣的張量積運算
緊接著,我們需要知道多項式取值的張量積表示。當中提到,多項式的取值可以被表示成張量積的形式。在這里我們考慮多線性多項式的承諾。
具體來講,給定一個多項式,他在向量x0,x1,...,xlogN-1的取值可以寫成:
(x0,x1,...,xlogN-1)=i0=01i1=01...ilogN-1=01wi0i1...ilogN-1x0i0x1i1...xlogN-1ilogN-1
根據多線性的定義,每一個變量的次數是0或1,因此,這里有N個單項式和系數,以及logN個變量。令i=j=0logN-12jij,其中i0i1...ilogN-1是i的二進制表示。令w表示多項式系數,w=wi0i1...ilogN-1。同樣的,定義Xi=x0i0x1i1...xlogN-1ilogN-1。令k=N,r0={X0,X1,...,Xk-1},r1={X0k,X1k,...,Xk-1k}。于是有X=r0r1。
NFT市場LooksRare以50ETH購入looksrare.eth域名:8月25日消息,NFT市場LooksRare以50ETH價格購入looksrare.eth域名,隨后將其官方Twitter賬戶名稱修改為LooksRare.eth。[2022/8/25 12:48:39]
從而,多項式取值可以被表示成張量積的形式:(x0,x1,...,xlogN-1)=<w,r0r1>。
最后,我們來看FOAKS、Orion當中使用的Brakedown的過程。
首先,PC.Commit將多項式系數w劃分成kk的矩陣形式,并將其編碼,記作C2。之后對于C2的每一列C2進行承諾建立一個默克爾樹,然后再對于每一個列形成的默克爾樹樹根建立另一個默克爾樹,作為最終的承諾。
在取值證明的計算中,需要證明兩點,一是近似性,二是一致性。近似性保證了承諾的矩陣確實和編碼后的一個碼字足夠接近。一致性保證y=<w,r0r1>。
近似性檢驗:近似性檢驗由兩步組成。首先,驗證者發送一個隨機向量0給證明者,證明者計算0與C1的內積,也就是以0的分量為系數對C1的行計算線性組合。由于線性碼的性質,C0是y0的碼字。之后,證明者證明C0確實是從被承諾的碼字計算出的。為了證明這一點,驗證者隨機選取t列,證明者打開對應的列并提供默克爾樹證明。驗證者檢查這些列和0的內積和C0當中對應位置相等。當中證明如果使用的線性碼有常數的相對距離,那么被承諾的矩陣就以壓倒性的概率與一個碼字接近。
一致性檢驗:一致性檢驗和近似性檢驗的流程完全類似。不同之處在于,不使用隨機向量0而是直接使用r0來完成線性組合的部分。類似的,c1也是消息y1的一個線性碼,并且有(x)=<y1,r1>。當中證明,通過一致性檢驗,如果被承諾的矩陣與一個碼字接近,則以壓倒性概率成立y=(x)。
分析師:BTC短期上漲是“假象”,大量空頭未平倉頭寸仍存在:金色財經消息,雖然比特幣價格回升至23,000美元以上,但不少業內分析認為本次短期上漲是“假象”,加密市場或將走向新低。加密貨幣分析師Dylan LeClair透露,目前仍有數以萬計的BTC空頭未平倉頭寸仍存在,尤其是在6月15日至7月15日期間新開設了大量比特幣空頭頭寸,這意味著盡管比特幣短期內也許會進一步上漲,但仍有可能逆轉走勢并再次走低。(Cointelegraph)[2022/7/20 2:25:45]
以偽代碼形式,我們給出Brakedown協議的流程:
Publicinput:TheevaluationpointX,parsedasatensorproductX=r0r1;
Privateinput:Thepolynomial,thecoefficientofisdenotedbyw.
LetCbethe-limearcode,EC:FkFnbetheencodingfunction,N=kk.IfNisnotaperfectsquare,wecanpadittothenextperfectsquare.Weuseapythonstylenotationmattoselectthei-thcolumnofamatrixmat。
functionPC.Commit():
????????Parsewasakkmatrix.TheproverlocallycomputesthetensorcodeencodingC1,C2,C1isaknmatrix,C2isannmatrix.
????????forido
??????????????ComputetheMerkletreerootRoott=Merkle.Commit(C2)
????????ComputeaMerkletreerootR=Merkle.Commit(),andoutputRasthecommitment.
functionPC.Prover(,X,R)
????????Theproverreceivesarandomvector0Fkfromtheverifier
????????Proximity:C0=i=0k-10C1,y0=i=0k-10w
????????Consistency:C1=i=0k-1r0C1,y1=i=0k-1r0w
????????ProversendsC1,y1,C0,y0totheverifier.
????????VerifierrandomlysamplestasanarrayIandsendittoprover
????????foridxIdo
??????????????ProversendsC1andtheMerkletreeproofofRootidxforC2underRtoverifier
functionPC.VERIFY_EVAL(X,X,y=(X),R)
????????Proximity:idxI,C0==<0,C1>andEC(y0)==C0
????????Consistency:idxI,C1==<r0,C1>andEC(y1)==C1
????????y==<r1,y1>
????????idxI,EC(C1)isconsistentwithROOTidx,andROOTidx’sMerkletreeproofisvalid.
????????Outputacceptifallconditionsaboveholds.Otherwiseoutputreject.
結語:多項式承諾是一類非常重要的密碼學協議,被廣泛的應用在許多密碼學系統當中,尤其是零知識證明系統。本文詳細介紹了多項式承諾Brakedown協議以及和其相關的數學知識,作為FOAKS很重要的底層組件,Brakedown對FOAKS的實例化性能的提升起到了重要作用。
參考文獻
:AlexanderGolovnev,JonathanLee,SrinathSetty,JustinThaler,andRiadS.Wahby.Brakedown:Linear-timeandpost-quantumsnarksforr1cs.CryptologyePrintArchive.https://ia.cr/2021/1043.
:XieT,ZhangY,SongD.Orion:Zeroknowledgeproofwithlinearprovertime//AdvancesinCryptology–CRYPTO2022:42ndAnnualInternationalCryptologyConference,CRYPTO2022,SantaBarbara,CA,USA,August15–18,2022,Proceedings,PartIV.Cham:SpringerNatureSwitzerland,2022:299-328.https://eprint.iacr.org/2022/1010
:Bootle,Jonathan,AlessandroChiesa,andJensGroth."Linear-timeargumentswithsublinearverificationfromtensorcodes."TheoryofCryptography:18thInternationalConference,TCC2020,Durham,NC,USA,November16–19,2020,Proceedings,PartII18.SpringerInternationalPublishing,2020.
JustinThalerfromA16zcrypto,MeasuringSNARKperformance:Frontends,backends,andthefuturehttps://a16zcrypto.com/measuring-snark-performance-frontends-backends-and-the-future/
張量積的介紹:https://blog.csdn.net/chenxy_bwave/article/details/127288938
基于Arbitrum的鏈上資產管理平臺Factor在2月20日至周五結束的代幣發行中,從4,000多個錢包中籌集了大約760萬美元,公開發售已經結束.
1900/1/1 0:00:00整理:西昻翔,ChainCatcher“過去24小時都發生了哪些重要事件”?1、美國破產法官同意Binance.US以13億美元收購Voyager據路透社報道.
1900/1/1 0:00:00加密交易所CoinFLEX近日在一份文件中聲稱曾于去年借給金融服務公司Blockchain.com總共3,000,000枚FLEX代幣,價值約為430萬美元,現要求對方在3月7日歸還.
1900/1/1 0:00:00貢獻者:YeWang@THUBAResearchCore審核者:Yofu@DAOrayaki 視頻鏈接點擊此處 摘要 KeyTakeaway 目前主流的鏈上數據分析工具多處于從Web2向Web3.
1900/1/1 0:00:00據官方推特,Conflux的EVM空間eSpace已與Coinhub去中心化錢包達成戰略合作,雙方將在社區合作、資源共享等方面開展深度合作.
1900/1/1 0:00:00Paradigm聯合創始人MattHuang在社交媒體針對“Blur創始人Pacman公開身份”一事表示:“Namebase是我和另一位聯創FredEhrsam以及合伙人CharlieNoyes.
1900/1/1 0:00:00