ΠΠ΅Π° ΠΎΠ±ΡΠ°Π²Π΅Π½ΠΈ Π°Π½ΠΎΠ½ΠΈΠΌΠ½Π°ΡΠ° ΠΌΡΠ΅ΠΆΠ° I2P 2.0.0 ΠΈ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΡ C++ i2pd 2.44.0. I2P Π΅ ΠΏΠΎΠ²Π΅ΡΠ΅ΡΠ»ΠΎΡΠ½Π° Π°Π½ΠΎΠ½ΠΈΠΌΠ½Π° Π΄ΠΈΡΡΡΠΈΠ±ΡΠΈΡΠ°Π½Π° ΠΌΡΠ΅ΠΆΠ° ΠΊΠΎΡΠ° ΡΠ°Π±ΠΎΡΠΈ Π½Π° Π²ΡΠ²ΠΎΡ Π½Π° ΡΠ΅Π΄ΠΎΠ²Π½ΠΈΠΎΡ ΠΈΠ½ΡΠ΅ΡΠ½Π΅Ρ, Π°ΠΊΡΠΈΠ²Π½ΠΎ ΠΊΠΎΡΠΈΡΡΠΈ ΡΠΈΡΡΠΈΡΠ°ΡΠ΅ ΠΎΠ΄ ΠΊΡΠ°Ρ Π΄ΠΎ ΠΊΡΠ°Ρ, Π³Π°ΡΠ°Π½ΡΠΈΡΠ°ΡΡΠΈ Π°Π½ΠΎΠ½ΠΈΠΌΠ½ΠΎΡΡ ΠΈ ΠΈΠ·ΠΎΠ»Π°ΡΠΈΡΠ°. ΠΡΠ΅ΠΆΠ°ΡΠ° Π΅ ΠΈΠ·Π³ΡΠ°Π΄Π΅Π½Π° Π²ΠΎ ΡΠ΅ΠΆΠΈΠΌ P2P ΠΈ ΡΠ΅ ΡΠΎΡΠΌΠΈΡΠ° Π±Π»Π°Π³ΠΎΠ΄Π°ΡΠ΅Π½ΠΈΠ΅ Π½Π° ΡΠ΅ΡΡΡΡΠΈΡΠ΅ (ΠΏΡΠΎΠΏΡΡΠ΅Π½ ΠΎΠΏΡΠ΅Π³) ΠΎΠ±Π΅Π·Π±Π΅Π΄Π΅Π½ΠΈ ΠΎΠ΄ ΠΊΠΎΡΠΈΡΠ½ΠΈΡΠΈΡΠ΅ Π½Π° ΠΌΡΠ΅ΠΆΠ°ΡΠ°, ΡΡΠΎ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡΠ²Π° Π΄Π° ΡΠ΅ Π½Π°ΠΏΡΠ°Π²ΠΈ Π±Π΅Π· ΡΠΏΠΎΡΡΠ΅Π±Π° Π½Π° ΡΠ΅Π½ΡΡΠ°Π»Π½ΠΎ ΡΠΏΡΠ°Π²ΡΠ²Π°Π½ΠΈ ΡΠ΅ΡΠ²Π΅ΡΠΈ (ΠΊΠΎΠΌΡΠ½ΠΈΠΊΠ°ΡΠΈΠΈΡΠ΅ Π²ΠΎ ΠΌΡΠ΅ΠΆΠ°ΡΠ° ΡΠ΅ Π·Π°ΡΠ½ΠΎΠ²Π°Π°Ρ Π½Π° ΡΠΏΠΎΡΡΠ΅Π±Π° Π½Π° ΡΠΈΡΡΠΈΡΠ°Π½ΠΈ Π΅Π΄Π½ΠΎΠ½Π°ΡΠΎΡΠ½ΠΈ ΡΡΠ½Π΅Π»ΠΈ ΠΏΠΎΠΌΠ΅ΡΡ ΡΡΠ΅ΡΠ½ΠΈΠΊΠΎΡ ΠΈ Π²ΡΡΠ½ΠΈΡΠΈΡΠ΅).
ΠΠ° ΠΌΡΠ΅ΠΆΠ°ΡΠ° I2P, ΠΌΠΎΠΆΠ΅ΡΠ΅ Π°Π½ΠΎΠ½ΠΈΠΌΠ½ΠΎ Π΄Π° ΠΊΡΠ΅ΠΈΡΠ°ΡΠ΅ Π²Π΅Π±-Π»ΠΎΠΊΠ°ΡΠΈΠΈ ΠΈ Π±Π»ΠΎΠ³ΠΎΠ²ΠΈ, Π΄Π° ΠΈΡΠΏΡΠ°ΡΠ°ΡΠ΅ ΠΈΠ½ΡΡΠ°Π½Ρ ΠΏΠΎΡΠ°ΠΊΠΈ ΠΈ Π΅-ΠΏΠΎΡΡΠ°, Π΄Π° ΡΠ°Π·ΠΌΠ΅Π½ΡΠ²Π°ΡΠ΅ Π΄Π°ΡΠΎΡΠ΅ΠΊΠΈ ΠΈ Π΄Π° ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΈΡΠ°ΡΠ΅ P2P ΠΌΡΠ΅ΠΆΠΈ. ΠΠ° ΠΈΠ·Π³ΡΠ°Π΄Π±Π° ΠΈ ΠΊΠΎΡΠΈΡΡΠ΅ΡΠ΅ Π°Π½ΠΎΠ½ΠΈΠΌΠ½ΠΈ ΠΌΡΠ΅ΠΆΠΈ Π·Π° ΠΊΠ»ΠΈΠ΅Π½Ρ-ΡΠ΅ΡΠ²Π΅Ρ (Π²Π΅Π±-ΡΡΡΠ°Π½ΠΈΡΠΈ, ΡΠ°Π·Π³ΠΎΠ²ΠΎΡΠΈ) ΠΈ P2P (ΡΠ°Π·ΠΌΠ΅Π½Π° Π½Π° Π΄Π°ΡΠΎΡΠ΅ΠΊΠΈ, ΠΊΡΠΈΠΏΡΠΎΠ²Π°Π»ΡΡΠΈ) Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΠΈ, ΡΠ΅ ΠΊΠΎΡΠΈΡΡΠ°Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠΈ I2P. ΠΡΠ½ΠΎΠ²Π½ΠΈΠΎΡ ΠΊΠ»ΠΈΠ΅Π½Ρ I2P Π΅ Π½Π°ΠΏΠΈΡΠ°Π½ Π²ΠΎ Java ΠΈ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ°Π±ΠΎΡΠΈ Π½Π° ΡΠΈΡΠΎΠΊ ΠΎΠΏΡΠ΅Π³ Π½Π° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠΈ ΠΊΠ°ΠΊΠΎ ΡΡΠΎ ΡΠ΅ Windows, Linux, macOS, Solaris ΠΈΡΠ½. I2pd Π΅ Π½Π΅Π·Π°Π²ΠΈΡΠ½Π° ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠ° Π½Π° C++ Π½Π° ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΡ I2P ΠΈ ΡΠ΅ Π΄ΠΈΡΡΡΠΈΠ±ΡΠΈΡΠ° ΠΏΠΎΠ΄ ΠΈΠ·ΠΌΠ΅Π½Π΅ΡΠ° BSD Π»ΠΈΡΠ΅Π½ΡΠ°.
ΠΠΎ I2P 2.0 ΠΈ i2pd 2.44, Π½ΠΎΠ²ΠΈΠΎΡ ΡΡΠ°Π½ΡΠΏΠΎΡΡΠ΅Π½ ΠΏΡΠΎΡΠΎΠΊΠΎΠ» βSSU2β Π΅ ΡΡΠ°Π½Π΄Π°ΡΠ΄Π½ΠΎ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½ Π·Π° ΡΠΈΡΠ΅ ΠΊΠΎΡΠΈΡΠ½ΠΈΡΠΈ, Π±Π°Π·ΠΈΡΠ°Π½ Π½Π° UDP ΠΈ ΡΠΎ ΠΏΠΎΠ΄ΠΎΠ±ΡΠ΅Π½ΠΈ ΠΏΠ΅ΡΡΠΎΡΠΌΠ°Π½ΡΠΈ ΠΈ Π±Π΅Π·Π±Π΅Π΄Π½ΠΎΡΡ. ΠΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠ°ΡΠ° Π½Π° SSU2 ΡΠ΅ Π½ΠΈ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΠΈ ΡΠ΅Π»ΠΎΡΠ½ΠΎ Π΄Π° Π³ΠΎ Π°ΠΆΡΡΠΈΡΠ°ΠΌΠ΅ ΠΊΡΠΈΠΏΡΠΎΠ³ΡΠ°ΡΡΠΊΠΈΠΎΡ ΡΡΠ΅ΠΊ, Π΄Π° ΡΠ΅ ΠΎΡΠ»ΠΎΠ±ΠΎΠ΄ΠΈΠΌΠ΅ ΠΎΠ΄ ΠΌΠ½ΠΎΠ³Ρ Π±Π°Π²Π½ΠΈΠΎΡ Π°Π»Π³ΠΎΡΠΈΡΠ°ΠΌ ElGamal (Π·Π° ΡΠΈΡΡΠΈΡΠ°ΡΠ΅ ΠΎΠ΄ ΠΊΡΠ°Ρ Π΄ΠΎ ΠΊΡΠ°Ρ, Π½Π°ΠΌΠ΅ΡΡΠΎ ElGamal/AES+SessionTag, ΡΠ΅ ΠΊΠΎΡΠΈΡΡΠΈ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΡΠ°ΡΠ° ECIES-X25519-AEAD-Ratchet ), Π½Π°ΠΌΠ°Π»ΡΠ²Π°ΡΠ΅ Π½Π° ΡΡΠΎΡΠΎΡΠΈΡΠ΅ Π²ΠΎ ΡΠΏΠΎΡΠ΅Π΄Π±Π° ΡΠΎ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΎΡ SSU ΠΈ ΠΏΠΎΠ΄ΠΎΠ±ΡΡΠ²Π°ΡΠ΅ Π½Π° ΠΏΠ΅ΡΡΠΎΡΠΌΠ°Π½ΡΠΈΡΠ΅ Π½Π° ΠΌΠΎΠ±ΠΈΠ»Π½ΠΈΡΠ΅ ΡΡΠ΅Π΄ΠΈ.
ΠΡΡΠ³ΠΈ ΠΏΡΠΎΠΌΠ΅Π½ΠΈ Π²ΠΎ I2P 2.0 Π²ΠΊΠ»ΡΡΡΠ²Π°Π°Ρ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠ° Π½Π° ΠΏΡΠΎΠΊΡΠΈ Π°Π²ΡΠ΅Π½ΡΠΈΠΊΠ°ΡΠΈΡΠ° Π²ΠΎ i2ptunnel Π²ΡΠ· ΠΎΡΠ½ΠΎΠ²Π° Π½Π° Ρ Π°ΡΠΎΠ²ΠΈ SHA-256 (RFC 7616). ΠΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠ°ΡΠ° Π½Π° ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΎΡ SSU2 Π΄ΠΎΠ΄Π°Π΄Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΊΠ° Π·Π° ΠΌΠΈΠ³ΡΠ°ΡΠΈΡΠ° Π½Π° ΠΊΠΎΠ½Π΅ΠΊΡΠΈΡΠ°ΡΠ° ΠΈ ΠΈΠ½ΡΡΠ°Π½Ρ ΠΏΠΎΡΠ²ΡΠ΄Π° Π·Π° ΠΏΡΠΈΠ΅ΠΌ Π½Π° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ. ΠΠΎΠ΄ΠΎΠ±ΡΠ΅Π½ΠΈ ΠΏΠ΅ΡΡΠΎΡΠΌΠ°Π½ΡΠΈ Π½Π° Π΄Π΅ΡΠ΅ΠΊΡΠΎΡΠΎΡ Π·Π° ΡΠΎΡ-ΡΠΎΠΊΠ°ΠΊ. ΠΠΎΠ΄Π°Π΄Π΅Π½Π° Π΅ ΠΎΠΏΡΠΈΡΠ° Π·Π° ΠΊΠΎΠΌΠΏΡΠ΅ΡΠΈΡΠ°ΡΠ΅ Π½Π° Π΄Π½Π΅Π²Π½ΠΈΡΠΈΡΠ΅ Π½Π° ΡΡΡΠ΅ΡΠΎΡ.
i2pd 2.44 Π΄ΠΎΠ΄Π°Π΄Π΅ ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΠΊΠΎΡΠΈΡΡΠ΅ΡΠ΅ SSL ΠΊΠΎΠ½Π΅ΠΊΡΠΈΠΈ Π·Π° ΡΡΠ½Π΅Π»ΠΈ ΡΠΎ I2P ΡΠ΅ΡΠ²Π΅Ρ. Π‘ΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡΠ° Π·Π° ΠΏΡΠΎΠΊΡΠΈ Π½Π° ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΈΡΠ΅ SSU2 ΠΈ NTCP2 (ipv6) ΠΏΡΠ΅ΠΊΡ SOCKS5 Π΅ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠΈΡΠ°Π½Π°. ΠΠΎΠ΄Π°Π΄Π΅Π½ΠΈ ΡΠ΅ ΠΏΠΎΡΡΠ°Π²ΠΊΠΈΡΠ΅ MTU (Maximum Transmission Unit) Π·Π° ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΎΡ SSU2 (ssu2.mtu4 ΠΈ ssu2.mtu6).
ΠΠ·Π²ΠΎΡ: opennet.ru