如何通過分佈式密鑰技術實現有效監管?

此文為“密鑰管家”課題組階段性工作報告。

一、非對稱密碼技術是構建區塊鏈應用的基石

非對稱密碼技術在信息化系統中始終扮演著關鍵角色,成為構建信息化系統諸多核心功能的基礎。

在區塊鏈系統中,非對稱密碼技術除了用於用戶標識、操作權限校驗,還用於數字資產地址的生成、資產所有權的標識和數字資產的流轉。如圖1所示,具體來說,基於非對稱密碼技術的數字簽名可以構建公私鑰對以標識用戶身份;可以基於公鑰生成加密資產地址,以公私鑰對檢驗資產所有權;可以用私鑰對操作簽名,用公鑰校驗用戶的操作權限;還可以用接收方公鑰對傳輸數據加密,接收方用私鑰解密並讀取數據。

如何通過分佈式密鑰技術實現有效監管?

圖1 非對稱密碼技術在區塊鏈系統中的應用

區塊鏈中的“人”、“財”、“權”和“數據”都依靠非對稱密碼技術來標識,相應的職能和權限也需要依靠非對稱密碼技術來保障和實現,因此可以說,非對稱密碼技術是構建區塊鏈應用並促進其發展的基石。

二、傳統的非對稱密碼技術無法有效實現對分佈式和去中心化系統的支持

分佈式和去中心化信任是區塊鏈系統的重要特徵,這些特徵保障了區塊鏈系統在多方參與的環境下能降低信任門檻,達到更高的系統效率。但非對稱密碼本身的設計和實現卻是中心化的,無法有效實現對分佈式和去中心化系統的支持。

目前區塊鏈系統使用的非對稱密碼算法,從私鑰到公鑰的計算使用的都是中心化的算法,公私鑰對的生成都需要基於完整的私鑰,即私鑰和公鑰之間的關係是1對1的,而無法有效實現N對1的關係。因此,非對稱密碼技術不能有效支持同一事務在多方參與下的業務協同,不能對區塊鏈中的“人”、“財”、“權”和“數據”實現原生的分佈式管理。

目前對資產所有權的分佈式管理、對資產的有效鎖定和託管,基本都是在位於Level 2的應用層基於多重簽名和智能合約編程實現,對操作權限的審批也需要通過合約來實現。但這兩種方式並非所有的區塊鏈都支持,或者支持能力有限。例如BTC不支持智能合約,在多重簽名上最多隻支持5個多重簽名和3/5的門限;而ETH不支持多重簽名,需要編寫智能合約來實現類似的功能。另一個方面,從安全角度,在上層完成的功能實現除了需要考慮自身業務邏輯的完備性,還需要考慮來自系統底層的攻擊,系統底層的漏洞也會給上層應用的安全帶來更大的影響。


三、分佈式密鑰技術可以實現對分佈式系統的原生支持

如果我們將中心化的非對稱密碼算法改造為分佈式的非對稱密碼算法,即本文所稱的分佈式密鑰技術,如圖2所示,將現有一個用戶生成完整私鑰改造為由多個節點獨立生成各自私鑰分片,將現有的中心化計算過程改造為分佈式的計算過程,將1個私鑰與1個公鑰的對應關係改造為1組私鑰集合與1個公鑰的對應關係,那麼原來基於單一私鑰的公鑰生成、簽名、驗籤以及數據加密等過程就都可以改造為在1組私鑰的基礎上完成公鑰生成、簽名、驗籤和數據解密的過程,資產託管、審批等原來全部位於Level 2,由智能合約完成的業務就可以通過調用位於Level 1的底層分佈式密鑰部件實現,並且這樣的分佈式密鑰部件的功能是原子性的,具有同等的密碼安全強度。

如何通過分佈式密鑰技術實現有效監管?

圖2 現有數字簽名與分佈式密鑰簽名過程對比

分佈式密鑰技術與基於秘密分享技術生成私鑰分片的方案存在本質上的不同。秘密分享的方案是先生成完整的私鑰,再對私鑰進行拆分,形成若干個私鑰分片交給多方分別保存。由於出現過完整私鑰,無論是技術上還是管理上都難以保證完整的私鑰沒有洩露過。而分佈式密鑰方式直接由各個參與者獨立生成各自的私鑰分片,在整個過程中沒有出現過完整私鑰,也不存在參與者之間傳遞和分享各自生成的私鑰分片,因此也就不存在洩露完整私鑰的問題。

