區塊鏈只能構建半個「虛擬可信第三方」,零知識證明等高等密碼學可以構建完整的「虛擬可信第三方」。

原文標題:《密碼學應用的四個進化階段 | 博文精選》
撰文:kevin_in_zero

2009 年區塊鏈的出現,將密碼學的商業價值提升到了前所未有的高度。但在我們看來,這僅僅是一個新時代的開始。

未來更爲激動人心的故事仍在等待我們去發現。本文是作者對這個主題的一點觀察與思考,歡迎大家一起討論。

密碼學應用的四個進化階段 | 博文精選

Crypto 1.0:對稱加密,有事先共享密鑰的祕密通信

AB 雙方事先共享一個密鑰 k,A 將需要傳遞的明文 m,通過 k 加密爲密文 m*後,再傳遞給 B。B 收到密文 m*後,通過密鑰 k 將其解密還原爲 m。第三方 C 即便截獲了密文 m*,如果沒有獲得密鑰 k 的話,將無法還原出 m。

從古代起直到 1970 年代,這都是密碼學的主要應用模式。它的里程碑之一是,1970 年代美國將 DES 算法作爲工業標準確立。它標誌着經過多年的發展,也經過電子計算機的運用與檢驗,對稱密碼學達到了某種高度的成熟性。破解密碼也變得非常困難。

但是這個體系也有一個較大的弱點,就是它永遠要依賴於一個「事先共享的密鑰」。要做到事先共享的密鑰,可能需要一個成本較高的過程。例如 AB 雙方可能距離很遙遠,要通過某種方式傳遞密鑰,同時保證傳遞的安全性(即不被第三方截獲),很可能不是一件容易的事。

Crypto 2.0:公鑰加密,無事先共享密鑰的祕密通信

1970 年代初,計算機網絡通信技術已經開始在美國出現(雖然沒有大規模普及)。這使得祕密通信中的密鑰交換問題,開始成爲一個更迫切真實的需求。假設 AB 雙方沒有事先共享密鑰,他們能否通過一段對話,產生出一個共享密鑰,同時讓截獲整個對話過程的第三方 C 無法猜出這個密鑰呢?這聽上去像是一個「不可能完成的任務」。但是在 1974-1976 之間,美國密碼學研究者 Diffie 與 Hellman 經過兩年左右的艱苦探索,找到了這個問題的一個解決方案,發表了 Whitfield Diffie and Martin Hellman, New Directions in Cryptography,1976。

上述論文同時提出了一個更強大的構想,即公鑰密碼體系。它的想法是要有一對密鑰(k1, s2),其中一個用於加密,另一個用於解密。具體說,A 方有一對密鑰,公鑰 pk,私鑰 sk。A 可以將公鑰 pk 向全世界公開。這樣任何一個 B 方(可能此前與 A 方並不認識)都可以把一個明文 m 通過公鑰 pk 加密爲 m*,然後發送給 A。A 獲得 m*後,通過密鑰 sk 將其解密還原爲 m。第三方 C 即便截獲了密文 m*,如果沒有獲得密鑰 sk 的話,將無法還原出 m。只要 A 保管好自己的私鑰,就是安全的

Diffie 與 Hellman 提出了上述構思,但是沒有找到具體的實現方案。1978 年,Ronald L. Rivest, Adi Shamir, and Leonard M. Adleman, A Method for Obtaining Digital Signatures and Public Key Cryptosystems 這篇論文提出了 RSA 算法,第一次具體實現了公鑰密碼體系。

公鑰密碼的發現,或許是密碼學自古代到 1970 年代以來最大的突破。它完全解決了共享密鑰的難題,而這也正是網絡時代所需要的。20 多年後,它成爲新興的互聯網電子商務的核心技術基礎之一(SSL/TLS,https 等等)。

Crypto 3.0:區塊鏈技術,無 TTP 互信社區,犧牲隱私

密碼學應用的下一個里程碑是區塊鏈的出現。中本聰的開創性論文,Satoshi Nakamoto et al., Bitcoin: A peer-to-peer electronic cash system(2008),並不包含密碼學上的新成果。但它通過對密碼學的巧妙運用,得到了一個革命性的工程設計方案。它着眼於人類組織管理上的重要問題,並給出了一個創新的解決辦法,從而爲構建未來新型社會組織形態,打開了巨大的想象空間。

基本的問題是:有一個人羣,相互之間不能完全信任,但是又需要在一起合作,該怎麼辦?在人類社會中,除了家庭和極個別理想的關係外,幾乎所有其它人類關係形態,特別是各種商業性的合作關係,都存在「信任」這個重要問題。由此自然產生了對「可信第三方」(TTP)的需要。比如在古代,兩個人要相互借錢,就可能需要找一個有地位有威望的第三方來做保。在當今社會中,TTP 的具體形態可以是:政府部門、中介機構、交易所、增信 / 擔保機構、公證機構、批發商 / 零售商,等等。

