隱私保護 | 當密碼學遇上區塊鏈,會催生怎樣的化學反應?
本文首先從業務流程角度進行劃分,加密演算法可以分為交易、傳輸、儲存三大環節。其次,按照難易程度角度進行劃分,可以分為初級密碼學工具和高階密碼學工具,本文均一一作了詳細介紹和對比。最後,本文認為雖然密碼學目前仍然存在諸多挑戰,但正如央行數字貨幣研究所副所長狄剛所言,“區塊鏈技術發展將與密碼技術的應用發展形成長期良性的互動”。
數字經濟時代,隱私保護問題日益突出在當下的數字經濟時代,數字身份代表一個人線上活動所產生的全部資訊,比如使用者名稱和密碼,線上搜尋活動,購買歷史等等。數字身份是全球金融交易數字化的重要基礎。
但在數字身份實際應用中,隱私保護問題日益突出。究其原因在於每個網際網路平臺都有著自己的服務系統及資料庫,個人資訊資料被儲存在第三方網站中而非屬於個人,身份洩露、盜用、欺詐等問題也就不足為奇了。值得欣喜的是,整個社會對資料主權和隱私保護的意識越來越強。2018年5月25日起,歐盟率先開始實施《一般資料保護條例》,此條例被認為是最負責任的隱私保護法。可以預見,其他國家相關的法律法規也將陸續出臺,彌補數字化時代的法律空白。
隱私保護問題必須依靠疊加全同態加密等高階演算法才能真正實現
雖然絕大多數區塊鏈專案都聲稱自己可以提供完美的隱私保護方案,但事實上,傳統的區塊鏈在技術層面只是用到了最為簡單的密碼學工具——雜湊演算法和數字簽名演算法,區塊鏈上傳輸和儲存的資料都是公開可見的,僅通過“偽匿名”的方式對交易雙方進行所謂的“隱私保護”。被譽為“網際網路安全教母”的宋曉冬認為,區塊鏈本身並不能提供真正的隱私保護。為了兼顧以太坊的高效能和隱私性,V神曾提出四種解決方案:通道、混合器、環簽名及零知識證明。其中的環簽名及零知識證明正是用以提高以太坊的隱私保護功能。算力智庫認為,區塊鏈疊加零知識證明、同態加密等加密演算法後才能實現隱私保護。
傳輸、儲存、交易三大業務流程中的加密演算法
從業務流程角度進行劃分,區塊鏈涉及的加密演算法主要包括交易、傳輸、儲存三大環節。
資料來源:算力智庫研究院
在交易環節,區塊鏈鏈上資料在交易過程中的所有參與方的隱私問題同樣重要,不僅要對交易接收方進行隱私保護,主要涉及地址保護技術。同時也應該對交易發起方進行隱私保護,主要涉及各種簽名保護技術。而零知識證明主要用於交易流程中的驗證環節,既能做到資訊驗證又能保護中間資料不被洩露。
在傳輸環節,鏈路加密需要在鏈路節點上增加為所有資料包提供加解密服務的密碼裝置。端到端加密雖然不需要增加額外的密碼裝置,資料包在傳送端使用軟體或硬體加密,在接收方使用相應軟體或硬體解密。
在儲存環節,儲存層加密的交易資料,一般只有交易參與方才能解密,主流的是對稱加密和非對稱加密演算法。同態加密的特點是能夠對密文進行運算,解決了儲存加密與資料驗證之間的矛盾,從根本上避免將資料從區塊鏈平臺中取出時導致資訊洩露。
初級密碼學工具:雜湊演算法和一般數字簽名演算法
比特幣的匿名性得益於在技術層面用到了雜湊演算法和數字簽名演算法,但這是最為簡單的密碼學工具,本身並不能提供真正的隱私保護功能。
1、雜湊演算法
雜湊演算法也叫雜湊演算法或資料摘要,本質上,雜湊演算法的目的不是為了“加密”而是為了抽取“資料特徵”,也可以把給定資料的雜湊值理解為該資料的“指紋資訊”,對資料的完整性提供保護。
典型雜湊演算法一覽表,資料來源:《中國區塊鏈技術和應用發展白皮書》
SHA256和SM3的演算法效率和安全性大致相當,目前區塊鏈主要使用SHA256,國內某些特定業務場景需要使用國密SM3。根據賽迪研究院資料統計,截至2018年6月,我國已出臺包括SM2橢圓密碼演算法、SM3雜湊演算法、SM9標識密碼演算法在內的19項密碼演算法。
2、非對稱加密演算法與數字簽名演算法
非對稱加密演算法由對應的一對唯一性金鑰(即公開金鑰和私有金鑰)組成的加密方法。只有使用者本身才能解密該資訊,任何未受授權使用者甚至資訊的傳送者都無法將此資訊解密。常用的非對稱加密演算法包括RSA、ECC、SM2等等。
典型非對稱加密演算法,資料來源:《中國區塊鏈技術和應用發展白皮書》
比特幣中的數字簽名正是非對稱加密演算法與雜湊演算法的結合。數字簽名技術用於接收者確認交易的簽署方,從而確認資料單元的完整性及不可偽造性。根據賽迪研究院資料統計,截至2018年6月,國內已頒佈實施的數字簽名標準約有20項。
高階密碼學工具:群簽名、環簽名、零知識證明演算法、同態加密演算法
目前,業界普遍認為零知識證明、環簽名和同態加密等隱私保護演算法有望真正解決區塊鏈的隱私問題。
1、群簽名
群簽名技術是一種允許一個群體中的任意成員以匿名方式代表整個群體對訊息進行簽名,並可公開驗證的機制。
由於群簽名能為簽署者提供較好的匿名性,同時在必要時又通過可信管理方追溯簽署者身份,使得群簽名技術在諸如共享資料認證,身份認證及金融合同簽署等事務中發揮重要作用。
2、環簽名
環簽名是一種簡化的群簽名,環簽名中只有環成員沒有管理者, 不需要環成員間的合作。在環簽名中,不需要分配指定的金鑰,無法撤銷簽名者的匿名性,除非簽名者自己想暴露身份。環簽名在強調匿名性的同時,增加了審計監管難度。
保障安全是資料流通的關鍵屏障。環簽名具有無條件匿名性,對於資料流通中的身份隱私保護大有可為。
3、零知識證明
在一個零知識證明協議中,證明者無需任何事件相關資料便向驗證者證明事件的真實性。零知識證明可以讓驗證方既不知道資料具體內容,又能確認該內容的是否有效或合法,其應用包括交易有效性證明、供應鏈金融、資料防偽溯源等。
4、同態加密
同態加密是指對其加密資料進行處理得到一個輸出,將此輸出進行解密,其結果與用同一方法處理未加密原始資料得到的結果一致。全程不會洩露任何原始資料資訊。同態加密在敏感資料共享和資料交易過程中具有廣闊應用前景。
高階密碼學工具對比一覽表,資料來源:《資料流通技術白皮書(1.0版)》
密碼學迎來歷史最佳發展機遇,卻也任重而道遠
區塊鏈這種新的分散式架構,對於隱私保護的需求遠遠高於傳統架構,這也是為何不斷有高階的密碼學工具不斷疊加於區塊鏈之上以提供隱私保護的根本源動力。合適的密碼學工具遇到合適的場景,密碼學有望迎來歷史最佳崛起機遇。
正如央行數字貨幣研究所副所長狄剛所言,“區塊鏈技術發展將與密碼技術的應用發展形成長期良性的互動”。白碩進一步直言,“密碼技術結合區塊鏈和大資料,實現大資料的互通有無,將催生化學反應和增值效應”。
雖然零知識證明、同態加密等演算法的研究進展給予隱私保護極大的想象空間,但在實現上依然需要有理論的突破和工程實踐。比如Zcash基於的zk-SNARK協議雖然在隱私性上達到了前所未有的保護程度,但是效能效果不佳。
值得注意的是,隨著量子計算技術的飛速發展,大量子位元數的量子計算機、量子晶片、量子計算服務系統等相繼問世,可在秒級時間內破解非對稱密碼演算法中的大數因子分解問題,比如,破解1024位金鑰的RSA演算法只需數秒,對現有密碼體制尤其是公鑰密碼體制將帶來顛覆性衝擊,密碼學發展任重而道遠。