TFC 專案開發偏執的安全訊息傳遞系統

在項目邊界內 TFC (Tinfoil Chat)嘗試創建一個受偏執保護的訊息傳遞系統的原型,即使終端設備受到損害,該系統也能保持通訊的保密性。為了簡化審核,專案程式碼採用Python編寫, 有空 在 GPLv3 下獲得許可。

目前廣泛使用的訊息傳遞系統使用端對端加密,可以保護通訊免於中間伺服器攔截和傳輸流量分析,但不能防止客戶端設備出現問題。為了破壞基於端對端加密的系統,破壞終端設備上的作業系統、韌體或訊息應用程式就足夠了,例如,利用以前未知的漏洞、透過最初引入軟體或硬體書籤進入設備,或透過提供帶有後門的虛構更新(例如,當情報部門或犯罪集團向開發人員施加壓力時)。即使加密金鑰位於單獨的令牌上,如果您可以控制使用者的系統,則始終可以追蹤進程、攔截來自鍵盤的資料並監視螢幕輸出。

TFC 提供了一個軟體和硬體複合體,需要在客戶端使用三台獨立的電腦和一個特殊的硬體分配器。訊息傳遞參與者互動過程中的所有流量都透過匿名Tor網路傳輸,訊息傳遞程式以隱藏的Tor服務的形式製作(使用者在交換訊息時透過隱藏的服務位址和金鑰來識別)。

TFC 專案開發偏執的安全訊息傳遞系統

第一台電腦充當連接到網路並運行 Tor 隱藏服務的網關。網關只操作已經加密的數據,另外兩台電腦用於加密和解密。第二台電腦只能用於解密和顯示收到的訊息,第三台電腦只能用於加密和傳送新訊息。因此,第二計算機僅具有解密金鑰,而第三計算機僅具有加密金鑰。

第二台和第三台電腦沒有直接連接到網絡,並且透過特殊的 USB 分離器與網關電腦分開,該分離器使用“數據二極體”並且僅在一個方向上物理傳輸資料。分離器只允許向第二台電腦發送數據,並且只允許從第三台電腦接收數據。分割器中資料的方向受到限制 光耦合器 (電纜中的 Tx 和 Rx 線簡單斷開是不夠的,因為斷開並不排除相反方向的資料傳輸,並且不能保證 Tx 線不會用於讀取,而 Rx 線不會用於傳輸)。分離器可以用廢零件組裝而成, 附圖已附上 (PCB)並且可以在 GNU FDL 1.3 許可證下使用。

TFC 專案開發偏執的安全訊息傳遞系統

透過這樣的方案,網關受到損害 不會允許 取得加密金鑰的存取權限,並且不允許您繼續對其餘裝置進行攻擊。如果解密金鑰所在的電腦受到損害,則來自該電腦的資訊將無法傳輸到外界,因為資料流僅透過接收資訊來限制,且反向傳輸被資料二極體阻止。

TFC 專案開發偏執的安全訊息傳遞系統

加密基於 XChaCha256-Poly20 上的 1305 位元金鑰,使用慢速雜湊函數透過密碼保護金鑰 氬氣2id。對於密鑰交換,使用它 X448 (基於 Curve448 的 Diffie-Hellman 協定)或 PSK 金鑰(預共享)。每個訊息均以完美的前向保密方式傳輸(PFS、 完善的前向保密)基於 Blake2b 哈希,其中長期密鑰之一的洩露不允許解密先前攔截的會話。應用程式介面非常簡單,包括一個分為三個區域的視窗 - 發送、接收和帶有與網關互動日誌的命令列。管理是透過專門機構進行的 命令集.

TFC 專案開發偏執的安全訊息傳遞系統

來源: opennet.ru

添加評論