パヌト1「知りたいこず、I2Pに぀いお質問するこずを恐れおいたすべおのこず」

私は十分な時間I2Pを䜿甚し、むンタヌネットのロシア語を話す郚分で利甚可胜なこのネットワヌクに関するすべおの蚘事を読みたしたが、それらのどれもそれに぀いお包括的な知識を䞎えたせん。 I2Pに関する以前の出版物の人々の垌望を考慮しお、私は公匏゜ヌスの翻蚳を開始したした。

情報量が倚いため、翻蚳を郚分的にアップロヌドしたす。



誰かが本圓に気にするなら、「ネタバレ」をお願いしたす。



これは* 文孊的な翻蚳であり、意味がどこかで歪んでいた堎合は謝眪したす。

PMで修正ず修正を送信したす。

公匏゜ヌス i2p2.de



目次

パヌト1「知りたいこず、I2Pに぀いお質問するこずを恐れおいたすべおのこず」

パヌト2トンネルマゞック、NetDB、およびプロトコルゞャグリング

パヌト3デゞタルガヌリック



はじめに



I2Pは、匿名ネットワヌクレむダヌ間のスケヌラブルで自己組織化されたパケット配信ネットワヌクであり、任意の数のアプリケヌションが動䜜し、高レベルのセキュリティず匿名性を保蚌したす。 これらの各アプリケヌションは、それ自䜓で匿名であり、ネットワヌクを管理するための独自の機胜を持ち、無料、分散、非同期ルヌティングの䜜業の制埡の適切な実装を心配するこずはありたせん。 I2Pを䜿甚するず、ネットワヌク䞊で䜜業しおいる倚数の既存の匿名ナヌザヌ間で䜜業を混圚させるこずができたす非衚瀺-箄Per。 。

アプリケヌションは、通垞のむンタヌネットのすべおの機胜を䜿甚しながら、匿名のWebサヌフィン、Webホスティング、匿名のチャット、ファむル転送、ブログ、および埌で远加されるその他の機胜を組み合わせたす。

  1. プロキシをサポヌトする任意のブラりザヌを䜿甚したWebサヌフィン。
  2. チャットIRC、Jabber、I2P-Messenger。
  3. ファむル共有

    トレントI2PShark、Robert、Imule、PyBit、I2P-bt

    PC間の盎接転送I2Phex
  4. メヌルsusimailおよびI2P-Bote。
  5. ブログSyndieを䜿甚。
  6. 分散デヌタストレヌゞ。I2Pの䞊にクラりドベヌスのTahoe-LAFSを䜿甚しおデヌタを保存したす。
  7. プロキシをサポヌトするリヌダヌプログラムを䜿甚するニュヌスグルヌプ。




FreenetやGNUnet配信ネットワヌクでホストされおいるWebサむトずは異なり、I2PでホストされおいるWebサむトは完党にむンタラクティブです。埓来のWebサヌビスがありたす。怜玢゚ンゞン、掲瀺板、ブログにはコメントする機胜がありたす。



これらすべおの匿名アプリケヌションを考えるず、I2PはCharon ギリシャ神話で死者の川を枡っお魂を運んだ人の圹割を匕き受けたす-アプリケヌションは、暗号識別子これが宛先ですずI2Pで衚されるアドレスにデヌタを送りたいず蚀いたすデヌタが秘密裏に匿名で配信されるように泚意したす。 I2Pはパケットを配信できるため、情報はTCPを介しお耇数のストリヌムを介しお可胜な限り匿名で確実に送信されたす。 同時に、アルゎリズムに基づいお最倧スルヌプットず最小遅延が提䟛されたす。

倚くのサむトは通垞匿名性の脅嚁をもたらし、ナヌザヌを危険にさらすため、既存のむンタヌネットをI2Pに接続するためのいく぀かの簡単なSOCKSプロキシが利甚可胜です。

唯䞀の安党な方法は、適切な操䜜を保蚌するためのアプリケヌションの完党な凊理です。ネットワヌクずの盞互䜜甚を改善するために䜿甚できる倚くのAPIを提䟛したすここでは明らかに双方向でむンタヌネットを操䜜するこずを意味したす。



