未來資料戰爭:區塊鏈技術的軍事應用
在未來戰爭中資料的作用將越來越重要,資料的正確與否直接關係到戰爭的勝負,甚至可以說資料戰就是未來戰爭的一種極其重要的形式。資料戰可看成是在保護己方產生、儲存、分發、處理、分析和利用資訊能力的同時干擾敵方相同能力的能力。
隨著以比特幣為代表的各種虛擬幣的熱度不斷提高,其背後的支撐技術——區塊鏈技術也引起了業界的強烈關注。區塊鏈就是一種網路上的各參與者都能共享但沒有哪個單一實體能夠控制的共享分散式防篡改資料庫。由於區塊鏈技術有去中心化、去信任、防篡改等突出優點,其應用已經不僅限於金融圈,逐漸進入到軍事領域。包括美國和北約在內的多個國家和組織都在積極探索區塊鏈技術在軍事領域的應用。
利用區塊鏈可提供一種資料戰網路設計、運營和防禦的新正規化。區塊鏈可用於在高度對抗環境中對敵作戰, 讓指揮官和參謀人員能可靠指揮和控制部隊。區塊鏈的機理是假設網路中存在敵方;利用未受損節點的數量優勢壓制敵方行動;讓資訊永久防操控或破壞。總之,區塊鏈是在一個不可信的世界中創造了一種可信系統,有巨大的軍事應用潛力。
區塊鏈的概念
所謂區塊鏈就是一種網路上的每個參與者都能共享但沒有哪個單一實體能夠控制的共享分散式防篡改資料庫。換句話說,區塊鏈是一種儲存數字記錄的資料庫。網路參與者群體可以共享該資料庫,所有網路參與者都可提交納入區塊鏈的新記錄。然而, 這些記錄只有經過該群組大多數人的同意(即獲得共識)後才能新增到資料庫當中。此外,一旦記錄加入就永不可修改或刪除。總之,區塊鏈記錄數字資訊並保護其安全的方式是使之成為該群組一致認可的過往記錄。
區塊鏈是由中本聰( 化名) 於2008年與加密貨幣“比特幣”概念一起首次提出的。中本聰的設想是“交易雙方可以不經過金融機構直接進行線上支付。”然而,沒有可信中央權威實體監督賬目和交易,沒法防止不誠實人的一幣多花問題。中本聰的解決方案是採用一種帶時間戳的、基於共識的加密標記交易分散式資料庫,這些交易形成不能篡改的記錄——區塊鏈。比特幣於2009年變為現實,從那時到2016年4月,比特幣的市場資本總額從0增長到超過63億美元,2018年更是超過1000億美元。每天都有約660萬比特幣使用者在全網進行12萬筆交易,交易額超過7500萬美元。
比特幣是區塊鏈技術應用的一個著名例項。曾經發生的每一次比特幣流通、每筆比特幣交易以及每筆比特幣賬目都記錄在運行於開放網際網路上的區塊鏈資料庫中,完全暴露在政府、犯罪組織和黑客面前。但比特幣區塊鏈從未被黑過。因此這一技術非常值得研究。
雖然許多年來,比特幣實際上成了“區塊鏈”的代名詞,但二者明顯是兩種不同的技術。比特幣僅僅是區塊鏈的第一種流行應用,就如同Email是網際網路的第一個流行應用一樣。實際上,區塊鏈應用潛力巨大。區塊鏈的支持者將區塊鏈的成熟度和創新潛力比作1992年的網際網路(全球資訊網之前的網際網路)。然而,區塊鏈技術只是簡單利用了現有網際網路基礎設施,區塊鏈技術的成熟進步速度是網際網路的三倍,未來數年內就有望進入主流應用。
業界也認識到了區塊鏈技術的潛力。自2013年起,有超過10億美元風險投資投給了120個區塊鏈初創專案。其用途各異,從金融到不可分割資產的跟蹤和貿易,如鑽石和藝術品, 到可作為法庭呈堂證供的數字公證服務。涉及的利益也比一開始有大幅膨脹。成熟的大型公司,如洛馬公司、IBM、高盛等,也開始研究區塊鏈在各自領域的潛在應用。
區塊鏈解決了在部分參與者不可信的不可靠網路上可靠交換資訊的資料科學難題。區塊鏈安全模型從本質上假設整個流通中會有不誠實的參與者,他們不僅會製造虛假資料,而且會試圖操縱誠實參與者傳來的有效資料。區塊鏈會利用各種訊息傳送和共識技術,拒絕無效資料,防止有效資料被祕密修改或刪除,從而保證資料完好性。
區塊鏈相比傳統網路防禦策略有三大優勢:第一,區塊鏈假設網路攻擊既來自敵方也來自可信內部人員, 因此它不採用邊界防護的方式,而是設計用於在一種衝突網路環境中保護資料。第二,區塊鏈網路利用網路的集體力量積極對抗惡意行為者的動作。即,區塊鏈會利用以多打少的不對稱優勢。最後,區塊鏈實現安全性不依賴於祕密或信任。區塊鏈中,沒有終會暴露的所謂祕密,沒有待保護的金鑰,也沒有可信管理者。區塊鏈提供的是一種內在安全功能,還可根據應用需求在其上新增其他安全功能。正是有了這些優勢,區塊鏈才能在沒有可信中央權威機構的情況下在開放的網際網路上成功安全執行,並完全暴露給惡意行動者。區塊鏈在敵方採取惡意行動的情況下仍能保護資料完好性, 因而對於軍隊在未來高度衝突環境中取勝有著巨大的軍事實用性。
區塊鏈技術構成
與大部分技術一樣,區塊鏈也綜合運用了多項其他新興技術提供獨特的新功能和能力。
(表1 安全雜湊函式輸入輸出例項)
雜湊計算:數字指紋
區塊鏈採用一種稱為安全雜湊演算法(SHA)( 即雜湊計算,hashing) 的加密術。與其他加密方式不同,安全雜湊演算法不使用所謂祕密,如口令或金鑰。雜湊計算規範是由美國國家標準技術研究所(NIST)開發的,可供政府和私營實體公開使用。雜湊計算用於將任意長度的數字資訊(如,文字、圖片、視訊等)轉換為預定長度位的串。例如,通過SHA-256演算法處理過的數字資訊將輸出256位的字串, 相當於字母數字文字的32字串。安全雜湊值有兩個重要屬性。首先,該演算法是單向的。即,不能根據輸出推匯出輸入。其次,對於任意全域性唯一的輸入,輸出字串也是全域性唯一的。通過相同雜湊演算法處理相同資訊片段總是返回相同結果,同時不會有其他輸入會生成同一結果。表1說明了這一點。通過SHA-1雜湊演算法處理某點地理座標,生成的是一個40個字母數字字元的串。將位置經度小數點後第四位加1造成8.5米偏差後再次處理。這次處理後計算的雜湊值與原始雜湊值幾乎完全不同。將一幅圖修改一個畫素或將某本書修改一個字母,也會出現類似情況。因此,雜湊計算是在不直接檢查資料的情況下驗證一段資料完好性的有效工具。
(圖1 區塊鏈資料結構)
資料結構及其內容
區塊鏈是一個由一群記錄“區塊”組成的資料庫,每個區塊都包含有到前一區塊的加密連結,形成一個鏈。區塊鏈開始的區塊稱為“創世區塊”。新區塊新增時,要堆疊在前一區塊之上。區塊鏈示意圖如圖1所示。區塊鏈就像一本書中的書頁。每個區塊(書頁) 都包括一個區塊頭(就像書頁頂部的識別資訊)和內容(如,書頁中的文字)。每個區塊的區塊頭都含有多段資訊,而本文僅描述三段資訊。區塊頭中首先也是最重要的是資訊數字指紋, 即前一區塊的雜湊值。接下來是標識該區塊建立時間的時間戳。最後是該區塊的內容雜湊值。
內容雜湊也稱為默克爾雜湊,是默克爾雜湊樹最高節點(根節點)處的雜湊值。默克爾雜湊樹是一種加密資料結構,利用數學方式將一個區塊的全部內容連結到一個單一雜湊值。讓任意使用者都可快速重構任意區塊, 利用最少資訊量證實其內容的完好性。區塊鏈中每個區塊都會連結到其前一個區塊,因而具備內部一致性,不用檢查任何區塊的內容就可以驗證一致性,就像不用讀書的內容就可以驗證每一頁的存在一樣。這種資料結構對於區塊鏈安全性非常重要。
每個區塊中儲存的資訊集合可以是任何數字內容,包括簡單文字、結構化訊息、圖片和視訊等。區塊鏈中儲存的任何資訊都是永久安全的,都是永不可更改的歷史記錄。
確定區塊鏈內容時需要在兩個因素間進行基本權衡:機密性和檔案大小。區塊鏈中儲存的任何東西都能被所有網路成員看到。這一特性的優缺點都很明顯,優勢包括能夠輕鬆在全網驗證資訊,劣勢則包括無法控制能看到該資訊的人。檔案大小也是個重要因素,因為完整區塊鏈包含以往加入的每一條資料記錄。如果資料記錄太大且新增頻繁,則區塊鏈也會十分巨大,這就是所謂的“膨脹”問題。在去中心化的區塊鏈網路中,膨脹問題更為嚴重,因為區塊鏈中有多個網路節點獨立構造資料庫。
共識機制
共識就是一個不管有多少有缺陷過程也能讓一套分散式過程就一個值或一個動作達成協議的過程。其正式名稱為“拜占庭將軍”問題。一種最著名的共識演算法叫實用拜占庭容錯(PBFT),在安全關鍵系統中普遍使用, 如飛機上的四冗餘導航系統。在區塊鏈網路中,共識機制用於防止不誠實行為人向資料庫中寫入可能無效的資訊。任意給定區塊鏈使用的具體共識機制取決於許多假設條件,包括雙方間的信任度以及其利益的一致性,還包括網路形狀和同步等相關因素。例如,比特幣共識模型是一種去中心化和去信任模型。因此,每個節點獨立驗證每筆交易;獨立驗證新區塊;在區塊鏈中出現“分叉”時,獨立選擇算力最長的分支。從軍事意義上說, 共識機制利用多數誠實節點對少量不誠實節點的數量優勢實現對敵的不對稱優勢。因此,隨著網路規模的增長, 攻擊區塊鏈會越發困難。
(圖2 一般網路拓撲圖)
網路體系
區塊鏈可以採用多種網路體系, 從完全中心化到完全分散式體系,如圖2所示。但無論採用哪種網路體系, 都要在安全性和效率間進行權衡。例如,在中心化網路中,所有外層節點都依賴中心節點實現網路功能。因此, 如果中心節點被攻擊,則整個網路都可能受到影響。而另一方面,則是每個節點都獨立於任何其他節點發揮功能的分散式網路。分散式節點個體受到侵害不會危及網路整體。
訪問控制
區塊鏈的訪問控制通過兩種方式實現:許可方式和非許可方式。非許可方式是公有鏈採用的方式,運作時沒有訪問控制。只要有適當軟體和連線,任何人都能加入網路並與區塊連結口,無需中央權威實體許可。相反, 許可方式,即私有鏈採用的方式,讓管理員可控制網路參與者、能看到區塊鏈哪些部分、誰可向區塊鏈中寫入、甚至共識群體的組成。
(表2 軍用網區塊鏈節點型別例項)
網路節點型別
網路節點既是區塊鏈使用者也是防禦者。作為使用者,網路節點既會生成待納入區塊鏈中的新記錄也會利用區塊鏈獲取歷史資訊。網路節點也可通過參與共識機制的方式保護區塊鏈,雖然並不是所有節點都參與每次共識過程,這要取決於訪問控制等措施。任何區塊鏈網路中的節點型別都會不同, 取決於網路用途。
在軍事場景中,根據相關能力, 如處理、儲存、通訊等,可設想構建三類節點,包括全節點、部分節點和簡單節點。每種節點的例項和職責如表2所示。全節點作為區塊鏈網路的骨幹, 最重要的功能是建立和維護區塊鏈資料庫的最新完整副本。其另一重要功能是生成新區塊,然後分發到其他節點。接下來,全節點將驗證新交易或收到的來自其他節點的區塊,保證其符合共識規則並維護資料庫的內部一致性。最終,與所有其他節點一樣,全節點會生成和傳送納入資料庫的新記錄。
第二類節點是部分節點。由於平臺設計上的限制,部分節點沒有足夠的能力維護區塊鏈資料庫的完整副本, 只保留只包含每個區塊的區塊頭的區塊鏈副本。如之前所述,區塊頭包括之前區塊的區塊頭雜湊值、時間戳以及當前區塊內容的雜湊值。這樣,部分節點不僅可以驗證區塊鏈的一致性, 還可以完全驗證每個新區塊。一旦驗證完成,則只保留該區塊的區塊頭資料。在比特幣中,這種受到限制的區塊鏈模型將資料庫大小縮小了1000倍,從45GB縮小到了只有45MB。然而,由於丟棄了區塊內容,因此部分節點要驗證任意之前的交易需要全節點的支援。
第三類節點是簡單節點。如表2所示,簡單節點只生成、傳送和驗證新記錄。簡單節點在設計上是能力有限的低成本商品化裝置。但區塊鏈網路中的這種節點對於共識機制仍很有價值。
區塊鏈的軍事應用
區塊鏈技術在國防應用中非常有用。以下將描述三個具體用例。在這三個用例中,區塊鏈無論對其執行還是支援都十分有用。
網路防禦:資料完好性
網路防禦是一種區塊鏈技術的低成本高回報應用。如前所述,網路安全要依賴祕密和信任維護安全性,但這二者都無法保證。而區塊鏈的執行與祕密和信任無關。斯諾登就是利用對其管理員身份的信任,複製了多份特權檔案,然後篡改了可監控其行為的審計日誌。
區塊鏈則可通過兩種方式保護真相。首先,它會將數字事件資訊傳送給區塊鏈網路上的其他節點,讓數字事件得到廣泛見證。然後,區塊鏈可利用共識機制確保這些事件在資料庫中永不會被敵方修改,從而保證其安全。
區塊鏈還可增強網路防禦的邊界安全策略,不僅僅是幫助在邊界上修起高牆,而且還可監測高牆以及牆內的一切事物。現代系統的複雜度不斷提升, 包括武器系統,漏洞越來越多,可檢測性卻越來越差。採用區塊鏈不是要查詢漏洞,這無異於大海