火星專欄 | 傳統區塊鏈七宗罪之二:安全假象

區塊鏈安全 火星專欄 書生意氣 書生意氣 2018-07-27

傳統區塊鏈的安全體系不健全,導致普通用戶在使用過程中不能全程被安全體系覆蓋,經常被暴露在毫無防範的安全風險中,已經因此丟失了大量貨幣。

安全是區塊鏈的炫目特徵,基於成熟的密碼學技術,區塊鏈在某些關鍵環節確實具有非常強大的安全性。區塊鏈技術的爆發,也是對數據安全技術的非常好的科普。

信息安全主要包括數據安全、網絡安全和系統安全等幾方面,其中網絡安全是保護邊界的,禦敵於國門之外,系統安全是防止被黑客控制你的電腦/服務器,數據安全是保護你的數據不被洩露不被篡改的。但長期以來數據安全不被重視,公眾的注意力都聚焦在網絡安全領域,不僅用戶採購都集中在網絡安全設備,連國家主管信息安全的最高領導機構都叫中央網絡安全和信息化委員會(習近平擔任主任),完全就是網絡安全等同於信息安全的架勢。以至於網絡安全的龍頭企業啟明星辰收購數據安全的龍頭企業書生電子的時候,書生電子的收購價只相當於啟明星辰市值的1%多點,相差了幾十倍。

但實際上,在信息安全的幾種技術中,數據安全是最可靠最可信賴的,可以在網絡被入侵、系統被黑客控制、關鍵人員被收買的情況下,完全依靠密碼學技術保證數據的安全性,做到商業意義或工程意義上的絕對安全。也就是說,雖然從科學意義上來說不存在絕對安全,但被破解的概率之小,小到一千億年都不會出現一次(地球壽命也不過幾十億年),不僅比一個人被流星砸中的概率低,比一個人被流星砸中了同時你今天還中了五百萬大獎(一個人誤將彩票快遞給你,而這張彩票剛好就中了五百萬大獎)的概率還要低,所以從商業角度和工程角度看,被破解的風險可以完全忽略,你可以放心地將身家性命都押在上面,無需任何顧慮。

相反,網絡安全和系統安全是無法保證這種絕對安全性的。在書生雲到美國DefCon(全球最大黑客大會)進行另類黑客挑戰(敞開服務器任全球最強黑客自由出入,偷走數據就拿走鉅額獎金)的賽後新聞發佈會上,在書生雲的CTO講完信息安全體系和數據安全技術之後,360的CTO譚曉生上臺發言先講了兩句話:第一句是剛才講的信息安全體系很全,即使360也沒有做全上面提到的所有安全措施,第二句話是即使做全了所有安全措施,還是不能保證系統不被入侵。不僅360不能,世界上任何人任何機構都不能保證。

比特幣的財富效應讓區塊鏈技術一夜之間爆紅,支撐區塊鏈的正是數據安全技術。與書生雲的數據安全技術一樣,區塊鏈可以在節點被入侵、節點管理人員被收買的情況下,完全依靠密碼學的數學公式來保證比特幣數據的安全。

但是,比特幣、以太坊等傳統區塊鏈的安全性真的完美無缺嗎?

事實上,比特幣也被偷過,而以太坊被偷的幣更多,以至於V神不認賬了,整個系統回滾另外開了一個分叉。都出了這麼大事,怎麼還能說絕對安全呢?

有的看官到這裡可能會感到迷糊了,我前面剛說了數據安全技術可以做到商業意義上的絕對安全,現在又說傳統區塊鏈不安全,到底是怎麼回事?

答案很簡單。以比特幣和以太坊為代表的傳統區塊鏈技術,沒有把安全系統做好,有漏洞不完善。

說到這裡,我要強調一點。安全是一個體系工程,絕不僅限於一個單點技術。在我的職業生涯中,無數次遇見這樣的場景:你是做安全的?是吧……們防火牆有什麼特點?我只做數據安全……就是用密碼加密吧?算是吧……你們密碼算法比開源的好在哪裡?我們用的都是標準的密碼算法……那你們沒什麼技術吧……(所以我非常感謝甚至感激沒有發明新的密碼算法的區塊鏈為公眾做的數據安全技術的科普)

