郭慧茹 賀珊 謝冬 劉曉碩 趙寧
【摘 要】大數(shù)據(jù)時代背景下,網絡爬蟲、人肉搜索等手段的問世,將人們的生活置于各種顯微鏡下,個人隱私信息保護就顯得尤為重要。區(qū)塊鏈技術憑借無需中介參與,過程高度透明,數(shù)據(jù)高度安全等優(yōu)勢成為了數(shù)據(jù)保護領域關鍵技術之一。本文介紹了區(qū)塊鏈核心問題:拜占庭將軍問題及其解決方案,通過拜占庭問題解析區(qū)塊鏈共識機制保護信息安全并將區(qū)塊鏈技術應用到日常生活,從而加強對個人信息的保護。
【關鍵詞】區(qū)塊鏈;Distributed Consensus;工作量證明機制
一、引言
2017年9月美國著名信貸機構equifax公開披露,該公司網站在5月中旬至7月間遭到黑客攻擊,直接導致1.43億美國人的信息數(shù)據(jù)被披露。身份保護是當今數(shù)字化世界中的一個必須面對的問題。網絡爬蟲、人肉搜索等手段的問世,將人們的生活置于各種顯微鏡下。如何保護個人隱私成為公眾最為關注的話題之一。
二、拜占庭問題
(一)問題描述
拜占庭問題是來為描述分布式系統(tǒng)共識問題的一個著名故事。
拜占庭帝國想派了10名士兵攻擊一個強大的敵人。這個敵人雖不比拜占庭帝國強,但也足以抵擋拜占庭五支正規(guī)軍的同時進攻。除非至少有六支軍隊同時進攻,否則他們單獨進攻都沒有獲勝的機會。他們分散在敵國各地,依靠通信兵之間的通信來協(xié)商攻擊意圖和攻擊時間。如果一個或幾個部隊自己同意一起進攻,但實際的過程是背叛,那么他們都可能失敗。這就是拜占庭的普遍問題。在這種情況下,拜占庭將軍能找到一個分布式協(xié)議,通過遠程談判達成協(xié)議,贏得戰(zhàn)爭嗎?
(二)問題分析
在拜占庭問題上,最重要的是使將軍們能夠在不可信的環(huán)境中與叛徒建立對作戰(zhàn)計劃的共識。然而,達成共識并不容易。如果有叛徒,叛徒可能通過讓其他將軍接受不一致的信息來迷惑他們,可能欺騙一些將軍自己采取進攻行動。
拜占庭問題目標就是忠誠的將軍能夠達成一致,對這些忠心耿耿的將軍來說只要能夠達成一致就行。如果萬事俱備,客觀上每個忠誠的將軍只要進攻了就一定能夠勝利,卻因為叛徒的存在他們都“一致的”沒有進攻;反之,條件不利,卻因為叛徒的存在所有人都“一致的”進攻了??梢园l(fā)現(xiàn),只有“一致性”是不足以解決問題的,還需要“正確性”要求。
(三)問題解決算法
1.簽字協(xié)議
書面協(xié)議是在將軍模型中加了個隱含條件:假設10個國家,每個國家都可以派人向各個國家派信,一起約定一個事件。收到信的國家如果同意信內容的話,就可以在原信上簽名蓋章。將軍們能夠使用簽名技術,簽名不可偽造,同時任何人都可以驗證簽名的可靠性。所有的消息都是有記錄的,解決了追根溯源的問題。
簽字協(xié)議在現(xiàn)實中仍然可能面臨各種問題:不信任的系統(tǒng)中,物理距離導致信息傳輸延遲。真正可信的簽名體系難以構造。不可避免簽名造假的問題。簽名消息記錄的保存依舊依附中心化的機構。如果能夠依賴中心化可信的機構,也許能通過多方的簽名記錄整合在一起,更容易地實現(xiàn)10個國家的意見統(tǒng)一,但這是個偽假設,因為前提是這個網絡就是互不信任的。在這種異步通信的條件下,要能協(xié)商一致是個大問題。
2.區(qū)塊鏈技術
互聯(lián)網的存在,首先降低了信息的流通成本。每個將軍配一臺電腦,如果10個將軍中的幾個同時發(fā)起消息,勢必會造成系統(tǒng)的混亂,造成各說各的攻擊時間方案,行動難以一致。為此中本聰開創(chuàng)性的提出了工作量證明機制,一舉解決了單點一致性和系統(tǒng)一致性問題。
工作量認證機制是對工作量的認證。在比特幣網絡中要做的就是全網節(jié)點要共同算一道題,誰先算對,誰就能獲得發(fā)出一條消息的權利,并且系統(tǒng)還會給算對的節(jié)點額外的獎勵;然后全網節(jié)點在這條信息之后開始計算新的數(shù)學題。它加入的成本就是“工作量”即節(jié)點必須完成一個計算工作才能向各城邦傳播消息。當某個節(jié)點發(fā)出統(tǒng)一進攻的消息后,各個節(jié)點收到發(fā)起者的消息必須簽名蓋章,確認各自的身份。
引用現(xiàn)代加密技術為這個信息簽名,這種加密技術能夠確認身份,確保消息傳送的私密性,簽名不可偽造、篡改。非對稱加密算法的加密和解密使用不同的兩個密鑰.即:"公開密鑰"(公鑰)和"私有密鑰"(私鑰).如果消息使用公鑰加密,那么需要該公鑰對應的私鑰才能解密;同樣,如果消息使用私鑰加密,那么需要該私鑰對應的公鑰才能解密.非對稱加密的作用是:保護消息內容,并且讓消息接收方確定發(fā)送方的身份.由此,一個不信任的分布式網絡變成了一個可信的網絡。
基于互聯(lián)網的區(qū)塊鏈技術,克服了口頭協(xié)議和簽字協(xié)議的種種缺點,使用公平的工作量證明機制,完美的解決拜占庭將軍問題。
三、區(qū)塊鏈的發(fā)展
(一)市場相關
ShoCard是一家在區(qū)塊鏈之上開發(fā)身份管理平臺的創(chuàng)業(yè)公司。用戶可以通過該公司提供的App創(chuàng)建數(shù)字身份,所有的數(shù)據(jù)都是加密后本地存儲,哈希后存儲在區(qū)塊鏈上。第三方機構也需要使用該公司的App來通過區(qū)塊鏈驗證用戶的身份。
Blockstack一個開源項目,提供分布式的DNS,分布式的PKI,以及身份管理。Blockstack提供一個分布式的平臺,用戶對自己的身份和數(shù)據(jù)擁有絕對的控制權,而開發(fā)者在這之上可以開發(fā)分布式App,本地運行,調用用戶提供的API。
Certcoin是MIT的學生開發(fā)的基于Namecoin的開源項目,是一個分散式的認證系統(tǒng)。
(二)未來信息保護案例
情景一:在登錄時,只需要掃描一下來自你的app的銀行網頁上的二維碼即可。然后,會向app推送一個通知,要求提供指紋驗證,自動登錄。
情景二:如果因為賬戶問題需要呼叫銀行客服。通知將被發(fā)送到您的應用程序,同時與銀行運營商通話:通知將要求一個指紋來驗證你是誰。指紋驗證之后,銀行就會確定本人。
情景三:使用APP上傳他們的所有文件。這些文件然后會在區(qū)塊鏈上進行密封和加密,任何人都可以使用公共密鑰來驗證它們的真實性。
四、總結
身份保護服務業(yè)將在未來十年內出現(xiàn)巨大的變化。墨水簽名很容易偽造,中心化密鑰服務器非常危險,雙因素授權服務往往是不可靠和不便捷的。區(qū)塊鏈技術并非能夠解決一切問題,像Shocard, Solidx,和Civic 這樣的公司處于這種創(chuàng)新的前沿,而這種創(chuàng)新可能會為整個行業(yè)帶來顛覆性變化。
理論上,區(qū)塊鏈是不能改變的,它承擔關鍵的基礎設施角色。區(qū)塊鏈只存在于數(shù)字世界,且不能保證用戶的物理身份,這也是給企業(yè)帶來了驗證,鏈接還有導航的負擔。
這些問題再次加強了強大的私人基礎設施的需求。一個完整的控制,在缺乏法律先例的情況下,還涉及到基于區(qū)塊鏈身份生態(tài)系統(tǒng)的實體對象就不得不接受風險,不確定性,和無限責任。
【參考文獻】
[1] Marshall Pease和Robert Shostak《在存在缺陷的情況下達成協(xié)議》 計算機協(xié)會雜志 27,2 (1980年4月)
[2]J S. Moore《程序驗證:可靠硬件和軟件的方法》美國核學會交易35(1980年11月),252-253
[3] Michael Fische《拜占庭將軍和交易提交協(xié)議》1982年4月
[4]Michael Melliar-Smith《拜占庭時鐘同步》第三屆ACM分布式計算原理研討會論文集(1984年8月),68-74