當前位置:
首頁 > 新聞 > 上交所前總工談區塊鏈可運維性

上交所前總工談區塊鏈可運維性

新智元推薦

來源:理深科技時評

作者:白碩

編輯:小琦

【新智元導讀】IT系統的可運維性是它得以付諸安全平穩高效運行的前提。作者曾在金融行業從事多年IT運維管理,深知可運維性對於金融機構的重要性。在區塊鏈應用中,可運維性也是不應被忽視的重要訴求,必須從法律層面、行業最佳實踐及標準化層面、用法層面加以引導和約束,使可運維性的訴求貫穿區塊鏈應用的始終。

什麼是IT系統的「可運維性」?通俗地講,IT系統的可運維性就是一個IT系統自身所提供的確保該系統的正常運行狀態、排除該系統的異常運行狀態、應對突發的運行需求的能力。當然,這種能力,需要最終與從事運維工作的人相結合才能真正發揮其預期效果,但是如果系統提供的「可運維性」能力很差,就會導致從事運維工作的人有勁使不上或者只能用非常低級原始的辦法來達成運維目標的情況。從這個意義上講,IT系統的可運維性是它得以付諸安全平穩高效運行的前提。

本文作者白碩是中科院計算所、信工所博導,阡尋科技董事長,上交所前總工程師,曾在傳統金融行業從事過多年IT運維管理,深知可運維性對於金融機構的重要性。讓我們來看一看可運維性在金融行業是如何體現的。

金融行業的可運維性

在金融行業,確保系統的正常運行狀態的主要途徑是架構手段,即通過高可用架構實現盡量短的故障恢復時間目標(RTO)和可容忍故障恢復點目標(RPO)。很多關鍵業務系統的RTO為秒級,RPO為0,這意味著不容許任何數據丟失和業務狀態錯亂,業務的短暫中斷不會造成普通用戶感官上的明顯停頓。為此在高可用架構中要有大量的冗餘設計和接管(failover)措施,從機房、電力、網路、主機、存儲、資料庫、中間件、域名解析到應用,都需要在架構設計上一體化考慮,都不允許出現單一故障點(Single Point of Failure) 。

在金融行業,排除系統的異常運行狀態是監控手段和應急操作特權入口,提供詳盡、可理解、可視化的直觀監控信息,可幫助運維人員實時了解系統和網路的真實健康狀況,以便及早發現並應對異常;提供應急操作特權入口,可以為例如改錯、選擇性關停、限流等應急手工操作提供一個安全方便的操作環境。

在金融行業,應對突發的運行需求的主要途徑,在架構層面是參數化設計,在操作層面是保留最終干預權。靈活的參數化設計可在短時間內通過參數調整來應對突發的業務改變。比如2015年,證券市場的「熔斷」機制推出後數天即被要求叫停,藉助於參數化設置的這種靈活性,技術系統僅僅需要把熔斷觸發條件設置成邏輯上不可能的參數值就可以很快滿足這一突發的運行需求。最終干預權則是對關鍵業務系統的核心模塊提供人工干預的應急介面,來進行滿足突發的運行需求的操作。注意,突發運行需求的起因並不是系統發生了異常,而是系統運行的宏觀外部條件(如政策)發生了異常,迫使系統必須以非常規的手段進行應對。

區塊鏈的可運維性

區塊鏈是一種基於密碼學和分散式共識機製為一個特定用戶群提供信任服務的基礎設施。近年來,區塊鏈技術得到了迅猛發展,不僅在民間有基於「虛擬貨幣+社區+區塊鏈平台」的「幣圈」打法,在傳統金融機構和其他行業也出現了僅利用區塊鏈平台服務於業務目標的「鏈圈」打法。隨之,區塊鏈語境下如何體現可運維性也開始浮出水面。

不要以為區塊鏈技術從其架構本性上來講就是高可用的,因此就可以忽視可運維性的問題。實際上,區塊鏈技術發展的現狀為區塊鏈的可運維性提供的技術資源還太少太少。從區塊鏈領域遇到的大大小小涉及可運維性的問題當中,筆者深深地體會到,區塊鏈的可運維性既需要大力度借鑒傳統金融機構管理可運維性的一系列理念和做法,也需要基於區塊鏈語境本身的特殊性發展一系列原創性的運維管理做法,尤其是要糾正區塊鏈領域的一些錯誤的認識和做法。

2016年The DAO事件餘波未平,2017年以太坊又爆出了Parity多重簽名合約誤鎖漏洞。區塊鏈的可運維性又一次引起熱議。去年比特幣社區還在嘲笑以太坊社區一言不合就分叉,今年分叉的事情就輪到了比特幣社區自己的頭上。每次看到社區出現這樣的情況,總會有傳統金融機構的朋友出來說:看看,幸虧鏈圈沒有這麼玩,否則指不定死多少回了!