打個比方說吧,如果我們要給國家領導人修一個戰時指揮所,要保證國家領導人的安全,我們應該怎麼做呢?假設我們的工程師發明了一種不怕任何炸彈甚至不怕原子彈不怕氫彈的水泥,是不是用這種水泥蓋了座房子就萬事大吉了呢?

顯然不是這麼簡單的。即使整個房子都用這種特殊水泥建造,但這房子需要門嗎?沒有門怎麼進出啊?那門用什麼做呢?即使門也用這種特殊水泥做,那門縫呢?即使牆固然金湯,但門縫透進來的輻射就足夠將裡面的人殺死了。

我們可以多建幾道門,每道門的門縫都是錯開的,這樣輻射就被完全隔離開了,至少洩露進來的劑量已經小到完全可以忽略了。這就能看出體系設計的價值了。但這還沒完,或者說剛開始,說完了門就得考慮窗戶了,這裡面住得有人需要通風啊。

我們可以參照太空站的方式解決通風問題,例如通過化學裝置將廢氣轉化為正常空氣。能源問題也可以用內置核電站來解決。但即便如此,還是不足以保證領導人的安全。

根據看間諜片的經驗,面對防守堅固的堡壘,很少有正面進攻強行轟開的,這時往往要派美女間諜混進去完成任務。這麼大一個各方面都自給自足的設施,一定會有很多工作人員,“堡壘都是從內部攻破的”這句話是實踐的總結。

內部工作人員做政審,查祖宗十八代,分權限,這些都做了也仍然不夠。誰來負責審核?如何防止冒充身份?如果低級別工作人員做了超出權限的事是不是都能及時發現並阻止?這套體系是靠人運轉還是靠機器自動識別?如果靠人,萬一關鍵人員背叛怎麼辦?如果靠機器,機器壞了或者被人關掉了怎麼辦?

從這個例子可以看出來,安全真的是一個體系工程,絕不是有一個堅固的水泥材料(相當於足夠可靠的密碼算法)就足夠了的。我經常看到有人只修了一堵牆就號稱建立了安全體系,只關注這堵牆用的材料是否是官方批准的,全然不顧敵人繞過這堵牆的風險,馬奇諾防線就是這樣被攻破的。

傳統區塊鏈無疑是數據安全技術的典範,在其安全體系覆蓋範圍內可以做到完美無缺的安全性。但是,其安全體系不完整,不能全面保護使用者,導致普通用戶經常被暴露在毫無防範的安全風險中,這才是比特幣/以太坊大量被偷的根本原因。

至少,傳統區塊鏈存在如下幾個方面的安全缺陷:

一、傳統區塊鏈的安全體系沒有覆蓋到用戶的私鑰保護。

說到這點可能會有人質疑,覺得私玥就應該用戶自己保管,自己沒保管好不能怨系統。但是,對普通用戶來說,連自己設定的幾位數的密碼都不能保證永遠不忘(至少有過一次銀行卡密碼掛失的人不少吧?),那麼冗長隨機無意義的私玥,誰能記得住?腦子記不住,私鑰總得存個什麼地方吧?不管是寫紙上,還是記到電腦裡,都有很大的風險。作為消費者,我們已經被訓練得要能分辨假冒品牌、毒奶粉、地溝油,現在來了一個難度更高的存私玥,做區塊鏈用戶的門檻也太高了吧?聽說有比特幣大佬開了N個銀行密碼箱,還分佈在不同的城市,一個字母存一家銀行。這種方法不僅太壕,我總擔心萬一有一家銀行倒閉了,或者忘了這些銀行的順序,那幾十億美元的財富就沒了。

對一般人來說,需要使用數字貨幣錢包來保管自己的交易地址(相當於賬號,其實代表公鑰)和對應的私玥,可以用自己設定的密碼來保護這個錢包。但這樣又帶來兩個新問題:

1.錢包存哪裡?

2.自己設定的密碼是否足夠強大到可以不被破解?

對於第一個問題,如果將錢包存在自己的個人電腦(或手機)上,佔空間耗資源不說,自己還必須做好數據備份,否則如果盤壞了或手機丟了,那錢包裡的錢可就沒了。從我過去給個人用戶提供數據備份服務的經驗看,個人用戶能做好數據備份的太少了,千萬不要高估自己這方面的保障能力。例如,英國的James Howells從2009年就開始挖礦,擁有7500個比特幣,但在一次清掃房間時,那個存儲比特幣私鑰的硬盤被他錯誤地扔了出去,於是大約1億美元丟失了。有人做過統計,多達20%左右的比特幣很可能因為私鑰丟失已經永久消失了,這是十分驚人的數字。