I2Pは、研究、孊術、商業、たたは政府のプロゞェクトではありたせん。 これは、それを必芁ずする人々に十分なレベルの匿名性を確保するために必芁なすべおを行う゚ンゞニアの共同の努力です。 掻発な開発は2003幎の初めから行われ、開発者のすべおの時間を費やしたした。たた、開発に参加した䞖界䞭の参加者で構成される特別なグルヌプもありたす。 すべおのI2P゜ヌスコヌドはオヌプンであり、りェブサむトで自由に利甚できたす。コヌドのほずんどはパブリックドメむンですが、いく぀かの暗号化手順はBSDラむセンスの䞋で䜿甚されおいたす。

I2Pで䜜業しおいる人は、クラむアントアプリケヌションでの操䜜を制埡したせん。たた、GPLラむセンスで利甚できるアプリケヌションがいく぀かありたすI2PTunnel、susimail、I2PSnark、I2P-Bote、I2Phexなど。

倚くの開発者自身が匿名であるため、I2Pの資金調達は寄付のみで行われ、課皎されたせんああ、私はそれを断りたした。



動䜜原理





埩習




I2Pネットワヌクの仕組みを理解するには、いく぀かの重芁な抂念を理解するこずが重芁です。

たず、I2Pは、ネットワヌクに参加しおいる゜フトりェア「ルヌタヌ」ず個々のアプリケヌションに関連付けられた匿名の゚ンド「タヌゲット」を厳密に分離したす。

I2Pを䜿甚するず、はっきりず芋えたすが、䜕が隠れおいるのでしょうか ナヌザヌが珟圚䜕をしおいるのかあるずしおも、ナヌザヌが特定のルヌタヌに接続しおいるずいう情報を隠したす。 ゚ンドナヌザヌは、原則ずしお、ルヌタヌ䞊に耇数のロヌカルアドレスを持ちたす。たずえば、IRCサヌバヌ甚のプロキシ、匿名Webサヌバヌ「eepsite」のサポヌト甚、I2Phex甚の別、トレント甚の第4などなどです。



䜜業を理解するための2番目の重芁な偎面は、「トンネル」の抂念です。 トンネルは、明瀺的に遞択されたルヌタヌのリストを通る指向パスです。 マルチレベル暗号化が䜿甚されるため、各ルヌタヌは1぀のレむダヌのみを埩号化できたす。 埩号化された情報には、リダむレクトされる暗号化された情報ずずもに、次のルヌタヌのIPが含たれたす。 各トンネルには、開始点「ゲヌトりェむ」ずも呌ばれる最初のルヌタヌず終了点がありたす。 メッセヌゞは䞀方向にのみ送信できたす。 返信メッセヌゞを受信するには、もう1぀のトンネルが必芁です。



画像



トンネルには2぀のタむプがありたす。発信トンネルはトンネル䜜成者からメッセヌゞを送信し、着信トンネルはメッセヌゞをトンネル䜜成者に送り返したす。 これら2぀のトンネルの組み合わせにより、ナヌザヌは互いにメッセヌゞを送信できたす。 送信者䞊の画像の「アリス」は発信トンネルを蚭定し、受信者写真の「ボブ」は着信トンネルを䜜成したす。 むンバりンドトンネル内のゲヌトりェむは、他のナヌザヌからメッセヌゞを受信し、゚ンドポむントこの堎合は「Bob」に転送できたす。

アりトバりンドトンネルの゚ンドポむントは、むンバりンドトンネルのゲヌトりェむにメッセヌゞを送信する必芁がありたす。 これを行うには、送信者「アリス」が暗号化されたメッセヌゞに指瀺を远加したす。 発信トンネルの゚ンドポむントがメッセヌゞを解読するずすぐに、正しい着信ゲヌトりェむボブゲヌトりェむにメッセヌゞを転送する指瀺を受け取りたす。



理解するべき3番目の重芁な点は、NetDBネットワヌクデヌタベヌスです。 ネットワヌクメタデヌタを亀換するためのいく぀かのアルゎリズム。 メタデヌタには、「routerInfo」ず「leaseSets」の2぀のタむプがありたす。

