2016年6月17日,黑客攻擊了眾籌超過1.5億美元的分布式自治組織 THE DAO,導(dǎo)致項(xiàng)目失敗。2016年8月2日因?yàn)槎嘀睾灻┒?,香港比特幣交易所bitfines大約價(jià)值7000萬美元的比特幣被盜。
交易所的安全性尚且不能保障,個(gè)人私鑰的安全性也存在較高風(fēng)險(xiǎn)。從而引發(fā)了公眾對(duì)于區(qū)塊鏈安全問題的質(zhì)疑,安全問題也成為區(qū)塊鏈向前發(fā)展的基礎(chǔ)問題。
1.區(qū)塊鏈系統(tǒng)面臨的安全挑戰(zhàn)
2018年5 月 24 日,EduCoin(EDU) 智能合約爆出漏洞。通過這個(gè)漏洞,攻擊者不需要私鑰即可轉(zhuǎn)走指定賬戶里所有的 EDU(一種數(shù)字貨幣),并且由于合約沒有 Pause 設(shè)計(jì),導(dǎo)致無法止損。2018年4月22日,代碼溢出導(dǎo)致美鏈BEC從超過60億人民幣的市值歸零。2018年4月25日,SMT(smartmesh)因?yàn)轭愃频膯栴} ,導(dǎo)致幣價(jià)暴跌38%,并停止交易。我們可以看到,一行代碼使得60億的市值歸零,這是非常嚴(yán)重的安全問題。
同時(shí),最近一段時(shí)間來密碼貨幣的交易所進(jìn)行了嚴(yán)峻的安全挑戰(zhàn)。比如,今年3月7日,黑客通過盜取幣安交易所的API Key,在VIA/BTC交易市場,程序化下市價(jià)買單,和31個(gè)預(yù)先充值VIA幣的賬號(hào)高價(jià)賣VIA。通過利用盜取的幣拉高VIA的價(jià)格的同時(shí)做空。這個(gè)黑客是相當(dāng)?shù)穆斆鳌?/p>
2018年1月25日,日本最大的比特幣交易所Coincheck遭到黑客攻擊,丟失了市值多達(dá)5.3億美元的數(shù)字貨幣。他們發(fā)生被盜的主要原因是他們將絕大部分資金保存在缺乏多重簽名、低安全性的“熱錢包”中,黑客入侵公司服務(wù)器,這些資金就會(huì)變得很脆弱。因?yàn)樗麄兊拿艽a會(huì)被盜取。
從區(qū)塊鏈面臨的安全挑戰(zhàn)來看我們把它分為五個(gè)方面:算法漏洞;協(xié)議漏洞;實(shí)現(xiàn)漏洞;使用漏洞;系統(tǒng)漏洞。我這里列舉一些安全問題,包括私鑰的生成與保護(hù),共識(shí)過程的中心化,智能合約代碼漏洞等等。
信息系統(tǒng)安全有三要素,分別是保密性、完整性、可用性,區(qū)塊鏈系統(tǒng)也必須有三種屬性。
從保密性來說,以公鑰的變型作為交易地址,為用戶提供了保密性;零知識(shí)證明、環(huán)簽名等為交易提供了保密性,比如Zcash和門羅幣;同態(tài)加密對(duì)數(shù)據(jù)提供了保密性;屬性基家解密,實(shí)現(xiàn)對(duì)系統(tǒng)的保密性、分權(quán)處理。總的來說,區(qū)塊鏈系統(tǒng)大量應(yīng)用了密碼學(xué)前沿技術(shù)。
第二,從可用性來說,每個(gè)副本節(jié)點(diǎn)保存相同的數(shù)據(jù),保證了數(shù)據(jù)的可用性,多方共識(shí)機(jī)制保證了交易信息的可用性。
第三,從完整性來說,簽名驗(yàn)證算法保證了交易的完整性,鏈?zhǔn)浇Y(jié)構(gòu)保證了數(shù)據(jù)的完整性,高度同構(gòu)冗余結(jié)構(gòu),保證了系統(tǒng)的完整性。
2.區(qū)塊鏈系統(tǒng)的數(shù)學(xué)模型及安全性分析
2015年,Garay 等人利用形式化的方式對(duì)比特幣的核心內(nèi)容進(jìn)行了分析;2018年,歐密會(huì)上Christian Badertscher等人改變了假設(shè)條件,對(duì)比特幣進(jìn)一步進(jìn)行了形式化分析。我們在此基礎(chǔ)上將區(qū)塊鏈劃分成交易模塊、共識(shí)模塊和鏈接模塊,對(duì)三者的相互關(guān)系進(jìn)行了研究,建立了數(shù)學(xué)模型,對(duì)區(qū)塊鏈系統(tǒng)的性質(zhì)進(jìn)行了分析。并通過模型建立對(duì)系統(tǒng)的狀態(tài)變化進(jìn)行量化,為分析區(qū)塊鏈系統(tǒng)的性能、安全性等提供理論基礎(chǔ)。
我們將區(qū)塊鏈劃分成交易模塊、共識(shí)模塊和鏈接模塊,且三者之間相互關(guān)聯(lián)。
另外,針對(duì)上邊提到的五個(gè)安全漏洞,下面,我們分別從五個(gè)維度:算法、協(xié)議、實(shí)現(xiàn)、使用、系統(tǒng)的角度,對(duì)區(qū)塊鏈的安全性進(jìn)行分析。
算法安全性。2017年11月12日,IBM宣布基于 20 量子比特的量子計(jì)算機(jī),可在年底向客戶開放,同時(shí),基于50量子比特的量子計(jì)算機(jī)原理樣機(jī)也將開放。2018年3月6日,google發(fā)布基于72量子比特的量子計(jì)算機(jī)“Bristlecone”,量子計(jì)算的出現(xiàn)將對(duì)現(xiàn)有密碼體制帶來顛覆性的影響。
協(xié)議安全性。PoW共識(shí)存在51%攻擊的缺陷自私挖礦等攻擊放大了此缺陷,PoS共識(shí)及其變型共識(shí)存在長鏈攻擊以及共識(shí)壟斷的缺陷,現(xiàn)有共識(shí)算法缺乏安全性證明,以DAG和Hashgraph為代表的自帶共識(shí)的新型分布式賬本系統(tǒng)容易受到內(nèi)部攻擊和外部黑客攻擊,同時(shí)存在中心化風(fēng)險(xiǎn)。然而,一個(gè)好的區(qū)塊鏈系統(tǒng),我們希望它是去中心化的。
實(shí)現(xiàn)安全性。智能合約中存在浪子合約、自殺合約、貪婪合約、遺囑合約等合約代碼漏洞,Token生成代碼漏洞容易摧毀系統(tǒng)的經(jīng)濟(jì)生態(tài),同時(shí),區(qū)塊鏈實(shí)現(xiàn)代碼漏洞、后門容易使系統(tǒng)受到黑客攻擊。我們剛才看到,代碼溢出導(dǎo)致BEC從超過60億人民幣的市值歸零,這還是非常嚴(yán)重的。
使用安全性。智能合約等允許自主無條件提交的代碼、消息等容易產(chǎn)生漏洞,被做壞者利用,交易所的存在,容易出現(xiàn)區(qū)塊鏈資產(chǎn)、用戶隱私信息監(jiān)守自盜的問題,私鑰的泄露,嚴(yán)重威脅用戶的區(qū)塊鏈資產(chǎn)安全。
系統(tǒng)安全性。第一,算法、協(xié)議、實(shí)現(xiàn)、使用漏洞與黑客攻擊結(jié)合,容易使區(qū)塊鏈?zhǔn)艿街旅拇驌?第二,社會(huì)工程學(xué)與攻擊手段的結(jié)合使區(qū)塊鏈變得更加脆弱;第三,有組織的攻擊行為將對(duì)區(qū)塊鏈安全造成極大的危害。這么多年區(qū)塊鏈?zhǔn)艿降墓糨^少,有一個(gè)原因是早期大家讀比特幣不夠重視。最后一點(diǎn),國家控制的技術(shù)很多是不公開的,尤其是攻擊技術(shù)。美國現(xiàn)在就在研究量子計(jì)算,公開的研究成果還不能達(dá)到實(shí)用的需求。
3.安全防護(hù)的解決思路與關(guān)鍵技術(shù)
針對(duì)上述問題,我們從五個(gè)維度進(jìn)行安全防護(hù)。
算法安全性。針對(duì)量子攻擊,我們要進(jìn)行后量子密碼算法的研究,包括后量子密碼算法、后量子密碼算法效率提升、后量子密碼算法敏捷性提前部署、后量子密碼算法工程實(shí)現(xiàn)。同時(shí),我們要對(duì)現(xiàn)有的密碼算法采用經(jīng)驗(yàn)證的密碼算法,不使用未經(jīng)時(shí)間驗(yàn)證的密碼算法、不使用原創(chuàng)密碼算法、不使用原創(chuàng)密碼算法參數(shù)、不疊加使用密碼算法。
協(xié)議安全性。我們要讓協(xié)議能同時(shí)應(yīng)對(duì)內(nèi)外的攻擊,就要采用能夠階段性離線的共識(shí)機(jī)制、避免目標(biāo)確定的共識(shí)機(jī)制、設(shè)計(jì)防ASIC等共識(shí)運(yùn)算優(yōu)勢明顯的共識(shí)算法、加強(qiáng)關(guān)鍵節(jié)點(diǎn)的網(wǎng)絡(luò)安全強(qiáng)度。同時(shí),我們要改變傳統(tǒng)區(qū)塊鏈結(jié)構(gòu)。包括采用有向無環(huán)圖(DAG)、哈稀圖(HashGraph)、以密碼抽簽等方式隨機(jī)性得增加共識(shí)層數(shù)、多維多重共識(shí)。
在實(shí)現(xiàn)安全性方面,首先要對(duì)智能合約安全性驗(yàn)證,包括智能合約形式化、智能合約異構(gòu)化、智能合約邏輯簡化、智能合約模板豐富化等進(jìn)行驗(yàn)證。另外要讓區(qū)塊鏈以及使用的模塊做標(biāo)準(zhǔn)化處理,包括數(shù)據(jù)結(jié)構(gòu)標(biāo)準(zhǔn)化、編程模式標(biāo)準(zhǔn)化、密碼算法標(biāo)準(zhǔn)化、應(yīng)用生態(tài)標(biāo)準(zhǔn)化。
使用安全性方面,包括冷錢包、多因素驗(yàn)證錢包、物理隨機(jī)數(shù)生成、私鑰單一性使用等措施,還要注意不使用未經(jīng)驗(yàn)證的智能合約及其它代碼、謹(jǐn)慎對(duì)待多重簽名等新型簽名機(jī)制、選擇可靠交易所。
在系統(tǒng)安全性上,有兩個(gè)維度,首先是利用傳統(tǒng)網(wǎng)絡(luò)防御增強(qiáng)網(wǎng)絡(luò)安全性,包括關(guān)閉相關(guān)端口,用硬件防火墻對(duì)DDoS等進(jìn)行防御,定期進(jìn)行相關(guān)信息加密傳輸,避免節(jié)點(diǎn)漏洞、病毒。第二方面,采用新型區(qū)塊鏈架構(gòu),包括采用異構(gòu)冗余智能合約、新型共識(shí)機(jī)制以及動(dòng)態(tài)防御終端。異構(gòu)冗余智能合約主要是在智能生成的時(shí)候,采用不同的語言,對(duì)運(yùn)算結(jié)果進(jìn)行比較,采訪大數(shù)法則進(jìn)行輸出......
我們剛才提到了五個(gè)措施,但是根本途徑依然是要進(jìn)行區(qū)塊鏈體系結(jié)構(gòu)的創(chuàng)新。
4.對(duì)區(qū)塊鏈自主可控的思考
工信部信息中心發(fā)布《2018年中國區(qū)塊鏈產(chǎn)業(yè)發(fā)展白皮書》,報(bào)告顯示,我國以區(qū)塊鏈業(yè)務(wù)為主營業(yè)務(wù)的區(qū)塊鏈公司數(shù)量達(dá)456家,從上游的硬件制造、平臺(tái)服務(wù)、安全服務(wù),到下游的產(chǎn)業(yè)技術(shù)應(yīng)用服務(wù),到保障產(chǎn)業(yè)發(fā)展的行業(yè)投融資、媒體、人才服務(wù),各領(lǐng)域的公司已經(jīng)基本具備。
為什么要發(fā)展自主可控的區(qū)塊鏈技術(shù)有以下個(gè)原因:
第一:我國網(wǎng)絡(luò)安全面臨嚴(yán)峻挑戰(zhàn),網(wǎng)絡(luò)安全攻強(qiáng)守弱的局面沒有得到根本改變
第二:區(qū)塊鏈的安全問題十分突出。
第三:中興事件再一次表明,在當(dāng)前復(fù)雜多變的國際環(huán)境下,我們必須發(fā)展自主可控的技術(shù),以免受制于人。
第四:我們以前說的安全可控主要是從安全的角度來講,中興事件給我們敲響了警鐘,不僅是網(wǎng)絡(luò)安全的問題。
區(qū)塊鏈技術(shù)目前還處于發(fā)展的初期階段,區(qū)塊鏈核心技術(shù)存在很大的改進(jìn)和完善空間。這對(duì)我們而言是一次非常好的機(jī)會(huì)。從2006年開始,我們提出自主可控,這時(shí)候已經(jīng)比較晚了,區(qū)塊鏈現(xiàn)在處在技術(shù)的初期階段,所以我們應(yīng)該抓住這個(gè)階段提出要發(fā)展自主可控的區(qū)塊鏈技術(shù)。
如何發(fā)展自主可控的區(qū)塊鏈技術(shù):
第一:學(xué)術(shù)界、產(chǎn)業(yè)界要對(duì)發(fā)展自主可控區(qū)塊鏈形成高度共識(shí),積極向政府建言。
第二:國家層面要對(duì)區(qū)塊鏈技術(shù)和產(chǎn)業(yè)發(fā)展統(tǒng)籌布局,并出臺(tái)扶持政策,對(duì)研發(fā)自主可控區(qū)塊鏈技術(shù)和產(chǎn)品團(tuán)隊(duì)進(jìn)行重點(diǎn)支持。
第三:學(xué)術(shù)界和產(chǎn)業(yè)界必須大力加強(qiáng)自主創(chuàng)新的區(qū)塊鏈理論技術(shù)和應(yīng)用的研究,為發(fā)展自主可控區(qū)塊鏈技術(shù)和產(chǎn)品提供支撐。這是我們的責(zé)任。
第四:必須加強(qiáng)自主可控區(qū)塊鏈產(chǎn)品的評(píng)測和認(rèn)證,確保黨政機(jī)關(guān)、關(guān)鍵行業(yè)區(qū)塊鏈平臺(tái)的安全。
第五:我們要高度重視區(qū)塊鏈產(chǎn)業(yè)的生態(tài)體系建設(shè),加強(qiáng)政產(chǎn)學(xué)研用合作,確保行業(yè)話語權(quán),通過若干年的努力,真正建立自主可控的區(qū)塊鏈生態(tài)體系