必查客
|2021-10-12 16:02
零知識證明zero-knowledge proofs,簡稱ZKPs,我們都知道區塊鏈本身的一個關鍵優勢就是透明性,但是在很多情況下,智能合約應用卻出於各種商業或法律原因需要保障數據隱私,比如傳入真實有效的數據來觸發智能合約執行,但這涉及到信息會有洩露的風險。如何避免這種情況的發生呢?零知識證明的出現很好地解決了這個問題。
零知識證明zero-knowledge proofs,簡稱ZKPs,我們都知道區塊鏈本身的一個關鍵優勢就是透明性,但是在很多情況下,智能合約應用卻出於各種商業或法律原因需要保障數據隱私,比如傳入真實有效的數據來觸發智能合約執行,但這涉及到信息會有洩露的風險。如何避免這種情況的發生呢?零知識證明的出現很好地解決了這個問題。 零知識證明(Zero Knowledge Proof)的研究最早始於1985年,由MIT教授Shafi Goldwasser, Silvio Micali 和密碼學大師Charles在《The Knowledge Complexity of Interactive Proof-Systems》論文中提出。正是這篇文章提出了零知識證明這個偉大概念,並逐步成為了現代密碼學理論的根基之一,而Shafi Goldwasser和Silvio Micali也於2012 年獲得了有“計算機界諾貝爾獎”之稱的圖靈獎。零知識證明系統所要完成的任務是「證明某一個事實並且不洩露知識」 。這個過程就是零知識證明。 阿里巴巴的故事想必大家都聽過,有一天,劫匪抓住了阿里巴巴,拷問他想要得到進入山洞的咒語,但是聰明的阿里巴巴知道,如果把咒語告訴了劫匪,那麼他也就徹底沒有了價值,肯定會將他殺掉,死活不說,那麼也會殺掉他,於是他想到一個好辦法,即能不洩露咒語,又能讓劫匪相信他知道咒語。 阿里巴巴說:“你們離我一箭遠,然後用弓箭指著我,當你們舉右手我會念咒語打開石門,當你們舉左手我會念咒語關上石門,如果我逃跑或沒有做到,證明我不知道咒語,你們可以一箭殺掉我。”劫匪同意了這個提議,多次嘗試後阿里巴巴都成功按照指示讓石門打開或關上了,但是由於有一定距離,他們聽不清楚咒語到底是什麼,就這樣,阿里巴巴沒有透露任何消息就向劫匪證明了他的真實性。 這個例子非常簡單,雖然只是零知識證明機制簡單的概念演示,真正的零知識證明運用的是密碼學,在不透露數據的情況下證明數據的存在。總而言之,要創建零知識證明,驗證者(劫匪)需要讓證明者(阿里巴巴)執行一系列操作,而證明者只有在得知底層信息的情況下才能正確執行。 如果證明者亂蒙一個結果,那麼驗證者極有可能在驗證中發現並證明他的錯誤。那麼零知識證明應用在區塊鏈中有哪些價值呢? 自從這個概念被提出來後,人們就將其應用到了各個領域,比如身份認證系統、存證系統、數據共享、水印檢測,密鑰交換等等,在隱私數據越來越受到大家關注的今天,零知識證明在隱私數據保護的應用中大放異彩: 保護隱私數據: 日常生活中,比如只想證明考生及格了,但不想透露具體考了多少分;買保險的時候,只想證明自己沒有心髒病,卻不想暴露病例的所有信息,不管是哪種信息,都可以把不想暴露的部分換成一個很像隨機數字的零知識證明,能夠證明數據真實可信。身份認證: 在使用網站時,用戶可以向網站證明他擁有私鑰,或者知道某個只有自己才知道的答案,網站不用知道密鑰,但可以通過零知識證明確認用戶身份,通過去中心化存儲,服務器可以向用戶證明數據被妥善保存下來且不被洩露。計算壓縮與區塊鏈擴容: 在傳統的區塊架構中,同樣的計算被重複多次,比如簽名校驗,交易的合法性校驗,智能合約執行等一些其他的地方,因為有了計算的證明,同一個計算就不需要多次重複了,計算過程可以被零知識技術證明壓縮。由此,零知識證明真正解決了「數據的信任」 ,實現了「隱私數據的保護」 ,也讓區塊鏈真正實現了「信任機器」 這一構想。
Author :必查客
This article reflects the opinions of PANews's columnist and does not represent the stance of PANews. PANews does not assume legal responsibility. The article and opinions do not constitute investment advice.
Image Source :
必查客
If there is any infringement, please contact the author to remove it.