本文へ移動

I2P(Invisible Internet Project):概要、アーキテクチャ、用途と違い

I2Pは、プライベートな通信のためにボランティアが構築・運営する仮名性オーバーレイネットワークです。レイヤードルーティング、内部サービス(eepsite)、アプリケーションプロキシにより、匿名のメッセージング、ホスティング、ファイル転送を支えます。

概要

I2Pは、当初「Invisible Internet Project」と呼ばれていた、アプリケーションに仮名性を備えた通信を提供するために設計された、分散型のボランティア運営オーバーレイネットワークである。複数のフリーおよびオープンソースライセンスの下で開発され、コミュニティによって文書化されている。ライセンスやプロジェクトのリソースについては、プロジェクトのページ(ライセンスとダウンロードソースリポジトリ)で確認できる。ネットワーク自体は、一般的な公開インターネットへの出口アクセスを提供するのではなく、I2Pネットワーク内でのみ到達可能なサービスを実現することに重点を置いている(ネットワークの概念)。

画像ギャラリー

4 画像

仕組み:アーキテクチャと主要概念

I2Pは公開インターネットの上に構築されるオーバーレイネットワークである。参加ノード(ルーター)は暗号化されたトンネルを形成し、相互にトラフィックを転送する。主な概念には、以下がある。

  • 単方向トンネル:受信トンネルと送信トンネルは別々に作成される。このため、メッセージの送信経路と返信の受信経路が分離され、相関分析に対する耐性が高められる。
  • ガーリックルーティング:メッセージをまとめ、層状の鍵で暗号化する仕組みである。複数のメッセージが同じパケットを共有できるため、関連付けられる可能性を低減する。
  • ルーターコンソールとプロキシ:ローカルのルーターアプリケーションがトンネルとピアを管理し、SOCKS/HTTPプロキシおよびAPIを公開する。これにより、利用者のアプリケーションはルーティング層を直接理解しなくても、トラフィックをI2Pへ送ることができる。
  • 内部の命名とサービス:ネットワーク内でホストされるウェブサイトは、しばしばeepsiteと呼ばれる。.i2p名前空間を使用し、I2P対応の名前解決と内部ディレクトリを通じて到達する。

沿革と開発

I2Pは、オンライン匿名性の向上を目指す研究およびボランティア活動の一部として、2000年代初頭に登場した。単一の企業ではなく分散した開発者コミュニティによって維持されており、トランスポートプロトコル、ルーター情報を配布するためのfloodfillディレクトリシステム、アプリケーション統合など、段階的な改良を通じて発展してきた。このプロジェクトは実践的なエンジニアリング手法を重視し、文書はコミュニティ主導で整備されている。

用途と例

I2P向けに対応されることの多いアプリケーションには、匿名ウェブホスティング(eepsite)、メッセージングとチャット、ブログ、ファイル共有、電子メールに似たサービスがある。代表的な利用形態は次のとおりである。

  1. プロキシまたはプラグインを通じてローカルのI2Pルーターに接続する、I2P対応アプリケーションを実行する。
  2. ほかのI2P利用者のみを対象とする内部サイトまたはサービスをホストする。
  3. 外部の観測者にIPアドレスを公開しないため、分散型サービス(例:フォーラム、I2Pをサポートするピアツーピアクライアント)を利用する。

相違点と注目すべき事実

I2PはTorと比較されることが多いが、両者には重要な違いがある。I2Pはネットワーク内のサービスとピアツーピアトラフィック向けに最適化され、仮名アドレッシングと単方向トンネルを用いる。一方、Torは公開インターネットへの低遅延アクセスを重視し、出口リレーを使用する。両システムは異なる脅威モデルを実現するため、性能と複雑性の間で異なるトレードオフを行っている。I2Pの設計は、クリアネットへの短期的な回線よりも、永続的で耐障害性のある内部サービスを重視する傾向がある。

ボランティアにより運営される分散型ネットワークであるため、性能や到達可能性は変動し得る。利用者と管理者は、運用上のトレードオフを理解し、帯域幅およびルーターのオプションを適切に設定し、サービスを導入する際にはコミュニティの文書を参照すべきである。公式のダウンロード、文書、開発者向けリソースについては、上記のプロジェクトページ(プロジェクトサイトソース、技術概要)を参照のこと。

関連項目

著者

AlegsaOnline.com I2P(Invisible Internet Project):概要、アーキテクチャ、用途と違い

URL: https://ja.alegsaonline.com/art/46318

共有

出典
  • geti2p.net : "I2P Project Members"
  • geti2p.net : "0.9.24 Release"
  • geti2p.net : IRC Meeting #59