2009年區(qū)塊鏈的出現(xiàn),將密碼學(xué)的商業(yè)價值提升到了前所未有的高度。但在我們看來,這僅僅是一個新時代的開始。
未來更為激動人心的故事仍在等待我們?nèi)グl(fā)現(xiàn)。本文是作者對這個主題的一點觀察與思考,歡迎大家一起討論。
Crypto 1.0:對稱加密,有事先共享密鑰的秘密通信
AB雙方事先共享一個密鑰k,A將需要傳遞的明文m,通過k加密為密文m*后,再傳遞給B。B收到密文m*后,通過密鑰k將其解密還原為m。第三方C即便截獲了密文m*,如果沒有獲得密鑰k的話,將無法還原出m。
從古代起直到1970年代,這都是密碼學(xué)的主要應(yīng)用模式。它的里程碑之一是,1970年代美國將DES算法作為工業(yè)標(biāo)準(zhǔn)確立。它標(biāo)志著經(jīng)過多年的發(fā)展,也經(jīng)過電子計算機的運用與檢驗,對稱密碼學(xué)達(dá)到了某種高度的成熟性。破解密碼也變得非常困難。
但是這個體系也有一個較大的弱點,就是它永遠(yuǎn)要依賴于一個“事先共享的密鑰”。要做到事先共享的密鑰,可能需要一個成本較高的過程。例如AB雙方可能距離很遙遠(yuǎn),要通過某種方式傳遞密鑰,同時保證傳遞的安全性(即不被第三方截獲),很可能不是一件容易的事。
Crypto 2.0:公鑰加密,無事先共享密鑰的秘密通信
1970年代初,計算機網(wǎng)絡(luò)通信技術(shù)已經(jīng)開始在美國出現(xiàn)(雖然沒有大規(guī)模普及)。這使得秘密通信中的密鑰交換問題,開始成為一個更迫切真實的需求。假設(shè)AB雙方?jīng)]有事先共享密鑰,他們能否通過一段對話,產(chǎn)生出一個共享密鑰,同時讓截獲整個對話過程的第三方C無法猜出這個密鑰呢?這聽上去像是一個“不可能完成的任務(wù)”。但是在1974-1976之間,美國密碼學(xué)研究者Diffie與Hellman經(jīng)過兩年左右的艱苦探索,找到了這個問題的一個解決方案,發(fā)表了Whitfield Diffie and Martin Hellman,New Directions in Cryptography,1976。
上述論文同時提出了一個更強大的構(gòu)想,即公鑰密碼體系。它的想法是要有一對密鑰(k1,s2),其中一個用于加密,另一個用于解密。具體說,A方有一對密鑰,公鑰pk,私鑰sk。A可以將公鑰pk向全世界公開。這樣任何一個B方(可能此前與A方并不認(rèn)識)都可以把一個明文m通過公鑰pk加密為m*,然后發(fā)送給A。A獲得m*后,通過密鑰sk將其解密還原為m。第三方C即便截獲了密文m*,如果沒有獲得密鑰sk的話,將無法還原出m。只要A保管好自己的私鑰,就是安全的。
Diffie與Hellman提出了上述構(gòu)思,但是沒有找到具體的實現(xiàn)方案。1978年,Ronald L.Rivest,Adi Shamir,and Leonard M.Adleman,A Method for Obtaining Digital Signatures and Public Key Cryptosystems這篇論文提出了RSA算法,第一次具體實現(xiàn)了公鑰密碼體系。
公鑰密碼的發(fā)現(xiàn),或許是密碼學(xué)自古代到1970年代以來最大的突破。它完全解決了共享密鑰的難題,而這也正是網(wǎng)絡(luò)時代所需要的。20多年后,它成為新興的互聯(lián)網(wǎng)電子商務(wù)的核心技術(shù)基礎(chǔ)之一(SSL/TLS,https等等)。
Crypto 3.0:區(qū)塊鏈技術(shù),無TTP互信社區(qū),犧牲隱私
密碼學(xué)應(yīng)用的下一個里程碑是區(qū)塊鏈的出現(xiàn)。中本聰?shù)拈_創(chuàng)性論文,Satoshi Nakamoto et al.,Bitcoin:A peer-to-peer electronic cash system(2008),并不包含密碼學(xué)上的新成果。但它通過對密碼學(xué)的巧妙運用,得到了一個革命性的工程設(shè)計方案。它著眼于人類組織管理上的重要問題,并給出了一個創(chuàng)新的解決辦法,從而為構(gòu)建未來新型社會組織形態(tài),打開了巨大的想象空間。
基本的問題是:有一個人群,相互之間不能完全信任,但是又需要在一起合作,該怎么辦?在人類社會中,除了家庭和極個別理想的關(guān)系外,幾乎所有其它人類關(guān)系形態(tài),特別是各種商業(yè)性的合作關(guān)系,都存在“信任”這個重要問題。由此自然產(chǎn)生了對“可信第三方”(TTP)的需要。比如在古代,兩個人要相互借錢,就可能需要找一個有地位有威望的第三方來做保。在當(dāng)今社會中,TTP的具體形態(tài)可以是:政府部門、中介機構(gòu)、交易所、增信/擔(dān)保機構(gòu)、公證機構(gòu)、批發(fā)商/零售商,等等。
TTP的具體運作形態(tài)很多,包括:
●普通個人的信用貸款,抵押貸款;
●專業(yè)金融運作中錯綜復(fù)雜,多層嵌套的信用關(guān)系;
●國際貿(mào)易體系中的信用證體系,石油美元體系,SWIFT支付體系;
●二手房、二手車市場的中介服務(wù),等等。不能難看出,構(gòu)建TTP是一個社會成本極高的過程。“人”的道德風(fēng)險無處不在,難以杜絕,因此不得不層層設(shè)防,構(gòu)建復(fù)雜繁瑣的監(jiān)督機制,相互制衡,從而保證基本的合作秩序。
中本聰關(guān)于比特幣的構(gòu)想,試圖在互聯(lián)網(wǎng)上構(gòu)一個完全不依賴于TTP的互信社區(qū),而且相當(dāng)于發(fā)行了一種無人管理的貨幣。對比一下美元這個國際貨幣體系,它要依賴于多少政治、經(jīng)濟(jì)、軍事、文化、外交等等復(fù)雜社會結(jié)構(gòu)加以支撐。而中本聰試圖要用純粹的計算機程序代替所有這些“社會要素”,不能不說是一個石破天驚的大膽設(shè)想。誰會相信它能成功呢?
但是,比特幣初步成功了。自2009年上線以來至今,它基本有序地運行了10年,參與者人數(shù)以千萬計。它沒有一個人類管理者,完全靠計算機程序來維持秩序。而且這個計算機程序本身,也沒有事先設(shè)定的權(quán)威管理者。原則上說,任何人都可以自愿參加這個集體,成為集體管理的一份子,而且所有成員貌似也是平等的(由于各位玩家財富數(shù)量不同,而導(dǎo)致的實際影響力的差異,是個復(fù)雜而有爭議的話題,我們這里暫時忽略)。這樣一個群體能夠穩(wěn)定運行十年,這本身已經(jīng)是一個奇跡。而支撐這個社會學(xué)奇跡的核心技術(shù)基礎(chǔ)正是密碼學(xué)。
區(qū)塊鏈出現(xiàn)以前,密碼學(xué)的主要應(yīng)用是構(gòu)建秘密通信體系。區(qū)塊鏈的出現(xiàn)將密碼學(xué)的應(yīng)用領(lǐng)域大大拓展了,使之成為構(gòu)建新型人類互信社區(qū)的核心技術(shù)力量。
Crypto 4.0:高等密碼學(xué),無TTP互信社區(qū),完全隱私
區(qū)塊鏈對商業(yè)社會的巨大魅力,本質(zhì)上在于它給人們以這樣的希望,即:在商業(yè)合作關(guān)系中,通過某些計算機程序,構(gòu)建出一個“虛擬可信第三方”(Virtual TTP),維護(hù)商業(yè)合作的有序運行,并由此擺脫(或大大降低)對“人類TTP”的高度依賴。區(qū)塊鏈?zhǔn)欠裾婺茏龅竭@一點呢?
TTP的主要功能有兩個:
●保證各方行為合規(guī);
●保護(hù)各方數(shù)據(jù)隱私。
要理解這一點,只需要稍微觀察幾個具體的案例,例如證券交易所,商業(yè)中介機構(gòu),各類經(jīng)紀(jì)公司,等等。而區(qū)塊鏈技術(shù)(以中本聰?shù)脑及姹緛砝斫猓嶋H上只提供了第一點,而沒有提供第二點。事實上,它正是通過數(shù)據(jù)的完全透明,來保障各方互信的。而且作為一般常識:數(shù)據(jù)透明與保護(hù)隱私這兩個要求,本來就是自相矛盾的。
如果大家都要求保護(hù)隱私,就意味著相互看不見對方的數(shù)據(jù)。此時,如果又沒有一個“第三方作保”,大家怎么可能建立互信呢?要同時兼顧這兩點,那肯定是天方夜譚了。
但是神奇的密碼學(xué)再一次挑戰(zhàn)了這個看似“不可能完成的任務(wù)”。自1980年代以來,密碼學(xué)家們就已經(jīng)發(fā)現(xiàn)了一些有點“不可思議”的概念與方法。經(jīng)過近40年的深入研究與探索,發(fā)展出若干完整而強大的技術(shù)體系。只是由于沒有恰當(dāng)?shù)膽?yīng)用場景,或者說商業(yè)社會的發(fā)展,還沒有提出這方面的迫切需求,這些密碼學(xué)尖端武器基本停留在論文或?qū)嶒炇译A段,而沒有進(jìn)入實用。
區(qū)塊鏈的出現(xiàn),以及由此引發(fā)的技術(shù)與商業(yè)創(chuàng)新浪潮,則完全改變了這個局面。那些在象牙塔里呆了30-40年的技術(shù),正好成為解決“數(shù)據(jù)透明”與“隱私保護(hù)”這對矛盾的最佳工具。上述這些技術(shù)具體包括:零知識證明、同態(tài)加密、安全多方計算等等,有人稱之為高等密碼學(xué),我們也姑且借用一下這個名稱。
簡單總結(jié):區(qū)塊鏈只能構(gòu)建半個“虛擬TTP”,高等密碼學(xué)可以構(gòu)建完整的“虛擬TTP”。
作為上述理念的第一個大規(guī)模案例,第一個完全隱私的加密貨幣Zcash于2016年上線運行。Zcash可以理解為比特幣的“隱私版”。比特幣系統(tǒng)通過所有交易數(shù)據(jù)的完全透明化,實現(xiàn)了多方完全互信。而Zcash則要挑戰(zhàn)一個技術(shù)難度大得多的目標(biāo):在所有交易數(shù)據(jù)完全相互保密的前提下,實現(xiàn)多方完全互信。而實現(xiàn)這一目標(biāo)的核心技術(shù),就是零知識證明。Zcash至今也已經(jīng)穩(wěn)定運行幾年了,初步驗證了其所用技術(shù)的可行性,為高等密碼學(xué)技術(shù)的實用化,提供了一個重要參考案例。
高等密碼學(xué)的實際應(yīng)用,仍是一個處于起步階段的技術(shù)領(lǐng)域。作者近期在“清華大學(xué)丘成桐數(shù)學(xué)科學(xué)中心2020暑期線上公開課:Cryptography and Blockchain”(時間為2020.07.06-31)上將與大家一起共同學(xué)習(xí)探討相關(guān)課題。未來也希望有更多機會與大家共同探索,在這個富有潛力領(lǐng)域里,有更多的發(fā)現(xiàn)與收獲。
原文鏈接:https://blog.csdn.net/Kevin_M_00/article/details/107182012