這個是比特幣的一個重要概念,比特幣的底層技術區塊鏈運用了很多優秀的加密演算法來保證系統可靠性。具體的理解和操作可以去下載鏈派社區app,聽一下裡面講師的課程,你就清楚了。
② 區塊鏈的密碼技術有
密碼學技術是區塊鏈技術的核心。區塊鏈的密碼技術有數字簽名演算法和哈希演算法。
數字簽名演算法
數字簽名演算法是數字簽名標準的一個子集,表示了只用作數字簽名的一個特定的公鑰演算法。密鑰運行在由SHA-1產生的消息哈希:為了驗證一個簽名,要重新計算消息的哈希,使用公鑰解密簽名然後比較結果。縮寫為DSA。
數字簽名是電子簽名的特殊形式。到目前為止,至少已經有 20 多個國家通過法律 認可電子簽名,其中包括歐盟和美國,我國的電子簽名法於 2004 年 8 月 28 日第十屆全 國人民代表大會常務委員會第十一次會議通過。數字簽名在 ISO 7498-2 標准中定義為: 「附加在數據單元上的一些數據,或是對數據單元所作的密碼變換,這種數據和變換允許數據單元的接收者用以確認數據單元來源和數據單元的完整性,並保護數據,防止被人(例如接收者)進行偽造」。數字簽名機制提供了一種鑒別方法,以解決偽造、抵賴、冒充和篡改等問題,利用數據加帆斗基密技術、數據變換技術,使收發數據雙方能夠滿足兩個條件:接收方能夠鑒別發送方所宣稱的身份;發送方以後不能否認其發送過該數據這一 事實。
數字簽名是密碼學理論中的一個重要分支。它的提出是為了對電子文檔進行簽名,以 替代傳統紙質文檔上的手寫簽名,因此它必須具備 5 個特性。
(1)簽名是可信的。
(2)簽名是不可偽造的。
(3)簽名是不可重用的。
(4)簽名的文件是不可改變的。銷汪
(5)簽名是不可抵賴的。
哈希(hash)演算法
Hash,就是把任意長度的輸入(又叫做預映射, pre-image),通過散列演算法,變換成固定長度的輸出,該輸出就是散列值。這種轉換是一種壓縮映射,其中散列值的空間通常遠小於輸入的空間,不同的輸入可能會散列成相同的輸出,但是不可逆向推導出輸入值。簡單的說就是一種將任意長度的消息壓縮態謹到某一固定長度的消息摘要的函數。
哈希(Hash)演算法,它是一種單向密碼體制,即它是一個從明文到密文的不可逆的映射,只有加密過程,沒有解密過程。同時,哈希函數可以將任意長度的輸入經過變化以後得到固定長度的輸出。哈希函數的這種單向特徵和輸出數據長度固定的特徵使得它可以生成消息或者數據。
以比特幣區塊鏈為代表,其中工作量證明和密鑰編碼過程中多次使用了二次哈希,如SHA(SHA256(k))或者RIPEMD160(SHA256(K)),這種方式帶來的好處是增加了工作量或者在不清楚協議的情況下增加破解難度。
以比特幣區塊鏈為代表,主要使用的兩個哈希函數分別是:
1.SHA-256,主要用於完成PoW(工作量證明)計算;
2.RIPEMD160,主要用於生成比特幣地址。如下圖1所示,為比特幣從公鑰生成地址的流程。
③ 區塊鏈之加密原理總結(一)
先放一張以太坊的架構圖:
在學習的過程中主要是採用單個模塊了學習了解的,包括P2P,密碼學,網路,協議等。直接開始總結:
秘鑰分配問題也就是秘鑰的傳輸問題,如果對稱秘鑰,那麼只能在線下進行秘鑰的交換。如果在線上傳輸秘鑰,那就有可能被攔截。所以採用非對稱加密,兩把鑰匙,一把私鑰自留,一把公鑰公開。公鑰可以在網上傳輸。不用線下交易。保證數據的安全性。
如上圖,A節點發送數據到B節點,此時採用公鑰加密。A節點從自己的公鑰中獲取到B節點的公鑰對明文數據加密,得到密文發送給B節點。而B節點採用自己的私鑰解密。
2、無法解決消息篡改。
如上圖,A節點採用B的公鑰進行加密,然後將密文傳輸給B節點。B節點拿A節點的公鑰將密文解密。
1、由於A的公鑰是公開的,一旦網上黑客攔截消息,密文形同虛設。說白了,這種加密方式,只要攔截消息,就都能解開。
2、同樣存在無法確定消息來源的問題,和消息篡改的問題。
如上圖,A節點在發送數據前,先用B的公鑰加密,得到密文1,再用A的私鑰對密文1加密得到密文2。而B節點得到密文後,先用A的公鑰解密,得到密文1,之後用B的私鑰解密得到明文。
1、當網路上攔截到數據密文2時, 由於A的公鑰是公開的,故可以用A的公鑰對密文2解密,就得到了密文1。所以這樣看起來是雙重加密,其實最後一層的私鑰簽名是無效的。一般來講,我們都希望簽名是簽在最原始的數據上。如果簽名放在後面,由於公鑰是公開的,簽名就缺乏安全性。
2、存在性能問題,非對稱加密本身效率就很低下,還進行了兩次加密過程。
如上圖,A節點先用A的私鑰加密,之後用B的公鑰加密。B節點收到消息後,先採用B的私鑰解密,然後再利用A的公鑰解密。
1、當密文數據2被黑客攔截後,由於密文2隻能採用B的私鑰解密,而B的私鑰只有B節點有,其他人無法機密。故安全性最高。
2、當B節點解密得到密文1後, 只能採用A的公鑰來解密。而只有經過A的私鑰加密的數據才能用A的公鑰解密成功,A的私鑰只有A節點有,所以可以確定數據是由A節點傳輸過來的。
經兩次非對稱加密,性能問題比較嚴重。
基於以上篡改數據的問題,我們引入了消息認證。經過消息認證後的加密流程如下:
當A節點發送消息前,先對明文數據做一次散列計算。得到一個摘要, 之後將照耀與原始數據同時發送給B節點。當B節點接收到消息後,對消息解密。解析出其中的散列摘要和原始數據,然後再對原始數據進行一次同樣的散列計算得到摘要1, 比較摘要與摘要1。如果相同則未被篡改,如果不同則表示已經被篡改。
在傳輸過程中,密文2隻要被篡改,最後導致的hash與hash1就會產生不同。
無法解決簽名問題,也就是雙方相互攻擊。A對於自己發送的消息始終不承認。比如A對B發送了一條錯誤消息,導致B有損失。但A抵賴不是自己發送的。
在(三)的過程中,沒有辦法解決交互雙方相互攻擊。什麼意思呢? 有可能是因為A發送的消息,對A節點不利,後來A就抵賴這消息不是它發送的。
為了解決這個問題,故引入了簽名。這里我們將(二)-4中的加密方式,與消息簽名合並設計在一起。
在上圖中,我們利用A節點的私鑰對其發送的摘要信息進行簽名,然後將簽名+原文,再利用B的公鑰進行加密。而B得到密文後,先用B的私鑰解密,然後 對摘要再用A的公鑰解密,只有比較兩次摘要的內容是否相同。這既避免了防篡改問題,有規避了雙方攻擊問題。因為A對信息進行了簽名,故是無法抵賴的。
為了解決非對稱加密數據時的性能問題,故往往採用混合加密。這里就需要引入對稱加密,如下圖:
在對數據加密時,我們採用了雙方共享的對稱秘鑰來加密。而對稱秘鑰盡量不要在網路上傳輸,以免丟失。這里的共享對稱秘鑰是根據自己的私鑰和對方的公鑰計算出的,然後適用對稱秘鑰對數據加密。而對方接收到數據時,也計算出對稱秘鑰然後對密文解密。
以上這種對稱秘鑰是不安全的,因為A的私鑰和B的公鑰一般短期內固定,所以共享對稱秘鑰也是固定不變的。為了增強安全性,最好的方式是每次交互都生成一個臨時的共享對稱秘鑰。那麼如何才能在每次交互過程中生成一個隨機的對稱秘鑰,且不需要傳輸呢?
那麼如何生成隨機的共享秘鑰進行加密呢?
對於發送方A節點,在每次發送時,都生成一個臨時非對稱秘鑰對,然後根據B節點的公鑰 和 臨時的非對稱私鑰 可以計算出一個對稱秘鑰(KA演算法-Key Agreement)。然後利用該對稱秘鑰對數據進行加密,針對共享秘鑰這里的流程如下:
對於B節點,當接收到傳輸過來的數據時,解析出其中A節點的隨機公鑰,之後利用A節點的隨機公鑰 與 B節點自身的私鑰 計算出對稱秘鑰(KA演算法)。之後利用對稱秘鑰機密數據。
對於以上加密方式,其實仍然存在很多問題,比如如何避免重放攻擊(在消息中加入 Nonce ),再比如彩虹表(參考 KDF機制解決 )之類的問題。由於時間及能力有限,故暫時忽略。
那麼究竟應該採用何種加密呢?
主要還是基於要傳輸的數據的安全等級來考量。不重要的數據其實做好認證和簽名就可以,但是很重要的數據就需要採用安全等級比較高的加密方案了。
密碼套件 是一個網路協議的概念。其中主要包括身份認證、加密、消息認證(MAC)、秘鑰交換的演算法組成。
在整個網路的傳輸過程中,根據密碼套件主要分如下幾大類演算法:
秘鑰交換演算法:比如ECDHE、RSA。主要用於客戶端和服務端握手時如何進行身份驗證。
消息認證演算法:比如SHA1、SHA2、SHA3。主要用於消息摘要。
批量加密演算法:比如AES, 主要用於加密信息流。
偽隨機數演算法:例如TLS 1.2的偽隨機函數使用MAC演算法的散列函數來創建一個 主密鑰 ——連接雙方共享的一個48位元組的私鑰。主密鑰在創建會話密鑰(例如創建MAC)時作為一個熵來源。
在網路中,一次消息的傳輸一般需要在如下4個階段分別進行加密,才能保證消息安全、可靠的傳輸。
握手/網路協商階段:
在雙方進行握手階段,需要進行鏈接的協商。主要的加密演算法包括RSA、DH、ECDH等
身份認證階段:
身份認證階段,需要確定發送的消息的來源來源。主要採用的加密方式包括RSA、DSA、ECDSA(ECC加密,DSA簽名)等。
消息加密階段:
消息加密指對發送的信息流進行加密。主要採用的加密方式包括DES、RC4、AES等。
消息身份認證階段/防篡改階段:
主要是保證消息在傳輸過程中確保沒有被篡改過。主要的加密方式包括MD5、SHA1、SHA2、SHA3等。
ECC :Elliptic Curves Cryptography,橢圓曲線密碼編碼學。是一種根據橢圓上點倍積生成 公鑰、私鑰的演算法。用於生成公私秘鑰。
ECDSA :用於數字簽名,是一種數字簽名演算法。一種有效的數字簽名使接收者有理由相信消息是由已知的發送者創建的,從而發送者不能否認已經發送了消息(身份驗證和不可否認),並且消息在運輸過程中沒有改變。ECDSA簽名演算法是ECC與DSA的結合,整個簽名過程與DSA類似,所不一樣的是簽名中採取的演算法為ECC,最後簽名出來的值也是分為r,s。 主要用於身份認證階段 。
ECDH :也是基於ECC演算法的霍夫曼樹秘鑰,通過ECDH,雙方可以在不共享任何秘密的前提下協商出一個共享秘密,並且是這種共享秘鑰是為當前的通信暫時性的隨機生成的,通信一旦中斷秘鑰就消失。 主要用於握手磋商階段。
ECIES: 是一種集成加密方案,也可稱為一種混合加密方案,它提供了對所選擇的明文和選擇的密碼文本攻擊的語義安全性。ECIES可以使用不同類型的函數:秘鑰協商函數(KA),秘鑰推導函數(KDF),對稱加密方案(ENC),哈希函數(HASH), H-MAC函數(MAC)。
ECC 是橢圓加密演算法,主要講述了按照公私鑰怎麼在橢圓上產生,並且不可逆。 ECDSA 則主要是採用ECC演算法怎麼來做簽名, ECDH 則是採用ECC演算法怎麼生成對稱秘鑰。以上三者都是對ECC加密演算法的應用。而現實場景中,我們往往會採用混合加密(對稱加密,非對稱加密結合使用,簽名技術等一起使用)。 ECIES 就是底層利用ECC演算法提供的一套集成(混合)加密方案。其中包括了非對稱加密,對稱加密和簽名的功能。
ECC 是 Elliptic Curve Cryptography的簡稱。那麼什麼是橢圓加密曲線呢?Wolfram MathWorld 給出了很標準的定義: 一條橢圓曲線就是一組被 定義的且滿足 的點集。
這個先訂條件是為了保證曲線不包含奇點。
所以,隨著曲線參數a和b的不斷變化,曲線也呈現出了不同的形狀。比如:
所有的非對稱加密的基本原理基本都是基於一個公式 K = k*G。其中K代表公鑰,k代表私鑰,G代表某一個選取的基點。非對稱加密的演算法 就是要保證 該公式 不可進行逆運算( 也就是說G/K是無法計算的 )。
ECC是如何計算出公私鑰呢?這里我按照我自己的理解來描述。
我理解,ECC的核心思想就是:選擇曲線上的一個基點G,之後隨機在ECC曲線上取一個點k(作為私鑰),然後根據k*G計算出我們的公鑰K。並且保證公鑰K也要在曲線上。
那麼k*G怎麼計算呢?如何計算k*G才能保證最後的結果不可逆呢?這就是ECC演算法要解決的。
首先,我們先隨便選擇一條ECC曲線,a = -3, b = 7 得到如下曲線:
在這個曲線上,我隨機選取兩個點,這兩個點的乘法怎麼算呢?我們可以簡化下問題,乘法是都可以用加法表示的,比如2*2 = 2+2,3*5 = 5+5+5。 那麼我們只要能在曲線上計算出加法,理論上就能算乘法。所以,只要能在這個曲線上進行加法計算,理論上就可以來計算乘法,理論上也就可以計算k*G這種表達式的值。
曲線上兩點的加法又怎麼算呢?這里ECC為了保證不可逆性,在曲線上自定義了加法體系。
現實中,1+1=2,2+2=4,但在ECC演算法里,我們理解的這種加法體系是不可能。故需要自定義一套適用於該曲線的加法體系。
ECC定義,在圖形中隨機找一條直線,與ECC曲線相交於三個點(也有可能是兩個點),這三點分別是P、Q、R。
那麼P+Q+R = 0。其中0 不是坐標軸上的0點,而是ECC中的無窮遠點。也就是說定義了無窮遠點為0點。
同樣,我們就能得出 P+Q = -R。 由於R 與-R是關於X軸對稱的,所以我們就能在曲線上找到其坐標。
P+R+Q = 0, 故P+R = -Q , 如上圖。
以上就描述了ECC曲線的世界裡是如何進行加法運算的。
從上圖可看出,直線與曲線只有兩個交點,也就是說 直線是曲線的切線。此時P,R 重合了。
也就是P = R, 根據上述ECC的加法體系,P+R+Q = 0, 就可以得出 P+R+Q = 2P+Q = 2R+Q=0
於是乎得到 2*P = -Q (是不是與我們非對稱演算法的公式 K = k*G 越來越近了)。
於是我們得出一個結論,可以算乘法,不過只有在切點的時候才能算乘法,而且只能算2的乘法。
假若 2 可以變成任意個數進行想乘,那麼就能代表在ECC曲線里可以進行乘法運算,那麼ECC演算法就能滿足非對稱加密演算法的要求了。
那麼我們是不是可以隨機任何一個數的乘法都可以算呢? 答案是肯定的。 也就是點倍積 計算方式。
選一個隨機數 k, 那麼k * P等於多少呢?
我們知道在計算機的世界裡,所有的都是二進制的,ECC既然能算2的乘法,那麼我們可以將隨機數k描 述成二進制然後計算。假若k = 151 = 10010111
由於2*P = -Q 所以 這樣就計算出了k*P。 這就是點倍積演算法 。所以在ECC的曲線體系下是可以來計算乘法,那麼以為這非對稱加密的方式是可行的。
至於為什麼這樣計算 是不可逆的。這需要大量的推演,我也不了解。但是我覺得可以這樣理解:
我們的手錶上,一般都有時間刻度。現在如果把1990年01月01日0點0分0秒作為起始點,如果告訴你至起始點為止時間流逝了 整1年,那麼我們是可以計算出現在的時間的,也就是能在手錶上將時分秒指針應該指向00:00:00。但是反過來,我說現在手錶上的時分秒指針指向了00:00:00,你能告訴我至起始點算過了有幾年了么?
ECDSA簽名演算法和其他DSA、RSA基本相似,都是採用私鑰簽名,公鑰驗證。只不過演算法體系採用的是ECC的演算法。交互的雙方要採用同一套參數體系。簽名原理如下:
在曲線上選取一個無窮遠點為基點 G = (x,y)。隨機在曲線上取一點k 作為私鑰, K = k*G 計算出公鑰。
簽名過程:
生成隨機數R, 計算出RG.
根據隨機數R,消息M的HASH值H,以及私鑰k, 計算出簽名S = (H+kx)/R.
將消息M,RG,S發送給接收方。
簽名驗證過程:
接收到消息M, RG,S
根據消息計算出HASH值H
根據發送方的公鑰K,計算 HG/S + xK/S, 將計算的結果與 RG比較。如果相等則驗證成功。
公式推論:
HG/S + xK/S = HG/S + x(kG)/S = (H+xk)/GS = RG
在介紹原理前,說明一下ECC是滿足結合律和交換律的,也就是說A+B+C = A+C+B = (A+C)+B。
這里舉一個WIKI上的例子說明如何生成共享秘鑰,也可以參考 Alice And Bob 的例子。
Alice 與Bob 要進行通信,雙方前提都是基於 同一參數體系的ECC生成的 公鑰和私鑰。所以有ECC有共同的基點G。
生成秘鑰階段:
Alice 採用公鑰演算法 KA = ka * G ,生成了公鑰KA和私鑰ka, 並公開公鑰KA。
Bob 採用公鑰演算法 KB = kb * G ,生成了公鑰KB和私鑰 kb, 並公開公鑰KB。
計算ECDH階段:
Alice 利用計算公式 Q = ka * KB 計算出一個秘鑰Q。
Bob 利用計算公式 Q' = kb * KA 計算出一個秘鑰Q'。
共享秘鑰驗證:
Q = ka KB = ka * kb * G = ka * G * kb = KA * kb = kb * KA = Q'
故 雙方分別計算出的共享秘鑰不需要進行公開就可採用Q進行加密。我們將Q稱為共享秘鑰。
在以太坊中,採用的ECIEC的加密套件中的其他內容:
1、其中HASH演算法採用的是最安全的SHA3演算法 Keccak 。
2、簽名演算法採用的是 ECDSA
3、認證方式採用的是 H-MAC
4、ECC的參數體系採用了secp256k1, 其他參數體系 參考這里
H-MAC 全程叫做 Hash-based Message Authentication Code. 其模型如下:
在 以太坊 的 UDP通信時(RPC通信加密方式不同),則採用了以上的實現方式,並擴展化了。
首先,以太坊的UDP通信的結構如下:
其中,sig是 經過 私鑰加密的簽名信息。mac是可以理解為整個消息的摘要, ptype是消息的事件類型,data則是經過RLP編碼後的傳輸數據。
其UDP的整個的加密,認證,簽名模型如下:
④ 區塊鏈密碼演算法是怎樣的
區塊鏈作為新興技術受到越來越廣泛的關注,是一種傳統技術在互聯網時代下的新的應用,這其中包括分布式數據存儲技術、共識機制和密碼學等。隨著各種區塊鏈研究聯盟的創建,相關研究得到了越來越多的資金和人員支持。區塊鏈使用的Hash演算法、零知識證明、環簽名等密碼演算法:
Hash演算法
哈希演算法作為區塊鏈基礎技術,Hash函數的本質是將任意長度(有限)的一組數據映射到一組已定義長度的數據流中。若此函數同時滿足:
(1)對任意輸入的一組數據Hash值的計算都特別簡單;
(2)想要找到2個不同的擁有相同Hash值的數據是計算困難的。
滿足上述兩條性質的Hash函數也被稱為加密Hash函數,不引起矛盾的情況下,Hash函數通常指的是加密Hash函數。對於Hash函數,找到使得被稱為一次碰撞。當前流行的Hash函數有MD5,SHA1,SHA2,SHA3。
比特幣使用的是SHA256,大多區塊鏈系統使用的都是SHA256演算法。所以這里先介紹一下SHA256。
1、 SHA256演算法步驟
STEP1:附加填充比特。對報文進行填充使報文長度與448模512同餘(長度=448mod512),填充的比特數范圍是1到512,填充比特串的最高位為1,其餘位為0。
STEP2:附加長度值。將用64-bit表示的初始報文(填充前)的位長度附加在步驟1的結果後(低位位元組優先)。
STEP3:初始化緩存。使用一個256-bit的緩存來存放該散列函數的中間及最終結果。
STEP4:處理512-bit(16個字)報文分組序列。該演算法使用了六種基本邏輯函數,由64 步迭代運算組成。每步都以256-bit緩存值為輸入,然後更新緩存內容。每步使用一個32-bit 常數值Kt和一個32-bit Wt。其中Wt是分組之後的報文,t=1,2,...,16 。
STEP5:所有的512-bit分組處理完畢後,對於SHA256演算法最後一個分組產生的輸出便是256-bit的報文。
2、環簽名
2001年,Rivest, shamir和Tauman三位密碼學家首次提出了環簽名。是一種簡化的群簽名,只有環成員沒有管理者,不需要環成員間的合作。環簽名方案中簽名者首先選定一個臨時的簽名者集合,集合中包括簽名者。然後簽名者利用自己的私鑰和簽名集合中其他人的公鑰就可以獨立的產生簽名,而無需他人的幫助。簽名者集合中的成員可能並不知道自己被包含在其中。
環簽名方案由以下幾部分構成:
(1)密鑰生成。為環中每個成員產生一個密鑰對(公鑰PKi,私鑰SKi)。
(2)簽名。簽名者用自己的私鑰和任意n個環成員(包括自己)的公鑰為消息m生成簽名a。
(3)簽名驗證。驗證者根據環簽名和消息m,驗證簽名是否為環中成員所簽,如果有效就接收,否則丟棄。
環簽名滿足的性質:
(1)無條件匿名性:攻擊者無法確定簽名是由環中哪個成員生成,即使在獲得環成員私鑰的情況下,概率也不超過1/n。
(2)正確性:簽名必需能被所有其他人驗證。
(3)不可偽造性:環中其他成員不能偽造真實簽名者簽名,外部攻擊者即使在獲得某個有效環簽名的基礎上,也不能為消息m偽造一個簽名。
3、環簽名和群簽名的比較
(1)匿名性。都是一種個體代表群體簽名的體制,驗證者能驗證簽名為群體中某個成員所簽,但並不能知道為哪個成員,以達到簽名者匿名的作用。
(2)可追蹤性。群簽名中,群管理員的存在保證了簽名的可追蹤性。群管理員可以撤銷簽名,揭露真正的簽名者。環簽名本身無法揭示簽名者,除非簽名者本身想暴露或者在簽名中添加額外的信息。提出了一個可驗證的環簽名方案,方案中真實簽名者希望驗證者知道自己的身份,此時真實簽名者可以通過透露自己掌握的秘密信息來證實自己的身份。
(3)管理系統。群簽名由群管理員管理,環簽名不需要管理,簽名者只有選擇一個可能的簽名者集合,獲得其公鑰,然後公布這個集合即可,所有成員平等。
鏈喬教育在線旗下學碩創新區塊鏈技術工作站是中國教育部學校規劃建設發展中心開展的「智慧學習工場2020-學碩創新工作站 」唯一獲準的「區塊鏈技術專業」試點工作站。專業站立足為學生提供多樣化成長路徑,推進專業學位研究生產學研結合培養模式改革,構建應用型、復合型人才培養體系。
⑤ 什麼是區塊鏈加密演算法
區塊鏈加密演算法(EncryptionAlgorithm)
非對稱加密演算法是一個函數,通過使用一個加密鑰匙,將原來的明文文件或數據轉化成一串不可讀的密文代碼。加密流程是不可逆的,只有持有對應的解密鑰匙才能將該加密信息解密成可閱讀的明文。加密使得私密數據可以在低風險的情況下,通過公共網路進行傳輸,並保護數據不被第三方竊取、閱讀。
區塊鏈技術的核心優勢是去中心化,能夠通過運用數據加密、時間戳、分布式共識和經濟激勵等手段,在節點無需互相信任的分布式系統中實現基於去中心化信用的點對點交易、協調與協作,從而為解決中心化機構普遍存在的高成本、低效率和數據存儲不安全等問題提供了解決方案。
區塊鏈的應用領域有數字貨幣、通證、金融、防偽溯源、隱私保護、供應鏈、娛樂等等,區塊鏈、比特幣的火爆,不少相關的top域名都被注冊,對域名行業產生了比較大的影響。
⑥ 區塊鏈的加密技術
數字加密技能是區塊鏈技能使用和開展的關鍵。一旦加密辦法被破解,區塊鏈的數據安全性將受到挑戰,區塊鏈的可篡改性將不復存在。加密演算法分為對稱加密演算法和非對稱加密演算法。區塊鏈首要使用非對稱加密演算法。非對稱加密演算法中的公鑰暗碼體制依據其所依據的問題一般分為三類:大整數分化問題、離散對數問題和橢圓曲線問題。第一,引進區塊鏈加密技能加密演算法一般分為對稱加密和非對稱加密。非對稱加密是指集成到區塊鏈中以滿意安全要求和所有權驗證要求的加密技能。非對稱加密通常在加密和解密進程中使用兩個非對稱暗碼,稱為公鑰和私鑰。非對稱密鑰對有兩個特點:一是其間一個密鑰(公鑰或私鑰)加密信息後,只能解密另一個對應的密鑰。第二,公鑰可以向別人揭露,而私鑰是保密的,別人無法通過公鑰計算出相應的私鑰。非對稱加密一般分為三種首要類型:大整數分化問題、離散對數問題和橢圓曲線問題。大整數分化的問題類是指用兩個大素數的乘積作為加密數。由於素數的出現是沒有規律的,所以只能通過不斷的試算來尋找解決辦法。離散對數問題類是指基於離散對數的困難性和強單向哈希函數的一種非對稱分布式加密演算法。橢圓曲線是指使用平面橢圓曲線來計算一組非對稱的特殊值,比特幣就採用了這種加密演算法。非對稱加密技能在區塊鏈的使用場景首要包含信息加密、數字簽名和登錄認證。(1)在信息加密場景中,發送方(記為A)用接收方(記為B)的公鑰對信息進行加密後發送給
B,B用自己的私鑰對信息進行解密。比特幣交易的加密就屬於這種場景。(2)在數字簽名場景中,發送方A用自己的私鑰對信息進行加密並發送給B,B用A的公鑰對信息進行解密,然後確保信息是由A發送的。(3)登錄認證場景下,客戶端用私鑰加密登錄信息並發送給伺服器,伺服器再用客戶端的公鑰解密認證登錄信息。請注意上述三種加密計劃之間的差異:信息加密是公鑰加密和私鑰解密,確保信息的安全性;數字簽名是私鑰加密,公鑰解密,確保了數字簽名的歸屬。認證私鑰加密,公鑰解密。以比特幣體系為例,其非對稱加密機制如圖1所示:比特幣體系一般通過調用操作體系底層的隨機數生成器生成一個256位的隨機數作為私鑰。比特幣的私鑰總量大,遍歷所有私鑰空間獲取比特幣的私鑰極其困難,所以暗碼學是安全的。為便於辨認,256位二進制比特幣私鑰將通過SHA256哈希演算法和Base58進行轉化,構成50個字元長的私鑰,便於用戶辨認和書寫。比特幣的公鑰是私鑰通過Secp256k1橢圓曲線演算法生成的65位元組隨機數。公鑰可用於生成比特幣交易中使用的地址。生成進程是公鑰先通過SHA256和RIPEMD160哈希處理,生成20位元組的摘要成果(即Hash160的成果),再通過SHA256哈希演算法和Base58轉化,構成33個字元的比特幣地址。公鑰生成進程是不可逆的,即私鑰不能從公鑰推導出來。比特幣的公鑰和私鑰通常存儲在比特幣錢包文件中,其間私鑰最為重要。丟掉私鑰意味著丟掉相應地址的所有比特幣財物。在現有的比特幣和區塊鏈體系中,現已依據實踐使用需求衍生出多私鑰加密技能,以滿意多重簽名等愈加靈敏雜亂的場景。
⑦ 區塊鏈與隱私計算的結合是必然趨勢嗎
區塊鏈與隱私計算的結合是必然趨勢嗎?
我們目前對這個問題的思考框架是:如果不與隱私計算技術結合,區塊鏈技術的應用是 否受到限制、無法向前發展;如果不與區塊鏈技術結合,隱私計算技術是否受到限制、無法 向前發展。如果二者對彼此都是剛需,那麼它們相結合的趨勢就是必然。
以下為我們對這個問題的思考:
1、隱私計算技術的應用是否區塊鏈技術的剛需
區塊鏈技術有巨大的優勢,但是如果沒有隱私計算技術,區塊鏈技術的應用會大大受到 限制,因為無法解決鏈上數據的隱私保護問題,這使得大量涉及敏感數據的場景不願應用區 塊鏈技術,比如金融和醫療領域。
(1)區塊鏈技術的局限性
第一,鏈上數據公開透明,數據的合規處理和隱私保護能力不足 區塊鏈作為分布式賬本系統,數據的公開透明盡管有利於存證、防篡改,但也存在數據 可輕易被復制、泄漏個人隱私的風險。區塊鏈在公有鏈上要求不同節點對交易和交易狀態進 行驗證、維護辯陸,形成共識,因此每個參與者都能擁有完整的數據備份,所有的交易數據公開 透明。如果知道某個參與者的賬戶,就很容易獲取其每一筆交易記錄,從而據此推斷其 社會 身份、財產狀況等。以消費場景為例,平台之間存在競爭壁壘,用戶也希望保留消費隱私, 因此區塊鏈缺乏對用戶流水、物流信息、營銷情況等與企業、個人隱私相關的數據缺乏保護 能力,往往導致數據擁有方不願意讓數據進入流通環節。在鏈上系統的交易不再受中心賬本的控制,用戶通過使用唯一的私鑰進行交易,交易過 程被加密且加密前數據很難還原,僅以私鑰作為交易憑證使得區塊鏈內的交易變得更加匿名 和不可控。在分布式賬本系統上,所有的轉賬以地址形式進行,一但發生了詐騙或者洗錢等 金融犯罪,即便可以公開查詢地址,但對資金追蹤的難度極大,且私鑰作為交易憑證很難證 明使用者的身份,因此許多企業、個人通過區塊鏈進行洗錢等違法交易,不利於數據的合規 處理和合法共享。
第二,數據處理能力不足,制約技術的進一步落地和商業化拓展 鏈上計算受限於網路共識的性能,使得鏈上交易難以具備實時性和高效率,區塊鏈智能 合約的計算能力需要擴展。以最大的加密支付系統比特幣為例,每秒鍾只能夠處理大約 3 到 7 筆交易5 ,且當前產生的交易的有效性受網路傳輸影響,往往需要等待 10 分鍾左右的記賬周 期才能讓網路上的節點共同知道交易內容。此外,如果鏈上有兩個及以上節點同時競爭到記賬權力,則還需要等待下一個記賬周期才能確認交易的准確性,最終由區塊最長、記賬內容 最多的鏈來完成確認。
完全去早灶卜中心化的系統與現實中大部分現有體系的兼容性不足,缺乏鏈上鏈下協同、多業 務發展的系統和功能,制約區塊鏈技術的進一步落地。在區塊鏈的技術落地過程中,首先, 各行業本身具有成熟的體系,區塊鏈完全去中心化的形式不一定適合所有的領域和行業;其 次,區塊鏈的陸穗平台設計和實際運行成本巨大,其所具備的低效率和延遲性的交易缺陷非常明 顯,是否能夠彌補原系統更換的損失需要經過一定的精算和比較;此外,使用區塊鏈存儲數 據需要對原有數據格式進行整理,涉及到政務、司法領域的敏感數據,更需要建立鏈接線上 和線下數據的可信通道防止數據錄入有誤,這帶來了較高的人力、物力成本。
(2)隱私計算技術對區塊鏈技術的幫助
隱私計算技術保障數據從產生、感知、發布、傳播到存儲、處理、使用、銷毀等全生命 周期過程中的隱私性,彌補區塊鏈技術的隱私保護能力,實現數據的「可用不可見」。通過 引入隱私計算技術,用戶的收支信息、住址信息等個人數均以密文的形式呈現,在平台進行 數據共享的過程中,既能防止數據泄露,又能夠保障用戶個人隱私的安全,有利於進一步打 破數據孤島效應,推動更大范圍內的多方數據協作。隱私計算技術可與區塊鏈技術形成技術組合,提升數據處理能力、擴大可應用范圍。隱 私計算技術通過對數據進行規范化處理,能夠提升數據處理、數據共享的效率,提升區塊鏈 的數據處理能力。此外,隱私計算技術+區塊鏈技術的技術組合能夠應用於缺乏中心化系統、 但又對敏感數據分享有強烈需求的合作領域,擴展區塊鏈技術的應用場景。
區塊鏈技術的應用是否隱私計算技術的剛需
(1)隱私計算技術的局限性
第一,數據共享缺乏安全檢驗,制約數據流通的可信性
數據共享的整個流程涉及到採集、傳輸、存儲、分析、發布、分賬等多個流程,隱私計 算主要是解決全流程的數據「可用不可見」的問題,但是難以保證數據來源可信和計算過程 可信。
從數據來源可信的角度來說,在數據採集的環節,數據內容本身可能不完整,數據的錄 入可能會存在失誤;在數據傳輸的環節,數據的傳輸可能會被其他的客戶端攻擊,導致數據 在傳輸的過程中泄漏;在數據的儲存環節,儲存數據的角色方有可能會篡改數據或者將數據 復制轉賣到黑市,這些都不會被隱私計算技術記錄。如果無法保證數據共享各方的身份得到 「可信驗證」,就有可能導致數據的隱私「名不副實」。從計算過程可信的角度來說,在數 據分析和發布的環節,數據的共享方有可能私自篡改數據的運行結果和發布內容,對最終數 據處理的結果進行造假。因此,一旦信息經過驗證並添加到隱私計算的環境中,很難發現數 據是否被篡改、被泄漏,很難防止不同時間點不同節點的數據造假的情況,在涉及到金融、政務、醫療、慈善等關鍵領域里,如果數據有誤則產生的一系列法律問題則難以追究。
第二,業務水平整體層次不齊,制約技術平台的擴展
當前,隱私計算的技術實現路徑主要分為三種:多方安全計算、聯邦學習、TEE 可信執行 環境。三種技術路徑存在各自的應用缺陷和問題,由於行業內不同公司對於技術的掌握能力 和研發能力有限,導致技術平台的實際應用范圍有限,可擴展能力不足。
多方安全計算盡管具有復雜高標準的密碼學知識,但其計算性能在實際應用的過程中存 在效率低的缺陷。隨著應用規模的擴大,採用合適的計算方案保證運算時延與參與方數量呈 現線性變化是目前各技術廠商面臨的一大挑戰。多方安全計算雖然能保證多方在數據融合計 算時候的隱私安全,但是在數據的訪問、控制、傳輸等環節,仍然需要匹配其他的技術手段 防止數據泄露、篡改。
聯邦學習技術目前在業內的應用通常以第三方平台為基礎模型,在基礎模型之上進行隱 私計算,這樣的基礎模型本身存在被開發者植入病毒的隱患。此外,聯邦學習的機制默認所 有的參與方都是可信方,無法規避某個參與方惡意提供虛假數據甚至病害數據,從而對最終 的訓練模型造成不可逆轉的危害。由於聯邦學習需要各個參與式節點進行計算,因此節點的 計算能力、網路連接狀態都將限制聯邦學習的通信效率。
TEE 可信執行環境在國內目前核心硬體技術掌握在英特爾、高通、ARM 等少數外國核心供 應商中,如果在關鍵領域從國外購買,則存在非常高的安全風險和應用風險。第三,數據共享缺乏確權機制,制約數據流通的應用性 隱私計算通過使用多方數據共同計算、產生成果,然而在實際合作的過程中,由於各個 數據共享方業務水平不同、數據質量不一導致在數據處理的每一個環節難以實現合理的確權。
按照常規的利益分配機制,擁有高質量數據、高成果貢獻率的數據擁有方理應從中獲取更多 的利潤,但是隱私計算僅考慮到數據的「可用不可見」,數據共享方難以從最終結果來判斷 誰的數據對於成果的貢獻最大,造成利益分配的不公平。如果缺乏合理的成果貢獻評估機制和利益分配機制,就會難以激勵數據所有者和其他數 據持有者進行合作。尤其是在不信任的多方合作的場景下,會更加增加合作的信任成本,使 得多方協作難以達成,制約數據流通的實際應用性。
(2)區塊鏈技術對隱私計算技術的幫助
區塊鏈技術通過數據流通的所有環節、所有參與者進行記錄,實現數據共享流程中的權 責分明,提升了數據流通的可信性。在數據傳輸的環節,區塊鏈記錄數據的提供者,確認數 據提供方身份的真實性和有效性,有利於數據確權,為公平可行的利益分配機制提供參考;在數據儲存的環節,區塊鏈保證數據的每一次修改都有跡可循,防止數據的惡意篡改。區塊 鏈技術可作為隱私計算技術的底層平台,保證了加密數據本身的真實有效性,提升了隱私計 算平台里數據流通的可信性,拓展隱私計算技術的應用范圍。
3. 結論
隱私計算技術和區塊鏈技術的融合是必然的趨勢。對於數據資產的流轉來講,沒有隱私 計算,不能解決數據本身的安全和隱私保護問題;沒有區塊鏈,不能解決數據的確權問題以 及在更大范圍內的數據網路協作問題。將區塊鏈和隱私計算二者結合起來,建設大規模數據 流通網路,在目前的實踐中成為有所共識的 探索 方向。
區塊鏈與隱私計算的結合會改變什麼?
1、形成大規模數據流通網路和數據要素市場
當前,數據流通存在三方面問題:數據擁有方的數據保護和數據確權難以實現;不同來 源數據的整合處理成本過高、缺乏統一標准;數據利益的分配機制不完善。
如前文所述,區塊鏈和隱私計算技術相結合,可以一方面解決隱私保護問題,一方面解 決數據確權和多方協作問題,從而建立大規模的數據流通網路。
在大規模數據流通網路建立的基礎上,真正意義上的數據要素市場才能夠形成,數據作 為生產要素的價值才能夠被充分發掘出來。
2、推動數據資產化的發展
所謂資產,是指由企業過去的交易或事項形成的,由企業擁有或者控制的,預期會給企 業帶來經濟利益的資源。
數據的資產化就是讓數據在市場上發現價值,能夠為企業創造新的經濟益。
大規模數據流通網路和數據要素市場的形成,將大大推動數據價值的發現、數據資產化 的發展。
從企業一側來看,企業的生產經營活動當中沉澱下來的數據會成為寶貴的資產。一方面, 對這些數據的分析和運用,將推動企業改善自身的業務;另一方面,與外部機構進行數據的 共享,能夠推動數據發揮出更大的價值,企業自身也將從中獲取更多收益。這會反過來進一 步推動企業的數字化轉型和對數據資產的管理。未來,對數據資產的盤點可能成為企業在資 產負債表、現金流量表、利潤表之外的「第四張表」。
數據資產化的發展,也會推動圍繞數據價值挖掘形成全新的服務體系。其中包括數據確 權、定價、交易等各個環節。上海 社會 科學院信息研究所副所長丁波濤將未來數據資產服務體系中的機構分成四類:
第一類提供中介服務,包括數據經紀人,還有數據代理。
第二類提供數據評估,由於數據市場信息不對稱或信息混亂,需要提供合規評估、數據 質量和數據價格的評估。
第三類提供價格咨詢,如提供法律、經濟咨詢或者是上市輔導等的咨詢服務企業。
第四類提供專業技術服務,包括數據開發、數據處理服務、數據交付服等。數據資產化的發展,帶來的將是人們認知的提升、生產效率的提高、生產要素的重組、 創新的產生、經濟的發展以及全 社會 整體福利的提升。
3、對現有業態的改變
區塊鏈與隱私計算的結合,將提升企業和個人分享數據、利用數據的積極性,進一步推 動打破「數據孤島」。其對現有業態的改變主要體現在以下幾個層面:
第一,這將帶來新的數據和 科技 變革。
首先,這將推動數據密態時代的到來。數據密態時代的核心,是數據流通使用方式的巨 大改變,數據將以密態形式在主體間流動和計算,顯著降低數據泄露的風險,並在合規前提 下支撐各種形態業務的發展。此前,數據被加密之後只能用來傳輸或者存儲,但是未來數據 在加密狀態下可以被計算。這將帶來一系列新的問題和挑戰,引發許多相關技術領域的連鎖 反應。
其二,這將重塑大數據產業。隨著數據流通的安全化,以往較為敏感的數據領域逐漸開 放。以政務數據為例,隱私計算使聯合政務、企業、銀行等多方數據建模和分析成為可能, 進一步釋放數據應用價值,創造了多樣化的應用機遇。
其三,人工智慧產業將獲得新一輪的發展。數據、演算法和算力是人工智慧發展的三要素。近幾年來,由於缺乏可用的數據,人工智慧的發展遭遇瓶頸。未來,5G 和物聯網的發展將使 得萬物互聯,數據量大幅增長。區塊鏈+隱私計算技術的應用,可以使得人工智慧利用海量數 據優化模型,真正邁向「智能化」。其四,這將為區塊鏈產業的發展帶來新的機遇。區塊鏈與隱私計算相結合,將拓展聯盟 鏈的節點數量,從而進一步擴大可協同利用的數據資源的范圍。
第二,在 科技 變革的基礎之上,區塊鏈與隱私計算相結合,將給許多傳統產業帶來變革。
在政務領域,一方面,可以實現政府不同部門之間的互聯互通及數據共享,從而促進政 府不同部門的協同,提高政府的效率以及決策質量,推動智慧城市的建設;另一方面,可以 促進政務數據與民間數據的雙向開放。政務數據向 社會 開放,可以為企業或學界所用,釋放 更多價值。民間的數據源向政府開放,可以提高政府在決策以及政務流程等方面的效率。
在金融領域,支付、徵信、信貸、證券資管等各個領域都會因之發生變化。總體來看, 主要是影響到金融的風控和營銷兩個方面。區塊鏈與隱私計算技術的結合,可以在符合法律 規定、不泄露各方原始數據的前提下,擴大數據來源,包括利用金融體系外部的互聯網數據, 實現多方數據共享,聯合建模,從而有效識別信用等級、降低多頭信貸、欺詐等風險,也有 助於信貸及保險等金融產品的精準定價;同樣,內外部多方數據的共享融合也有助於提高金融機構的反洗錢甄別能力。
在醫療領域,未來在疾病治療、葯物研究、醫療保險等多個領域,區塊鏈與隱私計算都 能助推醫療信息化建設,帶來巨大變革。在疾病治療和葯物研究方面,區塊鏈與隱私計算結 合,能夠促進更多的醫療數據被聯合起來進行分析和研究,從而為許多疾病的治療帶來新的 突破。在醫療保險方面,區塊鏈與隱私計算技術結合,主要是可以使得保險公司可以應用到 更多的數據,改善保險產品的設計、定價、營銷,甚至可以促進保險公司對客戶的 健康 管理 等。
區塊鏈與隱私計算技術相結合,目前應用的重點領域是政務、金融、醫療領域,但是未來其應用將不僅僅局限於這三個領域,還將在更多領域發揮作用。
第三,數據權利、利益將重新分配。
這可能是區塊鏈與隱私計算技術相結合所帶來的最為核心,也是最為深刻的,與每一個人 的切身利益都息息相關的變革。
首先,這涉及到每個產業鏈不同環節利益的重新分配。
前述在廣告營銷領域的應用落地為例,此前廣告營銷的利益分配主要是在廣告主與渠 道商之間。但是,未來應用區塊鏈和隱私計算技術,可以在更大范圍內進行數據協作,則要 解決廣告主、多個渠道方、消費者之間多方數據協作的問題,這其中就涉及到多方之間權責 的劃分、利益的重新分配。
其次,這還涉及到企業與個人之間利益的重新分配。
歐盟的 GDPR,美國的 CCPA 等法案中涉及用戶的一項重要權益即「portability,(可攜 帶權)」。即第三方應用不能封鎖個人數據,一旦個人有下載的訴求,APP 需要提供便利的 API 利於個人拷貝數據。美國公司已陸續為用戶提供 API,如果在這方面功能缺失,個人客戶 可以提出訴訟,而公司也將面臨巨額的罰款。在中國的《個人信息保護法》當中,也有相關的條款。《個人信息保護法》第四十五條規 定,「個人有權向個人信息處理者查閱、復制其個人信息」、「個人請求查閱、復制其個人信息 的,個人信息處理者應當及時提供。個人請求將個人信息轉移至其指定的個人信息處理者, 符合國家網信部門規定條件的,個人信息處理者應當提供轉移的途徑。」
目前,中國公司的區塊鏈+隱私計算 探索 主要集中在 To B 服務領域,但是區塊鏈是全球 化的商業,如果美國已經出現這樣的模式,中國大概率不會完全不受影響。伴隨著消費級軟硬體技術能力的提升,區塊鏈與隱私計算技術結合,會逐步對個人與機構 之間的數據服務進行變革。對於個人用戶而言,將有機會獲得自身隱私數據的完全掌控權, 並為數據業務過程中所涉及的數據隱私需求獲得更強的技術性保障。目前關於 To C 服務的相關問題,國內業界還在探討當中。
為什麼區塊鏈+隱私計算的應用尚未大規模普及?
第一,區塊鏈+隱私計算的落地應用,主要是在涉及需要多方數據協作的情況,目前實際需求尚未爆發。
從隱私計算技術發展的角度來看,目前隱私計算尚在落地初期,解決的主要是兩方之間 的數據協作問題,涉及到多方的場景還不多,因此很多時候還沒有體會到對區塊鏈+隱私計算 應用的需要。
從區塊鏈技術發展的角度來看,區塊鏈技術在許多領域的應用目前並非剛需。不少問題 可以應用區塊鏈解決,但是不用區塊鏈技術也能解決,而應用區塊鏈技術解決的成本更高。因此,目前區塊鏈項目的建設主要是政務部門和大型企業較為積極,因為政府和大型企業從 長遠發展的角度來考慮,可以做前瞻性的投資建設和技術布局,但是大多數商業機構需要衡 量投入與產出。
區塊鏈技術與隱私計算技術結合,主要是用於處理數據協作問題。從數據治理的角度來 看,目前大多數機構都在處理自身內部的數據治理問題,內部的數據體系梳理好之後,才涉 及到與外部進行數據協作,因此還需要時間。
第二,區塊鏈+隱私計算的落地應用較為復雜,涉及到新商業模式的創造、權責以及利益 的重新分配,因此需要的時間更長。
以在廣告營銷領域的應用落地為例,目前的大多數應用 都只是落地了隱私計算平台,主要涉及兩方數據協作,直接應用隱私計算技術,延續此前商 業應用即可。但是,如果引入區塊鏈技術,則要解決廣告主、渠道方、消費者之間多方數據 協作的問題,這其中可能涉及到多方之間權責的劃分、利益的重新分配,新商業模式的形成 需要時間進行 探索 。
應用的大規模普及,還需要解決哪些問題?
區塊鏈+隱私計算的應用在大規模鋪開之前,還需要具備三方面的條件:
第一,從外部環境來看,需要全 社會 整體的數字化水平的提高。 打個比方,區塊鏈+隱私 計算將來會形成數據流通的高速公路,但是路上要有足夠的車。目前全 社會 的數字化正在快 速推進當中,大多數機構都是正在進行自身內部的數據治理,他們需要先處理好自己的數據, 之後才能產生更多的與外部數據進行協作的需求,這還需要時間。
第二,從技術發展來看,技術成熟尚需投入。 區塊鏈+隱私計算技術的應用,實際上是犧 牲了數據流通的效率、提升了安全性,但是數據流通的效率也非常重要,未來需要在效率和 安全這兩個方面形成一定的平衡,安全要保障,足夠的效率也要滿足,這其中涉及到許多技 術的研發、行業標準的制定,技術產品化的發展和完善、技術成本的進一步降低,還需要時 間。
第三,還需要相關法律法規的完善,以及數據交易商業模式的形成。 不過,這一條件與 前兩個條件相比,其在目前的重要性相對次之。因為隨著需求的爆發、技術的完善,相關的法律法規以及商業模式就會隨之形成,這一條件在現階段並非限制區塊鏈與隱私計算技術落 地應用的最關鍵因素。
區塊鏈+隱私計算的應用中還蘊藏著哪些趨勢?
1、國產化的趨勢
區塊鏈+隱私計算的應用,涉及網路安全、數據安全,未來將成為新基建的重要組成部分。這是關乎網路空間主權、國家安全和未來發展利益的重要方面,因此這個領域的國產化是未來趨勢。
在區塊鏈+隱私計算技術應用的國產化當中,軟體的國產化是相對容易實現的。難點在於 硬體的國產化,其中最難的部分是晶元的國產化。
這一部分的發展,與信創領域的發展相關。信創,即信息技術應用創新產業,其是數據 安全、網路安全的基礎,也是新基建的重要組成部分。信創涉及到的行業包括 IT 基礎設施:CPU 晶元、伺服器、存儲、交換機、路由器、各種雲和相關服務內容;基礎軟體:資料庫、操 作系統、中間件;應用軟體:OA、 ERP、辦公軟體、政務應用、流版簽軟體;信息安全:邊 界安全產品、終端安全產品等。
在區塊鏈+隱私計算領域,目前已經有企業在嘗試產品的國產化。例如,前文提到的,螞 蟻鏈自研了密碼卡、隱私計算硬體以及自研可信上鏈晶元,同時還推出了摩斯隱私計算一體 機。創業公司如星雲 Clustar、融數聯智也在進行相關國產化硬體產品的研發。
2、軟硬體技術相結合、更多技術融合發展的趨勢
目前,在區塊鏈與隱私計算技術相結合的實踐中,也呈現出了軟硬體技術相結合、更多 技術融合發展的趨勢。這主要是緣於幾方面的需求:
第一,是加強數據安全性的需求。
隱私計算主要是解決數據在計算過程中不泄露的問題,區塊鏈主要是解決存證問題,二者結合僅能解決數據安全的一部分問題。數據從產生到計算再到消亡,會涉及採集、傳輸、 存儲、計算、銷毀等多個環節,其生命周期可能會有數十年之久,要真正保障數據安全需要 一個更加全方位的、體系化的解決方案,以使得每個環節上都有對應的技術體系保障數據安 全 在數據採集階段需要精心設計設備可信架構,在網路傳輸階段需要合理運用安全協議, 在存儲階段需要兼顧加密與性能,在數據計算階段需要靈活選擇可信執行環境與密態運算。除此以外,計算環境的可信與安全在防禦縱深建設上也至關重要。這些安全保障能力的技術 圖譜會涉及到可信計算、軟硬體供應鏈安全、隔離技術、網路與存儲的透明加密、密鑰管理、 可信執行環境等等。這其中每一個技術點都有軟硬體結合、多種技術融合發揮的空間。
第二,是提升計算性能的需求。
隱私計算的性能目前還比較低,在計算機單機、單機和單機之間、計算機集群之間這三 個層面上都存在。
在計算機單機上,隱私計算由於運用了密碼學技術,計算過程中涉及到很多加密解密的 步驟,這使得計算量以幾何級數增加。以全同態演算法為例,在通用晶元上密文運算的速度比 明文運算慢了 10 萬倍。這意味著,做同樣的運算,如果用全同態演算法,在 Intel 最新的 Icelake 處理器上,跑出來的效果等同於 Intel 的第一代 8086 處理器,直接回退了數十年。這使得全 同態加密在現實情況下就不具備可用性了。算力問題也是導致全同態演算法一直未得到廣泛應 用的根本原因。
在單機之間和計算機集群之間,會涉及到單機之間和集群之間的通信效率問題。一方面, 主流的隱私計算技術無論是聯邦學習還是多方安全計算,都有通信問題。密文膨脹、傳輸次 數膨脹,會導致單機之間網路傳輸效率成為隱私計算的瓶頸之一。另一方面,由於大多數隱 私計算的場景都是跨多方的,多方要通過公網進行通信,公網的帶寬與時延目前也是巨大的 鴻溝。
性能的問題,會隨著時間的推移越來越嚴重。2021 年,隱私計算的落地尚處於頗為早期 的階段,主要是在一些機構內部或者是兩方、三方之間應用,處理的數據量較小,這個問題 還不明顯。可是未來,多方數據交換需求的到來、5G 和物聯網的發展所帶來的數據量急劇增 大,最終導致的將是數據量爆發式的增長,這需要消耗大量的算力。
到那時,隱私計算的性 能將面臨巨大的挑戰。現在在硬體的創新方面正處於體系結構的黃金時代。這是因為,移動互聯網的飛速發展 使得應用場景發展很快,上層的軟體也發展很快,這使得在計算機底層進行支持的硬體甚至 晶元都需要隨之進行改變,進入了新一輪的創新周期。
而從區塊鏈與隱私計算結合的長遠發展來看,軟硬體結合、多技術融合,對隱私計算來 說,可以提升性能、安全性和計算效果;對區塊鏈來說,可以促使更多機構低成本加入聯盟 鏈,擴大聯盟鏈應用范圍。
END
編輯 | 領路元
來源 | 零一 財經 《區塊鏈+隱私計算一線實踐報告(2022)》