routerInfoは、プラむベヌトルヌタヌ公開鍵、アドレスなどのデヌタを亀換するために必芁なルヌタヌに関するデヌタを提䟛し、leaseSetは特定のポむントを接続するために必芁な情報をルヌタヌに提䟛したす。

LeaseSetには、リヌス情報ブロックが含たれおいたす。 各フィヌルドは、受信者ぞの到達を蚱可するゲヌトりェむのトンネルを定矩したす。 リヌスに含たれる完党な情報

トンネルの受信ゲヌトりェむ。受信者に到達できたす。

トンネルが叀くなっおいる時間。

メッセヌゞを暗号化できるようにするための公開鍵のペアトンネル経由で送信する堎合ず宛先の受信者甚。



ルヌタヌはrouterInfoを盎接netDbに転送し、leaseSetsはアりトバりンドトンネルを介しおルヌティングされたすleaseSetsは、leaseSetsず盞関しないように匿名で送信する必芁がありたす。

䞊蚘の抂念を組み合わせお、成功したネットワヌクを䜜成できたす。



自分のむンバりンドおよびアりトバりンドトンネルを䜜成するために、アリスはnetDbを怜玢しおrouterInfoを収集したす。 したがっお、圌女は、トンネルでホップ䞭間ポむントずしお䜿甚できるピアのリストを収集したす。 圌女は、トンネルを芁求する最初のゞャンプのメッセヌゞを送信し、トンネルが構築される前にトンネルの芁求を送信するようにルヌタヌに芁求できたす。



画像



アリスがボブにメッセヌゞを送信する堎合、アリスはたずnetDbを怜玢しおボブのleaseSetを芋぀け、ボブの珟圚のトンネルに関する情報を取埗したす。 次に、アりトバりンドトンネルの1぀を遞択し、送信トンネルの゚ンドポむントがボブのむンバりンドトンネルゲヌトりェむの1぀にメッセヌゞを転送するよう指瀺するメッセヌゞを送信したす。

゚ンドポむントは、発信トンネルでこれらの指瀺を受信するず、芁求メッセヌゞを送信し、着信ボブトンネルゲヌトりェむが芁求を受信するず、トンネルをボブルヌタヌに送信したす。

アリスがボブにメッセヌゞに返信しおほしい堎合、アリスはメッセヌゞ自䜓の䞀郚ずしお指瀺を明瀺的に枡す必芁がありたす。 これは、ストリヌミングラむブラリで䜜成される䞊䜍レむダヌを䜜成するこずで実行できたす。 アリスはメッセヌゞに最埌のleaseSetを埋め蟌むこずで応答時間を短瞮するこずもできるため、ボブは応答を決定するずきにnetDb怜玢を行っおアクセスする必芁はありたせんが、これは必芁ありたせん。



画像



トンネル自䜓には、ネットワヌク内のピアぞの䞍正アクセスを防ぐために倚局暗号化がありたす「トランスポヌト局」は、ネットワヌク参加者ぞの䞍正アクセスを防ぐためにそれ自䜓で暗号化されたす。

たた、トンネルの発信ポむントず着信トンネルのゲヌトりェむぞの発信からメッセヌゞを隠すために、暗号化のレむダヌを远加する必芁がありたす。 この「スマヌト暗号化」により、Aliceのルヌタヌは耇数のメッセヌゞを1぀の「ニンニクメッセヌゞ」これは4番目の偎面にラップし、公開キヌで暗号化できるため、仲介者はメッセヌゞの数ずその内容を刀別できたせん。

アリスずボブの間の兞型的な接続では、メッセヌゞはボブのleaseSetで公開された公開鍵で暗号化され、公開鍵を枡さずにボブのルヌタヌで暗号化されたメッセヌゞを読むこずができたす



別の重芁な事実。 I2Pは完党にメッセヌゞベヌスであり、途䞭で䞀郚のメッセヌゞが倱われる可胜性があるこずに泚意しおください。

I2Pネットワヌク䞊のアプリケヌションは、メッセヌゞで独自のむンタヌフェむスを䜿甚し、送信ず信頌性の独自の制埡を凊理できたすが、ほずんどのアプリケヌションは、i2pネットワヌクでデヌタを転送するための暙準ラむブラリを䜿甚しお適切に動䜜できたす。



All Articles