圖3是利用現有的非對稱密碼算法實現數據加解密與利用分佈式密鑰算法實現加解密的對比示意圖。在現有方式下,Bob給Alice發一份秘密信息,Bob用 Alice的公鑰PK對信息加密,Alice收到後,用自己的私鑰 SK對信息解密。在分佈式密鑰算法情況下,Bob給群組Group發一份秘密信息,Bob用群組 Group的公鑰PK對信息加密,群組收到加密信息後,需要用群組中不同人的私鑰,包括Alice、 Carl 和David等人每個人的 SK共同對信息解密。

如何通過分佈式密鑰技術實現有效監管?

圖3 現有非對稱密碼與分佈式非密鑰加解密對比

通過以上對現有中心化方式下的非對稱密碼算法進行的分佈式背景下的改造,可以實現基於區塊鏈以及其他分佈式應用對“人”、“財”、“權”和“數據”的原生的分佈式支持,從而可以實現更加豐富的上層分佈式應用。

如何通過分佈式密鑰技術實現有效監管?

圖4 分佈式密鑰技術可以實現對不同系統的遠程管理

在分佈式密鑰技術基礎上,配合跨鏈互操作方案,還可以實現對來自不同區塊鏈系統或者傳統信息化系統中“人”、“財”、“權”和“數據”的遠程管理,如圖4所示,從而構建起一種立足於分佈式密鑰算法的跨鏈方案。

四、非對稱密碼技術的分佈式實現是推動區塊鏈技術與應用治理的實質性突破

在現有的區塊鏈系統以及信息化系統中,私鑰就是用戶在系統中的通行證,即使在異常情況下也沒有人可以對其行為施加影響。在這種情況下,我們只能依靠KYC,依靠對數據進行分析以發現異常,並且依賴於異常情況下的事後處置。

這種情況的出現主要是因為缺少合適、有效的監管工具和監管手段。在現有數據採集和數據分析基礎上,我們應該賦予區塊鏈應用以事前的審批能力,對外部區塊鏈應用的跨鏈插針式的監管能力,以及在某些特定情況下對資產控制權的接管能力。而這些能力需要依賴於非對稱密碼算法的分佈式實現的突破。如圖5所示,通過分佈式身份管理協議實現對“人”的分佈式管理,通過分佈式資產協議實現對“財”的分佈式管理,通過分佈式權限管理協議實現對“財”的分佈式管理,通過分佈式數據管理協議實現對“數據”的管理,以及基於分佈式密鑰的跨鏈實現方案共同構建區塊鏈所需的監管能力。

如何通過分佈式密鑰技術實現有效監管?

圖5 基於分佈式密鑰技術的區塊鏈監管能力構成

因此,非對稱密碼技術的分佈式實現是推動區塊鏈技術與應用治理實現實質性結合,是推動區塊鏈產業發展與推廣的必要的技術基礎。

五、分佈式密鑰可以實現豐富的業務邏輯組合

1. 實現用戶身份的分佈式管理

基於分佈式密鑰算法,用戶可以通過多種方式,實現自身與這個分佈式生成的私鑰集合綁定,從而實現將易讀性和保存困難的私鑰託管給非中心化的分佈式系統,進而實現用戶身份在這個分佈式系統中的託管。這種綁定的安全性也是數學可證明的。由於每一個分佈式私鑰都不能獨立地生成有效簽名,因此這樣的託管是安全的。

用戶實現與分佈式私鑰集合形成綁定關係的方式可以有以下幾種。

(1)用戶在受託的分佈式系統中生成託管賬戶

用戶可以在受託的分佈式系統中生成一個託管賬戶,託管賬戶也是以非對稱密鑰算法來實現的,相當於在受託系統中完成註冊。

如圖6所示,賬戶生成完成之後,用戶可以要求由受託的分佈式系統生成在第三方系統中的用戶身份。用戶身份生成時就完成了該託管身份與用戶在受託的分佈式系統賬戶間的綁定,也同時完成了用戶身份的託管,從而用戶就可以用自己在受託的分佈式系統中的同一個賬戶管理多個第三方系統中的用戶身份。

如何通過分佈式密鑰技術實現有效監管?

圖6 用戶在受託的分佈式系統中生成託管賬戶

在該方案中,用戶的身份是完全託管在受託的分佈式系統中的。用戶持有證明自己在該系統中對應的賬戶,從而擁有賬戶下綁定的所有託管的用戶身份。這樣的綁定關係依賴於受託的分佈式系統的對應記錄。

它的優勢在於託管身份對應的分佈式私鑰集合完全存在於分佈式系統中,用戶不用關心它的安全。同時,在使用過程中,用戶只要發起操作請求,分佈式系統在接受請求後完成後續的操作,不需要用戶的全程參與。