其實,可運維性不僅是鏈圈、也同樣是幣圈所追求的區塊鏈特性。在解決了不可撤銷、不可仿冒、不可篡改、不可抵賴、不可雙花、不可透支這些價值傳輸最基本的問題之後,人們的目光停留在了隱私保護和可運維性上面。說起隱私保護特性,幣圈有ZCash這樣的虛擬貨幣推出。說起可運維性呢?也許是去中心化的觀念先行,排除了大量在鏈圈看來很平常的運維手段的使用,從應急處置和審計追責的角度,我們還沒有看到幣圈有有份量的可運維性技術解決手段的推出。但是,從預防為主的角度,至少智能合約的形式化驗證問題和在線升級的問題,已經在幣圈引起了足夠的重視,這一跡象是正面的。

鏈圈呢?在這裡我們必須提到鏈圈的兩個值得一提的努力。

第一個努力是埃森哲公司提出的「可編輯的區塊鏈」概念。在埃森哲的材料中,他們開宗明義,把可編輯區塊鏈的推出和傳統金融機構的可運維性需求掛起鉤來,從不當得利、錯賬沖正到烏龍指,各種必須修改的錯,都不能將錯就錯,需要得到授權的操作人員把錯賬改過來。如果區塊鏈承擔了記賬的任務,那麼改錯賬就應該是區塊鏈必備的功能。以比特幣、以太坊為典型代表的幣圈平台做不了這件事情,除非分叉。埃森哲提出的解決手段則是使用基於「變色龍哈希」的「可編輯的區塊鏈」。從數學原理上看,可編輯的區塊鏈確實可以不分叉就能改錯,但是代價是開了一個既能篡改歷史又不可審計的後門。這樣一個東西的存在,不僅秉持堅定去中心化理念的幣圈不可接受,就算是在一定程度上容忍中心化要素存在的鏈圈,接受的人也不是很多。

第二個努力是R3聯盟去年底推出的Corda平台。在Corda上,智能合約代碼和對應該合約的正式有效的法律文本是互相勾稽的。合約法律文本的存證形態是合約代碼的不可缺少的附件,並以數字簽名存證。通過對附件的驗證,給予合約代碼所代表的「本意」一個抓得住的抓手。一旦合約在運行中出現問題,至少可以通過查驗來確定這到底是法律合約原本就有的,還是合約的代碼實現沒有忠實地體現法律合約的「本意」造成的。某種程度上,這也算是對此前一段時間以來合約代碼單兵突進、法律法規沒有同步跟進結果形成畸形生態的一個彌補。此外,Corda上並不存在一個「我的銀子我做主」的基礎賬本,任何單據(狀態)都可以在合適的條件下經公證被廢止。這也為改錯賬留下了可以運作的空間。可以說R3這些業務大咖們對於分散式賬本的可運維性的意義還是心中有數的。

由此可見,可運維性的訴求是一個很重要的訴求,它在幣圈的缺位不是因為幣圈不需要它,而是因為幣圈有難言之隱,在目前技術條件下無法把這個訴求落到實處,而只能訴諸分叉這樣無奈而又笨拙的手段。鏈圈對於可運維性的訴求來源於傳統金融機構使用者對於合規性的發自本能的自覺遵守,但並沒有形成一個完整的技術體系和技術方法論。

首先,「我的資產我做主」絕不是一個與現行法律體系完全兼容的做法。如果在技術上把「我的資產我做主」做實,「做主」在技術上體現為「掌握私鑰」,那麼在一些場合下,執法措施就落不到實處,就必須事實上遷就區塊鏈的技術設定。在需要進行應急處置的場景,尤其是需要對涉及資產餘額的錯賬、烏龍指、非法所得、不當得利等進行沖正、追究、查封、充公等操作的時候,這樣的做法在法律上有明顯的缺陷。所以,從區塊鏈底層把執法措施支持到位,是區塊鏈應用單位滿足合規要求的起碼要求。如果說在之前以借鑒為主的階段大家還顧不上法律合規性的話,那麼當區塊鏈進入以技術上自主創新、自主掌控為主,應用上以合規發展、為我所用為主的階段時,這樣的要求再不得到滿足就說不過去了。

其次,可運維性的要求應該非常清晰地傳導到開發方。一是在開發方中逐漸形成基於最佳實踐的模板,把有共性的可運維性的功能(比如應急處置特權下的沖正機制、凍結機制、剎車機制以及在線升級機制等)作為模板的標配代碼嵌入其中。二是在開發方中逐漸形成基於業內風控理念和通過歷史教訓積累下來的業務流程參考約束標準,把重要的業務步驟之間共性的合理順序固化下來。秉持同樣運維理念的開發方應該聯合起來,形成共享可運維性模板的聯盟。通過這樣的做法,讓區塊鏈應用少走彎路。ChinaLedger白皮書2016版中系統闡述了如何在智能合約層面支持應急處置的問題,有興趣的讀者可以參閱。

