2018年11月13日,2018中國數(shù)字資產(chǎn)安全高峰論壇在京召開,會上,業(yè)內(nèi)眾多專家學(xué)者、企業(yè)、投資人各抒己見。北京郵電大學(xué)區(qū)塊鏈實驗室主任馬兆豐發(fā)表了以《區(qū)塊鏈安全技術(shù)挑戰(zhàn)與機遇》為標(biāo)題的主題演講。以下為演講內(nèi)容,經(jīng)金色財經(jīng)整理。
區(qū)塊鏈發(fā)展背景
各位嘉賓,下午好!我是北京郵電大學(xué)馬兆豐。我今天給大家?guī)淼难葜v主題是《區(qū)塊鏈安全技術(shù)挑戰(zhàn)及機遇》,我簡單從幾個方面來做一個說明。
我們在北京郵電大學(xué),我現(xiàn)在是在網(wǎng)絡(luò)空間安全學(xué)院。報告從這么幾個方面,區(qū)塊鏈基本應(yīng)用背景、面臨的安全挑戰(zhàn)、區(qū)塊鏈關(guān)鍵的安全需求、區(qū)塊鏈安全分層架構(gòu)、區(qū)塊鏈核心保障技術(shù)、區(qū)塊鏈技術(shù)安全發(fā)展機遇。
區(qū)塊鏈技術(shù)本身,在座的各位我想都非常了解區(qū)塊鏈這個概念,但是從技術(shù)本身來講和大家再次回顧一下區(qū)塊鏈的基本背景。
其實區(qū)塊鏈的背景,2008年一些年輕人不太了解,在國際上金融領(lǐng)域發(fā)生了什么事情,2008年那時候是朱熔基總理,東南亞,包括印度、俄羅斯、中國,東南亞金融危機爆發(fā),索羅斯發(fā)起了一些監(jiān)管金融的對手交易,使得全球化金融風(fēng)險劇增,出現(xiàn)了金融擠兌等等問題,在跨境結(jié)算以及相關(guān)的數(shù)字,包括不同幣種法幣的兌換之間存在了一些問題,2008中本聰發(fā)表了點對點的系統(tǒng)。
傳統(tǒng)的計算方式,中心化處理的方式,處理過程是完全依賴于中心化單點失效的問題。主要存在三方面可能的問題,中心化業(yè)務(wù)處理過程當(dāng)中,業(yè)務(wù)處理過于集中,新的中心往往不總是可靠的,同時跨境結(jié)算處理方式當(dāng)中增加了交易的成本和代價。
比特幣是基于共識機制,工作量證明的機制,由中心化處理方式轉(zhuǎn)變?yōu)橛?個以上的節(jié)點或者區(qū)塊進(jìn)行確認(rèn),使得做一種交易,這種交易是兩種,挖礦和轉(zhuǎn)帳,比特幣核心功能是貨幣。這張圖右邊,做一次交易往往是6個以上的區(qū)塊或者6個以上的節(jié)點,要確認(rèn),確認(rèn)以后所有相關(guān)的數(shù)據(jù)同步到區(qū)塊鏈不同的帳號當(dāng)中,最后形成永久性的交易,當(dāng)然這個交易關(guān)系是非最終確定的,包括BCH最近的分杈也是這樣發(fā)生的。
在座的媒體朋友可以看一下這張圖,我自己總結(jié)的,這是中心化處理方式,中心化處理過程當(dāng)中,用戶不管是后臺管理員還是雙11的用戶,還是阿里、京東的后臺,實際都面臨中心化處理的方式,一旦中心化處理方式中心節(jié)點出現(xiàn)宕機,前段說騰訊一個中心化主機出了一些問題,如果中心化服務(wù)器出現(xiàn)宕機,用戶的訪問就會被拒絕。
區(qū)塊鏈從從業(yè)專業(yè)層面有兩個誤區(qū),要么說是草根,要么是騙人,為什么很多中國人把好的技術(shù)做歪了。區(qū)塊鏈解決什么問題?希望各位媒體跟我一起看一看這個圖,區(qū)塊鏈一般涉及三個層次,核心層,包括共識算法,準(zhǔn)入層,就是用戶比如通過地址或者賬戶進(jìn)入,客戶端就是代理或者錢包等等工具。用戶使用區(qū)塊鏈的時候可以看到,比如交易或者挖礦,這個工作一旦開始會廣播一個消息過來,這個時候可以看一下轉(zhuǎn)動的齒輪,往后退一下大家看一下,這個轉(zhuǎn)動的齒輪實際是在做共識,這個工作過程當(dāng)中可以看到接下來的問題,工作過程當(dāng)中如果通過共識產(chǎn)生區(qū)塊,這個區(qū)塊一旦產(chǎn)生將被多個節(jié)點驗證的,比如某個節(jié)點擁有了區(qū)塊的情況,這個時候可以進(jìn)一步看,這個時候會把下面產(chǎn)生的區(qū)塊廣播和同步到其他節(jié)點當(dāng)中去,這個過程就可以看到和傳統(tǒng)的計算方式不同的地方在于,傳統(tǒng)的方式是中心化方式處理,區(qū)塊鏈?zhǔn)且苑侵行幕姆绞竭M(jìn)行工作,有以下的特點,它是沒有中心的平臺,這個過程當(dāng)中通過共識機制達(dá)成工作一致性的結(jié)果。
同時這個過程當(dāng)中具有同步數(shù)據(jù)分散存儲的特性,安全機制決定于算法和共識,而不決定于中心化的平臺。這個區(qū)塊里的數(shù)據(jù)和所有節(jié)點區(qū)塊的數(shù)據(jù)是一致的,在正常情況下。
從本質(zhì)理解區(qū)塊鏈應(yīng)用
區(qū)塊鏈的基本概念,本質(zhì)上是分布式的信任基礎(chǔ)設(shè)施。它本質(zhì)上是不可篡改的可信帳本,無需新的中心構(gòu)建可信任的業(yè)務(wù)處理,在上一張圖大家可以看到,在產(chǎn)生區(qū)塊的時候獲得了區(qū)塊的權(quán)利,這個區(qū)塊權(quán)利可能是數(shù)字資產(chǎn),可能是交易,可能是挖礦的結(jié)果,也可能是不同節(jié)點下不同數(shù)據(jù)的分布式的存儲,可信的安全管理。區(qū)塊鏈具有五個特征,去中心化、高度透明、集體維護、不可篡篡改、安全可信性。
區(qū)塊鏈有公有鏈、聯(lián)盟鏈、私有鏈,公有鏈從2008的比特幣、到以太坊到對于發(fā)布的聯(lián)盟鏈,其中聯(lián)盟鏈在這里面不涉及數(shù)字資產(chǎn),但是要知道聯(lián)盟鏈也有具備數(shù)字資產(chǎn)轉(zhuǎn)移管理的能力,只不過要有許可才可以進(jìn)入的,通過深耕、節(jié)點、排序、驗證代碼的管理。
在區(qū)塊鏈這個領(lǐng)域的應(yīng)用也非常廣泛,從供應(yīng)鏈金融、移動電商、文化娛樂、智能制造、慈善公益、征信體系,在很多領(lǐng)域都有應(yīng)用,數(shù)字資產(chǎn)是區(qū)塊鏈的第一代,比特幣主要的目標(biāo)是用于數(shù)字資產(chǎn)的挖礦、交易、轉(zhuǎn)帳,它的核心就是數(shù)字資產(chǎn)。
先到了以太坊以后,創(chuàng)造的一種機制,ETH作為生態(tài)的血液,由此可以看到,在這個過程中區(qū)塊鏈經(jīng)歷了四個環(huán)節(jié),白皮書、募資、開發(fā)、交易所交易,在這個過程當(dāng)中交易所進(jìn)行交易流通,在過程當(dāng)中ETH創(chuàng)造了智能合約開放式的區(qū)塊鏈平臺,我們科研團隊做了基于比特幣原始代碼全部內(nèi)容的開發(fā),你需要在源碼級,以太坊通過智能合約,發(fā)布一個智能合約,在這里實現(xiàn)短暫交易,3分鐘就可以創(chuàng)建你的資產(chǎn),在這個過程當(dāng)中還可以實現(xiàn)轉(zhuǎn)帳、交易、鎖定,以太坊提供了以ETH為血液的平臺幣。
在這個過程當(dāng)中出現(xiàn)了聯(lián)盟鏈,我們把從比特幣、以太坊全部源碼編輯過了,我們也發(fā)現(xiàn)了不同的特點。國際上區(qū)塊鏈相關(guān)技術(shù)發(fā)展,包括中國人民銀行、中國銀行做了很多研究。區(qū)塊鏈面臨的技術(shù)優(yōu)勢也很明確,比如數(shù)據(jù)的完整性不可篡改性以及抗DDS攻擊。
區(qū)塊鏈面臨安全問題綜述
從安全風(fēng)險角度來講存在什么問題呢?我們現(xiàn)在的問題在于,在傳統(tǒng)的圖靈計算模式之下,都是基于數(shù)學(xué)難題的,是安全的,未來不一定安全,未來如果有了量子計算機可能是巨大挑戰(zhàn),如果量子計算成為現(xiàn)實常態(tài)化生活時,我覺得區(qū)塊鏈時代體系要發(fā)生改變。
因此,未來在算法安全性、數(shù)據(jù)安全性、使用安全、系統(tǒng)安全方面都需要進(jìn)一步考慮。
安全需求我們認(rèn)為是五個層面,一個是數(shù)據(jù)層面的安全,另外是網(wǎng)絡(luò)層面安全性,像門頭溝事件某種程度是社交工程安全的問題,一定程度上涉及到雙花問題,這涉及到共識層面安全的問題,還有激勵層面、合約層面的,現(xiàn)在以太坊智能合約有48種典型安全問題,我們實驗室把48種問題做了分析,這48種安全發(fā)現(xiàn)的現(xiàn)象、原因、后果是什么,在此基礎(chǔ)上,我們做了正確安全的合約怎么編寫,合約安全每列一條代碼損失60多億人民幣,當(dāng)?shù)刂吩浇缫院髷?shù)值轉(zhuǎn)變?yōu)?。
數(shù)據(jù)層面安全涉及惡意信息攻擊、濫用攻擊、生日攻擊、查分攻擊。網(wǎng)絡(luò)層次的供給,像日食攻擊、拒絕服務(wù)攻擊,比如交易所這個模式面臨的是傳統(tǒng)的中心化的數(shù)據(jù)庫的問題。共識層面的問題,像工作量證明、權(quán)益證明、Dpos權(quán)益證明,以及PFBT拜占廷容錯。
激勵層面也有安全問題,避免中心化的問題,21個超級節(jié)點中的15個節(jié)點聯(lián)合起來,就可能對用戶資產(chǎn)、交易安全造成威脅,同時吸引數(shù)據(jù)的節(jié)點,這里BT的模式在超級節(jié)點可能就會出現(xiàn)問題。
合約層面的問題,典型的有48種,但是主要問題是六個層面,一個是整數(shù)的益處、信息泄露、越權(quán)訪問、邏輯措施、函數(shù)誤用、拒絕服務(wù)。這些里面并不以為這有這樣的協(xié)議就一定安全。
交易所的安全就是DDOS攻擊、支付漏洞、惡意程序的感染,以及認(rèn)為內(nèi)部訪問權(quán)限的控制等等,都可能造成這樣的事件,比如mtgo事件,7000個幣丟失,宣稱65萬,另外的比特幣去哪兒了?所以資產(chǎn)管理、自身數(shù)據(jù)安全管理方面非常重要,神魚今天講完以后我也在仔細(xì)聽每個嘉賓的內(nèi)容,很大程度是滿足區(qū)塊鏈核心的需求,就是數(shù)字資產(chǎn)的管理要求。
分層體系,這個體系涉及算法的共識、驗證機制,以及對應(yīng)的錢包的安全,中心化錢包、多種類錢包、網(wǎng)絡(luò)錢包、本地錢包、硬件錢包的問題,從分層體系架構(gòu)來講涉及五個層面,交易層面、賬戶層面、分布式組織層次、網(wǎng)絡(luò)層次、賬戶層次的。
從保障技術(shù)來講,從增強系統(tǒng)安全性進(jìn)行網(wǎng)絡(luò)的隔離、選擇優(yōu)質(zhì)的服務(wù)商、完善治理機制、完善應(yīng)急機制、提高安全意識都是非常重要的。
從安全的維度涉及算法的安全、協(xié)議的安全、實現(xiàn)安全、使用安全、綜合安全性,這是我們認(rèn)為重要的層面。特別是使用安全方面,我記得在很多人中,我們數(shù)字錢包很多人不備份,我曾經(jīng)做了這樣的一個事情。數(shù)字資產(chǎn)的安全性方面,密鑰的保存、錢包的備份,Keystore的導(dǎo)出以及轉(zhuǎn)帳過程的安全、策略制定都是非常重要的事情。
從用戶隱私的角度,我們認(rèn)為區(qū)塊鏈?zhǔn)褂卯?dāng)中,比如數(shù)字資產(chǎn)或者交易所,用戶的保護性、數(shù)字保護性、交易保密性、系統(tǒng)的保密、安全防護都是核心的安全因素。
錢包安全
對于Cobo錢包,國內(nèi)還有其他錢包,都是重要的硬件設(shè)施,國際上對標(biāo)哪一些?trezor keepkey Ledger、bitgo,這些錢包我用過三個,今天在座的各位嘉賓,特別是Cobo,我覺得是典型的機遇,Cobo融資了接近兩千萬美元,大家可以做一些借鑒。區(qū)塊鏈發(fā)展角度來講,加密機制問題、效率問題、博弈都是關(guān)鍵的問題,在外延和內(nèi)涵,從安全角度來講問題非常多,機遇也如此巨大。
未來做區(qū)塊鏈的角度來講,區(qū)塊鏈數(shù)字資產(chǎn)的安全管理、區(qū)塊鏈數(shù)字資產(chǎn)安全的使用、區(qū)塊鏈數(shù)字資產(chǎn)安全的保護,這個為未來的商業(yè)生產(chǎn)生活提供了很大的機遇。去中心化的應(yīng)用,從DApp開發(fā),DApp+ABCD,人工智能、云計算、大數(shù)據(jù)這些結(jié)合起來,區(qū)塊鏈更有廣闊的前景,應(yīng)用在銀行、保險、供應(yīng)鏈、醫(yī)療保障、投票和身份證明,包括公安部一所我也注意到。
未來區(qū)塊鏈的應(yīng)用,區(qū)塊鏈的核心從數(shù)字代幣到記錄保全、存證、智能合約,還有拓展的應(yīng)用,從區(qū)塊鏈的底層到交易所、錢包,比如供應(yīng)鏈金融、版權(quán)管理、核心身份認(rèn)證等等具有廣闊而重要的應(yīng)用前景。