(2)用戶持有分佈式私鑰集合中的一個或若干個私鑰

另一種實現方式是由用戶持有分佈式私鑰集合中的一個或多個私鑰。在該方式中,用戶既是身份託管的委託方,也是身份託管的受託方之一。用戶與某個託管身份的綁定關係是由密碼算法保證的,這是一種數學可證明的綁定關係。

可以通過對算法的參數進行設置以實現分佈式私鑰功能。例如在簽名過程中,如果需要用戶所持有的分佈式私鑰的參與,則可以形成如圖7所示的更加豐富的邏輯功能。

如何通過分佈式密鑰技術實現有效監管?

圖7 用戶持有分佈式私鑰集合中的一個或若干個私鑰

該方案的優勢在於提供了更高的身份託管的安全性。但在簽名使用中,需要用戶全程的參與。

2. 實現隱私和監管

用戶在應用系統中的某些行為,需要實現隱私保護。用戶身份託管可以為現實世界中的用戶提供可靠的隱私身份。通過分佈式密鑰系統,可以搭建一個去中心化的分佈式用戶身份託管平臺,分佈式的算法和去中心化的特點保障了並沒有一個實體第三方可以獲得與受託用戶身份對應的現實世界中的用戶真實信息。

同時,在當前的現實世界中,政府對一些行業和一些特定的應用又有明確的監管需求,例如金融、進出口和海關等。監管在於能夠了解宏觀數據,進行適時的調控,或者在出現特殊情況的時候,能夠有有效的審查手段定位問題的根源。這就在隱私和監管之間提出了分層管理的要求,也就是在日常的使用中,用戶在系統中的行為應該得到隱私保護,而又能夠在一個小範圍內提供可監管和審計的能力。

在具有監管功能的應用系統中,如圖8所示,用戶在生成身份託管系統賬戶前,可以接入對應的KYC系統,按照所在地法律法規的要求完成所需的身份認證。這些KYC數據將不會出現在身份託管系統或應用系統中,從而保障其在應用系統中的隱私行為,同時這些數據在KYC中進行加密保存並向特定部分授權訪問,從而滿足監管和審計的需求。

如何通過分佈式密鑰技術實現有效監管?

圖8 利用分佈式密鑰技術實現監管功能

3. 實現用戶權限的分佈式管理

分佈式密鑰算法可以進一步結合門限簽名等密碼技術,在分佈式私鑰之間構建起更加豐富的邏輯關係。

基礎的邏輯關係包括:

(1)分佈式私鑰間對等的“與”關係

在不設置門限的情況下,一個分佈式私鑰集合中各個私鑰所具有的權力是均等的。在完成相應的操作時需要所有分佈式私鑰的群體參與,所以表現出分佈式私鑰間“與”的邏輯關係,如下所示:

如何通過分佈式密鑰技術實現有效監管?

(2)門限構建的分佈式私鑰間的“與或”關係

在設置門限t/n, t≤n的情況下,一個分佈式私鑰集合中各個私鑰是對等的。但完成相應的操作時需要超過t個分佈式私鑰的共同參與,所以表現出分佈式私鑰間與或的關係。如下所示:

如何通過分佈式密鑰技術實現有效監管?

(3)指定某個分佈式私鑰的“與或”關係

在門限的情況下,指定完成簽名操作時,其中某個分佈式私鑰必須參與,則被指定的分佈式私鑰與其他參與的分佈式私鑰之間就具有對結果與的關係。

如何通過分佈式密鑰技術實現有效監管?

在使用分佈式私鑰構建權限關係的時候,這組分佈式私鑰並不是對應於一個用戶,而是將分佈式私鑰中的各個分佈式私鑰分別對應到實際業務應用中的多個參與者身上,從而由上述的邏輯關係構建參與者之間在業務應用中相對的權限關係。

(4)對等分佈式私鑰“與”的關係

分佈式私鑰集合中私鑰數量與應用參與者數量1:1,如圖9和圖10所示,每個應用參與者持有集合中的1個分佈式私鑰,於是就在這些參與方之間構建起對等的決策關係。這在業務層面的邏輯上就意味著所有的操作都需要得到全體參與者的一致同意才能完成。

如何通過分佈式密鑰技術實現有效監管?

圖9 對等分佈式私鑰“與”的關係形成“YES”結論


如何通過分佈式密鑰技術實現有效監管?

圖10 對等分佈式私鑰“與”的關係形成“NO”結論

