零知识证明:从入门到入土
零知識證明:從入門到入土
文章共8000字,預(yù)計閱讀時間30-35分鐘。
這篇博客的靈感來源于我的好朋友Kokii(Joey) ,感謝他通俗、詳盡且充滿趣味的介紹!
在談?wù)摗噶阒R證明」之前 ,首先需要明確其定義:證明(Prover)向驗證者(Verifier)證明一個命題成立 ,同時「不泄露其他任何知識」,這種就被稱為「零知識證明」。鑒于「零知識證明」這個詞太長,簡稱「zk」。文章是個人對于zk的理解,歡迎討論。
為什么要zk
隱私
一個用戶如果用過加密貨幣,就會發(fā)現(xiàn),它并不像傳說中的那么「保密」?!覆槐C堋沟脑蝻@然 ,加密貨幣的信息都在區(qū)塊鏈上,任何人都查詢的到 。雖然比特幣等一部分加密貨幣出于隱私考慮,會給用戶分配一個隨機的地址,但這更像是「假名」 ,而不是號稱的「匿名」,一旦用戶到交易所將加密貨幣換成了法幣,「假名」就和現(xiàn)實中的人對應(yīng)上了。「假名」就像「風(fēng)清揚」,初看無意義,但如果某次偶然,你發(fā)現(xiàn)「風(fēng)清揚」對應(yīng)著馬云,之后再看到署名「風(fēng)清揚」的郵件你就能想到那張大臉 。「匿名」像大專院校的「校園墻」,墻上所有消息都是不署名的,對隱私的保護也更強。如果我們需要證明自己在「校園墻」上發(fā)過消息,但不想透露發(fā)的是什么消息 ,這時候該怎么辦 ?如果還記得上面zk的定義,會發(fā)現(xiàn)zk完美地契合這種需求