TTP 的具體運作形態很多,包括:

  • 普通個人的信用貸款,抵押貸款;
  • 專業金融運作中錯綜複雜,多層嵌套的信用關係;
  • 國際貿易體系中的信用證體系,石油美元體系,SWIFT 支付體系;
  • 二手房、二手車市場的中介服務,等等。不能難看出,構建 TTP 是一個社會成本極高的過程。「人」的道德風險無處不在,難以杜絕,因此不得不層層設防,構建複雜繁瑣的監督機制,相互制衡,從而保證基本的合作秩序。

中本聰關於比特幣的構想,試圖在互聯網上構一個完全不依賴於 TTP 的互信社區,而且相當於發行了一種無人管理的貨幣。對比一下美元這個國際貨幣體系,它要依賴於多少政治、經濟、軍事、文化、外交等等複雜社會結構加以支撐。而中本聰試圖要用純粹的計算機程序代替所有這些「社會要素」,不能不說是一個石破天驚的大膽設想。誰會相信它能成功呢?

但是,比特幣初步成功了。自 2009 年上線以來至今,它基本有序地運行了 10 年,參與者人數以千萬計。它沒有一個人類管理者,完全靠計算機程序來維持秩序。而且這個計算機程序本身,也沒有事先設定的權威管理者。原則上說,任何人都可以自願參加這個集體,成爲集體管理的一份子,而且所有成員貌似也是平等的(由於各位玩家財富數量不同,而導致的實際影響力的差異,是個複雜而有爭議的話題,我們這裏暫時忽略)。這樣一個羣體能夠穩定運行十年,這本身已經是一個奇蹟。而支撐這個社會學奇蹟的核心技術基礎正是密碼學。

區塊鏈出現以前,密碼學的主要應用是構建祕密通信體系。區塊鏈的出現將密碼學的應用領域大大拓展了,使之成爲構建新型人類互信社區的核心技術力量。

Crypto 4.0:高等密碼學,無 TTP 互信社區,完全隱私

區塊鏈對商業社會的巨大魅力,本質上在於它給人們以這樣的希望,即:在商業合作關係中,通過某些計算機程序,構建出一個「虛擬可信第三方」(Virtual TTP),維護商業合作的有序運行,並由此擺脫(或大大降低)對「人類 TTP」的高度依賴。區塊鏈是否真能做到這一點呢?

TTP 的主要功能有兩個:

  • 保證各方行爲合規;
  • 保護各方數據隱私。

要理解這一點,只需要稍微觀察幾個具體的案例,例如證券交易所,商業中介機構,各類經紀公司,等等。而區塊鏈技術(以中本聰的原始版本來理解)實際上只提供了第一點,而沒有提供第二點。事實上,它正是通過數據的完全透明,來保障各方互信的。而且作爲一般常識:數據透明與保護隱私這兩個要求,本來就是自相矛盾的

如果大家都要求保護隱私,就意味着相互看不見對方的數據。此時,如果又沒有一個「第三方作保」,大家怎麼可能建立互信呢?要同時兼顧這兩點,那肯定是天方夜譚了。

但是神奇的密碼學再一次挑戰了這個看似「不可能完成的任務」。自 1980 年代以來,密碼學家們就已經發現了一些有點「不可思議」的概念與方法。經過近 40 年的深入研究與探索,發展出若干完整而強大的技術體系。只是由於沒有恰當的應用場景,或者說商業社會的發展,還沒有提出這方面的迫切需求,這些密碼學尖端武器基本停留在論文或實驗室階段,而沒有進入實用。

區塊鏈的出現,以及由此引發的技術與商業創新浪潮,則完全改變了這個局面。那些在象牙塔裏呆了 30-40 年的技術,正好成爲解決「數據透明」與「隱私保護」這對矛盾的最佳工具。上述這些技術具體包括:零知識證明、同態加密、安全多方計算等等,有人稱之爲高等密碼學,我們也姑且借用一下這個名稱。

簡單總結:區塊鏈只能構建半個「虛擬 TTP」,高等密碼學可以構建完整的「虛擬 TTP」。

作爲上述理念的第一個大規模案例,第一個完全隱私的加密貨幣 Zcash 於 2016 年上線運行。Zcash 可以理解爲比特幣的「隱私版」。比特幣系統通過所有交易數據的完全透明化,實現了多方完全互信。而 Zcash 則要挑戰一個技術難度大得多的目標:在所有交易數據完全相互保密的前提下,實現多方完全互信。而實現這一目標的核心技術,就是零知識證明。Zcash 至今也已經穩定運行幾年了,初步驗證了其所用技術的可行性,爲高等密碼學技術的實用化,提供了一個重要參考案例。

來源鏈接:blog.csdn.net