前言:從一鍋雞湯說起
當讀者剛開始接觸零知識證明的概念時,面臨第一關就是如何搞懂突如其來的大量名詞,比如離散對數問題、雙線性對還有Groth16、PLONK、RedShift等。不妨我們借用“烹飪”這個生活場景來類比其中的層次關系。
如果把“密碼學”比做“烹飪”,那么上個系列中對雙線性對的學習就類似于學習燉湯前先簡單了解的高壓鍋的工作原理,而zkSNARK則相當于在說明如何用高壓鍋燉出美味雞湯。
由此可見,雙線性對是類似基礎工具的角色:就像高壓鍋既可以燉雞湯也可以燉排骨湯,雙線性對既可以用于零知識證明也可以用于構造簽名等密碼學算法。而Groth16、PLONK、RedShift等,它們同屬于zkSNARK,屬于同一層次,如果沿用上述類比,那大概就是對應用高壓鍋做湯的風味選擇了。Groth16算法是JensGroth提出的一種zkSNARK算法,相關論文不僅對已有算法進行改進,而且討論了基于配對的非交互式零知識論證的證明大小問題。Groth16因其精簡的證明大小和高效的驗證效率,在ZCash等項目中多有應用,是最經典的零知識證明算法之一。
民盟中央建議加速元宇宙科普和立法:3月4日消息,民盟中央已起草了《關于“元宇宙”技術發展的提案》,并將提交全國政協十三屆五次會議。在提案中,民盟中央建議,在科普層面需加速知識傳播,法律層面則需加快立法步伐。民盟中央擬提交的提案指出,目前,在新興網絡層面,相關政策法規相對缺失。“元宇宙”在未來將會帶動形成全新的網絡形態,當遇到突發輿情,全虛擬的環境、場景將更難進行源頭追蹤、問題疏導。因此建議應盡早加快立法研究,盡快形成與技術、市場發展相適應的治理模式和法律基礎,全面提升我國社會治理的水平。建議組織相關部門,針對“元宇宙”相關需求、風險進行立法研究,并盡快發布。此前消息,民進中央擬向全國政協十三屆五次會議提交《關于積極穩妥推進元宇宙技術和產業發展的提案》。建議推進元宇宙技術產業發展,建立相關監管治理體系。(華夏時報)[2022/3/4 13:37:12]
上一個系列中我們完整介紹了零知識證明中用到的橢圓曲線和雙線性配對相關的基礎知識。本系列通過動手算的方式,以Groth16算法為例,循序漸進地介紹zkSNARK的基本原理。
IMF今日發布的加密貨幣科普視頻實為兩年前舊聞,且存在諸多疏漏:國際貨幣基金組織IMF今日在推特上發布了一條關于加密貨幣的科普視頻,這段時長兩分鐘的視頻最初發布于2018年6月。該視頻稱加密貨幣是“貨幣進化的下一步”,但沒有特別提到DLT、區塊鏈,甚至是代幣名稱等術語。BTC、XRP和ETH只出現在說明加密交易的圖形中。盡管這段視頻到目前為止已經獲得了超過13.7萬的點擊量和2900個贊,但來自加密社區的許多反應都是批評的,他們指出了信息中的漏洞和似乎具有誤導性的措辭。
Reddit用戶nanooverbtc稱:“他們犯了很多錯誤,比如把私鑰稱為密碼。”該視頻也沒有討論挖礦或加密貨幣供應。Kraken策略師Pierre Rochard等知名人士表示:“可證明的稀缺性是比特幣有趣的原因,你忘了提這一點。”(Cointelegraph)[2020/8/24]
本篇是“動手算Groth16”的上篇,主要介紹如何從程序轉化為電路和描述算數電路的一種約束系統R1CS。下篇會介紹如何從R1CS轉化為多項式相關的約束問題,并且詳細給出完整的Groth16從頭到尾的手算步驟。
動態 | 鏈客社區聯合北京交通廣播推出區塊鏈技術科普節目:12月11日15:15—16:00,區塊鏈技術社區——鏈客區塊鏈技術社區將聯合北京交通廣播FM103.9從零開始為大眾科普解碼區塊鏈技術,蜻蜓FM及北京廣播網同期進行全球直播。首期做客嘉賓為鏈客區塊鏈技術社區創始人郄建軍和百度區塊鏈產品負責人于雅楠。[2019/12/11]
程序與電路
初始接觸通用零知識證明算法時,讀者可能最容易感到疑惑的地方就是各種資料中頻繁提到的“電路”一詞。這里的“電路”是指什么?它又如何等價地對同一個問題進行描述呢?回答這些問題最簡單的方式就是使用具體的一個算法例子進行說明。比如我們有下面一段程序代碼,如何將其轉化為等價的電路呢?
動態 | 區塊鏈技術入選科普雜志《科學美國人》2019十大突破性技術榜單:據新浪網今日新聞報道,美國科普雜志《科學美國人》公布 2019 十大突破性技術榜單。區塊鏈技術因在保障食品安全中的作用而上榜。 入選榜單具體原因:區塊鏈技術的發展應用將顯著改善食品污染源數據追蹤的困境。利用區塊鏈云端系統,食品制造商可以依次在計算機儲存各類過程的信息。[2019/9/29]
▲需要被轉化為電路的代碼
這里需要注意到程序中值被存儲在變量中,而電路中的值是用電路門之間的連線表示的。這其中有個關鍵的不同是:變量的值是會隨著時間變化的,而電路中連線的值是固定不能改變的。因此首先我們通過引入一些中間量的方式表示隨循環而不斷變化的各階段的變量值,中間量命名為tmp1,tmp2...這樣的形式:
動態 | 央行官微舊文重發“再科普”:范一飛詳解數字貨幣:據中國經濟網消息,今日,央行官微公眾號頭條重新發布央行副行長范一飛在2018年1月25日題為《關于央行數字貨幣的幾點考慮》的文章,對央行數字貨幣再次進行科普。同時,微信公眾號第二條發布支付司副司長穆長春8月10日在第三屆中國金融四十人伊春論壇上的演講。近年來,各主要國家和地區央行及貨幣當局均在對發行央行數字貨幣開展研究,新加坡央行和瑞典央行等已經開始進行相關試驗,人民銀行也在組織進行積極探索和研究。[2019/8/21]
▲引入輔助的中間量
最后我們可以轉化為只有加法門和乘法門的算數電路:
▲電路示意圖
這里除去輸入和輸出外,其他的圓圈代表了電路中的門:可以是乘法門或者加法門。而門和門之間的連線對應了程序中的中間變量在某個時刻的值。
如果站在更高的角度思考,其實可以發現有很多結構都能實現“運算”功能,比如說神經元組成的人腦,比如馮·諾伊曼結構的計算機,甚至更早的機械計算器和當今的人工神經網絡。算數電路也是這樣的一種能夠完成一定運算的結構,而且基于這種結構我們能夠完成對計算輸入和過程的“零知識證明”。因此通用零知識證明算法普遍引入了“電路”這個運算結構并且會研究,如何更好的將高級語言描述的問題轉化為等價的算法電路。
上面例子中約束較多,會給后續的“動手算”產生較多的計算量壓力,因此在下文中我們以一個新的例子重新展示這個轉化的過程。本系列后續文章都會以這個新的例子為主線進行敘述,從而真實展示證明和驗證的具體計算過程。新例子的程序代碼如下:
這里涉及到4個連線以及兩個等式關系。這兩個等式關系用更規范的方式重寫一下可以幫助讀者看地更清晰:
觀察這兩個式子的特點,可以發現兩個等式關系其實都可以寫作A×B=C的形式,其中A、B和C都是變量的“加權組合”。這并非巧合,而是我們有意為之。通過這種形式我們避免了對加法門的約束產生額外開銷,而是在對乘法門進行約束的同時零開銷的對加法關系進行約束,這是groth16的特點之一。在Groth16算法中,加法門和乘法門的地位并不是等價的,我們更關心乘法門。
下面對a,b,c,d四個變量賦予編號,以便下一步的處理,按照groth16的習慣我們將輸出排列在輸入之前:
可以看到除了連線a、b、c和d,還有一個特殊的連線“1”,“1”其實可以看作是一個特殊的公共輸入,他的存在讓我們在算法中能更容易地處理常量。“1”的值總是1。
從電路到R1CS
本部分之前先回顧一下向量的內積概念,向量的內積是從兩個同維向量得到一個標量的運算,其幾何意義對應了“投影”這個概念。比方說兩個二維向量的乘法:
·=2×4+3×1=11
回過頭看剛才的結果,因為A×B=C這個形式的存在,我們其實能夠進一步的對這些等式關系進行抽象。抽象的目的是為了方便編程處理和下一步的討論。以式子(2)為例,我們其實可以認為他是如下的形式:
根據上面介紹的向量內積,可以發現這里的A,B,C其實都是向量內積的形式:
這里的s其實就是全部的連線的值,如果證明者P是真的計算過這個電路的,則P能夠獲知s的值,否則P無法得知s的值。我們將這個s稱為witness。因此通過上面的向量a,b,c我們就能夠對s進行一定的約束,即s應該滿足:
這就構成了一個一階約束,這樣的一個約束對應了電路中的一個乘法門。如果我們將所有的約束聯立起來,就得到一個一階約束系統。通過R1CS我們可以更方便的形式化描述一個零知識證明問題,從而為我們后續解決該問題提供了條件。
下篇我們會介紹如何將R1CS描述轉換為多項式描述,并且通過完整的計算過程展示groth16算法的相關內容,敬請關注。
本文來源:聰明投資者 編輯:慧羊羊 美東時間11月17日,芯片巨頭英偉達發布了截至10月31日的2021財年第三季度財報.
1900/1/1 0:00:00來源:財聯社|區塊鏈日報 記者張洋洋 一個再也無法忽視的事實是,“元宇宙”這一出自小說的概念正從科幻照進現實催生新的掘金潮.
1900/1/1 0:00:00據TheBlock消息,12月9日,知名眾籌平臺Kickstarterr宣布計劃基于Celo區塊鏈建立去中心化眾籌協議,并將在2022年將其網站過渡到新協議上.
1900/1/1 0:00:00據Cointelegraph12月11日消息,俄羅斯冬宮博物館當代藝術部主管DmitryOzerkov表示,最終,所有博物館都將在元宇宙中建造數字版本.
1900/1/1 0:00:00原文標題:《WhyDAOsAretheFutureoftheCreatorEconomy》 原文編譯:0x137 什么樣的組織架構最適用于創作者經濟?是傳統公司架構?是DAO?還是半去中心化組織.
1900/1/1 0:00:00據Decrypt消息,12月5日,NFT項目BoredApeYachtClub首席藝術家AllSeeingSeneca在巴塞爾邁阿密藝術展的Dfinity的Iconoclast畫廊活動中發布了一.
1900/1/1 0:00:00