(5)門限構建的分佈式私鑰間“與或”的關係

分佈式私鑰集合中私鑰分片數量與業務中參與者數量1:1,每個參與者持有其中的1個私鑰分片,但由於門限的存在構建起少數服從多數的決策關係,超出門限部分的參與者意見,如圖11和圖12所示,不會影響最終的決策結果。

如何通過分佈式密鑰技術實現有效監管?

圖11 私鑰分片數量與業務參與者數量1:1時構成帶有門限的“與或”關係時形成“YES”結論

如何通過分佈式密鑰技術實現有效監管?

圖12 私鑰分片數量與業務參與者數量1:1時構成帶有門限的“與或”關係時形成“NO”結論

分佈式私鑰集合中私鑰數量與應用參與者數量1:n(n≥1),則不同參與者持有數量不等的分佈式私鑰數量,如圖13所示,持有分佈式私鑰數量的多少,對應了不同參與者在意見表達中不同的權重。例如,股東會中不同股東擁有不同表決權的應用場景。

如何通過分佈式密鑰技術實現有效監管?

圖13 分佈式私鑰集合中私鑰數量與應用參與者數量1:n(n≥1)時的“與或”關係

(6)指定某個分佈式私鑰“與或”關係

在這個情況下,最終結果必須得到持有該分佈式私鑰的參與者的支持,相當於持有該分佈式私鑰參與者對決策具有一票否決權,如圖14所示。

如何通過分佈式密鑰技術實現有效監管?

圖14 指定某個分佈式私鑰“與或”關係

六、基於分佈式密鑰技術實現有效監管

1. 操作實時審批

通過歷史記錄數據評價系統運行狀況,檢查業務應用是否符合規範,發現其中有無違規異常操作並提示相關風險,是事後監管和事後糾錯方式。對於核心、關鍵業務應用,需要賦予業務監管者以事前審批能力。

傳統的方式是通過業務流轉的方式實現不同權限對於一個業務請求的審批操作,但其存在如下不足:

(1)業務流轉的審批方式依賴於代碼對業務邏輯實現的準確性,有存在邏輯漏洞的可能性;

(2)業務流轉的審批方式不能形成對決策過程的有效憑證,審批流程和最終系統中提交的指令不構成嚴密的相關性,形成不了可追溯並且不可篡改的邏輯關係。

分佈式密鑰技術可以實現有監管者參與的分佈式簽名,賦予監管者對用戶操作的實時審批能力。

如圖15所示。

如何通過分佈式密鑰技術實現有效監管?

圖15 分佈式密鑰技術實現的有監管者參與的分佈式業務流程

具體流程如下:

(1)操作指令執行者(一方或多方)和監管者(一方或多方)各自獨立掌握自己的私鑰分片;

(2)對於執行者提交的操作,如果需要監管者審批,則採用分佈式的方式由監管者對操作指令完成有效的簽名,該簽名可以被第三方以傳統的公鑰方式校驗;

(3)簽名的過程是交互式的,監管者在收到執行者提交的操作指令時,以及在簽名過程中,都可以終止該交易的簽名,拒絕形成有效的交易指令。

基於分佈式密鑰技術的分佈式簽名是一個數學可證明的過程,分佈式形成的簽名是一個對審批決策流程可追溯,並且不可篡改的有效數字憑證。

同時,被監管的對象和鏈上資產都可能參與到第三方區塊鏈系統的業務應用中。由此,通過分佈式密鑰技術可以實現對監管對象和鏈上資產在其他區塊鏈系統中的用戶身份、賬戶地址和操作指令的分佈式控制,也可以實現如圖16所示的對跨鏈系統的插針式監管,對第三方系統中的用戶、資產和操作提供實時的審批能力。

如何通過分佈式密鑰技術實現有效監管?

圖16 分佈式非對稱密碼技術實現的對跨鏈系統的監管

2. 異常處理

對於事後審計發現的異常情況,例如對於某些監管對象的違規操作行為和相關賬戶資產的接管,需要賦予監管者以不需要被監管對象參與的異常處理能力

如何通過分佈式密鑰技術實現有效監管?

圖17 分佈式密鑰技術實現的異常處理

通過分佈式密鑰技術採用門限閾值設置,可以賦予監管者達到閾值設置的私鑰分片,從而實現在特殊情況下,對於特定資產的緊急處理能力。如圖17所示,在這個過程中,監管者可以在需要的時候利用達到門限閾值的私鑰分片,完成對特定監管賬戶中資產的轉移,從而鎖定相關資產,避免後續違規操作的持續發生。


分享到:


相關文章: