📖 ZKIZ Archives


解決數字貨幣安全和運算問題的國際實踐及啟示

區塊鏈技術因其去中心化、公開透明等特點吸引國內外央行和金融機構關註,但要發行基於區塊鏈的數字貨幣仍存在安全隱患和運算能力受限等兩大關鍵技術障礙。為解決這些障礙,國外央行和金融機構進行了很多探索,如英國央行與倫敦大學學院合作開發了RSCoin,試圖運用改進的區塊鏈技術實現安全加密和運算能力增強;全球40多家金融機構組成的R3CEV區塊鏈聯盟開發了Corda區塊鏈平臺,探索多領域安全交易以應對大規模交易需求。這些做法為我國發行數字貨幣提供了有益的參考。

國際實踐代表——英國央行的RSCoin

從央行視角看,更側重數字貨幣的安全可控和運算處理效率,目前進入測試階段的數字貨幣以英國央行的RSCoin為代表。

1.央行掌控賬本,安全性得到較好保障。RSCoin存在2個結構化實體,即最終擁有並控制貨幣供應的中心化機構央行和負責維護交易分類賬的機構(mintettes,如商業銀行),其中mintettes由央行授權管理。其運作流程是:付款人詢問收款人,標識字符串、簽署交易單;收款人通過密鑰識別、確認單據;mintettes確認付款人余額,識別是否滿足交易條件;mintettes收集交易單,填寫賬簿形成低級區塊(lower-level);mintettes確認交易並將交易記錄提交至央行主賬簿,形成高級區塊(higher-level),在高級區塊上形成區塊鏈並被外部使用者所見(通過代碼加密)。由於最終的區塊鏈建立在高級區塊上,因此RSCoin賬本由中央銀行掌控,央行是整個區塊鏈和加密密鑰的唯一管理員。同時保留特殊加密密鑰控制貨幣供應總量,負責賬簿系統值設定及後續管理。

2.委托專業機構驗證交易,提高批量運算能力。在RSCoin設計中,央行委托能夠驗證交易權限的mintettes機構,按照改進版計算機兩階段提交協議(Two-Phase Commit Protocol,2PC)在低級區塊開啟快速的檢測機制,降低“工作證明”耗費的大量計算資源,提高批量運算能力。改進版的2PC協議引進了威脅模型(Threat model)和安全特性檢驗,其中威脅模型通過在協議中寫入算法以發現“雙重花費”或破壞交易完整性等不安全行為;安全特性檢驗包括禁止雙重花費、禁止否定、暴露活動等。

交易驗證過程中,會觸發3個運算算法:第一階段請求階段。當使用者向mintettes發起交易“投票”(vote)請求時觸發“交易驗證”算法,檢驗交易輸入地址是否被使用等。通過驗證後,mintettes觸發“檢查禁止雙重花費”算法,用於檢查交易結構是否有效和交易地址是否可接受等,誠實的使用者將獲得“同意”簽名授權。第二階段提交階段。獲得“同意”簽名授權的使用者將交易信息、多重簽名證據等提交給mintettes,觸發“CommitTx”算法,檢查交易信息是否完善。確認信息後,mintettes將所有交易信息匯總提交至中央銀行高級區塊。

傳統比特幣等加密貨幣因消耗大量資源,每秒至多處理7筆業務,交易確認時間為10分鐘。而RSCoin則能實現每秒處理2000筆交易的目標,並在1秒內完成交易發生到清算。並且隨著mintettes機構的增加,處理的交易規模也會快速增長。

3.引進增強型一致協議,實現可審計性保證。盡管RSCoin由央行監控,但其仍有較高的透明度和可審計性保證。主要方法是在區塊鏈中引進增強型計算機協議,即每個mintette都以其特有的名義序列號記錄相對完整的操作日誌,日誌包括自身活動及與其業務相關的其他活動(如從哪獲得簽名授權)。操作日誌主要包括查詢、提交和關閉時間間隔等。通過完整日誌記錄可實現對驗證機構活動的審計。

金融機構的解決方案

具有代表性的金融機構解決方案主要有註重安全的高盛公司SETLcoin和美國銀行加密貨幣風險監測系統,以及具備運算優勢的Corda分布式賬本平臺和智能合約。

1.改進交易驗證和密鑰控制,提高交易安全。一是高盛公司SETLcoin,使用兩階段提交協議下的分布式事務原子性提交方法(ACP),確保受信任節點發出各自交易信息並進行驗證;同時將交易信息中的地址通過協議(如公開密鑰)加密,其中公鑰用來加密明文和驗證數字簽名以保證交易信息交換自由,私鑰則用來解密密文和創建數字簽名。二是美國銀行加密貨幣風險監測系統,包括風險檢測系統,涵蓋第三方接收交易請求、獲取區塊鏈信息、確定金額以及風險評分,以檢測交易是否合法、被授權或存在可疑第三方等;可疑用戶警報系統,對交易設置檢索區塊鏈信息等指標,並采取主成分方法評分;交易驗證系統,除驗證交易是否安全,還會計算交易的風險評分,驗證過程中將信息提交至第三方協助驗證加密貨幣交易是否被授權。

2.降低運算資源,提升運算能力。一是Corda分布式賬本平臺,其核心是建立企業間的單項協議,交易驗證由交易雙方根據特定驗證邏輯確認,而不由無關的驗證者驗證(如礦工),從而降低運算資源。二是智能合約。智能合約是部署在區塊鏈上的去中心化、可信任共享的程序代碼。一旦觸發合約執行情景(如到達特定時間或發生特定事件等),就會自動激活並執行合約,實現由目前的“IF-THEN”(如果—就)類型向“WHAT-IF”(是什麽—如果)類型推演的智能化快速處理運算機制。2016年以來,基於區塊鏈的智能合約平臺Rootstock、Ethereum等快速發展,IBM也在打造去中心化的物聯網ADEPT智能合約項目,研究領域涉及金融衍生品、儲蓄錢包、多重簽名智能契約等方面。

PermaLink: https://articles.zkiz.com/?id=215499

Next Page

ZKIZ Archives @ 2019