第三,區塊鏈絕不可以看成是一個「資料庫」,更遑論「分散式資料庫」。拿區塊鏈當資料庫用,就會發現區塊鏈只有創建和讀取功能,沒有修改和刪除功能,就會得出「區塊鏈不如資料庫」的錯誤結論。其實,並不是區塊鏈不如資料庫,而是壓根兒不應該把區塊鏈這樣來用。區塊鏈上記錄的不應該是業務數據,而只能是操縱業務數據的指令序列(或其日誌)。區塊鏈不是要取代資料庫,而是要作為資料庫的高可靠性的前置。我們要求日誌不可遺漏、不可篡改,但並不是說數據本身不可改動。把一系列操作依序記錄在區塊鏈上,然後到真正的資料庫中依序執行這些可留痕、可審計、可追責的正常操作和應急操作,操作的最終結果寫在真正的資料庫而不是區塊鏈中。一旦資料庫發生問題需要回滾,只需從區塊鏈的特定高度進行重演,資料庫本身的高可用架構也可因此大大簡化。應急處置中如果需要對數據進行沖正,只需通過區塊鏈增加一條沖正的數據操縱指令,這個應急處置行為本身既是需要特權許可的,也是留痕的、可審計的。

第四,通過分叉來修正區塊鏈數據,即使在幣圈,也絕對不是值得提倡的事情。分叉本身意味著賬本的分裂,但在多條區塊鏈通過跨鏈機制互聯的場景下,會導致與之跨鏈互聯的賬本也跟著分裂。也就是說,當分叉遇到跨鏈,分叉會把本來在一條區塊鏈內的運維問題傳導到另外的區塊鏈中去,變成一個全網的運維問題,從而大大增加全網的運維難度。所以,從可運維性的基本理念出發,不應該聽任動輒分叉,而應該利用互聯互通來反制那些輕率的分叉舉動。

第五,有缺陷的區塊鏈應用特別是智能合約應用上線,是一件十分危險的事情。它不僅可能影響自身的用戶群和業務生態,還可能影響其他的用戶群和業務生態。由此看來,當區塊鏈技術和應用發展到一定階段,對承載重要業務、運作重要資產的區塊鏈實行某種形式的應用准入制,要求應用自帶某種形式化驗證的過程與結果,要求應用具備某種標配的應急處置功能,是十分必要的。

第六,區塊鏈可運維性應該成為區塊鏈正規教育和區塊鏈技術培訓的必選內容。只有讓可運維性的理念和最佳實踐深入人心,只有把不注重可運維性導致的後果充分揭示出來,才能使區塊鏈技術人才建立關於區塊鏈技術的正確的知識結構。這些人到了應用開發第一線,才會更加自覺地為區塊鏈應用扎牢可運維性的籬笆。

總的說來,筆者認為,可運維性是區塊鏈應用中不應被忽視的重要訴求,必須從法律層面、行業最佳實踐及標準化層面、用法層面加以引導和約束,使可運維性的訴求貫穿區塊鏈應用的始終。

本文經授權轉載自公眾號:理深科技時評。

【2018新智元AI技術峰會重磅開啟,599元早鳥票搶票中!

2017年,作為人工智慧領域最具影響力的產業服務平台——新智元成功舉辦了「新智元開源·生態技術峰會」和「2017AIWORLD 世界人工智慧大會」。憑藉超高活動人氣及行業影響力,獲得2017年度活動行「年度最具影響力主辦方」獎項。

其中「2017 AI WORLD 世界人工智慧大會」創人工智慧領域活動先河,參會人次超5000;開場視頻在騰訊視頻點播量超100萬;新華網圖文直播超1200萬。

2018年的3月29日,新智元再匯AI之力,共築產業躍遷之路。在北京舉辦2018年中國AI開年盛典——2018新智元AI技術峰會,本次峰會以「產業·躍遷」為主題,特邀諾貝爾獎評委、德國人工智慧研究中心創始人兼CEO Wolfgang Wahlster 親臨現場,與谷歌、微軟、亞馬遜、BAT、科大訊飛、京東和華為等企業重量級嘉賓,共同研討技術變革,助力領域融合發展。

新智元誠摯邀請關心人工智慧行業發展的各界人士 3 月 29 日親臨峰會現場,共同參與這一跨領域的思維碰撞。

關於大會更多信息,請關注新智元微信公眾號或訪問活動行頁面:http://www.huodongxing.com/event/8426451122400


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 新智元 的精彩文章:

AI演算法透明不是必須,黑箱和可解釋性可簡化為優化問題
「中美無人超市大PK」Amazon Go遭遇中國對手(附評測報告)

TAG:新智元 |