ΠΡΡΠ½Π°ΡΠΈ ΡΠ° Π°Π½ΠΎΠ½ΠΈΠΌΠ½Π° ΠΌΡΠ΅ΠΆΠ° 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 (ECIES-X25519-AEAD-Ratchet ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π° ΠΊΡΠΈΠΏΡΠΈΡΠ°Π½Π΅ ΠΎΡ ΠΊΡΠ°ΠΉ Π΄ΠΎ ΠΊΡΠ°ΠΉ Π²ΠΌΠ΅ΡΡΠΎ ElGamal / AES + SessionTag), ΡΠ΅ Π½Π°ΠΌΠ°Π»ΠΈ ΡΠ΅ΠΆΠΈΠΉΠ½ΠΈΡΠ΅ ΡΠ°Π·Ρ ΠΎΠ΄ΠΈ Π² ΡΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ Ρ SSU ΠΏΡΠΎΡΠΎΠΊΠΎΠ» ΠΈ ΠΏΠΎΠ΄ΠΎΠ±ΡΡΠ²Π°Π½Π΅ Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ° Π½Π° ΠΌΠΎΠ±ΠΈΠ»Π½ΠΈ ΡΡΡΡΠΎΠΉΡΡΠ²Π°.
ΠΡΡΠ³ΠΈ ΠΏΡΠΎΠΌΠ΅Π½ΠΈ Π² I2P 2.0 Π²ΠΊΠ»ΡΡΠ²Π°Ρ Π²Π½Π΅Π΄ΡΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° i2ptunnel Π½Π° ΡΠ΄ΠΎΡΡΠΎΠ²Π΅ΡΡΠ²Π°Π½Π΅ Π½Π° ΠΏΡΠΎΠΊΡΠΈ Π²ΡΠ· ΠΎΡΠ½ΠΎΠ²Π° Π½Π° SHA-256 Ρ Π΅ΡΠΎΠ²Π΅ (RFC 7616). ΠΡΠΌ ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° SSU2 Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ΠΌΠΈΠ³ΡΠ°ΡΠΈΡ Π½Π° Π²ΡΡΠ·ΠΊΠ° ΠΈ Π½Π΅Π·Π°Π±Π°Π²Π½ΠΈ ΠΏΠΎΡΠ²ΡΡΠΆΠ΄Π΅Π½ΠΈΡ Π·Π° ΠΏΠΎΠ»ΡΡΠ°Π²Π°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ. ΠΠΎΠ΄ΠΎΠ±ΡΠ΅Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡ Π½Π° ΡΡΡΡΠ°ΡΠ° Π½Π° Π±Π΅Π·ΠΈΠ·Ρ ΠΎΠ΄Π½Π° ΡΠΈΡΡΠ°ΡΠΈΡ. ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΎΠΏΡΠΈΡ Π·Π° ΠΊΠΎΠΌΠΏΡΠ΅ΡΠΈΡΠ°Π½Π΅ Π½Π° ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΠΎΠ½Π½ΠΈΡΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ Π½Π° ΡΡΡΠ΅ΡΠ°.
i2pd 2.44 Π΄ΠΎΠ±Π°Π²ΠΈ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° SSL Π²ΡΡΠ·ΠΊΠΈ Π·Π° ΡΡΠ½Π΅Π»ΠΈ Ρ I2P ΡΡΡΠ²ΡΡ. ΠΡΠ²Π΅Π΄Π΅Π½Π° Π΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΠΏΡΠΎΠΊΡΠΈ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΈ SSU2 ΠΈ NTCP2 (ipv6) ΡΡΠ΅Π· SOCKS5. ΠΠΎΠ±Π°Π²Π΅Π½ΠΈ ΡΠ° MTU (ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»Π½Π° Π΅Π΄ΠΈΠ½ΠΈΡΠ° Π·Π° ΠΏΡΠ΅Π΄Π°Π²Π°Π½Π΅) Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π·Π° SSU2 ΠΏΡΠΎΡΠΎΠΊΠΎΠ» (ssu2.mtu4 ΠΈ ssu2.mtu6).
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: opennet.ru