本來想寫《用人話解釋零知識證明》,但是發現做不到,因為至今我也沒能用人話解釋區塊鏈原理,零知識證明比區塊鏈原理更抽象,網上的資料90%以上是關于這個算法的推導,但是對于90%以上的程序員來說,我們并不關心哈希算法的原理,我們只關心哈希算法怎么用。
首先,這是一個非常基礎的函數結構:
如果這個function是一個哈希算法,那么,輸入任意文件,就可以得到對應的哈希值。假設有這樣的一個情況,某個哈希值我們大家都知道了,想要知道是哪個文件,這個文件在你手上,你很興奮的說,文件找到了,大伙說好啊你把文件拿出來,我們算一下哈希,看能不能對上。這時候你就犯愁了,這是個機密文件,哪能說提供就提供的,咋辦?
動態 | KIK關閉消息應用程序并解雇員工以繼續對抗SEC:Kik首席執行官Ted Livingston證實,該公司將關閉其消息應用程序,并將其員工減少到目前的10%左右。根據Livingston的說法,此舉是被美國證券交易委員會(SEC)訴訟的直接結果,該公司的資金已被耗盡。(cointelegraph)[2019/10/2]
這就請來零知識證明,這個算法結構如下:
橙色部分就是zk-proof,分成證明和驗證兩個部分,其中證明部分也叫電路circuit,需要用電路描述語言編程,最終編譯為電路邏輯。在這個例子里,我們用circuit寫了個哈希算法,用來替代原來的function,circuit的特點是輸入是不需要公開的,輸出的是哈希值和proof,這個proof證明的就是:
動態 | 超98%的BSV活動來自天氣應用程序:據thenextweb報道,通過BSV網絡進行的大多數交易與加密貨幣本身無關。實際上,幾乎所有當前的BSV鏈上活動都來自自動氣象服務weathersv.com。該應用程序每小時從OpenWeatherMap網站復制數據并將其粘貼到BSV區塊中,占過去30天內BSV交易的98.4%。[2019/6/25]
有一個未知input,經過circuit的運算,生成了output
有一個未知input,經過circuit的運算,生成了output
有一個未知input,經過circuit的運算,生成了output
動態 | 加密貨幣錢包提供商推出針對商家的應用程序:據CoinGeek消息,加密貨幣錢包和支付解決方案提供商HandCash發布了一款專門針對商家的應用程序,一次處理更多交易。
該公司表示,這款新應用每分鐘可以進行12至14筆BSV交易,這是因為它取消了支付請求步驟,類似于蘋果支付(Apple Pay)的自動支付。該公司還表示“隨著我們即將推出的云基礎設施和其他一些業務方面的改進,如果需要的話,我們可以輕松地每分鐘處理大約20筆付款”。[2018/12/14]
重要的事情說三遍!并且我還要畫出來:
動態 | MyEtherWallet分身“MyCrypto”推出桌面應用程序:據Nulltx消息,MyEtherWallet分裂而來的MyCrypto近日宣布更新其平臺,推出一款桌面應用程序,用戶可以通過該桌面應用程序訪問Ledger和Trezor硬件錢包。[2018/7/16]
這個proof就相當于對這個過程的認證蓋章,就這么板上釘釘了,無爭議了,別問input是啥,問就是不知道,所以叫零知識。已知的是啥呢,電路邏輯,輸出的值,還有證明文件proof。
在這個例子中,電路邏輯相當于哈希函數,如果你算出的哈希值和公開的那個哈希值一樣,那就說明你輸入的文件就是大家要找的那個機密文件,而你并不需要提供這個文件,只需要提供證明文件proof就行。
驗證的時候,大家把哈希值和proof放進verify函數,返回true,那就證明了:
你用某個文件,經過circuit的哈希算法,生成了這個哈希值
那還能是哪個文件,那肯定是那個正確的文件啊,要不怎么生成這個哈希!
混幣
zk-proof顯而易見在隱私場景很有用。混幣的原理是用戶把幣存進保險箱,保險箱的密碼的哈希值帖在保險箱上,誰要是能提供這個密碼,誰就能把保險箱里的幣全部拿走。跟上面這個找文件的原理是一樣的,用戶不用提供密碼,只要提供proof就行,合約校驗通過就讓你提幣。
還有一個問題,如果你能開某個保險箱,那就說明你就是放錢進去的人,誰放了多少錢到哪個保險箱,這在鏈上是可查的,所以你開哪個保險箱,你不能說。在合約里用樹形結構來存放保險箱,且層數固定,一般為16層。從你要開的保險箱到樹根root,中間的15個節點確定了,就確定了你要開哪個保險箱,所以這15個節點,也在circuit的privateinput里面。
最后合約校驗的時候,證明了保險箱的位置、保險箱密碼全部正確,但不知道是什么密碼也不知道是哪個保險箱,可能用戶也不知道,但是用戶把proof保管好就行,誰拿這個proof都可以去提款。
擴容
zk-proof除了隱私場景的應用,這兩年還發現可以做區塊鏈擴容。區塊里的每一個tx,都有用戶的簽名,用來證明這個操作不是偽造的,一個區塊的大小是有限的,所以要是能在區塊中塞入的tx越多,TPS也就越高。
如果把簽名砍掉,給tx瘦身,那就可以塞入更多的tx。問題是,砍掉了簽名,又如何證明這個操作是用戶簽名過的呢?用零知識證明,把用戶簽名的校驗邏輯寫進circuit電路,輸入是區塊數據,輸出是區塊數據,并附上proof,一個proof這就能證明所有tx都是被用戶簽名過的,達到瘦身目的。本文來源:https://bress.xyz/zh/post/nKtuByYTvPri75xHQoA7f8vNyJ6NQPvCL_YH8KVp31Q
作者:加戈
Tags:ROOPROProofCIRROOKCUE ProtocolEvident Proof Transaction TokenCircuits of Value
內推成功獎5臺IPhone,“不是送手機,只是讓你集齊顏色”!應聘報銷往返機票、五星級酒店住宿費用!這些讓人嘆為觀止的招聘條件,出現在元宇宙相關崗位的招聘廣告中.
1900/1/1 0:00:005月1日,由河北眾誠企業集團聯合北京阿衣莫科技有限公司聯合主辦的“元宇宙·眾誠高爾夫項目交流會暨五一聯歡會”在石家莊市鹿泉區眾誠假日酒店高爾夫宮圓滿舉行.
1900/1/1 0:00:00誰能想到,馬斯克收購Twitter的節奏,比拿破侖攻破巴黎還要快。 如果回到那個傳訊還靠賣報小弟吆喝的年代,估計街頭小報要被這出一天一個樣的快節奏「商業爽劇」逼瘋.
1900/1/1 0:00:00此前,市場對于比特幣的一個主要推薦點是它是一種對沖通脹的工具—這意味著它的價值會隨著時間的推移而保持不變。原因之一是其供應量上限為2100萬,隨著需求的增加而具備稀缺性.
1900/1/1 0:00:00隨著星巴克、特斯拉和微軟等大牌從2021年開始接受加密貨幣,越來越多的零售商被加密貨幣更低的費用、更快、更安全的交易以及擴大客戶支付選擇的能力所吸引.
1900/1/1 0:00:001.推特接受馬斯克收購:或將算法開源接受狗狗幣支付美國社交媒體公司推特周一宣布,該公司董事會已接受億萬富翁特斯拉創始人埃隆?馬斯克提出的收購交易,以及接受將推特私有化的提議.
1900/1/1 0:00:00