内容を守るのは、まだ簡単なほう。
暗号化は、何を話したかを隠します。いつ、どれだけ、誰に話したかは隠しません。jimichi はこの二つ目の問いを中心に設計され、タイミングと通信量しか見えない観測者がなお何を知りうるかを計測します。
3つのリレー
すべてのメッセージは入れ子の暗号化を施され、3つのリレーを通ります。各リレーは1層だけを外し、隣のリレーしか知りません。
ひとつのサイズ
回線上のセルはすべて同じサイズ、同じヘッダーです。本物のメッセージ、カバートラフィック、制御セルは見分けがつきません。
メモリだけ
セッション鍵は一時的で、ロックされたメモリに置かれ、使用後にゼロで消去されます。リレーはディスクに何も書きません。
計測する
リポジトリには攻撃も含まれます。タイミングと通信量がまだ何を漏らすかを採点するトラフィック相関の観測者です。
攻撃は、自分たちで作った。
音声あり静かであるように。
鍵はロック解除後にだけ読み込まれ、ロックすると消去されます。連絡先は安全番号を照合して確認します。
ロック中
鍵はロック解除後にだけメモリに読み込まれ、ロックすると消去されます。
昨日
無事に帰れた?
うん、ありがとう。終電はがらがらだった。
よかった。おやすみ
今日
お昼の約束、まだ大丈夫?
うん、1時ごろに。
配達済み
図書館の近くのお店?
新しいメニューが出たって
いいね。入口で会おう。
送信済み
メッセージ
安全番号
あなた
ミラ
会ったときや通話で、この番号を照合してください。一致すれば、間に誰もいません。
372018841905532716042995744018602739118513640577298031622491
カバートラフィックだけでは守れない。
受動的な観測者は、すべての入口フローとすべての出口フローを相関させます。当て推量は auc 0.5 です。
- 1.000
- カバートラフィックを上乗せした場合の攻撃 auc。リレー間の帯域が x2.99 でも、すべてのフローが結び付けられます。
- 0.948
- クライアントだけで一定レート 70 ms にした場合の攻撃 auc。クライアントの位相はチェーンを通り抜けます。
- 0.485
- リレーが自分の時計で 66.5 ms ごとに送る場合の攻撃 auc。代償は往復遅延の中央値 182 ms です。