摘要:事件:近日,美國總統特朗普簽署兩項新的行政命令。禁止美國人與TikTok和微信以及兩個App的「中國所有者」展開相關的任何交易,行政命令將在45天后生效,也就是9月20日。媒體評論稱,這也意味著TikTok和微信很可能無法出現在蘋果AppStore和谷歌GooglePlay上。
事件:近日,美國總統特朗普簽署兩項新的行政命令。禁止美國人與TikTok和微信以及兩個App的「中國所有者」展開相關的任何交易,行政命令將在45天后生效,也就是9月20日。媒體評論稱,這也意味著TikTok和微信很可能無法出現在蘋果AppStore和谷歌GooglePlay上。
影響:如果執法者泛化國家安全概念,濫用國家權利,公民和網民正常使用互聯網的人權將不復存在。如果最壞的結果真的出現,誰來捍衛互聯網的自由和平等?等下一屆美國總統上臺嗎?這當然不現實,從哪里來就回哪里去,技術的問題還需技術手段來解決,在“隱秘的角落”里,“暗網”教會人們,也許構建全球化的分布式加密通信網絡才是保衛網民權利的最后防線,可以用來幫助人們捍衛自由,對抗政治強權。說到加密通信網絡不能不提兩個協議:Tor (The Onion Router)和I2P (Invisible Internet project)。
圖:“暗網”通信機制
Tor (The Onion Router)
Tor (The Onion Router),強大到設計者都無法銷毀:2013年斯諾登的“棱鏡門”事件曝光時,Tor浮出水面。斯諾登除了揭露美國中情局監聽全球的計劃外,還泄露了美國國家安全局(NSA)對于Tor的無奈。后者在一份題為《Tor糟透了》的文件中提到,NSA在企圖摧毀Tor的過程中遭遇重重困難,“Tor臭名昭著,但它還可以變得更糟糕。我們永遠不能做到隨時把所有Tor的用戶去匿名化”。
Tor簡介
Tor與三重代理類似,Tor客戶端首先與目錄服務器連接獲得全球活動的中繼節點信息,然后再隨機選擇三個中繼節點組成電路(circuit)。用戶數據經過三個中繼節點后最終到達目標網站服務器。為了防止流量分析和蜜罐節點,每隔10分鐘左右會更換中繼節點。
數據包結構
創建電路(即客戶端和中繼節點協商密鑰)時,Tor使用圖中上半部分的結構。傳數據時使用圖中下半部分的結構。
圖:Tor數據單元
上半部結構:
1)CircID: 即電路id (circuit id)。
2)CMD: 命令,包括:
Create:洋蔥代理發出建立一條新的電路命令
Created:目標節點對 Create命令的應答信息,用來響應Create
Destroy:用來拆除一條虛電路
Padding:用來填充數據包的信息
3)DATA: 存放數據
下半部結構:
1)CircID: 即電路id (circuit id)
2)Relay: 表明單元類型為relay
3)Stream ID:數據流的身份標識,OP 可以將多個傳輸流復用到同一傳輸通道中
4)Digest:端到端的完整性校驗
5)Len:轉發數據的長度
6)CMD轉發命令:
Relay Data:用來轉發數據;
Relay Begin:用來打開一個流;
Relay End:用來徹底關閉一個流;
Relay Extend:用于將虛電路延伸一跳;
Relay Teardown:用來關閉一個故障數據流;
Relay Connected:通知 OP 轉發已經成功開始;
Relay Truncate:用于切斷部分電路;
Relay Sendme:用來擁塞控制時不再向下一個節點發送數據包;
Relay Drop:用來丟棄垃圾信息
7)DATA:數據
建立電路和傳輸數據
圖:Tor數據傳輸示意圖
Alice為客戶端節點,OR1和OR2為中繼節點,website為要訪問的服務器。
Alice發送一個create單元給OR1,電路ID為C1。這個create單元包含“Alice和OR1密鑰協商的參數gx1”。gx1被OR1的公鑰加密。
2)OR1收到后使用私鑰解密,協商出密鑰K1(k1= gx1y1),回復created單元,created單元包含另一半參數gy1和H(K1)。
3)Alice收到另一半參數gy1,構造出K1。
4)Alice發送relay extend單元(利用K1加密)給OR1。Relay extend包含OR2的ip和“Alice和OR2的密鑰協商參數gx2”。gx2被OR2的公鑰加密。
5)OR1收到relay extend單元后用K1解密。OR1將E(gx2)加入create單元,構造電路C2,并將create單元發給OR2。
6)OR2收到create單元,解密出gy2,返回gy2和H(gy2)給OR1。OR1加密后發給Alice。
7)Alice構造出協商密鑰K2。
8)Alice發送relay begin單元(分別被K2和K1加密)給OR1,OR1解密后發給OR2,OR2解密后發給website。
9)OR2和website完成TCP握手,返回relay connected單元(使用K2加密)。OR1繼續加密后轉發給Alice。
10)Alice收到后開始HTTP請求。請求數據雙層加密后被層層解密,響應數據被層層加密。
Tor的安全性
1)前向安全:Tor使用密鑰協商機制來一跳一跳地擴展通信鏈路。由于發送者建立的通信鏈路可以隨時改變,并定期更換會話密鑰,所以 Tor 能夠抵御重放攻擊,數據安全性較高。
2)低延時:傳統的基于Mix的匿名通信系統使用隨機時延、重排及流量填充技術。這些技術增加了計算量、占用大量帶寬, Tor系統沒有使用這些技術,因此具有較低的時延。
3)Tor允許多個應用共享一個虛電路
4)Tor網絡提出了擁塞控制機制,分為數據流級擁塞控制和通道級擁塞控制。數據流級擁塞控制機制用于傳輸通道中某一個數據流的流量控制,通道級擁塞控制機制用于整個傳輸通道的流量控制
5)Tor系統采用了端到端的完整性檢測機制(SHA1)
6)目錄服務器:Tor使用一組高效,穩定的服務器來跟蹤所有OR的狀態變化信息,包括密鑰,出口策略等,并且定期同步
Tor的弱點
如果攻擊者控制了出口節點,那么他就可以很輕易地監聽到用戶的流量。
2)時間攻擊的基本思想是尋找入口節點和出口節點之間數據包的時間相關性。作為低時延匿名系統,Tor 不使用數據包填充和隨機延遲技術,因此消息間有很強的時間相關性。系統默認的路徑長度是 3,如果第一個和最后一個節點合謀攻擊,通告自己的下一跳和上一跳。通過判斷是否相同就是判斷是不是一條轉發路徑。
3)Tor的節點都是由志愿者構成,雖然其中一般都是匿名的,然而這些節點也可以被輕易地替換。
4)MIT 的計算機科學家報告找到了新方法去匿名化Tor隱藏服務,通過對攻擊者控制的 guard 節點的流量進行監視,觀察數據包模式,新方法能以 88% 的正確率識別托管 Tor 隱藏服務的服務器。
I2P (Invisible Internet project)
隱形網,一種混和授權的匿名網絡,可伸縮性強,具有自我組織與恢復能力。其上運行有多種不同的匿名安全程序,各程序可以自行決定匿名性、延遲、流量平衡而不用考慮混淆式路由網絡的具體實現。它們的數據活動可以與現有的I2P用戶的匿名數據相混合。目前可用的程序包括全部典型的Internet應用 - 匿名網頁瀏覽(Eepproxy),匿名網站(Eepsite),匿名博客與內容聚合(Syndie),匿名聊天(通過IRC、Jabber、I2P-QTMessanger),匿名文件傳輸(I2PSnark,Robert),匿名文件分享(I2Phex, iMule),匿名電子郵件(I2PMail+susiMail),匿名新聞組,及其他開發中的程序(待補充:I2P部分原理和安全性介紹)。
I2P簡介
I2P是一個封閉的網絡,運行在互聯網基礎設施中(在這個范例中稱為clearnet)。與vpn和Tor不同,它們本質上是“outproxy”網絡,設計用于與Internet進行匿名和私有通信,I2P被設計為P2P網絡。這意味著它與互聯網幾乎沒有通信。它還意味著I2P中的每個節點都沒有用Internet協議(IP)地址標識,而是用加密標識符標識。I2P網絡中的節點可以是托管暗網服務的服務器(類似于Internet上的網站),也可以是訪問由其他節點托管的服務器和服務的客戶端。另一方面,Tor通過使用一組志愿者操作的中繼服務器/節點來工作,這些服務器/節點允許人們私密安全地訪問Internet。這意味著人們可以選擇自愿作為網絡中的中繼節點,從而捐贈帶寬。與Tor相比,I2P中的每個客戶端/服務器自動成為一個中繼節點。是否通過特定節點路由數據通常取決于帶寬。由于I2P中沒有Internet,因此網絡由其自己的匿名站點和隱藏站點(稱為eepsites)組成。這些僅存在于網絡中,并且只有使用I2P的人員才能訪問。使用標準Web服務器的服務(例如I2P Tunnel)可用于創建此類網站。
路由基礎結構和匿名性
I2P通過在客戶端設備中安裝I2P路由服務來工作。此路由器與其他設備上的I2P路由器創建臨時、加密的單向連接。連接被稱為單向連接,因為它們由出站隧道和入站隧道組成。在任何通信過程中,數據通過出站隧道離開客戶端設備,并通過其入站隧道在其他設備上接收。這個數據庫由一個自定義的Kademlia(簡稱Kad)風格的分布式哈希表(Distributed Hash Table,簡稱DHT)組成,其中包含路由器信息和目標信息。對于每個應用程序或客戶機,I2P路由器都保留一個隧道對池。與網絡數據庫進行交互的探測隧道在路由器的所有用戶之間共享。如果池中的隧道即將到期或該隧道不再可用,則路由器會創建一個新的隧道并將其添加到池中。重要的是,隧道每隔10分鐘定期到期,因此需要經常刷新。這是I2P的安全措施之一,旨在防止長期存在的隧道成為匿名威脅。
I2P網絡隧道機制
I2P通過隧道傳輸用戶的網絡流量。一條隧道是由一個或者多個I2P節點構成的單向加密連接,I2P網絡中的每個節點都會維持一定數量的隧道,為將要進行的通信做準備。I2P網絡中的隧道根據使用目的,可以分為探測隧道和客戶隧道兩類。探測隧道主要用于I2P網絡中的節點信息維護;客戶隧道則用于用戶的匿名通信過程,如Web瀏覽、即時聊天等。下文中所指的隧道都是指客戶隧道。根據傳輸方向,隧道又可以分為入站隧道和出站隧道。其中入站隧道用于接收消息,對傳入的消息層層加密;而出站隧道用于發送消息,對傳出的消息層層解密。
一次Alice和Bob之間完整的通信通常需要4條隧道的參數,即通信雙方個需要一條輸入客戶隧道和輸出客戶隧道。如下圖所示,Alice發出的消息通過自己的出站隧道發送到Bob的入站隧道,Bob接收到消息后,返回的消息通過自己的出站隧道傳遞給Alice的入站隧道,完成二者的消息交換。
I2P網絡中每一條隧道的建立都需要用戶從已知的眾多I2P網絡節點中進行選擇,選擇出性能較高的節點,并把選擇的節點進行隨機排序形成隧道中節點的順序,在依次向各節點發送隧道建立請求,最后建成隧道。
I2P網絡節點選擇算法
在I2P網絡中建立隧道,并不是隨機地從所有路由節點中進行選擇,每一個I2P節點都有一個自己對部分I2P網絡的局部視圖,并會維持其中對其他節點的性能測量值表,并根據該表對已知的I2P節點進行分類,然后在選擇其中性能較高的節點建立隧道。
I2P對其他節點的測量主要考慮兩個指標:速度(speed)和容量(capacity)。其中,一個節點的速度是指1min內通過包含該I2P節點的隧道可以發送或接收的數據量大小,通常用過去1min內通過該節點的隧道中3條最快隧道的平均帶寬來表示;而容量則是指一段時間內某一節點成功參與建立的隧道數目,對某一個I2P節點容量的估計使用如下方式:假設函數cap用來表示一個節點一段時間內的容量值,則一個I2P節點p的當前容量估計值計算如下。
圖:I2P節點選擇示意圖
高容量節點:容量值超過所有節點容量平均值的節點。
高度節點:高容量節點中速度超過所有節點速度平均值的節點。
標準節點:高速和高容量節點之外的其余節點。
分類完成之后,根據不同的隧道需求,I2P節點會從不同類型的節點中進行選擇,其中,客戶隧道會優先從高速節點中進行選擇,而探測隧道則會從高容量節點中進行選擇。
分布式網絡數據庫
與Tor采用集中式目錄服務器管理不同,I2P采用給予Kad的P2P架構,然而并不是每一個I2P節點都會成為Kad網絡節點,I2P會從所有的網絡節點中選出帶寬較高的節點作為種子節點,稱為FloodFill節點。FloodFill節點的數目約占I2P節點總數的6%,這些FloodFill節點彼此之間構成I2P的Kad網絡,稱為網絡數據庫(NetDB),其被實現為DHT。NetDB是使I2P分散化的特征之一。
要開始參與網絡,路由器將安裝NetDB的一部分。獲得部分NetDB稱為引導,是通過“重新播種”路由器進行的。默認情況下,路由器將通過查詢一些自舉域名來重新設置種子。當路由器成功建立與這些域之一的連接時,將建立傳輸層安全性(TLS)連接,路由器通過該連接下載NetDB的已簽名部分副本。一旦路由器可以到達網絡中的至少一個其他參與者,則路由器將查詢自己沒有的NetDB的其他部分。NetDB用以存儲I2P網絡中所有節點的信息,并向I2P節點提供信息存儲和查詢的功能。NetDB中主要存儲兩種類型的數據:
RouterInfo.:即I2P網絡中各個節點的聯系信息,包括IP地址、端口號和公鑰等信息。
LeaseSet.:包含I2P網絡中各種匿名服務指定的入站隧道入口信息。
Floodfill Routers(泛洪路由器)
專用路由器(稱為泛洪路由器)負責存儲NetDB??勺詣踊蚴謩訁⑴c溢流池。當泛洪路由器的數量下降到某個閾值以下時,即當前網絡中所有節點的6%,就會發生自動參與。發生這種情況時,將根據正常運行時間和帶寬等條件選擇一個節點作為泛洪路由器。應該注意的是,大約95%的泛洪路由器是自動的。NetDB以DHT格式存儲在泛洪路由器中。向泛洪路由器請求一個資源,該資源被認為與該密鑰最接近。為了獲得更高的查找成功率,客戶端可以迭代查找密鑰。這意味著,如果初始查找請求失敗,則從下一個最近的對等方繼續查找。
Garlic Routing(大蒜路由器)
大蒜路由是一種構建路徑或隧道的方式,I2P網絡中的消息將通過該路徑或隧道傳播。當消息離開應用程序或客戶端時,它將被加密為收件人的公共密鑰。然后使用指定下一跳的指令對加密的消息進行加密。郵件以這種方式遍歷每一跳,直到到達收件人為止。在郵件傳輸過程中,它與其他郵件捆綁在一起。這意味著在網絡中傳播的任何消息都可能包含許多捆綁在一起的其他消息。
I2P中的大蒜路由主要包含三個不同的階段:
通過單向隧道構建路由(分層加密);
2)對于消息進行捆綁,通過分組交換,確定端到端消息傳遞的成功或失敗;3)用于發布一些網絡數據庫NetDB條目,進行數據庫維護。
Tor和I2P潛在安全風險分析
近年來披露的文件顯示,Tor已經成為美國國家安全局(以下簡稱“NSA”)等情報機構的重要目標,據相關資料顯示如今已有十萬Tor用戶的身份泄漏。而I2P的匿名系統也嚴重依賴于Tor,同樣受到安全威脅。I2P項目也沒有特定的威脅模型,其面臨的是常見的攻擊并使用現有防御。總體而言,I2P的設計是由類似于Tor處理的威脅所致:攻擊者可以在本地觀察流量,但不能觀察到通過網絡的所有流量。并且假定所有密碼原語的完整性。此外,僅允許攻擊者控制網絡中有限數量的對等方(假設參與NetDB的節點不超過20%,受惡意實體控制的節點總數不超過該百分比)。
女巫攻擊(Sybil Attacks)女巫攻擊是一種眾所周知的匿名系統攻擊,其中,惡意用戶創建了多個身份,以增強對網絡的控制。通過I2P網絡進行這種攻擊非常困難。這是因為網絡中的參與者/客戶在選擇要與之交互的對等方時會評估對等方的性能,而不是使用隨機樣本。由于在同一主機上運行多個身份會影響這些實例中每個實例的性能,因此并行運行的其他身份的數量受到有效的限制,因為它們需要為每個實例提供足夠的資源以被視為對等實體。這意味著惡意用戶將需要大量資源來創建多個身份。
日蝕攻擊(Eclipse Attacks)在日蝕攻擊中,一組惡意節點和合謀節點安排一個好的節點只能與惡意節點通信。因此,惡意節點的聯合欺騙好節點將其地址寫入相鄰的好節點列表。在女巫攻擊中,單個惡意節點在網絡中擁有大量的身份信息,以控制網絡的某些部分。如果攻擊者想將女巫攻擊繼續升級為日蝕攻擊,則攻擊者將嘗試將惡意節點放置在戰略路由路徑中,以便所有流量都通過攻擊者的節點。
暴力攻擊通過主動觀察網絡在所有節點之間傳遞的消息并嘗試關聯消息及其路由,可以對I2P網絡進行暴力攻擊。由于網絡中的所有對等節點都經常發送消息,因此這種攻擊是微不足道的。攻擊者可以發出大量數據(超過2GB),觀察所有節點并縮小路由消息的節點的范圍。因為路由器間的通信是經過加密和流式傳輸的,所以必須傳輸大量數據,即1,024字節數據與2,048字節數據是無法區分的。但是發動這種攻擊非常困難,為了觀察大量網絡,必須是Internet服務提供商(ISP)或政府實體。
交叉攻擊(Intersection Attacks)
交叉攻擊涉及隨時間觀察網絡和節點流失。為了縮小特定目標的范圍,當通過網絡傳輸消息時,將聯機的對等點相交。從理論上講,如果網絡較小,則發動這種攻擊是可能的,但對于較大的網絡則不可行。
拒絕服務攻擊
貪婪用戶攻擊:當用戶消耗的資源遠遠超過他們愿意貢獻的資源時,就會發生貪婪的用戶攻擊。I2P對這些攻擊有很強的防御能力,因為默認情況下,網絡中的用戶是路由器,因此通過設計為網絡做出貢獻。
饑餓攻擊
用戶/節點可能會試圖通過創建大量不向網絡提供任何資源或服務的壞節點來發起饑餓攻擊,從而導致現有對等點通過更大的網絡數據庫進行搜索,或請求超出所需數量的隧道。試圖找到有用的節點可能很困難,因為它們與失敗或加載的節點沒有區別。然而I2P在設計上維護了所有對等點的配置文件,并試圖識別和忽略性能不佳的節點,這使得這種攻擊變得困難。
泛洪攻擊
在泛洪攻擊中,惡意用戶將大量消息發送到目標的入站隧道或整個網絡。但是目標用戶通過以下方法防御泛洪攻擊:通過消息的內容檢測到這一點,并且因此隧道的測試失敗。識別無響應的隧道,忽略它們并建立新的隧道。選擇限制通道可以接收的消息數量。
構建墻不住、封不了的全球化分布式安全通信網絡
Tor和I2P的網絡結構設計給了人們很多啟發,以類Tor和I2P的加密通信協議為基礎,構建全球分布的網絡節點已成為現實。美國境內的業務和數據將不再只運行在美國本土或北美區域的服務器中,而是全球范圍流轉,任何一地的服務可訪問,美國境內的服務都不會中斷,用戶損失的最多是幾毫秒的網絡中轉時間,根本不會影響體驗。
網民也將不再受到網絡流量監控的威脅,以全球化分布式安全通信網絡為基礎,目前已出現一批以App、Web站點、SDK功能組件為形態的功能應用。包括I2P-Messanger(即時聊天)、Syndie(博客)、PayEgis(加密通訊)、Susimail(郵件)、門羅幣(加密貨幣)等均已得到廣泛的應用。后續也必將有越來越多的應用和服務將架設在這樣一個分布式加密網絡上。
2020年之后的全球化叫做“數字遷徙”,不再受限于物理邊界,人類全面走向數字文明。數字文明沒有國界、跨時空,是真正的全球化。
2024年亞太過敏和臨床免疫學協會(APAAACI)國際大會于2024年12月12日至12月15日在...
投資家網(m.51baobao.cn)是國內領先的資本與產業創新綜合服務平臺。為活躍于中國市場的VC/PE、上市公司、創業企業、地方政府等提供專業的第三方信息服務,包括行業媒體、智庫服務、會議服務及生態服務。長按右側二維碼添加"投資哥"可與小編深入交流,并可加入微信群參與官方活動,趕快行動吧。
2016年注冊于北京的中氫新能技術有限公司,下設位于大興的裝備制造公司、位于海淀區的技術研究院、材料...
一度無比高光的理想汽車,猝不及防遭遇重挫。
2024年1月10日,由投資家網主辦,財經銳眼、有時間協辦,北京微金科技有限公司承辦的“第十二屆股權...
2024年1月10日,由投資家網主辦,財經銳眼、有時間協辦,北京微金科技有限公司承辦的“第十二屆股權...
2024年1月10日,由投資家網主辦,財經銳眼、有時間協辦,北京微金科技有限公司承辦的“第十二屆股權...