區塊鏈有哪些安全軟肋?

區塊鏈有哪些安全軟肋

區塊鏈是比特幣中的核心技術,在無法建立信任關系的互聯網上,區塊鏈技術依靠密碼學和巧妙的分佈式算法,無需借助任何第三方中心機構的介入,用數學的方法使參與者達成共識,保證交易記錄的存在性、合約的有效性以及身份的不可抵賴性。

區塊鏈技術常被人們提及的特性是去中心化、共識機制等,由區塊鏈引申出來的虛擬數字貨幣是目前全球最火爆的項目之一,正在成就出新的一批億萬級富豪。

像幣安交易平臺,成立短短幾個月,就被國際知名機構評級市值達400億美金,成為了最富有的一批數字貨幣創業先驅者。

但是自從有數字貨幣交易所至今,交易所被攻擊、資金被盜事件層出不窮,且部分數字貨幣交易所被黑客攻擊損失慘重,甚至倒閉。

一、 令人震驚的數字貨幣交易所被攻擊事件

從最早的比特幣,到後來的萊特幣、以太幣,目前已有幾百種數字貨幣。

隨著價格的攀升,各種數字貨幣系統被攻擊、數字貨幣被盜事件不斷增加,被盜金額也是一路飆升。

讓我們來回顧一下令人震驚的數字貨幣被攻擊、被盜事件。

2014年2月24日,當時世界最大的比特幣交易所運營商Mt.Gox宣佈其交易平臺的85萬個比特幣已經被盜一空,承擔著超過80%的比特幣交易所的Mt.Gox由於無法彌補客戶損失而申請破產保護。

經分析,原因大致為Mt.Gox存在單點故障結構這種嚴重的錯誤,被黑客用於發起DDoS攻擊:

比特幣提現環節的簽名被黑客篡改並先於正常的請求進入比特幣網絡,結果偽造的請求可以提現成功,而正常的提現請求在交易平臺中出現異常並顯示為失敗,此時黑客實際上已經拿到提現的比特幣了,但是他繼續在Mt.Gox平臺請求重復提現,Mt.Gox在沒有進行事務一致性校驗《對賬》的情況下,重復支付了等額的比特幣,導致交易平臺的比特幣被竊取。

2016年8月4日,最大的美元比特幣交易平臺Bitfinex發佈公告稱,網站發現安全漏洞,導致近12萬枚比特幣被盜,總價值約為7500萬美元。

2018年1月26日,日本的一家大型數字貨幣交易平臺Coincheck系統遭遇黑客攻擊,導致時價580億日元、約合5.3億美元的數字貨幣『新經幣』被盜,這是史上最大的數字貨幣盜竊案。

2018年3月7日,世界第二大數字貨幣交易所幣安《Binance》被黑客攻擊的消息讓幣圈徹夜難眠,黑客竟然玩起了經濟學,買空賣空『炒幣』割韭菜。

根據幣安公告,黑客的攻擊過程包括:

1) 在長時間裡,利用第三方釣魚網站偷盜用戶的賬號登錄信息。

黑客通過使用Unicode字符冒充正規Binance網址域名裡的部分字母對用戶實施網頁釣魚攻擊。

2) 黑客獲得賬號後,自動創建交易API,之後便靜默潛伏。

3) 3月7日黑客通過盜取的API Key,利用買空賣空的方式,將VIA幣值直接拉暴100多倍,比特幣大跌10%,以全球總計1700萬個比特幣計算,比特幣一夜丟了170億美元。

二、黑客攻擊為什麼能屢屢得手

基於區塊鏈的數字貨幣其火熱行情讓黑客們垂涎不已,被盜金額不斷刷新紀錄,盜竊事件的發生也引發了人們對數字貨幣安全的擔憂,人們不禁要問:區塊鏈技術安全嗎?

隨著人們對區塊鏈技術的研究與應用,區塊鏈系統除了其所屬信息系統會面臨病毒、木馬等惡意程序威脅及大規模DDoS攻擊外,還將由於其特性而面臨獨有的安全挑戰。

1. 算法實現安全

由於區塊鏈大量應用了各種密碼學技術,屬於算法高度密集工程,在實現上比較容易出現問題。

歷史上有過此類先例,比如NSA對RSA算法實現埋入缺陷,使其能夠輕松破解別人的加密信息。

一旦爆發這種級別的漏洞,可以說構成區塊鏈整個大廈的地基將不再安全,後果極其可怕。

之前就發生過由於比特幣隨機數產生器出現問題所導致的比特幣被盜事件,理論上,在簽名過程中兩次使用同一個隨機數,就能推導出私鑰。

2. 共識機制安全

當前的區塊鏈技術中已經出現了多種共識算法機制,最常見的有PoW、PoS、DPos。

但這些共識機制是否能實現並保障真正的安全,需要更嚴格的證明和時間的考驗。

3. 區塊鏈使用安全

區塊鏈技術一大特點就是不可逆、不可偽造,但前提是私鑰是安全的。

私鑰是用戶生成並保管的,理論上沒有第三方參與。

私鑰一旦丟失,便無法對賬戶的資產做任何操作。

一旦被黑客拿到,就能轉移數字貨幣。

4. 系統設計安全

像Mt.Gox平臺由於在業務設計上存在單點故障,所以其系統容易遭受DoS攻擊。

目前區塊鏈是去中心化的,而交易所是中心化的。

中心化的交易所,除了要防止技術盜竊外,還得管理好人,防止人為盜竊。

總體來說,從安全性分析的角度,區塊鏈面臨著算法實現、共識機制、使用及設計上挑戰,同時黑客通過利用系統安全漏洞、業務設計缺陷也可達成攻擊目的。

目前,黑客攻擊已經在對區塊鏈系統安全性造成越來越大的影響。

三、如何保證區塊鏈的安全

為了保證區塊鏈系統安全,建議參照NIST的網絡安全框架,從戰略層面、一個企業或者組織的網絡安全風險管理的整個生命周期的角度出發構建識別、保護、檢測、響應和恢復5個核心組成部分,來感知、阻斷區塊鏈風險和威脅。

除此之外,根據區塊鏈技術自身特點重點關注算法、共識機制、使用及設計上的安全。

針對算法實現安全性:一方面選擇采用新的、本身經得起考驗的密碼技術,如國密公鑰算法SM2等。

另一方面對核心算法代碼進行嚴格、完整測試的同時進行源碼混淆,增加黑客逆向攻擊的難度和成本。

針對共識算法安全性:PoW中使用防ASIC雜湊函數,使用更有效的共識算法和策略。

針對使用安全性:對私鑰的生成、存儲進行保護,敏感數據加密存儲。

針對設計安全性:一方面要保證設計的功能盡量完善,如采用私鑰白盒簽名技術,防止病毒、木馬在系統運行過程中提取私鑰;設計私鑰泄露追蹤功能,盡可能減少私鑰泄露後的損失。

另一方面,應對某些關鍵業務設計去中心化,防止單點故障攻擊。