作者:陳致佳、蒙繹澤、謝倩、江澤武報告摘要:零知識證明是一種基于概率的驗證方式,驗證的內容包括“事實類陳述”和“關于個人知識的陳述”。驗證者基于一定的隨機性向證明者提出問題,如果都能給出正確回答,則說明證明者大概率擁有他所聲稱的“知識”。Zerocoin將零知識驗證用于鑄造零幣和贖回零幣過程中,以隱藏了一筆交易對應的發送方和接收方信息,Zerocash采用更新穎的zkSNARKs技術,將需要驗證的交易內容轉換成證明兩個多項式乘積相等,結合同態加密等技術在保護隱藏交易金額的同時進行交易驗證。缺點在于若網絡收到攻擊超發零鈔,則無法發現或采取措施;Zerocoin和Zerocash均需要進行預先的“信任設置”,沒有達到真正的“去信任”。英特爾SGX、zkSTARKs等新技術有可能解決上述問題,但仍需經過實踐的檢驗。一、零知識證明原理零知識證明是一種加密方案,最初在20實際80年代由MIT研究人員在論文中提出。“零知識協議是一方可以向另一方證明某事是真實的方法,除了這一具體陳述是真實的事實以外,不透露任何額外的信息。例如對于現在登錄網站而言,在Web服務器上存儲了客戶的密碼的哈希值,為了驗證客戶實際上知道密碼,目前大部分網站采用的方式是服務器對客戶輸入的密碼進行哈希計算,并與已存結果對比,但是這種方式的弊病在于服務器在計算時就可以知道客戶的原始密碼,一旦服務器被攻擊,用戶的密碼也就泄露了。如果能夠實現零知識證明,那么就可以在不知道客戶密碼的前提下,進行客戶登錄的驗證,即使服務器被攻擊,由于并未存儲客戶明文密碼,用戶的賬戶還是安全的。基本的零知識證明協議是交互式的,需要驗證方向證明方不斷詢問一系列有關其所掌握的“知識”的問題,如果均能夠給出正確回答,那么從概率上來講,證明方的確很有可能知道其所聲稱的“知識”。例如某人聲稱知道一個數獨難題的答案,一種零知識證明的方式是驗證方隨機指定這一次按列、按行還是按九宮格來檢測,每次檢測不需要看到數字擺的具體位置,只需要檢測出來是否包含了1-9個數字即可,只要驗證的次數足夠多,那么可以大概率相信證明方是知道數獨題目的解的。但是這樣簡單的方式還不能讓人相信證明方和驗證方均沒有作假,在數獨的案例中,兩者有可能事先串通好,從而使得證明方在不知道答案的前提下通過驗證。如果他們想讓第三方信服,驗證方必須也要證明自己每次的檢測方案是隨機的且自己沒有和證明方串通。由于第三方觀察者難以驗證交互式零知識證明的結果,因此當我們向多人證明某些內容時,我們需要付出額外的努力和成本。而非交互式的零知識證明顧名思義,不需要互動過程,避免了串通的可能性,但是可能會額外需要一些機器和程序來決定試驗的序列:例如在數獨的例子中,通過程序的方式來決定哪一次按行、哪一次按列來檢測,但是這個試驗序列必須保密,否則驗證方預先知道了試驗的序列就有可能利用這個信息,提前準備,在并不知道真實“知識”的情況下通過驗證。零知識證明的內容可以概括為兩類:“事實”類陳述:例如證明“一個特定的圖可以進行三著色。”或者“一個數N是合數”;關于個人知識的陳述:例如“我知道這個特定圖的染色方案”或者“我知道N的因式分解”。但并不是所有的問題都有零知識證明的加密方案,Goldreich,Micali和Wigderson給出了理論上存在零知識證明解的有效范圍。他們發現對于在多項式時間內可以驗證解的決策問題,存在已知的零知識證明方案。只需要在這樣NP問題中找到想要證明的論述,并轉化為三色問題的一個實例,那么就可以利用已有的協議實現零知識證明。由于三色問題屬于NPC問題,任何其他的NP問題都可以轉化為這個問題的實例。二、區塊鏈中的零知識證明應用在區塊鏈上的交易中,如比特幣和以太坊網絡網絡,除了使用地址來替換交易雙方的真實身份,使得交易具有部分匿名性以外,發送、接收地址和金額都是已知的,別人有可能通過網絡上的各種信息、和現實世界發生的交互記錄等將比特幣地址和真實身份對應起來,也因此具有隱私暴露的隱患。Zerocoin設計了一種全新的思路,無法通過交易歷史分析來獲得用戶真實身份。Zerocoin里需要消耗一定價值的要交易的貨幣,以生成具有獨特序列號的一枚零幣。零知識證明可以在不透露花費了具體哪個貨幣的基礎上,驗證出你的確花了這筆錢。為了將這筆錢轉給他人,邏輯上需要我們使得這枚零幣不能再被別人花費,零幣的辦法是大家共同維護一個作廢列表,存著所有已經花費的零幣的序列號。礦工在驗證這筆花費交易時運用零知識證明的方法,不需要知道具體花掉哪一個零幣,也可以驗證零幣的序列號是否在作廢列表里。由于花費交易并沒有輸入地址和簽名的信息,整個交易過程中,礦工也并不知道這個零幣的來源,因此也就難以對交易歷史進行分析而獲取用戶身份。在零幣里,交易的金額是可以知道的,而采用zkSNARKs技術的Zerocash連交易金額都可以隱密,賬本唯一公開記錄的唯一內容就是交易的存在性。可以證明對于NP中的所有問題存在zkSNARKs。它引入了多項創新技術,使它們可以在區塊鏈中使用。最重要的是,zkSNARKs減少了證明的大小和驗證它們所需的計算量。它的過程可以簡述為。1.將要驗證的程序拆解成一個個邏輯上的驗證步驟,將這些邏輯上的步驟拆解成由加減乘除構成的算數電路。2.通過一系列的變換將需要驗證的程序轉換成驗證多項式乘積是相等的,如證明th=wv。3.為了使得證明更加簡潔,驗證者預先隨機選擇幾個檢查點s,檢查在這幾個點上的等式是否成立。4.通過同態編碼/加密的方式使得驗證者在計算等式時不知道實際的輸入數值,但是仍能進行驗證。5.在等式左右兩邊可以同時乘上一個不為0的保密的數值k,那么在驗證hk)等于vk)時,就無法知道具體的t、h、w、v,因此可以使得信息得到保護。不同于Zerocoin的密碼學原語RSA累加器,zkSNARKs技術較新,未經廣泛驗證,存在風險,同時由于更強的匿名性,Zerocash的漏洞也更難發現,和Zerocoin相比,Zerocash由于交易金額信息也是未知的,所以如果有攻擊者無限制地發行零鈔,這樣的情況是無法檢測的。除此以外Zerocoin和Zerocash均需要提前內置生成參數,用戶在使用這些網絡的時候必須信任這些參數沒有被泄露,但是一旦這些參數被泄露,整個網絡將面臨毀滅性打擊。復雜的信任設置使得Zerocash存在爭議,即使他們設計了一套“儀式”來證明自己。可能的解決辦法包括利用像英特爾SGX和ARMTrustZone這樣的現代“可信執行環境”。就英特爾的SGX技術而言,即使應用程序、操作系統、BIOS或VMM遭到了破壞,私鑰也是安全的。除此以外,最新提出的zkSTARKs技術不需要進行信任設置。根據zkSTARKs白皮書中所述,zkSTARKs是首次實現既可以不依賴任何信任設置來完成區塊鏈驗證,同時計算速度隨著計算數據量的增加而指數級加速的系統。它不依賴公鑰密碼系統,更簡單的假設使得它理論上更安全,因為它唯一的加密假設是散列函數是不可預測的,因此也使其具有抗量子性。作為一種新穎的技術,和zkSTARKs一樣,它也需要經過時間的檢驗。參考文獻:1.Zcoin中文社區,《Zcoin和Zcash:相似性和不同處》.http://www.zcoinchina.org/zcoin-and-zcash/2.Zcash團隊,《Whatarezk-SNARKs?》https://z.cash/technology/zksnarks.html.3.零幣技術白皮書《一種通過使用零幣協議(zerocoinprotocol)來保障賬務隱私的加密貨幣》4.ChristianReitwiessner,《zkSNARKsinanutshell》,https://blog.ethereum.org/2016/12/05/zksnarks-in-a-nutshell/5.MatthewGreen,《ZeroKnowledgeProofs:Anillustratedprimer》,https://blog.cryptographyengineering.com/2014/11/27/zero-knowledge-proofs-illustrated-primer/6.老錢,《一個數獨引發的慘案:零知識證明》,http://www.sohu.com/a/224915382_117959文章版權為哈希未來所有,如需轉載,請聯系哈希未來工作人員。哈希未來以科普小白區塊鏈知識,“協議層—技術層—應用層”三位一體的區塊鏈資產交易平臺,解決資產上鏈與跨鏈流通,聚焦底層技術與應用場景的研究平臺,致力于打造可信的數字時代。
螞蟻鏈隱私協作平臺AntChain FAIR引入基于零知識證明的可驗證計算技術:7月8日消息,在2023世界人工智能大會全球區塊鏈產業高峰論壇上,螞蟻鏈宣布隱私協作平臺AntChain FAIR進行全新架構升級,引入零知識證明(ZKP)為核心的可驗證計算技術,從可信數據流轉拓展到計算過程、數據屬性以及身份的可驗證。此外螞蟻鏈FAIR在可信計算架構中加入新型零知識證明虛擬機zkWASM,實現指令級別的可證明特性,可以依托 WASM 多語言生態將多種前端語言編寫的算法程序進行證明轉化,而無需關心底層復雜的算法細節,提升開發應用的友好性。
FAIR 是螞蟻鏈面向數據流轉推出的隱私協作平臺,綜合了區塊鏈和隱私計算的優勢,協作流程由智能合約驅動,數據流轉由隱私計算引擎來解決,并通過區塊鏈技術確權,登記和交易共識,可以解決數據流通過程中,數據共享與隱私保護之間的天然矛盾。目前 FAIR 已經在杭數交、貴數所等多家數據交易所得到應用。[2023/7/8 22:25:31]
零知識證明初創公司RISC Zero完成1200萬美元種子輪融資:8月9日消息,零知識證明初創公司 RISC Zero 宣布完成 1200 萬美元種子輪融資,Bain Capital Crypto 領投,Geometry 、D1 Ventures 和 Cota Capital 等參投。本輪所融資金將用于構建對開發人員友好的可擴展區塊鏈。今年 3 月,RISC Zero 推出了零知識證明虛擬機,該虛擬機使開發人員能夠構建零知識證明,并使用各種編程語言在任何計算機上執行。(The Block)[2022/8/9 12:13:26]
動態 | 全新零知識證明論文被IEEE學術會議收錄 或能抵抗量子計算機:由四位研究人員共同發表的論文透明多項式委托及其在零知識證明中的應用被第 41 屆電氣電子工程師學會安全隱私學術會議(IEEE S&P 2020)接受,其作者之一的Yupeng Zhang在推特上公開了該消息,他來自于德克薩斯州農工大學,另外三名作者來自于加州大學伯克利分校,分別是Jiaheng Zhang、Tiancheng Xie和Dawn Song (宋曉冬),宋曉冬教授也是區塊鏈隱私計算平臺Oasis Labs的創始人。據Yupeng Zhang介紹,該論文提出了一個全新且透明的零知識證明機制,可以提供非常快的驗證時間,也不需要可信設置(trusted setup)。論文中介紹到,該零知識證明機制僅使用了輕量級的加密算法比如抗碰撞的哈希函數,所以也可能是量子安全的。[2019/12/26]
動態 | 安永為以太坊提供零知識證明技術:據coindesk報道,會計公司安永(EY)宣布了一項工具,此工具將把私密交易帶到以太坊。其EY Ops Chain公共版原型是第一個用于以太坊的零知識證明(ZKP)技術。ZKP是一種加密技術,它允許雙方證明一個私密信息是真實的,這通常是關于交易的數據。[2018/10/31]
動態 | 荷蘭國際銀行推出區塊鏈隱私零知識技術:據coindesk消息,荷蘭國際銀行(ING Bank)本周在Sibos銀行會議上宣布,將發布其零知識集員(ZKSM)解決方案,將零知識技術應用于區塊鏈隱私。ZKSM允許在指定集合內驗證字母數字數據。實際上,這意味著從數字轉移到其它類型的數據,比如證明維度和地理位置。[2018/10/22]
編者按:本文來自:區塊律動,原作者:Medium-JakeRyan,翻譯:0x5。星球日報經授權轉載。此時,我們坐在海岸邊,吹著涼爽的海風,喝著一杯熱拿鐵.
1900/1/1 0:00:00加密貨幣引發了全球金融業的顛覆性變革。因為不受特定機構、政府或國家約束,數字資產獲得了世界各地很多人的關注。當基于區塊鏈的支付網絡興起,許多人將其視為非常積極的發展.
1900/1/1 0:00:00近日,投資服務平臺ChainStar宣布獲得由極豆資本、九天創合資本聯合投資的2000萬元天使輪融資。Odaily星球日報獲悉,該輪融資將主要用于團隊擴張、海外市場擴展以及品牌打造等.
1900/1/1 0:00:00編者按:本文來自藍狐筆記,作者:DanielLarimer,翻譯:Pei,星球日報經授權發布。長久以來,我一直認為權益證明是優于工作量證明的.
1900/1/1 0:00:00據韓媒etnews消息,韓國濟州特別自治區正在推進“區塊鏈特區”的建設,具體計劃將在下月底公開。許多準備進行ICO項目的國內外企業正在關注濟州區塊鏈特區.
1900/1/1 0:00:00編者按:本文來自區塊律動BlockBeats,作者:0x17&0x14,星球日報經授權轉載.
1900/1/1 0:00:00