TFC(Tinfoil Chat)專案提出了一種具有 3 個 USB 連接埠的硬體設備,用於連接 3 台電腦並創建一個受偏執保護的訊息系統。
第一台電腦充當連接網路並啟動 Tor 隱藏服務的網關;它操縱已加密的資料。
第二台電腦擁有解密金鑰,僅用於解密和顯示收到的訊息。
第三台電腦擁有加密金鑰,僅用於加密和發送新訊息。
USB 分離器按照「資料二極體」原理在光耦合器上運行,並且僅在指定方向上物理地傳遞資料:向第二台電腦發送資料並從第三台電腦接收資料。
破壞第一台電腦將不允許您存取加密金鑰、資料本身,也不允許您繼續對其餘裝置進行攻擊。
當第二台電腦受到威脅時,攻擊者將讀取訊息和金鑰,但無法將它們傳輸到外界,因為資料僅從外部接收,但不會發送到外部。
如果第三台電腦受到威脅,攻擊者可以冒充訂戶並代表他寫入訊息,但無法讀取來自外部的資料(因為資料會發送到第二台電腦並在那裡解密)。
加密基於256位元XChaCha20-Poly1305演算法,並使用慢速Argon2id雜湊函數透過密碼保護金鑰。 對於金鑰交換,使用 X448(基於 Curve448 的 Diffie-Hellman 協定)或 PSK 金鑰(預先共用)。 每個訊息都以基於 Blake2b 雜湊值的完美前向保密(PFS,Perfect Forward Secrecy)模式進行傳輸,其中長期金鑰之一的洩漏不允許解密先前攔截的會話。
應用程式介面非常簡單,包括一個分為三個區域的視窗 - 發送、接收和帶有與網關互動日誌的命令列。 控制是透過一組特殊的命令進行的。
程式 專案程式碼已經寫好 使用 Python 編寫,可在 GPLv3 許可下使用。 包括分路器電路 (PCB)並且可在 GNU FDL 1.3 許可證下使用,分離器可以由可用零件組裝而成。
來源: linux.org.ru