TFC プロジェクトは、3 台のコンピュータで構成されるメッセンジャー用の USB スプリッターを開発しました。


TFC プロジェクトは、3 台のコンピュータで構成されるメッセンジャー用の USB スプリッターを開発しました。

TFC (Tinfoil Chat) プロジェクトは、3 台のコンピュータを接続し、妄想から保護されたメッセージング システムを作成するための 3 つの USB ポートを備えたハードウェア デバイスを提案しました。

最初のコンピューターは、ネットワークに接続して Tor の隠しサービスを起動するためのゲートウェイとして機能し、すでに暗号化されたデータを操作します。

XNUMX 番目のコンピュータには復号キーがあり、受信したメッセージを復号して表示するためにのみ使用されます。

XNUMX 番目のコンピューターには暗号化キーがあり、新しいメッセージを暗号化して送信するためにのみ使用されます。

USB スプリッタは、「データ ダイオード」原理に基づいてフォトカプラで動作し、指定された方向にのみデータを物理的に渡します。つまり、XNUMX 番目のコンピュータにデータを送信し、XNUMX 番目のコンピュータからデータを受信します。

最初のコンピューターを侵害すると、暗号化キーやデータ自体にアクセスできなくなり、残りのデバイスで攻撃を続けることもできなくなります。

XNUMX 台目のコンピュータが侵害されると、攻撃者はメッセージとキーを読み取りますが、データは外部から受信されるだけで外部に送信されないため、それらを外部に送信することはできません。

XNUMX 台目のコンピュータが侵害された場合、攻撃者は加入者になりすまして、加入者に代わってメッセージを書き込むことができますが、外部から送信されるデータを読み取ることはできません (データは XNUMX 台目のコンピュータに送信され、そこで復号化されるため)。

暗号化は 256 ビット XChaCha20-Poly1305 アルゴリズムに基づいており、低速の Argon2id ハッシュ関数を使用してキーをパスワードで保護します。 キー交換には、X448 (Curve448 に基づく Diffie-Hellman プロトコル) または PSK キー (事前共有) が使用されます。 各メッセージは、Blake2b ハッシュに基づく完全転送秘密 (PFS、Perfect Forward Secrecy) モードで送信されます。このモードでは、長期キーの XNUMX つが侵害されても、以前に傍受されたセッションの復号化は許可されません。

アプリケーション インターフェイスは非常にシンプルで、送信、受信、ゲートウェイとの対話のログを含むコマンド ラインの XNUMX つの領域に分割されたウィンドウが含まれています。 制御は特別なコマンドのセットを通じて実行されます。

プログラム プロジェクトコードが書かれている Python で記述されており、GPLv3 ライセンスの下で利用可能です。 スプリッター回路が含まれています (PCB) であり、GNU FDL 1.3 ライセンスの下で利用可能であるため、スプリッターは入手可能な部品から組み立てることができます。

出所: linux.org.ru

コメントを追加します