前言
密碼學當中的零知識證明技術在web3世界有著廣泛的應用,包括進行隱私計算、zkRollup等等。其中Layer2項目FOX所使用的FOAKS就是一個零知識證明算法。在上述的一系列應用當中,對于零知識證明算法而言,有兩方面屬性極為重要,那就是算法的效率以及交互性。
算法效率的重要性不言而喻,高效的算法可以明顯的降低系統運行時間,從而降低客戶端延遲,顯著的提高用戶體驗和效率,這也是FOAKS致力于實現線性證明時間的一個重要原因。
另一方面,從密碼學的角度來講,零知識證明系統的設計往往依賴證明者和驗證者的多輪交互。例如在許多介紹零知識證明的科普文章當中都會使用的“零知識洞穴”的故事當中,證明的實現就依賴于阿里巴巴和記者多輪的信息傳遞交互才能實現。但是事實上,在許多應用場景當中,依賴交互會使得系統不再可用,或者極高的增加延遲。就像在zkRollup系統當中,我們期望證明者能夠在本地,不依賴于和驗證者交互的情況下就計算出正確的證明值。
從這個角度說,如何將交互式的零知識證明協議改造為非交互式,就是一個很有意義的問題。在這篇文章當中,我們將介紹FOX使用經典的Fiat-Shamir啟發式來生成Brakedown中的挑戰從而實現非交互式協議的過程。
恒生電子:聯盟鏈的創新空間應集中在如何更好地服務中小和小微企業方面:金色財經報道,6月23日,恒生電子區塊鏈發展部運營經理林晗做客金色財經舉辦的“聯盟鏈-創新場景應用的偶然與必然”為主題的金色沙龍第64期活動。林晗表示中國的區塊鏈研究和專利成果,從一開始就比較集中在區塊鏈技術的應用和落地,也就是產業區塊鏈方面。現階段聯盟鏈適用于與具體細分產業相結合的場景,比如說產業金融領域,例如產業金融區塊鏈平臺范太鏈。聯盟鏈的創新空間應是集中如何利用區塊鏈解決小微企業的信任問題、更好提升小微企業運營效率來開展。因為區塊鏈能解決的一個核心痛點是信任問題,與本身就具有信任背書能力的大企業相比,在產業中往往是小企業才需要解決信任問題。區塊鏈作為一種劃時代意義的記賬技術,其最大的價值是應該被用來與實體產業結合,促進社會發展。[2021/6/23 0:00:23]
零知識證明中的Challenge
零知識證明算法隨著應用的鋪開而變得異常火爆,近些年也誕生了包括FOAKS、Orion、zk-stark等在內的各種算法。這些算法,以及密碼學界早期的sigma協議等的核心證明邏輯都是證明者先將某個值發送給驗證者,驗證者通過本地隨機數產生一個挑戰,將這個隨機產生的挑戰值發給證明者,證明者需要真的有知識才能以大概率做出通過驗證者的響應。例如在零知識洞穴當中,記者拋一個硬幣,告訴阿里巴巴從左側出來還是從右側出來,這里的“左和右”就是對阿里巴巴的挑戰,他如果真的知道咒語,就一定可以從要求的方向走出來,否則就有一半的概率失敗。
觀點:無論與SEC的訴訟結果如何 對Ripple而言都不是致命打擊:1月27日消息,針對美國SEC對Ripple發起的訴訟,律師Jeremy Hogan表示,如果訴訟最終對Ripple有利,在訴訟結束時,XRP價格將上漲2至3倍將只是一個“保守估計”。無論訴訟得出什么結論,對Ripple來說都不是致命的打擊。如果訴訟結果不佳,導致Ripple關閉,XRP可能會歸零,但這種情況不太可能發生。因為Ripple是一個技術公司,不太依賴實物資產運營。最糟糕的情況可能是其商業模式遭破壞,最終可能退出美國市場。Jeremy Hogan稱,SEC訴訟最可能的結果將是雙方達成和解。SEC可能會對Ripple包括其2013-2014年度(甚至2015年)的業務處以巨額罰款,以及對托管XRP銷售業務進行某種控制或限制。(AMBCrypto)[2021/1/27 21:48:59]
這里我們注意到,Challenge的生成是一個很關鍵的步驟,它有兩個要求,隨機和不可被證明者預測。第一點,隨機性保證了它的概率屬性。第二點,如果證明者可以預測挑戰值那就意味著協議的安全性被破壞了,證明者沒有知識也可以通過驗證,可以繼續類比,阿里巴巴如果能預測記者要求他從哪邊出來,他即使沒有咒語也可以提前進入那一邊,結果表現出來一樣可以通過協議。
復旦大學教授許多奇:當今國際社會首當其沖的問題是如何判定數字貨幣法律性質:日前在金融法治菁英論壇上,復旦大學法學院教授許多奇表示,如何監管加密數字貨幣是當今國際社會普遍關注的問題,而首當其沖的問題是加密數字貨幣的法律性質判定問題,司法機關有關加密數字貨幣屬性的判定能否成為實現有效監管的基礎?在眾多司法轄區的多種監管思路中我們應作何種選擇?對于這些問題的思考和深入研究對于實現對加密數字貨幣的有效監管大有裨益。(中國貿易報)[2020/4/29]
所以我們需要一種辦法,能夠讓證明者自己本地生成這樣一個不可預測的隨機數,同時還能夠被驗證者驗證,這樣就可以實現非交互式的協議。
哈希函數
哈希函數的名字對我們來說或許并不陌生,無論是在比特幣的共識協議POW當中擔任挖礦的數學難題,還是壓縮數據量,構造消息驗證碼等等,都有哈希函數的身影。而在上述不同的協議當中,其實是運用了哈希函數的各種不同性質。
具體來講,安全的哈希函數的性質包括以下幾點:
壓縮性:確定的哈希函數可以將任意長度的消息壓縮成為固定長度。
有效性:給定輸入x,計算輸出h是容易的。
抗碰撞性:給定一個輸入x1,希望找到另一個輸入x2,x1x2,h=h,是困難的。
金色相對論 | 陳鈺璋:STO核心問題是如何與先行者爭奪優秀項目:本期金色相對論中,高鏈資本創始合伙人陳鈺璋就“STO來襲將如何影響市場”的問題發表看法,陳鈺璋表示,STO給一些小國一個不錯的窗口,不過問題是這些國家需要流量。沒有流量的合法合規也沒有太大用處。
如果區塊鏈是創新,我們就要用創業的思維去理解它、改善它。看待STO的最核心問題是:如何與納斯達克、紅杉、軟銀這些交易所和巨額基金爭奪真正的好項目?這是一個先有雞還是先有蛋的問題:需要有足夠的流動性,才能夠吸引真正的好項目。但是誰來提供從零到一的流動性呢?我能看到的是超級財團,例如軟銀、黑石、GIC這些基金聯合小國家的政府立法,成立國際上第一個不缺錢的穩定STO體系,吸引到最優質的頂級企業入駐,打造成功案例,然后把其他B輪、C輪的S級別企業吸引過去,才能建立良性循環。而新加坡政府如果能夠把GIC和Temasek的流動性注入到STO里,在新加坡成立STO交易所,會改變歷史。[2018/10/12]
注意,如果哈希函數滿足抗碰撞性,那么必然滿足單向性,也就是說給定一個輸出y,要找出x滿足h=y是困難的。在密碼學當中,還不能構造出理論上絕對滿足單向性的函數,但是哈希函數在實際應用當中可以基本視作單向函數。
這樣一來,可以發現上述的幾種應用分別對應于哈希函數的幾點不同的性質,同時我們說,哈希函數還有一個很重要的作用是提供隨機性,雖然密碼學理論當中要求的完美的隨機數生成器目前也無法構造,但是哈希函數在實際當中同樣可以充當這個角色,這就為我們后文介紹的Fiat-Shamir啟發式的技巧提供了基礎。
肯尼亞成立了一個特別小組,研究如何利用人工智能和區塊鏈等最新技術:肯尼亞成立了一個特別小組,研究如何利用人工智能和區塊鏈等最新技術。“我們錯過了互聯網浪潮,趕上了移動技術……區塊鏈是下一個浪潮,我們必須參與其中。”信息部部長約瑟夫·穆切魯(Joseph Mucheru)表示,在其他用途中,區塊鏈可以幫助組織政府存儲的土地記錄,這對那些想要購買、出售或核實有關土地信息的人來說,是一種持續性的保障。[2018/5/5]
Fiat-Shamir啟發式
事實上,Fiat-Shamir啟發式就是利用哈希函數來對前面生成的腳本進行哈希運算,從而得到一個值,用這個值來充當挑戰值。
因為將哈希函數H視作一個隨機函數,挑戰是均勻隨機的被選擇,獨立于證明者的公開信息和承諾的。安全分析認為Alice不能預測H的輸出,只能將其當作一個oracle。在這種情況下,Alice在不遵循協議的情況下做出正確響應的概率(特別是當她不知道必要的秘密時)與H的值域的大小成反比。
圖1:利用Fiat-ShamirHeuristic實現非交互式證明
非交互式FOAKS
在本節,我們具體展示Fiat-Shamir啟發式在FOAKS協議當中的應用,主要是用來產生Brakedown部分的挑戰,從而實現非交互式的FOAKS。
首先我們看到,在Brakedown生成證明的步驟當中,需要挑戰的步驟是“近似性檢驗”以及MerkleTree的證明部分。對于第一點原本的過程是證明者在這里需要驗證者產生的一個隨機向量,計算過程如下圖所示:
圖2:非交互證明FOAKS中的BrakedownChecks
現在我們使用哈希函數,讓證明者自己產生這個隨機向量。
令γ0=H(C1,R,r0,r1),對應的,在驗證者的驗證計算當中,也需要增加這個計算出γ0的步驟。根據這樣的構造,可以發現,在生成承諾之前,證明者并不能提前預測挑戰值,于是不能提前根據挑戰值來對應的“作弊”,也就是對應的生成假的承諾值,同時,根據哈希函數輸出的隨機性,這個挑戰值也滿足隨機性。
對于第二點,令?=H(C1,R,r0,r1,c1,y1,cγ0,yγ0)。
我們使用偽代碼給出改造后非交互式的Brakedown多項式承諾當中的證明和驗證函數,這也是FOAKS系統當中使用的函數。
functionPC.Commit(?):
Parsewasak×kmatrix.TheproverlocallycomputesthetensorcodeencodingC1,C2,C1isak×nmatrix,C2isan×nmatrix.
fori∈do
ComputetheMerkletreerootRoott=Merkle.Commit(C2)
ComputeaMerkletreerootR=Merkle.Commit(),andoutputRasthecommitment.
functionPC.Prover(?,X,R)
Theprovergeneratesarandomvectorγ0∈Fkbycomputing:γ0=H(C1,R,r0,r1)
Proximity:
Consistency:
Proversendsc1,y1,cγ0,yγ0totheverifier.
Provercomputesavector?aschallenge,inwhich?=H(C1,R,r0,r1,c1,y1,cγ0,yγ0)
foridx∈?do
ProversendsC1andtheMerkletreeproofofRootidxforC2underRtoverifier
functionPC.VERIFY_EVAL(ΠX,X,y=?(X),R)
Proximity:?idx∈?,Cγ0==<γ0,C1>andEc(yγ0)==Cγ0
Consistency:?idx∈?,C1==<γ0,C1>andEc(y1)==C1
y==1,y1>
?idx∈?,Ec(C1)?isconsistentwithROOTidx,andROOTidx’sMerkletreeproofisvalid.
Outputacceptifallconditionsaboveholds.Otherwiseoutputreject.
結語
許多的零知識證明算法在設計之初都依賴證明者和驗證者雙方的交互,但是這種交互式證明協議不適合用在追求高效,網絡通訊開銷大的應用場景下,比如鏈上數據隱私保護和zkRollup等等。通過Fiat-Shamir啟發式,可以在不破壞協議安全性的條件下讓證明者本地生成隨機數“挑戰”,并且可以被證明者驗證。根據這種方法,FOAKS同樣實現了非交互式的證明,并應用在系統當中。
參考文獻
1.Fiat,Amos;Shamir,Adi(1987)."HowToProveYourself:PracticalSolutionstoIdentificationandSignatureProblems".AdvancesinCryptology—CRYPTO'86.LectureNotesinComputerScience.SpringerBerlinHeidelberg.263:186–194.doi:10.1007/3-540-47721-7_12.ISBN978-3-540-18047-0.
2.https://www.cnblogs.com/zhuowangy2k/p/12246575.html
撰文:康水躍,FoxTechCEO;孟鉉濟,FoxTech首席科學家
來源:DeFi之道
大的DeFi協議基本上都經過多輪審計,我們前前后后5次審計費用百萬刀級別大的協議常規審計每年都百萬刀,但藍籌DeFi沒哪個沒被黑過?這里原因很簡單,簡單的數學問題從攻防來看.
1900/1/1 0:00:00試用了ChatGPT好幾周之后,我突然想知道,是否有其他人工智能工具也能像ChatGPT一樣,讓我的生活更輕松?人工智能正在改變我們的工作和生活方式,我不想錯過充分利用它的機會.
1900/1/1 0:00:007:00-12:00關鍵詞:Arbitrum、美聯儲、Base測試網、Tether1.Arbitrum宣布允許開發者部署L3區塊鏈的ArbitrumOrbit;2.
1900/1/1 0:00:00圖片來源:由MazeAI生成2月28日,NFT領域最強IP締造者YugaLabs官宣,將基于Ordinal協議在比特幣區塊鏈上推出NFT系列TwelveFold.
1900/1/1 0:00:00文心一言千呼萬喚始出來,兩天內,百度股價先抑后揚,實現了一個大號V字反轉。新聞發布會當天百度港股股價下跌后,隨著部分媒體和企業用戶陸續拿到內測邀請碼,文心一言真實的能力表現很快提振了資本市場對百.
1900/1/1 0:00:003月10日消息,Discord宣布推出三種新的AI實驗,包括AI聊天機器人Clyde、AutoModAI和ConversationSummaries,并啟動AI孵化器.
1900/1/1 0:00:00