インビジブル・インターネット・プロジェクト(I2P、インビジブル・インターネットのプロジェクト) は、個人情報転送技術のリーダーです。完全な分散化と独立性により、I2P ネットワークは構造的に複雑になりますが、その種類は独特です。この記事は、暗号化やネットワークに無知なプログラマーが I2P 上で動作するアプリケーションを作成できるという質問に専念しています。
I2P ルーターの最新の実装では、Simple Anonymous Messaging (SAM) API がサポートされています。これにより、外部アプリケーションは、いくつかの簡単なコマンドを使用して I2P 経由で通信できます。この記事の枠組みの中で、独自の実験を開始するために必要な最小限のことを検討します。
小さな回顧展
I2P 2000-. . (API) .
. , - , , , , «example.i2p», . , .
, « – »! – - : , IRC- . peer-to-peer , ?
I2P- I2CP (I2P Control Protocol), . , : I2CP . - , . , - !
I2P Java- BitTorrent Email, I2P- .
API- SAM BOB (Basic Open Bridge). I2P ( SHA1), Java- . , .
, , C++ (i2pd) BOB SAM. PurpleI2P , ( ) . , .
SAM – . netcat i2pd (Java- ). telnet , (\n\r
), SAM \n
.
i2pd SAM , , . , - (http://127.0.0.1:7070
), . SAM - , sam.enabled = true
. 127.0.0.1:7656
.
Hello hidden world
, SAM, (handshake). HELLO VERSION
. SAM. RESULT=OK
, . HELLO VERSION
: HELLO VERSION MIN=3.0 MAX=3.3
. , . , 3.0 .
(id), , , (destination). – , . TRANSIENT
, , ( base64), . , (, ). , SAM , .
DEST GENERATE
, (SIGNATURE_TYPE=7
). , , . I2P.
, (PUB) (PRIV). .
. SAM : STREAM ( TCP), DATAGRAM ( UDP) RAW ( UDP). TCP. , STREAM-.
SESSION CREATE STYLE=STREAM ID=HabraHabr DESTINATION=__
STYLE
( STREAM
), DESTINATION
– ( PRIV
), ID
– , ( : HabraHabr
).
. , , . . , , , .
. «HabraHabr»: , , . , , STREAM ACCEPT ID=HabraHabr
.
. , «Novosibirsk» , , TRANSIENT
DESTINATION
. .
«HabraHabr», , :
STREAM CONNECT ID=Novosibirsk DESTINATION=___HabraHabr
, , ( ). , , .
. , I2P-, , . .
, , , . P2P (--) - .
, . , , . , . , .
: , . , , .
, , . , SAM .
- ITSOFT.