如果將錢包存在一個第三方服務商(即所謂中心化的錢包),如果選擇知名服務商,有專業的運維管理,可以保證數據不會丟失,但是,這個服務商是有可能盜用你的錢包裡的錢的。這樣的事情以前是發生過的,例如比特幣存錢罐。

對於第二個問題,這樣做等於是比特幣的安全性降為你自己設定的密碼的安全性上了。這個密碼的保存要容易些,但安全性也大為降低了,不再需要被流星砸死外加今天中500萬大獎那樣的運氣,一個普通黑客都可以暴力破解。

實際上,錢包被盜的可能性還有很多種,連專業用戶有時都會不小心踩到坑。例如以太坊骰子的作者,作為一個精通以太坊技術的專業開發者,依然不小心被盜了價值10萬的以太坊代幣。

二、傳統區塊鏈的安全體系沒有覆蓋到交易所環節

這個安全缺陷導致交易的安全性是缺乏足夠保障的。而在巨大的利益誘惑面前,就算是最大最有名的交易所或交易所的安全負責人也不可信任。例如,印度三大比特幣交易所之一的Coinsecure,名字聽起來很牛,以保證數字貨幣的安全性作為招牌,但依然失竊了438個BTC,嫌疑人為 CSO(首席安全官)AmitabhSaxena。而在Mt. Gox事件中,當時世界上最大的比特幣交易所(佔比特幣交易量的70%)有85萬個比特幣(擱今天值大約百億美元)被盜,當場倒閉,很多人懷疑Mt. Gox是監守自盜。

三、傳統區塊鏈的安全體系沒有覆蓋互聯網斷網的風險

假設中國的GFW因為故障或政策原因將中國的互聯網和國外斷開了,於是中國和國外的比特幣礦工各自獨立挖礦,過段時間(也許是幾天,也許是幾月甚至及幾年)GFW恢復正常時,已經各自挖出了很多的比特幣,但只有挖得最多鏈最長的一方能夠勝出,在GFW恢復那一刻另一方挖的比特幣全部作廢,於是你辛辛苦苦當礦工挖出的幣突然就消失了,你花錢買到的幣也可能就此化為烏有。

四、傳統區塊鏈不能防止多數暴力

當有號召力的領袖一聲呼籲,大多數節點都跟著響應的時候,這時什麼事都可以發生,沒收你的財產更是不在話下。典型例子是以太坊的The Dao事件,300多萬以太坊幣被盜走,於是以太坊的創始人Vitalik Buterin(業內稱為V神)號召以太坊進行分叉,新的分叉ETH不承認被盜的交易。由於V神號召力巨大,真有大多數節點跟著他走,於是在ETH中被盜的交易消失了。

ETH通過分叉回滾交易是為了挽回被盜的財產,但這種方式其實是可以做任何事的,威力無窮,完全取決於當事人的良心。也許有一天你辛苦勞動成了土豪地主,一個領袖宣佈“打土豪分田地”,於是很多的貧民投票贊同,然後你的財產就被大多數人分走了。

解決方案:

大約在2012年,我在美國硅谷第一次接觸到比特幣的時候,花了兩個小時琢磨了一下,覺得自己應該能設計比它更好的方案,但不知道設計出來有什麼用,就擱下了。今天寫這篇文章的時候,覺得第一個風險應該有方案解決,但需要驗證,第二個風險有一個模糊的想法但沒有成型,第三個和第四個風險暫時還沒想到能徹底解決的方案,不過大概有一些緩解的方法,有可能達到商業上可以接受的程度。但是,依然不知道解決了這些問題又有什麼用?難道做一條新的公鏈代替比特幣以太坊不成?這恐怕不是有更新更好的技術就能做到的。


本文為火星財經原創稿件,版權歸火星財經所有,未經授權不得轉載,轉載須在文章標題後註明“文章來源:火星財經”,若違規轉載,火星財經有權追究法律責任。

相關推薦

推薦中...