
Torは、回線トラフィックの暗号化とセキュリティを強化するため、従来のtor1中継暗号化アルゴリズムを廃止し、Counter Galois Onion(CGO)と呼ばれる新しい設計に置き換えたと発表しました。
この決定の理由の一つは、データセキュリティを危険にさらし、Torユーザーの匿名性を損なう可能性のある、現代的なトラフィック傍受攻撃に対してネットワークをより強靭にすることです。
Torネットワークは世界規模のシステムで、数千のリレーから構成されます。データパケットは3つのリレー(入口、中継、出口)を通る回線(サーキット)を形成し、それぞれのホップで暗号化の層が追加されます(オニオンルーティング)。
Torネットワークの閲覧に特化した強化版FirefoxであるTor Browserのユーザーは、このオニオンルーティングにより、プライベートな通信、情報の匿名での共有・アクセス、検閲の回避、ISPレベルでの追跡の回避といった恩恵を受けています。
一般的にTorは、反体制派、活動家、内部告発者、ジャーナリスト、研究者、そしてプライバシー意識の高い人々、さらにはダークネット市場へのアクセスを求めるサイバー犯罪者によって利用されています。
Torチームが発表で説明しているように、Tor1は現在ほど暗号技術が発達していなかった時代に開発されたものであり、その後、標準は大きく進歩しました。
tor1設計の問題の一つは、ホップごとの認証なしにAES-CTR暗号化を使用しているため、中継暗号が可鍛性(改ざん可能)であることです。これは、攻撃者が自ら制御するリレー間のトラフィックを改変し、その結果として予測可能な変化を観測できることを意味します。これは、内部秘密チャネル型攻撃の一種である「タグ付け攻撃」に該当します。
もう一つの問題は、tor1が回線の存続期間を通じて同じAES鍵を再利用する「部分的な前方秘匿性」しか持たないことであり、鍵が盗まれた場合に復号を可能にしてしまう点です。
3つ目のセキュリティ上の懸念は、tor1がセル認証に4バイトのSHA-1ダイジェストを使用していることであり、その結果、攻撃者は検知されることなくセルを偽造できる確率が約40億分の1存在することです。
Torプロジェクトは、これらのうち最初の攻撃がより深刻であり、最後の2つの例は「完全性のため」に挙げられたものだと述べています。
CGOの導入
CGOは上記の問題に対処します。これはUIV+と呼ばれる堅牢な疑似乱数置換(RPRP)構成の上に構築されており、暗号研究者のJean Paul Degabriele、Alessandro Melloni、Jean-Pierre Münch、Martijn Stamによって設計されました。
Torによると、このシステムは「タグ付け耐性、即時の前方秘匿性、より長い認証タグ、限定的な帯域幅オーバーヘッド、比較的効率的な動作、そして現代的な暗号技術」といった特定のセキュリティ要件を満たすことが検証されています。
具体的に、CGOはTor1と比べて以下の点を改善しています。
- タグ付け攻撃への防御: CGOはワイドブロック暗号とタグチェイニングを使用しており、いかなる改変もセル全体および将来のセルを復元不能にするため、タグ付け攻撃を阻止します。
- 前方秘匿性: CGOはセルごとに鍵を更新するため、現在の鍵が漏洩しても過去のトラフィックは復号できません。
- より強力な認証: SHA-1は中継暗号から完全に排除され、CGOは16バイトの認証子を使用します。Torチームはこれについて「分別のある人たちが使うものだ」とコメントしています。
- 回線の完全性: CGOはセル間でT’(暗号化されたタグ)とN(初期ナンス)を連鎖させるため、各セルはそれ以前のすべてのセルに依存し、改ざん耐性を確保します。
総じて、CGOは大きな帯域幅ペナルティを招くことなく、Tor1の多くの問題に対処する、現代的で研究に基づいた暗号化および認証システムです。
プロジェクトのメンテナーによると、C言語版Tor実装およびRustベースのクライアントArtiへのCGOの追加作業が進行中であり、この機能は実験的と位置付けられています。今後の作業には、オニオンサービスでのネゴシエーションの追加やパフォーマンス最適化などが含まれます。
Torブラウザのユーザーは、CGOの恩恵を受けるために何かを行う必要はありません。新システムが完全に展開可能になれば、自動的に切り替わります。ただし、これがデフォルトオプションとなる時期については、まだ明らかにされていません。