天天看點

美國區塊鍊參考架構的定位、視角和設計理念,對于中國有何借鑒?

近年來,美國在FinTech領域不斷實作技術突破和創新,特别是區塊鍊方向,傳統IT巨頭、金融企業紛紛涉足其中,先後建立了Hyperledger、R3、EEA等著名區塊鍊技術與應用聯盟,積極地開展開源項目孵化,并在多個應用領域,包括但不限于 1)金融服務 2)政府治理 3)保險 4)醫療健康 5)物聯網 6)供應鍊 7)資訊通信技術(ICT)得到廣泛的概念驗證和試點落地。

為了更好地發展區塊鍊技術,防範技術高速發展所孕育的潛在風險,行業标準刻不容緩。在此背景下,工信部中國電子技術标準化研究院牽頭組織中國區塊鍊技術和産業發展論壇主要成員,開展了《資訊技術區塊鍊和分布式賬本技術參考架構》标準的研制工作。筆者作為國内區塊鍊參考架構的編制人員參加了4月3日-5日的ISO/IEC TC307區塊鍊國際标準組第一次會議,下文将對美國送出的區塊鍊參考架構做一個簡單分析并思考它的設計理念對我們國内區塊鍊架構設計的借鑒作用。

(1)使用通俗的語言來描述區塊鍊和分布式賬本技術

(2)區塊鍊或分布式賬本技術的理想原型結構

(3)描述适用于區塊鍊技術的标準範圍

可以從業務、法律或技術視角來看待區塊鍊技術

a)從業務角度來看,區塊鍊是一個在互相認同的參與者之間,促進價值、資産或其他實體轉移的交換網絡。

b)從法律角度來看,區塊鍊賬本上的交易是經過驗證、不可否認且無法篡改的,它不需要中介或第三方參與。

c)從技術角度來看,區塊鍊是一個引用其他資料存儲作為賬本資料、全局複制的分布式賬本。

首先,從分布式應用架構師和開發人員角度來設計一種區塊鍊平台參考架構,如下圖:

圖3.1 區塊鍊平台參考架構設計之一

它包含了6個層次:1)基礎設施 2)安全 3)資料 4)賬本 5)開發 6)分布式應用 ,我們一一對照解讀一下。

即運作分布式賬本的一組伺服器節點,它應該具有雲計算的特性,包括虛拟化和可拓展性。該參考架構特别強調分布式賬本不應該依賴于單個基礎設施供應商,在聯盟鍊場景下,應該使用來自多個基礎設施供應商的雲環境;這對國内是較大的挑戰,企業往往出于管理便利性和自身資料安全考慮,僅選擇一家公有雲服務提供商或企業自己的雲服務,在未來真正的分布式應用環境下,需要更加開放、高度相容的IaaS服務。

安全管理主要包含三部分内容,其中身份管理作為标準化的内容範圍。

身份管理 – 即為不同角色維護他們在區塊鍊網絡中的數字身份。

權限 – 即通路控制,如基于合約、使用者、區塊鍊等級别的權限管理,分級的權限控制符合更高的治理要求,更好适應各個國家監管和審計的要求。

可插拔加密服務 - 能夠讓使用者自主選擇和使用不同類型的加密算法,作為可更新的子產品化元件,以應對未來量子計算機大規模流行對區塊鍊所常用ECDSA等算法的安全性隐患。

資料層都被納入标準化的範圍,主要包含下面三大服務:

安全(可信)資料通路服務 – 即分布式應用程式可以安全地存儲和查詢資料的能力。

跨鍊服務 – 即智能合約在區塊鍊與區塊鍊間資料互動的能力。

鍊上-鍊下服務 – 即安全地通路鍊下資料的能力,例如使用可信資料源或交叉使用可信認證技術。

分布式賬本 – 即在全部節點間共享的經驗證、共識的交易記錄

可插拔共識服務 – 即驗證哪些交易可以寫入分布式賬本的方法,需根據應用場景讓使用者自主選擇合适的共識算法

智能合約服務 - 能夠将資料管理邏輯、應用邏輯、業務規則和合同條款內建進分布式應用程式的能力。該服務是可擴充的,是以應該支援不同的開發語言。

開發工具 - 用于編寫、記錄、測試、部署和監控分布式應用的工具。

SDKs、APIs - 簡化分布式應用程式通路分布式賬本、智能合約等服務的中間代碼。

程式設計接口 - 允許外部系統通路智能合約的服務、平台和資料的能力。

總結一下,從開發者的角度來了解參考架構的設計思路,其根本目标是支援區塊鍊的互操作性,使得使用者、分布式應用和區塊鍊之間能夠實施可信資料交換,支援子產品化、企業級程式設計、開放的IaaS,便于開發者複用成熟的功能子產品和選擇任意的開發平台,實作跨平台的可移植性,目前市面上主流的區塊鍊和分布式賬本技術普遍使用Go語言、JS語言進行分布式應用的研發,可以看出能夠做到通用适配的平台較有優勢。

作為一名區塊鍊架構設計師,可以從下面幾個次元去設計或者對區塊鍊平台做一個選型:

1)區塊鍊或分布式賬本技術:根據業務特性,在需要增加“信任”的場景下,選擇區塊鍊或分布式賬本技術解決方案。

2)身份管理:建構一個弱中心的認證中心,使得通過簡單的方式就可以通路多個區塊鍊,比如主權身份(身份證、護照等)。

3)安全資料通路服務:存儲的資料需要在區塊鍊中全局共享,需參考資料通路層對安全的要求。

4)跨鍊服務:不同區塊鍊間的智能合約資料互動;這個服務使得區塊鍊之間建構了互操作性,在複雜的業務場景下,可以設計出細粒度運作的獨立子鍊(邏輯/實體),并通過母-子智能合約滿足不同的業務需求,提升了全局“臃腫”賬本的靈活度。

5)鍊上-鍊下資料通路服務:分布式應用程式需要與傳統的鍊下系統進行互操作;在區塊鍊高速發展期,不可避免需要與傳統資料庫應用系統進行互動,可能會誕生大量區塊鍊中間件服務該需求。

6)智能合約服務:對于開發者,智能合約需要具備可移植性,盡可能支援多個不同的區塊鍊平台,降低跨平台移植的工作量。對于合約開發平台,應該提供一個文法規範,讓不同的區塊鍊平台支援該開發語言。

7)程式設計接口:為了行業應用的爆炸式發展,對于傳統的應用開發者,需要提供熟悉的API接口友善調用區塊鍊上的智能合約程式。

結束語:2017年将是區塊鍊技術和應用的關鍵一年,将會湧現出大量有價值的應用。參考架構作為區塊鍊領域的基礎标準,一方面規範區塊鍊技術和應用的研發,另一方面也為後續業務發展提供了引領的作用。

本文作者:伊莉

繼續閱讀