ΠΠ±Π·ΠΎΡ
I2P ΠΏΠΎΡΡΠ°Π²Π»ΡΠ΅ΡΡΡ Ρ ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΎΠΉ ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΡ ΠΈ Π±Π°Π·ΠΎΠ²ΠΎΠΉ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠ΅ΠΉ, ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π½ΠΎΠΉ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΌ ΡΠΎΠΏΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΈΠΌΠ΅Π½ ΠΈ Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ, Π° ΡΠ°ΠΊΠΆΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ address book . I2P ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ Base32 hostnames , ΠΏΠΎΡ ΠΎΠΆΠΈΠ΅ Π½Π° .onion Π°Π΄ΡΠ΅ΡΠ° Tor.
ΠΠ΄ΡΠ΅ΡΠ½Π°Ρ ΠΊΠ½ΠΈΠ³Π° - ΡΡΠΎ ΠΎΡΠ½ΠΎΠ²Π°Π½Π½Π°Ρ Π½Π° ΡΠ΅ΡΠΈ Π΄ΠΎΠ²Π΅ΡΠΈΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½Π°Ρ, ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½Π°Ρ ΠΈ ΡΠ΄ΠΎΠ±ΠΎΡΠΈΡΠ°Π΅ΠΌΠ°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΡ, ΠΆΠ΅ΡΡΠ²ΡΡΡΠ°Ρ Π»ΠΈΡΡ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΠΎΠΉ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΠΎΡΡΠΈ Π²ΡΠ΅Ρ ΡΠ΄ΠΎΠ±ΠΎΡΠΈΡΠ°Π΅ΠΌΡΡ ΠΈΠΌΠ΅Π½, ΡΡΠ΅Π±ΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΉ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΠΎΡΡΠΈ. Π₯ΠΎΡΡ Π²ΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ Π² I2P ΠΊΡΠΈΠΏΡΠΎΠ³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ Π°Π΄ΡΠ΅ΡΡΡΡΡΡ ΠΏΠΎ ΠΈΡ destination (ΠΏΡΠ½ΠΊΡΡ Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΡ), ΡΠ°Π·Π½ΡΠ΅ Π»ΡΠ΄ΠΈ ΠΌΠΎΠ³ΡΡ ΠΈΠΌΠ΅ΡΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠ΅ Π·Π°ΠΏΠΈΡΠΈ Π² Π°Π΄ΡΠ΅ΡΠ½ΠΎΠΉ ΠΊΠ½ΠΈΠ³Π΅ Π΄Π»Ρ “Alice”, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΡΡΠ»Π°ΡΡΡΡ Π½Π° ΡΠ°Π·Π½ΡΠ΅ destination. ΠΡΠ΄ΠΈ ΠΏΠΎ-ΠΏΡΠ΅ΠΆΠ½Π΅ΠΌΡ ΠΌΠΎΠ³ΡΡ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡ Π½ΠΎΠ²ΡΠ΅ ΠΈΠΌΠ΅Π½Π°, ΠΈΠΌΠΏΠΎΡΡΠΈΡΡΡ ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½Π½ΡΠ΅ Π°Π΄ΡΠ΅ΡΠ½ΡΠ΅ ΠΊΠ½ΠΈΠ³ΠΈ ΡΠ·Π»ΠΎΠ², ΡΠΊΠ°Π·Π°Π½Π½ΡΡ Π² ΠΈΡ ΡΠ΅ΡΠΈ Π΄ΠΎΠ²Π΅ΡΠΈΡ, Π΄ΠΎΠ±Π°Π²Π»ΡΡ Π·Π°ΠΏΠΈΡΠΈ, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½Π½ΡΠ΅ ΡΡΠ΅ΡΡΠ΅ΠΉ ΡΡΠΎΡΠΎΠ½ΠΎΠΉ, ΠΈΠ»ΠΈ (Π΅ΡΠ»ΠΈ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ Π»ΡΠ΄ΠΈ ΠΎΡΠ³Π°Π½ΠΈΠ·ΡΡΡ ΡΠ΅ΡΠΈΡ ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½Π½ΡΡ Π°Π΄ΡΠ΅ΡΠ½ΡΡ ΠΊΠ½ΠΈΠ³, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΠΈΡΡΠ΅ΠΌΡ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΠΈ ΠΏΠΎ ΠΏΡΠΈΠ½ΡΠΈΠΏΡ “ΠΏΠ΅ΡΠ²ΡΠΉ ΠΏΡΠΈΡΠ΅Π» - ΠΏΠ΅ΡΠ²ΡΠΉ ΠΎΠ±ΡΠ»ΡΠΆΠ΅Π½”) Π»ΡΠ΄ΠΈ ΠΌΠΎΠ³ΡΡ Π²ΡΠ±ΡΠ°ΡΡ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡ ΡΡΠΈ Π°Π΄ΡΠ΅ΡΠ½ΡΠ΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΊΠ°ΠΊ ΡΠ΅ΡΠ²Π΅ΡΡ ΠΈΠΌΠ΅Π½, ΡΠΌΡΠ»ΠΈΡΡΡ ΡΡΠ°Π΄ΠΈΡΠΈΠΎΠ½Π½ΡΠΉ DNS.
ΠΠ ΠΠΠΠ§ΠΠΠΠ: ΠΠ±ΠΎΡΠ½ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΡ I2P, ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π½ΡΠ΅ Π²ΠΎΠ·ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΏΡΠΎΡΠΈΠ² Π½Π΅Ρ ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΠ΅ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Ρ ΡΠΌ. Π½Π° ΡΡΡΠ°Π½ΠΈΡΠ΅ ΠΎΠ±ΡΡΠΆΠ΄Π΅Π½ΠΈΡ ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΡ .
ΠΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ ΡΠΈΡΡΠ΅ΠΌΡ ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΡ
Π I2P Π½Π΅Ρ ΡΠ΅Π½ΡΡΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΎΡΠ³Π°Π½Π° ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΡ. ΠΡΠ΅ ΠΈΠΌΠ΅Π½Π° Ρ ΠΎΡΡΠΎΠ² ΡΠ²Π»ΡΡΡΡΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΌΠΈ.
Π‘ΠΈΡΡΠ΅ΠΌΠ° ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΡ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΠΏΡΠΎΡΡΠ°, ΠΈ Π±ΠΎΠ»ΡΡΠ°Ρ Π΅Ρ ΡΠ°ΡΡΡ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡ , Π²Π½Π΅ΡΠ½ΠΈΡ ΠΏΠΎ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΡ ΠΊ router, Π½ΠΎ ΠΏΠΎΡΡΠ°Π²Π»ΡΠ΅ΠΌΡΡ Π² ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡΠ΅ Ρ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²ΠΎΠΌ I2P. ΠΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ Π²ΠΊΠ»ΡΡΠ°ΡΡ:
- ΠΠΎΠΊΠ°Π»ΡΠ½Π°Ρ ΡΠ»ΡΠΆΠ±Π° ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΡ , ΠΊΠΎΡΠΎΡΠ°Ρ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΠΏΠΎΠΈΡΠΊ ΠΈ ΡΠ°ΠΊΠΆΠ΅ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅Ρ Base32 ΠΈΠΌΠ΅Π½Π° Ρ ΠΎΡΡΠΎΠ² .
- HTTP proxy , ΠΊΠΎΡΠΎΡΡΠΉ Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°Π΅Ρ Ρ router ΠΏΠΎΠΈΡΠΊ ΠΈ Π½Π°ΠΏΡΠ°Π²Π»ΡΠ΅Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΊ ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΌ jump ΡΠ»ΡΠΆΠ±Π°ΠΌ Π΄Π»Ρ ΠΏΠΎΠΌΠΎΡΠΈ Ρ Π½Π΅ΡΠ΄Π°ΡΠ½ΡΠΌΠΈ ΠΏΠΎΠΈΡΠΊΠ°ΠΌΠΈ.
- HTTP ΡΠΎΡΠΌΡ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ Ρ ΠΎΡΡΠΎΠ² , ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ Ρ ΠΎΡΡΡ Π² ΡΠ²ΠΎΠΉ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ hosts.txt
- HTTP jump ΡΠ»ΡΠΆΠ±Ρ , ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠΉ ΠΏΠΎΠΈΡΠΊ ΠΈ ΠΏΠ΅ΡΠ΅Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅.
- ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π΄ΡΠ΅ΡΠ½Π°Ρ ΠΊΠ½ΠΈΠ³Π° , ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ Π²Π½Π΅ΡΠ½ΠΈΠ΅ ΡΠΏΠΈΡΠΊΠΈ Ρ ΠΎΡΡΠΎΠ², ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΠ΅ ΡΠ΅ΡΠ΅Π· HTTP, Ρ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΌ ΡΠΏΠΈΡΠΊΠΎΠΌ.
- ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ SusiDNS , ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ ΠΏΡΠΎΡΡΠΎΠΉ Π²Π΅Π±-ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Π΄Π»Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π°Π΄ΡΠ΅ΡΠ½ΠΎΠΉ ΠΊΠ½ΠΈΠ³ΠΈ ΠΈ ΠΏΡΠΎΡΠΌΠΎΡΡΠ° Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ ΡΠΏΠΈΡΠΊΠΎΠ² Ρ ΠΎΡΡΠΎΠ².
Π‘Π»ΡΠΆΠ±Ρ ΠΈΠΌΠ΅Π½
ΠΡΠ΅ Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π² I2P ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡ ΡΠΎΠ±ΠΎΠΉ ΠΊΠ»ΡΡΠΈ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠΌ 516 Π±Π°ΠΉΡ (ΠΈΠ»ΠΈ Π±ΠΎΠ»ΡΡΠ΅). (Π’ΠΎΡΠ½Π΅Π΅, ΡΡΠΎ 256-Π±Π°ΠΉΡΠΎΠ²ΡΠΉ ΠΏΡΠ±Π»ΠΈΡΠ½ΡΠΉ ΠΊΠ»ΡΡ ΠΏΠ»ΡΡ 128-Π±Π°ΠΉΡΠΎΠ²ΡΠΉ ΠΊΠ»ΡΡ ΠΏΠΎΠ΄ΠΏΠΈΡΠΈ ΠΏΠ»ΡΡ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°Ρ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠΌ 3 ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ Π±Π°ΠΉΡ, ΡΡΠΎ Π² ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠΈ Base64 ΡΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ 516 ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ Π±Π°ΠΉΡ. Π‘Π΅ΠΉΡΠ°Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π½Π΅Π½ΡΠ»Π΅Π²ΡΠ΅ Π‘Π΅ΡΡΠΈΡΠΈΠΊΠ°ΡΡ Π΄Π»Ρ ΡΠΊΠ°Π·Π°Π½ΠΈΡ ΡΠΈΠΏΠ° ΠΏΠΎΠ΄ΠΏΠΈΡΠΈ. ΠΠΎΡΡΠΎΠΌΡ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΡ Π² Π½Π΅Π΄Π°Π²Π½ΠΎ ΡΠ³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΡΡ ΠΈΠΌΠ΅ΡΡ ΡΠ°Π·ΠΌΠ΅Ρ Π±ΠΎΠ»Π΅Π΅ 3 Π±Π°ΠΉΡ.
ΠΡΠ»ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ (i2ptunnel ΠΈΠ»ΠΈ HTTP-ΠΏΡΠΎΠΊΡΠΈ) Ρ ΠΎΡΠ΅Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊ Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΏΠΎ ΠΈΠΌΠ΅Π½ΠΈ, router Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΠΎΡΠ΅Π½Ρ ΠΏΡΠΎΡΡΠΎΠΉ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ ΠΏΠΎΠΈΡΠΊ Π΄Π»Ρ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡ ΡΡΠΎΠ³ΠΎ ΠΈΠΌΠ΅Π½ΠΈ.
Π‘Π»ΡΠΆΠ±Π° ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΡ Hosts.txt
Π‘Π»ΡΠΆΠ±Π° ΠΈΠΌΠ΅Π½ hosts.txt Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΠΏΡΠΎΡΡΠΎΠΉ Π»ΠΈΠ½Π΅ΠΉΠ½ΡΠΉ ΠΏΠΎΠΈΡΠΊ ΠΏΠΎ ΡΠ΅ΠΊΡΡΠΎΠ²ΡΠΌ ΡΠ°ΠΉΠ»Π°ΠΌ. ΠΡΠ° ΡΠ»ΡΠΆΠ±Π° ΠΈΠΌΠ΅Π½ Π±ΡΠ»Π° ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠΉ Π΄ΠΎ Π²Π΅ΡΡΠΈΠΈ 0.8.8, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½Π° Π±ΡΠ»Π° Π·Π°ΠΌΠ΅Π½Π΅Π½Π° Π½Π° Blockfile Naming Service. Π€ΠΎΡΠΌΠ°Ρ hosts.txt ΡΡΠ°Π» ΡΠ»ΠΈΡΠΊΠΎΠΌ ΠΌΠ΅Π΄Π»Π΅Π½Π½ΡΠΌ ΠΏΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΡΠ°ΠΉΠ» Π²ΡΡΠΎΡ Π΄ΠΎ ΡΡΡΡΡ Π·Π°ΠΏΠΈΡΠ΅ΠΉ.
ΠΠ½ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ Π»ΠΈΠ½Π΅ΠΉΠ½ΡΠΉ ΠΏΠΎΠΈΡΠΊ ΠΏΠΎ ΡΡΠ΅ΠΌ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΌ ΡΠ°ΠΉΠ»Π°ΠΌ ΠΏΠΎ ΠΏΠΎΡΡΠ΄ΠΊΡ, ΡΡΠΎΠ±Ρ Π½Π°ΠΉΡΠΈ ΠΈΠΌΠ΅Π½Π° Ρ ΠΎΡΡΠΎΠ² ΠΈ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°ΡΡ ΠΈΡ Π² 516-Π±Π°ΠΉΡΠΎΠ²ΡΠΉ ΠΊΠ»ΡΡ Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΡ. ΠΠ°ΠΆΠ΄ΡΠΉ ΡΠ°ΠΉΠ» ΠΈΠΌΠ΅Π΅Ρ ΠΏΡΠΎΡΡΠΎΠΉ ΡΠΎΡΠΌΠ°Ρ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° , Ρ hostname=base64, ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΌΡ Π½Π° ΡΡΡΠΎΠΊΡ. Π€Π°ΠΉΠ»Ρ:
- privatehosts.txt
- userhosts.txt
- hosts.txt
Π‘Π»ΡΠΆΠ±Π° ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΡ Blockfile
Π‘Π»ΡΠΆΠ±Π° ΠΈΠΌΠ΅Π½ Blockfile Ρ ΡΠ°Π½ΠΈΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ “Π°Π΄ΡΠ΅ΡΠ½ΡΡ ΠΊΠ½ΠΈΠ³” Π² ΠΎΠ΄Π½ΠΎΠΌ ΡΠ°ΠΉΠ»Π΅ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ hostsdb.blockfile. ΠΡΠ° ΡΠ»ΡΠΆΠ±Π° ΠΈΠΌΠ΅Π½ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π½Π°ΡΠΈΠ½Π°Ρ Ρ Π²Π΅ΡΡΠΈΠΈ 0.8.8.
Blockfile β ΡΡΠΎ ΠΏΡΠΎΡΡΠΎ Π΄ΠΈΡΠΊΠΎΠ²ΠΎΠ΅ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΠΎΡΡΠΎΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΠΊΠ°ΡΡ (ΠΏΠ°Ρ ΠΊΠ»ΡΡ-Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅), ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΡ ΠΊΠ°ΠΊ skiplist’Ρ. Π€ΠΎΡΠΌΠ°Ρ blockfile ΠΎΠΏΠΈΡΠ°Π½ Π½Π° ΡΡΡΠ°Π½ΠΈΡΠ΅ Blockfile . ΠΠ½ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ Π±ΡΡΡΡΡΠΉ ΠΏΠΎΠΈΡΠΊ Destination Π² ΠΊΠΎΠΌΠΏΠ°ΠΊΡΠ½ΠΎΠΌ ΡΠΎΡΠΌΠ°ΡΠ΅. Π₯ΠΎΡΡ Π½Π°ΠΊΠ»Π°Π΄Π½ΡΠ΅ ΡΠ°ΡΡ ΠΎΠ΄Ρ blockfile ΡΡΡΠ΅ΡΡΠ²Π΅Π½Π½Ρ, destination’Ρ Ρ ΡΠ°Π½ΡΡΡΡ Π² Π΄Π²ΠΎΠΈΡΠ½ΠΎΠΌ ΡΠΎΡΠΌΠ°ΡΠ΅, Π° Π½Π΅ Π² Base 64, ΠΊΠ°ΠΊ Π² ΡΠΎΡΠΌΠ°ΡΠ΅ hosts.txt. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, blockfile ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»ΡΠ½ΠΎΠ³ΠΎ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΡΡ (ΡΠ°ΠΊΠΈΡ ΠΊΠ°ΠΊ Π΄Π°ΡΠ° Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ, ΠΈΡΡΠΎΡΠ½ΠΈΠΊ ΠΈ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ) Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π·Π°ΠΏΠΈΡΠΈ Π΄Π»Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΡΠ°ΡΡΠΈΡΠ΅Π½Π½ΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ Π°Π΄ΡΠ΅ΡΠ½ΠΎΠΉ ΠΊΠ½ΠΈΠ³ΠΈ. Π’ΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ ΠΊ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΡ blockfile Π»ΠΈΡΡ Π½Π΅Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΏΡΠ΅Π²ΡΡΠ°ΡΡ ΡΠΎΡΠΌΠ°Ρ hosts.txt, ΠΏΡΠΈ ΡΡΠΎΠΌ blockfile ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ 10-ΠΊΡΠ°ΡΠ½ΠΎΠ΅ ΡΠΎΠΊΡΠ°ΡΠ΅Π½ΠΈΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΏΠΎΠΈΡΠΊΠ°.
ΠΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ ΡΠ»ΡΠΆΠ±Π° ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΡ ΠΈΠΌΠΏΠΎΡΡΠΈΡΡΠ΅Ρ Π·Π°ΠΏΠΈΡΠΈ ΠΈΠ· ΡΡΠ΅Ρ ΡΠ°ΠΉΠ»ΠΎΠ², ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ ΡΠ»ΡΠΆΠ±ΠΎΠΉ ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΡ hosts.txt. ΠΠ»ΠΎΡΠ½ΡΠΉ ΡΠ°ΠΉΠ» ΠΈΠΌΠΈΡΠΈΡΡΠ΅Ρ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΡΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ, ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Ρ ΡΡΠΈ ΠΊΠ°ΡΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠΎΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡΡΡ ΠΏΠΎ ΠΏΠΎΡΡΠ΄ΠΊΡ: privatehosts.txt, userhosts.txt ΠΈ hosts.txt. ΠΠ½ ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΠΊΠ°ΡΡΡ ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠΈΡΠΊΠ° Π΄Π»Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π±ΡΡΡΡΠΎΠ³ΠΎ ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠΈΡΠΊΠ°.
ΠΡΡΠ³ΠΈΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΡΠ»ΡΠΆΠ±Ρ ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΡ
ΠΠΎΠΈΡΠΊ Π½Π΅ΡΡΠ²ΡΡΠ²ΠΈΡΠ΅Π»Π΅Π½ ΠΊ ΡΠ΅Π³ΠΈΡΡΡΡ. ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΏΠ΅ΡΠ²ΠΎΠ΅ ΡΠΎΠ²ΠΏΠ°Π΄Π΅Π½ΠΈΠ΅, ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΡ Π½Π΅ ΠΎΠ±Π½Π°ΡΡΠΆΠΈΠ²Π°ΡΡΡΡ. ΠΡΠΈ ΠΏΠΎΠΈΡΠΊΠ΅ Π½Π΅ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ ΠΏΡΠΈΠ½ΡΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΡΠΎΠ±Π»ΡΠ΄Π΅Π½ΠΈΠ΅ ΠΏΡΠ°Π²ΠΈΠ» ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΡ. Π Π΅Π·ΡΠ»ΡΡΠ°ΡΡ ΠΏΠΎΠΈΡΠΊΠ° ΠΊΡΡΠΈΡΡΡΡΡΡ Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΌΠΈΠ½ΡΡ. Π Π°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Base 32 ΠΎΠΏΠΈΡΠ°Π½ΠΎ Π½ΠΈΠΆΠ΅ . ΠΠΎΠ»Π½ΠΎΠ΅ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ API ΡΠ»ΡΠΆΠ±Ρ ΠΈΠΌΡΠ½ ΡΠΌΠΎΡΡΠΈΡΠ΅ Π² Javadocs ΡΠ»ΡΠΆΠ±Ρ ΠΈΠΌΡΠ½ . ΠΡΠΎΡ API Π±ΡΠ» Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠ°ΡΡΠΈΡΠ΅Π½ Π² Π²Π΅ΡΡΠΈΠΈ 0.8.7 Π΄Π»Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ ΠΈ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ, Ρ ΡΠ°Π½Π΅Π½ΠΈΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»ΡΠ½ΡΡ ΡΠ²ΠΎΠΉΡΡΠ² Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ Ρ ΠΎΡΡΠ° ΠΈ Π΄ΡΡΠ³ΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΉ.
ΠΠ»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π½ΡΠ΅ ΠΈ ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠ°Π»ΡΠ½ΡΠ΅ ΡΠ»ΡΠΆΠ±Ρ ΠΈΠΌΠ΅Π½
Π‘Π»ΡΠΆΠ±Π° ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΡ ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ i2p.naming.impl=class. ΠΠΎΠ·ΠΌΠΎΠΆΠ½Ρ Π΄ΡΡΠ³ΠΈΠ΅ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠ°Π»ΡΠ½Π°Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π΄Π»Ρ ΠΏΠΎΠΈΡΠΊΠ° Π² ΡΠ΅Π°Π»ΡΠ½ΠΎΠΌ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ (ΠΊΠ°ΠΊ DNS) ΠΏΠΎ ΡΠ΅ΡΠΈ Π²Π½ΡΡΡΠΈ router. ΠΠ»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΡΠΌ. Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Ρ Π½Π° ΡΡΡΠ°Π½ΠΈΡΠ΅ ΠΎΠ±ΡΡΠΆΠ΄Π΅Π½ΠΈΡ
.
HTTP-ΠΏΡΠΎΠΊΡΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΠΏΠΎΠΈΡΠΊ ΡΠ΅ΡΠ΅Π· router Π΄Π»Ρ Π²ΡΠ΅Ρ ΠΈΠΌΠ΅Π½ Ρ ΠΎΡΡΠΎΠ², Π·Π°ΠΊΠ°Π½ΡΠΈΠ²Π°ΡΡΠΈΡ ΡΡ Π½Π° ‘.i2p’. Π ΠΏΡΠΎΡΠΈΠ²Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΎΠ½ ΠΏΠ΅ΡΠ΅Π½Π°ΠΏΡΠ°Π²Π»ΡΠ΅Ρ Π·Π°ΠΏΡΠΎΡ Π½Π° Π½Π°ΡΡΡΠΎΠ΅Π½Π½ΡΠΉ HTTP outproxy. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Π½Π° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅ Π²ΡΠ΅ HTTP (I2P Site) ΠΈΠΌΠ΅Π½Π° Ρ ΠΎΡΡΠΎΠ² Π΄ΠΎΠ»ΠΆΠ½Ρ Π·Π°ΠΊΠ°Π½ΡΠΈΠ²Π°ΡΡΡΡ ΠΏΡΠ΅Π²Π΄ΠΎ-Π΄ΠΎΠΌΠ΅Π½ΠΎΠΌ Π²Π΅ΡΡ Π½Π΅Π³ΠΎ ΡΡΠΎΠ²Π½Ρ ‘.i2p’.
ΠΡΠ»ΠΈ router Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ ΡΠ°Π·ΡΠ΅ΡΠΈΡΡ ΠΈΠΌΡ Ρ ΠΎΡΡΠ°, HTTP ΠΏΡΠΎΠΊΡΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΡΡΡΠ°Π½ΠΈΡΡ Ρ ΠΎΡΠΈΠ±ΠΊΠΎΠΉ ΡΠΎ ΡΡΡΠ»ΠΊΠ°ΠΌΠΈ Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ΅ΡΠ²ΠΈΡΠΎΠ² “jump”. Π‘ΠΌ. ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΡΡΠΈ Π½ΠΈΠΆΠ΅.
ΠΠΎΠΌΠ΅Π½ .i2p.alt
Π Π°Π½Π΅Π΅ ΠΌΡ ΠΏΠΎΠ΄Π°Π²Π°Π»ΠΈ Π·Π°ΡΠ²ΠΊΡ Π½Π° ΡΠ΅Π·Π΅ΡΠ²ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π΄ΠΎΠΌΠ΅Π½Π° Π²Π΅ΡΡ Π½Π΅Π³ΠΎ ΡΡΠΎΠ²Π½Ρ .i2p Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠΈ Ρ ΠΏΡΠΎΡΠ΅Π΄ΡΡΠ°ΠΌΠΈ, ΡΠΊΠ°Π·Π°Π½Π½ΡΠΌΠΈ Π² RFC 6761 . ΠΠ΄Π½Π°ΠΊΠΎ ΡΡΠ° Π·Π°ΡΠ²ΠΊΠ° ΠΈ Π²ΡΠ΅ ΠΎΡΡΠ°Π»ΡΠ½ΡΠ΅ Π±ΡΠ»ΠΈ ΠΎΡΠΊΠ»ΠΎΠ½Π΅Π½Ρ, Π° RFC 6761 Π±ΡΠ» ΠΎΠ±ΡΡΠ²Π»Π΅Π½ “ΠΎΡΠΈΠ±ΠΊΠΎΠΉ”.
ΠΠΎΡΠ»Π΅ ΠΌΠ½ΠΎΠ³ΠΎΠ»Π΅ΡΠ½Π΅ΠΉ ΡΠ°Π±ΠΎΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ GNUnet ΠΈ Π΄ΡΡΠ³ΠΈΡ , Π΄ΠΎΠΌΠ΅Π½ .alt Π±ΡΠ» Π·Π°ΡΠ΅Π·Π΅ΡΠ²ΠΈΡΠΎΠ²Π°Π½ ΠΊΠ°ΠΊ TLD ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π² RFC 9476 Π² ΠΊΠΎΠ½ΡΠ΅ 2023 Π³ΠΎΠ΄Π°. Π₯ΠΎΡΡ Π½Π΅Ρ ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΡΡ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΎΡΠΎΠ², ΡΠ°Π½ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ IANA, ΠΌΡ Π·Π°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π»ΠΈ Π΄ΠΎΠΌΠ΅Π½ .i2p.alt Ρ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠ³ΠΎ Π½Π΅ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΎΡΠ° GANA . ΠΡΠΎ Π½Π΅ ΠΏΡΠ΅ΠΏΡΡΡΡΠ²ΡΠ΅Ρ Π΄ΡΡΠ³ΠΈΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠΎΡ Π΄ΠΎΠΌΠ΅Π½, Π½ΠΎ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΏΠΎΠΌΠΎΡΡ ΠΈΡ ΠΎΡΠ³ΠΎΠ²ΠΎΡΠΈΡΡ.
ΠΠ΄Π½ΠΎ ΠΈΠ· ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ² Π΄ΠΎΠΌΠ΅Π½Π° .alt Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎ ΡΠ΅ΠΎΡΠ΅ΡΠΈΡΠ΅ΡΠΊΠΈ DNS-ΡΠ΅Π·ΠΎΠ»Π²Π΅ΡΡ Π½Π΅ Π±ΡΠ΄ΡΡ ΠΏΠ΅ΡΠ΅Π½Π°ΠΏΡΠ°Π²Π»ΡΡΡ Π·Π°ΠΏΡΠΎΡΡ .alt ΠΏΠΎΡΠ»Π΅ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ Π΄Π»Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΡ RFC 9476, ΠΈ ΡΡΠΎ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠΈΡ ΡΡΠ΅ΡΠΊΠΈ DNS. ΠΠ»Ρ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΠΈ Ρ ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ Ρ ΠΎΡΡΠΎΠ² .i2p.alt ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΈ ΡΠ΅ΡΠ²ΠΈΡΡ I2P Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½Ρ Π΄Π»Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΡΡΠΈΡ ΠΈΠΌΠ΅Π½ Ρ ΠΎΡΡΠΎΠ² ΠΏΡΡΠ΅ΠΌ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ TLD .alt. ΠΡΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ Π·Π°ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²Π°Π½Ρ Π½Π° ΠΏΠ΅ΡΠ²ΡΡ ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Ρ 2024 Π³ΠΎΠ΄Π°.
Π Π½Π°ΡΡΠΎΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ Π½Π΅Ρ ΠΏΠ»Π°Π½ΠΎΠ² ΡΠ΄Π΅Π»Π°ΡΡ .i2p.alt ΠΏΡΠ΅Π΄ΠΏΠΎΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ ΡΠΎΡΠΌΠΎΠΉ Π΄Π»Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΈ ΠΎΠ±ΠΌΠ΅Π½Π° I2P-Ρ ΠΎΡΡΠ½Π΅ΠΉΠΌΠ°ΠΌΠΈ. ΠΡΠΎ ΡΠ΅ΠΌΠ° Π΄Π»Ρ Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠΈΡ ΠΈΡΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΠΉ ΠΈ ΠΎΠ±ΡΡΠΆΠ΄Π΅Π½ΠΈΠΉ.
ΠΠ΄ΡΠ΅ΡΠ½Π°Ρ ΠΊΠ½ΠΈΠ³Π°
ΠΡ ΠΎΠ΄ΡΡΠΈΠ΅ ΠΏΠΎΠ΄ΠΏΠΈΡΠΊΠΈ ΠΈ ΡΠ»ΠΈΡΠ½ΠΈΠ΅
ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π΄ΡΠ΅ΡΠ½ΠΎΠΉ ΠΊΠ½ΠΈΠ³ΠΈ ΠΏΠ΅ΡΠΈΠΎΠ΄ΠΈΡΠ΅ΡΠΊΠΈ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ ΡΠ°ΠΉΠ»Ρ hosts.txt Π΄ΡΡΠ³ΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ ΠΈ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ ΠΈΡ Ρ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΌ hosts.txt ΠΏΠΎΡΠ»Π΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΠΏΡΠΎΠ²Π΅ΡΠΎΠΊ. ΠΠΎΠ½ΡΠ»ΠΈΠΊΡΡ ΠΈΠΌΠ΅Π½ ΡΠ°Π·ΡΠ΅ΡΠ°ΡΡΡΡ ΠΏΠΎ ΠΏΡΠΈΠ½ΡΠΈΠΏΡ Β«ΠΏΠ΅ΡΠ²ΡΠΉ ΠΏΡΠΈΡΠ΅Π» β ΠΏΠ΅ΡΠ²ΡΠΉ ΠΏΠΎΠ»ΡΡΠΈΠ»Β».
ΠΠΎΠ΄ΠΏΠΈΡΠΊΠ° Π½Π° ΡΠ°ΠΉΠ» hosts.txt Π΄ΡΡΠ³ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΏΠΎΠ΄ΡΠ°Π·ΡΠΌΠ΅Π²Π°Π΅Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΡΠΉ ΡΡΠΎΠ²Π΅Π½Ρ Π΄ΠΎΠ²Π΅ΡΠΈΡ ΠΊ Π½Π΅ΠΌΡ. ΠΡ Π½Π΅ Ρ ΠΎΡΠΈΡΠ΅, ΡΡΠΎΠ±Ρ ΠΎΠ½ΠΈ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Β«Π·Π°Ρ Π²Π°ΡΠΈΠ»ΠΈΒ» Π½ΠΎΠ²ΡΠΉ ΡΠ°ΠΉΡ, Π±ΡΡΡΡΠΎ Π²Π²Π΅Π΄Ρ ΡΠ²ΠΎΠΉ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠΉ ΠΊΠ»ΡΡ Π΄Π»Ρ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΡΠ°ΠΉΡΠ° ΠΏΠ΅ΡΠ΅Π΄ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠ΅ΠΉ Π²Π°ΠΌ Π½ΠΎΠ²ΠΎΠΉ Π·Π°ΠΏΠΈΡΠΈ Ρ ΠΎΡΡ/ΠΊΠ»ΡΡ.
ΠΠΎ ΡΡΠΎΠΉ ΠΏΡΠΈΡΠΈΠ½Π΅ Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΠΎΠΉ ΠΏΠΎΠ΄ΠΏΠΈΡΠΊΠΎΠΉ, Π½Π°ΡΡΡΠΎΠ΅Π½Π½ΠΎΠΉ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ, ΡΠ²Π»ΡΠ΅ΡΡΡ http://i2p-projekt.i2p/hosts.txt (http://udhdrtrcetjm5sxzskjyr5ztpeszydbh4dpl3pl4utgqqw2v4jna.b32.i2p/hosts.txt), ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΊΠΎΠΏΠΈΡ ΡΠ°ΠΉΠ»Π° hosts.txt, Π²ΠΊΠ»ΡΡΠ΅Π½Π½ΠΎΠ³ΠΎ Π² ΡΠ΅Π»ΠΈΠ· I2P. ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ Π½Π°ΡΡΡΠΎΠΈΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΏΠΎΠ΄ΠΏΠΈΡΠΊΠΈ Π² ΡΠ²ΠΎΠ΅ΠΌ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Π°Π΄ΡΠ΅ΡΠ½ΠΎΠΉ ΠΊΠ½ΠΈΠ³ΠΈ (ΡΠ΅ΡΠ΅Π· subscriptions.txt ΠΈΠ»ΠΈ SusiDNS
).
ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ Π΄ΡΡΠ³ΠΈΠ΅ ΡΡΡΠ»ΠΊΠΈ Π½Π° ΠΏΡΠ±Π»ΠΈΡΠ½ΡΠ΅ ΠΏΠΎΠ΄ΠΏΠΈΡΠΊΠΈ Π°Π΄ΡΠ΅ΡΠ½ΠΎΠΉ ΠΊΠ½ΠΈΠ³ΠΈ:
- http://i2host.i 2p/cgi-bin/i2hostetag
- http://stats.i 2p/cgi-bin/newhosts.txt
ΠΠΏΠ΅ΡΠ°ΡΠΎΡΡ ΡΡΠΈΡ ΡΠ΅ΡΠ²ΠΈΡΠΎΠ² ΠΌΠΎΠ³ΡΡ ΠΈΠΌΠ΅ΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΠΏΠΎΠ»ΠΈΡΠΈΠΊΠΈ Π΄Π»Ρ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ Ρ ΠΎΡΡΠΎΠ² Π² ΡΠΏΠΈΡΠΎΠΊ. ΠΡΠΈΡΡΡΡΡΠ²ΠΈΠ΅ Π² ΡΡΠΎΠΌ ΡΠΏΠΈΡΠΊΠ΅ Π½Π΅ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ ΠΎΠ΄ΠΎΠ±ΡΠ΅Π½ΠΈΡ.
ΠΡΠ°Π²ΠΈΠ»Π° ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΡ
Π₯ΠΎΡΡ Π² I2P, Π½Π°Π΄Π΅Π΅ΠΌΡΡ, Π½Π΅Ρ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈΡ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠΉ Π½Π° ΠΈΠΌΠ΅Π½Π° Ρ ΠΎΡΡΠΎΠ², Π°Π΄ΡΠ΅ΡΠ½Π°Ρ ΠΊΠ½ΠΈΠ³Π° Π½Π°ΠΊΠ»Π°Π΄ΡΠ²Π°Π΅Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠΉ Π½Π° ΠΈΠΌΠ΅Π½Π° Ρ ΠΎΡΡΠΎΠ², ΠΈΠΌΠΏΠΎΡΡΠΈΡΡΠ΅ΠΌΡΠ΅ ΠΈΠ· ΠΏΠΎΠ΄ΠΏΠΈΡΠΎΠΊ. ΠΡΠΎ Π΄Π΅Π»Π°Π΅ΡΡΡ Π΄Π»Ρ Π±Π°Π·ΠΎΠ²ΠΎΠΉ ΡΠΈΠΏΠΎΠ³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠΉ ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎΡΡΠΈ ΠΈ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΠΈ Ρ Π±ΡΠ°ΡΠ·Π΅ΡΠ°ΠΌΠΈ, Π° ΡΠ°ΠΊΠΆΠ΅ Π΄Π»Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ. ΠΡΠ°Π²ΠΈΠ»Π° Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ ΡΠ°ΠΊΠΈΠ΅ ΠΆΠ΅, ΠΊΠ°ΠΊ Π² RFC2396 Section 3.2.2. ΠΡΠ±ΡΠ΅ ΠΈΠΌΠ΅Π½Π° Ρ ΠΎΡΡΠΎΠ², Π½Π°ΡΡΡΠ°ΡΡΠΈΠ΅ ΡΡΠΈ ΠΏΡΠ°Π²ΠΈΠ»Π°, ΠΌΠΎΠ³ΡΡ Π½Π΅ ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°ΡΡΡΡ Π΄ΡΡΠ³ΠΈΠΌ router’Π°ΠΌ.
ΠΡΠ°Π²ΠΈΠ»Π° ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΡ:
- ΠΠΌΠ΅Π½Π° ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΡΡΡΡ Π² Π½ΠΈΠΆΠ½ΠΈΠΉ ΡΠ΅Π³ΠΈΡΡΡ ΠΏΡΠΈ ΠΈΠΌΠΏΠΎΡΡΠ΅.
- ΠΠΌΠ΅Π½Π° ΠΏΡΠΎΠ²Π΅ΡΡΡΡΡΡ Π½Π° ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡ Ρ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠΌΠΈ ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ Π² ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΡ userhosts.txt ΠΈ hosts.txt (Π½ΠΎ Π½Π΅ privatehosts.txt) ΠΏΠΎΡΠ»Π΅ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΡ Π² Π½ΠΈΠΆΠ½ΠΈΠΉ ΡΠ΅Π³ΠΈΡΡΡ.
- ΠΠΎΠ»ΠΆΠ½Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ [a-z] [0-9] ‘.’ ΠΈ ‘-’ ΠΏΠΎΡΠ»Π΅ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΡ Π² Π½ΠΈΠΆΠ½ΠΈΠΉ ΡΠ΅Π³ΠΈΡΡΡ.
- ΠΠ΅ Π΄ΠΎΠ»ΠΆΠ½Ρ Π½Π°ΡΠΈΠ½Π°ΡΡΡΡ Ρ ‘.’ ΠΈΠ»ΠΈ ‘-’.
- ΠΠΎΠ»ΠΆΠ½Ρ Π·Π°ΠΊΠ°Π½ΡΠΈΠ²Π°ΡΡΡΡ Π½Π° ‘.i2p’.
- ΠΠ°ΠΊΡΠΈΠΌΡΠΌ 67 ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ², Π²ΠΊΠ»ΡΡΠ°Ρ ‘.i2p’.
- ΠΠ΅ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ ‘..’.
- ΠΠ΅ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ ‘.-’ ΠΈΠ»ΠΈ ‘-.’ (Π½Π°ΡΠΈΠ½Π°Ρ Ρ Π²Π΅ΡΡΠΈΠΈ 0.6.1.33).
- ΠΠ΅ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ ‘--’ ΠΊΡΠΎΠΌΠ΅ ΠΊΠ°ΠΊ Π² ‘xn--’ Π΄Π»Ρ IDN.
- Base32 ΠΈΠΌΠ΅Π½Π° Ρ ΠΎΡΡΠΎΠ² (*.b32.i2p) Π·Π°ΡΠ΅Π·Π΅ΡΠ²ΠΈΡΠΎΠ²Π°Π½Ρ Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ base 32 ΠΈ ΠΏΠΎΡΡΠΎΠΌΡ Π½Π΅ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½Ρ Π΄Π»Ρ ΠΈΠΌΠΏΠΎΡΡΠ°.
- ΠΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ ΠΈΠΌΠ΅Π½Π° Ρ ΠΎΡΡΠΎΠ², Π·Π°ΡΠ΅Π·Π΅ΡΠ²ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠΌ, Π½Π΅ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½Ρ (proxy.i2p, router.i2p, console.i2p, mail.i2p, *.proxy.i2p, *.router.i2p, *.console.i2p, *.mail.i2p ΠΈ Π΄ΡΡΠ³ΠΈΠ΅)
- ΠΠΌΠ΅Π½Π° Ρ ΠΎΡΡΠΎΠ², Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΠ΅ΡΡ Ρ ‘www.’, Π½Π΅ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΡΡΡΡ ΠΈ ΠΎΡΠΊΠ»ΠΎΠ½ΡΡΡΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠΌΠΈ ΡΠ»ΡΠΆΠ±Π°ΠΌΠΈ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΠΈ. ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π°Π΄ΡΠ΅ΡΠ½ΠΎΠΉ ΠΊΠ½ΠΈΠ³ΠΈ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΡΠ΄Π°Π»ΡΡΡ ΠΏΡΠ΅ΡΠΈΠΊΡΡ ‘www.’ ΠΈΠ· Π·Π°ΠΏΡΠΎΡΠΎΠ². ΠΠΎΡΡΠΎΠΌΡ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΡ ‘www.example.i 2p’ Π½Π΅ Π½ΡΠΆΠ½Π°, ΠΈ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΡ ΡΠ°Π·Π½ΠΎΠ³ΠΎ Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π΄Π»Ρ ‘www.example.i 2p’ ΠΈ ’example.i2p’ ΡΠ΄Π΅Π»Π°Π΅Ρ ‘www.example.i 2p’ Π½Π΅Π΄ΠΎΡΡΡΠΏΠ½ΡΠΌ Π΄Π»Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ.
- ΠΠ»ΡΡΠΈ ΠΏΡΠΎΠ²Π΅ΡΡΡΡΡΡ Π½Π° Π²Π°Π»ΠΈΠ΄Π½ΠΎΡΡΡ base64.
- ΠΠ»ΡΡΠΈ ΠΏΡΠΎΠ²Π΅ΡΡΡΡΡΡ Π½Π° ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡ Ρ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠΌΠΈ ΠΊΠ»ΡΡΠ°ΠΌΠΈ Π² hosts.txt (Π½ΠΎ Π½Π΅ privatehosts.txt).
- ΠΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½Π°Ρ Π΄Π»ΠΈΠ½Π° ΠΊΠ»ΡΡΠ° 516 Π±Π°ΠΉΡ.
- ΠΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½Π°Ρ Π΄Π»ΠΈΠ½Π° ΠΊΠ»ΡΡΠ° 616 Π±Π°ΠΉΡ (ΡΡΠΎΠ±Ρ ΡΡΠ΅ΡΡΡ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΡ Π΄ΠΎ 100 Π±Π°ΠΉΡ).
ΠΡΠ±ΠΎΠ΅ ΠΈΠΌΡ, ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΠΎΠ΅ ΡΠ΅ΡΠ΅Π· ΠΏΠΎΠ΄ΠΏΠΈΡΠΊΡ ΠΈ ΠΏΡΠΎΡΠ΅Π΄ΡΠ΅Π΅ Π²ΡΠ΅ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ, Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΡΡΡ ΡΠ΅ΡΠ΅Π· Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ ΡΠ»ΡΠΆΠ±Ρ ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΡ.
ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ ΡΠΈΠΌΠ²ΠΎΠ»Ρ ‘.’ Π² ΠΈΠΌΠ΅Π½ΠΈ Ρ ΠΎΡΡΠ° Π½Π΅ ΠΈΠΌΠ΅ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΈ Π½Π΅ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ°ΡΡ ΠΊΠ°ΠΊΡΡ-Π»ΠΈΠ±ΠΎ ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΡΡ ΠΈΠ΅ΡΠ°ΡΡ ΠΈΡ ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΡ ΠΈΠ»ΠΈ Π΄ΠΎΠ²Π΅ΡΠΈΡ. ΠΡΠ»ΠΈ ΠΈΠΌΡ ‘host.i2p’ ΡΠΆΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ, Π½ΠΈΡΡΠΎ Π½Π΅ ΠΌΠ΅ΡΠ°Π΅Ρ ΠΊΠΎΠΌΡ-Π»ΠΈΠ±ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΈΠΌΡ ‘a.host.i2p’ Π² ΡΠ²ΠΎΠΉ hosts.txt, ΠΈ ΡΡΠΎ ΠΈΠΌΡ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°Π½ΠΎ Π² Π°Π΄ΡΠ΅ΡΠ½ΡΠ΅ ΠΊΠ½ΠΈΠ³ΠΈ Π΄ΡΡΠ³ΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ. ΠΠ΅ΡΠΎΠ΄Ρ Π·Π°ΠΏΡΠ΅ΡΠ° ΠΏΠΎΠ΄Π΄ΠΎΠΌΠ΅Π½ΠΎΠ² Π΄Π»Ρ Π»ΠΈΡ, Π½Π΅ ΡΠ²Π»ΡΡΡΠΈΡ ΡΡ ‘Π²Π»Π°Π΄Π΅Π»ΡΡΠ°ΠΌΠΈ’ Π΄ΠΎΠΌΠ΅Π½Π° (ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΡ?), Π° ΡΠ°ΠΊΠΆΠ΅ ΠΆΠ΅Π»Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΈ ΠΎΡΡΡΠ΅ΡΡΠ²ΠΈΠΌΠΎΡΡΡ ΡΠ°ΠΊΠΈΡ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² ΡΠ²Π»ΡΡΡΡΡ ΡΠ΅ΠΌΠ°ΠΌΠΈ Π΄Π»Ρ Π±ΡΠ΄ΡΡΠ΅Π³ΠΎ ΠΎΠ±ΡΡΠΆΠ΄Π΅Π½ΠΈΡ.
ΠΠ΅ΠΆΠ΄ΡΠ½Π°ΡΠΎΠ΄Π½ΡΠ΅ Π΄ΠΎΠΌΠ΅Π½Π½ΡΠ΅ ΠΈΠΌΠ΅Π½Π° (IDN) ΡΠ°ΠΊΠΆΠ΅ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π² i2p (ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΠΎΡΠΌΡ punycode ‘xn--’). Π§ΡΠΎΠ±Ρ Π΄ΠΎΠΌΠ΅Π½Π½ΡΠ΅ ΠΈΠΌΠ΅Π½Π° IDN .i2p ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π»ΠΈΡΡ Π² Π°Π΄ΡΠ΅ΡΠ½ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅ Firefox, Π΄ΠΎΠ±Π°Π²ΡΡΠ΅ ’network.IDN.whitelist.i2p (boolean) = true’ Π² about:config.
ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π΄ΡΠ΅ΡΠ½ΠΎΠΉ ΠΊΠ½ΠΈΠ³ΠΈ Π²ΠΎΠΎΠ±ΡΠ΅ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ privatehosts.txt, Π½Π° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅ ΡΡΠΎΡ ΡΠ°ΠΉΠ» ΡΠ²Π»ΡΠ΅ΡΡΡ Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΡΠΌ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡΠΈΠΌ ΠΌΠ΅ΡΡΠΎΠΌ Π΄Π»Ρ ΡΠ°Π·ΠΌΠ΅ΡΠ΅Π½ΠΈΡ ΠΏΡΠΈΠ²Π°ΡΠ½ΡΡ ΠΏΡΠ΅Π²Π΄ΠΎΠ½ΠΈΠΌΠΎΠ² ΠΈΠ»ΠΈ “Π»ΠΈΡΠ½ΡΡ ΠΈΠΌΠ΅Π½” Π΄Π»Ρ ΡΠ°ΠΉΡΠΎΠ², ΡΠΆΠ΅ Π½Π°Ρ ΠΎΠ΄ΡΡΠΈΡ ΡΡ Π² hosts.txt.
Π Π°ΡΡΠΈΡΠ΅Π½Π½ΡΠΉ ΡΠΎΡΠΌΠ°Ρ Π»Π΅Π½ΡΡ ΠΏΠΎΠ΄ΠΏΠΈΡΠΎΠΊ
ΠΠ°ΡΠΈΠ½Π°Ρ Ρ Π²Π΅ΡΡΠΈΠΈ 0.9.26, ΡΠ°ΠΉΡΡ ΠΏΠΎΠ΄ΠΏΠΈΡΠΎΠΊ ΠΈ ΠΊΠ»ΠΈΠ΅Π½ΡΡ ΠΌΠΎΠ³ΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ ΡΠ°ΡΡΠΈΡΠ΅Π½Π½ΡΠΉ ΠΏΡΠΎΡΠΎΠΊΠΎΠ» feeds hosts.txt, ΠΊΠΎΡΠΎΡΡΠΉ Π²ΠΊΠ»ΡΡΠ°Π΅Ρ ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΡΠ΅, Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ ΠΏΠΎΠ΄ΠΏΠΈΡΠΈ. ΠΡΠΎΡ ΡΠΎΡΠΌΠ°Ρ ΠΎΠ±ΡΠ°ΡΠ½ΠΎ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌ ΡΠΎ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΌ ΡΠΎΡΠΌΠ°ΡΠΎΠΌ hosts.txt hostname=base64destination. ΠΠΎΠ΄ΡΠΎΠ±Π½ΠΎΡΡΠΈ ΡΠΌ. Π² ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ .
ΠΡΡ ΠΎΠ΄ΡΡΠΈΠ΅ ΠΏΠΎΠ΄ΠΏΠΈΡΠΊΠΈ
Address Book ΠΎΠΏΡΠ±Π»ΠΈΠΊΡΠ΅Ρ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΡΠ½Π½ΡΠΉ ΡΠ°ΠΉΠ» hosts.txt Π² ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΠΎΠ΅ ΠΌΠ΅ΡΡΠΎ (ΡΡΠ°Π΄ΠΈΡΠΈΠΎΠ½Π½ΠΎ hosts.txt Π² Π΄ΠΎΠΌΠ°ΡΠ½Π΅ΠΉ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ I2P ΡΠ°ΠΉΡΠ°), ΡΡΠΎΠ±Ρ Π΄ΡΡΠ³ΠΈΠ΅ ΠΌΠΎΠ³Π»ΠΈ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΊ Π½Π΅ΠΌΡ Π΄ΠΎΡΡΡΠΏ Π΄Π»Ρ ΡΠ²ΠΎΠΈΡ ΠΏΠΎΠ΄ΠΏΠΈΡΠΎΠΊ. ΠΡΠΎΡ ΡΠ°Π³ ΡΠ²Π»ΡΠ΅ΡΡΡ Π½Π΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΡΠΌ ΠΈ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΎΡΠΊΠ»ΡΡΡΠ½.
ΠΡΠΎΠ±Π»Π΅ΠΌΡ Ρ ΠΎΡΡΠΈΠ½Π³Π° ΠΈ HTTP-ΡΡΠ°Π½ΡΠΏΠΎΡΡΠ°
ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π΄ΡΠ΅ΡΠ½ΠΎΠΉ ΠΊΠ½ΠΈΠ³ΠΈ Π²ΠΌΠ΅ΡΡΠ΅ Ρ eepget ΡΠΎΡ ΡΠ°Π½ΡΠ΅Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Etag ΠΈ/ΠΈΠ»ΠΈ Last-Modified, Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΠΌΡΡ Π²Π΅Π±-ΡΠ΅ΡΠ²Π΅ΡΠΎΠΌ ΠΏΠΎΠ΄ΠΏΠΈΡΠΊΠΈ. ΠΡΠΎ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠ½ΠΈΠΆΠ°Π΅Ρ ΡΡΠ΅Π±ΡΠ΅ΠΌΡΡ ΠΏΡΠΎΠΏΡΡΠΊΠ½ΡΡ ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡΡ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π²Π΅Π±-ΡΠ΅ΡΠ²Π΅Ρ Π²Π΅ΡΠ½Π΅Ρ ‘304 Not Modified’ ΠΏΡΠΈ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ Π·Π°ΠΏΡΠΎΡΠ΅, Π΅ΡΠ»ΠΈ Π½ΠΈΡΠ΅Π³ΠΎ Π½Π΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ»ΠΎΡΡ.
ΠΠ΄Π½Π°ΠΊΠΎ Π²Π΅ΡΡ ΡΠ°ΠΉΠ» hosts.txt Π·Π°Π³ΡΡΠΆΠ°Π΅ΡΡΡ, Π΅ΡΠ»ΠΈ ΠΎΠ½ Π±ΡΠ» ΠΈΠ·ΠΌΠ΅Π½Π΅Π½. Π‘ΠΌ. ΠΎΠ±ΡΡΠΆΠ΄Π΅Π½ΠΈΠ΅ ΡΡΠΎΠ³ΠΎ Π²ΠΎΠΏΡΠΎΡΠ° Π½ΠΈΠΆΠ΅.
Π₯ΠΎΡΡΠ°ΠΌ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠ°ΠΉΠ» hosts.txt ΠΈΠ»ΠΈ ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ½ΠΎΠ΅ CGI-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π½Π°ΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ Content-Length ΠΈ Π»ΠΈΠ±ΠΎ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ Etag, Π»ΠΈΠ±ΠΎ Last-Modified. Π’Π°ΠΊΠΆΠ΅ ΡΠ±Π΅Π΄ΠΈΡΠ΅ΡΡ, ΡΡΠΎ ΡΠ΅ΡΠ²Π΅Ρ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ‘304 Not Modified’ ΠΊΠΎΠ³Π΄Π° ΡΡΠΎ ΡΠΌΠ΅ΡΡΠ½ΠΎ. ΠΡΠΎ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠ½ΠΈΠ·ΠΈΡ ΠΏΠΎΡΡΠ΅Π±Π»Π΅Π½ΠΈΠ΅ ΡΠ΅ΡΠ΅Π²ΠΎΠΉ ΠΏΡΠΎΠΏΡΡΠΊΠ½ΠΎΠΉ ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡΠΈ ΠΈ ΡΠΌΠ΅Π½ΡΡΠΈΡ Π²Π΅ΡΠΎΡΡΠ½ΠΎΡΡΡ ΠΏΠΎΠ²ΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ .
Π‘Π»ΡΠΆΠ±Ρ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ Ρ ΠΎΡΡΠΎΠ²
Π‘Π»ΡΠΆΠ±Π° Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ Ρ ΠΎΡΡΠΎΠ² β ΡΡΠΎ ΠΏΡΠΎΡΡΠΎΠ΅ CGI-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ ΠΈΠΌΡ Ρ ΠΎΡΡΠ° ΠΈ ΠΊΠ»ΡΡ Base64 Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² ΠΈ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ ΠΈΡ Π² ΡΠ²ΠΎΠΉ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ ΡΠ°ΠΉΠ» hosts.txt. ΠΡΠ»ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ router ΠΏΠΎΠ΄ΠΏΠΈΡΠ°Π½Ρ Π½Π° ΡΡΠΎΡ hosts.txt, Π½ΠΎΠ²ΠΎΠ΅ ΠΈΠΌΡ Ρ ΠΎΡΡΠ°/ΠΊΠ»ΡΡ Π±ΡΠ΄Π΅Ρ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½ΠΎ ΠΏΠΎ ΡΠ΅ΡΠΈ.
Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ, ΡΡΠΎΠ±Ρ ΡΠ»ΡΠΆΠ±Ρ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ Ρ ΠΎΡΡΠΎΠ² ΠΏΡΠΈΠΌΠ΅Π½ΡΠ»ΠΈ ΠΊΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡΠΌ ΡΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π°ΠΊΠ»Π°Π΄ΡΠ²Π°Π΅Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π΄ΡΠ΅ΡΠ½ΠΎΠΉ ΠΊΠ½ΠΈΠ³ΠΈ, ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½Π½ΠΎΠ΅ Π²ΡΡΠ΅. Π‘Π»ΡΠΆΠ±Ρ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ Ρ ΠΎΡΡΠΎΠ² ΠΌΠΎΠ³ΡΡ Π½Π°ΠΊΠ»Π°Π΄ΡΠ²Π°ΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ Π½Π° ΠΈΠΌΠ΅Π½Π° Ρ ΠΎΡΡΠΎΠ² ΠΈ ΠΊΠ»ΡΡΠΈ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ:
- ΠΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠ΅ Π½Π° ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ‘ΠΏΠΎΠ΄Π΄ΠΎΠΌΠ΅Π½ΠΎΠ²’.
- ΠΠ²ΡΠΎΡΠΈΠ·Π°ΡΠΈΡ Π΄Π»Ρ ‘ΠΏΠΎΠ΄Π΄ΠΎΠΌΠ΅Π½ΠΎΠ²’ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌΠΈ ΠΌΠ΅ΡΠΎΠ΄Π°ΠΌΠΈ.
- Hashcash ΠΈΠ»ΠΈ ΠΏΠΎΠ΄ΠΏΠΈΡΠ°Π½Π½ΡΠ΅ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΡ.
- Π Π΅Π΄Π°ΠΊΡΠΈΠΎΠ½Π½Π°Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° ΠΈΠΌΠ΅Π½ Ρ ΠΎΡΡΠΎΠ² ΠΈ/ΠΈΠ»ΠΈ ΠΊΠΎΠ½ΡΠ΅Π½ΡΠ°.
- ΠΠ°ΡΠ΅Π³ΠΎΡΠΈΠ·Π°ΡΠΈΡ Ρ ΠΎΡΡΠΎΠ² ΠΏΠΎ ΠΊΠΎΠ½ΡΠ΅Π½ΡΡ.
- Π Π΅Π·Π΅ΡΠ²ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ΠΎΡΠΊΠ»ΠΎΠ½Π΅Π½ΠΈΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ ΠΈΠΌΠ΅Π½ Ρ ΠΎΡΡΠΎΠ².
- ΠΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ Π½Π° ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΈΠΌΠ΅Π½, Π·Π°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ Π·Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠΉ ΠΏΠ΅ΡΠΈΠΎΠ΄ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ.
- ΠΠ°Π΄Π΅ΡΠΆΠΊΠΈ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΠ΅ΠΉ ΠΈ ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΠ΅ΠΉ.
- Π’ΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΠ΅, ΡΡΠΎΠ±Ρ Ρ ΠΎΡΡ Π±ΡΠ» Π΄ΠΎΡΡΡΠΏΠ΅Π½ Π΄Π»Ρ Π²Π΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ.
- ΠΡΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΡΡΠΎΠΊΠ° ΠΈ/ΠΈΠ»ΠΈ ΠΎΡΠ·ΡΠ².
- ΠΡΠΊΠ»ΠΎΠ½Π΅Π½ΠΈΠ΅ IDN ΡΠΏΡΡΠΈΠ½Π³Π°.
Jump-ΡΠ΅ΡΠ²ΠΈΡΡ
Jump service β ΡΡΠΎ ΠΏΡΠΎΡΡΠΎΠ΅ CGI-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ ΠΈΠΌΡ Ρ
ΠΎΡΡΠ° Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ 301 ΡΠ΅Π΄ΠΈΡΠ΅ΠΊΡ Π½Π° ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΠΉ URL Ρ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΎΠΉ ?i2paddresshelper=key. HTTP-ΠΏΡΠΎΠΊΡΠΈ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠΈΡΡΠ΅Ρ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½ΡΡ ΡΡΡΠΎΠΊΡ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΡΠΎΡ ΠΊΠ»ΡΡ ΠΊΠ°ΠΊ ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΠΏΡΠΎΠΊΡΠΈ ΠΊΠ΅ΡΠΈΡΡΠ΅Ρ ΡΡΠΎΡ ΠΊΠ»ΡΡ, ΠΏΠΎΡΡΠΎΠΌΡ address helper Π½Π΅ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π΄ΠΎ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΡΡΠΊΠ°.
ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ ΠΊΠ°ΠΊ ΠΈ Ρ ΠΏΠΎΠ΄ΠΏΠΈΡΠΊΠ°ΠΌΠΈ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ jump-ΡΠ΅ΡΠ²ΠΈΡΠ° ΠΏΠΎΠ΄ΡΠ°Π·ΡΠΌΠ΅Π²Π°Π΅Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ ΡΡΠ΅ΠΏΠ΅Π½Ρ Π΄ΠΎΠ²Π΅ΡΠΈΡ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ jump-ΡΠ΅ΡΠ²ΠΈΡ ΠΌΠΎΠΆΠ΅Ρ Π·Π»ΠΎΠ½Π°ΠΌΠ΅ΡΠ΅Π½Π½ΠΎ ΠΏΠ΅ΡΠ΅Π½Π°ΠΏΡΠ°Π²ΠΈΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΊ Π½Π΅ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΠΌΡ Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΡ.
ΠΠ»Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ Π½Π°ΠΈΠ»ΡΡΡΠ΅Π³ΠΎ ΡΠ΅ΡΠ²ΠΈΡΠ° jump-ΡΠ΅ΡΠ²ΠΈΡ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ ΠΏΠΎΠ΄ΠΏΠΈΡΠ°Π½ Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΎΠ²Π°ΠΉΠ΄Π΅ΡΠΎΠ² hosts.txt, ΡΡΠΎΠ±Ρ Π΅Π³ΠΎ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ ΡΠΏΠΈΡΠΎΠΊ Ρ ΠΎΡΡΠΎΠ² Π±ΡΠ» Π°ΠΊΡΡΠ°Π»ΡΠ½ΡΠΌ.
SusiDNS
SusiDNS β ΡΡΠΎ ΠΏΡΠΎΡΡΠΎ Π²Π΅Π±-ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Π΄Π»Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΠΏΠΎΠ΄ΠΏΠΈΡΠΎΠΊ Π½Π° Π°Π΄ΡΠ΅ΡΠ½ΡΠ΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΈ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ ΡΠ΅ΡΡΡΠ΅ΠΌ ΡΠ°ΠΉΠ»Π°ΠΌ Π°Π΄ΡΠ΅ΡΠ½ΡΡ ΠΊΠ½ΠΈΠ³. ΠΡΡ ΡΠ΅Π°Π»ΡΠ½ΡΡ ΡΠ°Π±ΠΎΡΡ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ‘address book’.
Π Π½Π°ΡΡΠΎΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ Π² SusiDNS ΡΠ»Π°Π±ΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡΡΡ ΠΏΡΠ°Π²ΠΈΠ»Π° ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΡ Π°Π΄ΡΠ΅ΡΠ½ΠΎΠΉ ΠΊΠ½ΠΈΠ³ΠΈ, ΠΏΠΎΡΡΠΎΠΌΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΌΠΎΠΆΠ΅Ρ Π²Π²ΠΎΠ΄ΠΈΡΡ ΠΈΠΌΠ΅Π½Π° Ρ ΠΎΡΡΠΎΠ² Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎ, ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΡΠ»ΠΈ Π±Ρ ΠΎΡΠΊΠ»ΠΎΠ½Π΅Π½Ρ ΠΏΡΠ°Π²ΠΈΠ»Π°ΠΌΠΈ ΠΏΠΎΠ΄ΠΏΠΈΡΠΊΠΈ Π½Π° Π°Π΄ΡΠ΅ΡΠ½ΡΡ ΠΊΠ½ΠΈΠ³Ρ.
ΠΠΌΠ΅Π½Π° Base32
I2P ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ Base32 ΠΈΠΌΠ΅Π½Π° Ρ
ΠΎΡΡΠΎΠ², ΠΏΠΎΡ
ΠΎΠΆΠΈΠ΅ Π½Π° .onion Π°Π΄ΡΠ΅ΡΠ° Tor. Base32 Π°Π΄ΡΠ΅ΡΠ° Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΡΠΎΡΠ΅ ΠΈ ΠΏΡΠΎΡΠ΅ Π² ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΠΈ, ΡΠ΅ΠΌ ΠΏΠΎΠ»Π½ΡΠ΅ 516-ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠ΅ Base64 Destinations ΠΈΠ»ΠΈ addresshelpers. ΠΡΠΈΠΌΠ΅Ρ: ukeu3k5oycgaauneqgtnvselmt4yemvoilkln7jpvamvfx7dnkdq.b32.i2p
Π Tor Π°Π΄ΡΠ΅Ρ ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· 16 ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² (80 Π±ΠΈΡ) ΠΈΠ»ΠΈ ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Ρ Ρ Π΅ΡΠ° SHA-1. I2P ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ 52 ΡΠΈΠΌΠ²ΠΎΠ»Π° (256 Π±ΠΈΡ) Π΄Π»Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ Ρ Π΅ΡΠ° SHA-256. Π€ΠΎΡΠΌΠ°Ρ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΠΊΠ°ΠΊ {52 ΡΠΈΠΌΠ²ΠΎΠ»Π°}.b32.i2p. Π£ Tor Π΅ΡΡΡ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ Π½Π° ΠΈΠ΄Π΅Π½ΡΠΈΡΠ½ΡΠΉ ΡΠΎΡΠΌΠ°Ρ {52 ΡΠΈΠΌΠ²ΠΎΠ»Π°}.onion Π΄Π»Ρ ΠΈΡ ΡΠΊΡΡΡΡΡ ΡΠ΅ΡΠ²ΠΈΡΠΎΠ². Base32 ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ Π² ΡΠ»ΡΠΆΠ±Π΅ ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΠ°Ρ Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°Π΅Ρ router ΡΠ΅ΡΠ΅Π· I2CP Π΄Π»Ρ ΠΏΠΎΠΈΡΠΊΠ° leaseSet ΠΈ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ Destination. ΠΠΎΠΈΡΠΊ Base32 Π±ΡΠ΄Π΅Ρ ΡΡΠΏΠ΅ΡΠ½ΡΠΌ ΡΠΎΠ»ΡΠΊΠΎ ΠΊΠΎΠ³Π΄Π° Destination ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΈ ΠΏΡΠ±Π»ΠΈΠΊΡΠ΅Ρ leaseSet. ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΈΠΌΠ΅Π½ΠΈ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΡΡΠ΅Π±ΠΎΠ²Π°ΡΡ ΠΏΠΎΠΈΡΠΊΠ° Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ ΡΠ΅ΡΠΈ, ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π·Π°Π½ΡΡΡ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Π±ΠΎΠ»ΡΡΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, ΡΠ΅ΠΌ ΠΏΠΎΠΈΡΠΊ Π² Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΉ Π°Π΄ΡΠ΅ΡΠ½ΠΎΠΉ ΠΊΠ½ΠΈΠ³Π΅.
Base32 Π°Π΄ΡΠ΅ΡΠ° ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π² Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π΅ ΠΌΠ΅ΡΡ, Π³Π΄Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΠΈΠΌΠ΅Π½Π° Ρ ΠΎΡΡΠΎΠ² ΠΈΠ»ΠΈ ΠΏΠΎΠ»Π½ΡΠ΅ destination, ΠΎΠ΄Π½Π°ΠΊΠΎ Π΅ΡΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ, Π³Π΄Π΅ ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡΡ Π½Π΅ ΡΠ°Π±ΠΎΡΠ°ΡΡ, Π΅ΡΠ»ΠΈ ΠΈΠΌΡ Π½Π΅ ΡΠ°Π·ΡΠ΅ΡΠ°Π΅ΡΡΡ Π½Π΅ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎ. I2PTunnel, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π·Π°Π²Π΅ΡΡΠΈΡΡΡ Ρ ΠΎΡΠΈΠ±ΠΊΠΎΠΉ, Π΅ΡΠ»ΠΈ ΠΈΠΌΡ Π½Π΅ ΡΠ°Π·ΡΠ΅ΡΠ°Π΅ΡΡΡ Π² destination.
Π Π°ΡΡΠΈΡΠ΅Π½Π½ΡΠ΅ ΠΈΠΌΠ΅Π½Π° Base32
Π Π°ΡΡΠΈΡΠ΅Π½Π½ΡΠ΅ ΠΈΠΌΠ΅Π½Π° base 32 Π±ΡΠ»ΠΈ Π²Π²Π΅Π΄Π΅Π½Ρ Π² ΡΠ΅Π»ΠΈΠ·Π΅ 0.9.40 Π΄Π»Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ Π·Π°ΡΠΈΡΡΠΎΠ²Π°Π½Π½ΡΡ lease sets. ΠΠ΄ΡΠ΅ΡΠ° Π΄Π»Ρ Π·Π°ΡΠΈΡΡΠΎΠ²Π°Π½Π½ΡΡ leasesets ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΡΡ ΠΏΠΎ 56 ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ Π·Π°ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌ ΡΠΈΠΌΠ²ΠΎΠ»Π°ΠΌ, Π½Π΅ Π²ΠΊΠ»ΡΡΠ°Ρ “.b32.i2p” (35 ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ Π΄Π΅ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ Π±Π°ΠΉΡ), ΠΏΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Ρ 52 ΡΠΈΠΌΠ²ΠΎΠ»Π°ΠΌΠΈ (32 Π±Π°ΠΉΡΠ°) Π΄Π»Ρ ΡΡΠ°Π΄ΠΈΡΠΈΠΎΠ½Π½ΡΡ Π°Π΄ΡΠ΅ΡΠΎΠ² base 32. Π‘ΠΌΠΎΡΡΠΈΡΠ΅ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΡ 123 ΠΈ 149 Π΄Π»Ρ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ.
Π‘ΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠ΅ Base 32 (“b32”) Π°Π΄ΡΠ΅ΡΠ° ΡΠΎΠ΄Π΅ΡΠΆΠ°Ρ Ρ Π΅Ρ Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΡ. ΠΡΠΎ Π½Π΅ Π±ΡΠ΄Π΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π΄Π»Ρ Π·Π°ΡΠΈΡΡΠΎΠ²Π°Π½Π½ΡΡ ls2 (ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ 123).
ΠΡ Π½Π΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠ°Π΄ΠΈΡΠΈΠΎΠ½Π½ΡΠΉ base 32 Π°Π΄ΡΠ΅Ρ Π΄Π»Ρ Π·Π°ΡΠΈΡΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ LS2 (ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ 123), ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΎΠ½ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΠΎΠ»ΡΠΊΠΎ Ρ ΡΡ Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΡ. ΠΠ½ Π½Π΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Π½Π΅Π·Π°ΡΠΈΡΡΠΎΠ²Π°Π½Π½ΡΠΉ ΠΏΡΠ±Π»ΠΈΡΠ½ΡΠΉ ΠΊΠ»ΡΡ. ΠΠ»ΠΈΠ΅Π½ΡΡ Π΄ΠΎΠ»ΠΆΠ½Ρ Π·Π½Π°ΡΡ ΠΏΡΠ±Π»ΠΈΡΠ½ΡΠΉ ΠΊΠ»ΡΡ Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΡ, ΡΠΈΠΏ ΠΏΠΎΠ΄ΠΏΠΈΡΠΈ, ΡΠΈΠΏ Π·Π°ΡΠΈΡΡΠΎΠ²Π°Π½Π½ΠΎΠΉ ΠΏΠΎΠ΄ΠΏΠΈΡΠΈ ΠΈ Π½Π΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΡΠΉ ΡΠ΅ΠΊΡΠ΅ΡΠ½ΡΠΉ ΠΈΠ»ΠΈ ΠΏΡΠΈΠ²Π°ΡΠ½ΡΠΉ ΠΊΠ»ΡΡ Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΠΈ ΡΠ°ΡΡΠΈΡΡΠΎΠ²ΠΊΠΈ leaseset. ΠΠΎΡΡΠΎΠΌΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ base 32 Π°Π΄ΡΠ΅ΡΠ° Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ. ΠΠ»ΠΈΠ΅Π½ΡΡ Π½ΡΠΆΠ½ΠΎ Π»ΠΈΠ±ΠΎ ΠΏΠΎΠ»Π½ΠΎΠ΅ Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ (ΠΊΠΎΡΠΎΡΠΎΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΏΡΠ±Π»ΠΈΡΠ½ΡΠΉ ΠΊΠ»ΡΡ), Π»ΠΈΠ±ΠΎ ΡΠ°ΠΌ ΠΏΡΠ±Π»ΠΈΡΠ½ΡΠΉ ΠΊΠ»ΡΡ. ΠΡΠ»ΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ ΠΈΠΌΠ΅Π΅Ρ ΠΏΠΎΠ»Π½ΠΎΠ΅ Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π² Π°Π΄ΡΠ΅ΡΠ½ΠΎΠΉ ΠΊΠ½ΠΈΠ³Π΅, ΠΈ Π°Π΄ΡΠ΅ΡΠ½Π°Ρ ΠΊΠ½ΠΈΠ³Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΠΎΠ±ΡΠ°ΡΠ½ΡΠΉ ΠΏΠΎΠΈΡΠΊ ΠΏΠΎ Ρ ΡΡΡ, ΡΠΎ ΠΏΡΠ±Π»ΠΈΡΠ½ΡΠΉ ΠΊΠ»ΡΡ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΠΎΠ»ΡΡΠ΅Π½.
ΠΠΎΡΡΠΎΠΌΡ Π½Π°ΠΌ Π½ΡΠΆΠ΅Π½ Π½ΠΎΠ²ΡΠΉ ΡΠΎΡΠΌΠ°Ρ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠΌΠ΅ΡΠ°Π΅Ρ ΠΏΡΠ±Π»ΠΈΡΠ½ΡΠΉ ΠΊΠ»ΡΡ Π²ΠΌΠ΅ΡΡΠΎ Ρ Π΅ΡΠ° Π² base32 Π°Π΄ΡΠ΅Ρ. ΠΡΠΎΡ ΡΠΎΡΠΌΠ°Ρ ΡΠ°ΠΊΠΆΠ΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ ΡΠΈΠΏ ΠΏΠΎΠ΄ΠΏΠΈΡΠΈ ΠΏΡΠ±Π»ΠΈΡΠ½ΠΎΠ³ΠΎ ΠΊΠ»ΡΡΠ° ΠΈ ΡΠΈΠΏ ΠΏΠΎΠ΄ΠΏΠΈΡΠΈ ΡΡ Π΅ΠΌΡ Π±Π»Π°ΠΉΠ½Π΄ΠΈΠ½Π³Π°.
Π ΡΡΠΎΠΌ ΡΠ°Π·Π΄Π΅Π»Π΅ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΈΡΡΠ΅ΡΡΡ Π½ΠΎΠ²ΡΠΉ ΡΠΎΡΠΌΠ°Ρ b32 Π΄Π»Ρ Π΄Π°Π½Π½ΡΡ Π°Π΄ΡΠ΅ΡΠΎΠ². Π₯ΠΎΡΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΠΎΠ±ΡΡΠΆΠ΄Π΅Π½ΠΈΠΉ ΠΌΡ Π½Π°Π·ΡΠ²Π°Π»ΠΈ ΡΡΠΎΡ Π½ΠΎΠ²ΡΠΉ ΡΠΎΡΠΌΠ°Ρ Π°Π΄ΡΠ΅ΡΠΎΠΌ “b33”, ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠΉ Π½ΠΎΠ²ΡΠΉ ΡΠΎΡΠΌΠ°Ρ ΡΠΎΡ ΡΠ°Π½ΡΠ΅Ρ ΠΎΠ±ΡΡΠ½ΡΠΉ ΡΡΡΡΠΈΠΊΡ “.b32.i2p”.
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΈ ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅
Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΠΈΠΌΡ Ρ ΠΎΡΡΠ° {56+ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ²}.b32.i2p (35+ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² Π² Π΄Π²ΠΎΠΈΡΠ½ΠΎΠΌ Π²ΠΈΠ΄Π΅) ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ. Π‘Π½Π°ΡΠ°Π»Π° ΡΡΠΎΡΠΌΠΈΡΡΠΉΡΠ΅ Π΄Π²ΠΎΠΈΡΠ½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ Π΄Π»Ρ ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π² base 32:
flag (1 byte)
bit 0: 0 for one-byte sigtypes, 1 for two-byte sigtypes
bit 1: 0 for no secret, 1 if secret is required
bit 2: 0 for no per-client auth,
1 if client private key is required
bits 7-3: Unused, set to 0
public key sigtype (1 or 2 bytes as indicated in flags)
If 1 byte, the upper byte is assumed zero
blinded key sigtype (1 or 2 bytes as indicated in flags)
If 1 byte, the upper byte is assumed zero
public key
Number of bytes as implied by sigtype
ΠΠΎΡΡΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° ΠΈ ΠΊΠΎΠ½ΡΡΠΎΠ»ΡΠ½Π°Ρ ΡΡΠΌΠΌΠ°:
Construct the binary data as above.
Treat checksum as little-endian.
Calculate checksum = CRC-32(data[3:end])
data[0] ^= (byte) checksum
data[1] ^= (byte) (checksum >> 8)
data[2] ^= (byte) (checksum >> 16)
hostname = Base32.encode(data) || ".b32.i2p"
ΠΡΠ±ΡΠ΅ Π½Π΅ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠ΅ Π±ΠΈΡΡ Π² ΠΊΠΎΠ½ΡΠ΅ b32 Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ ΡΠ°Π²Π½Ρ 0. ΠΠ»Ρ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠ³ΠΎ Π°Π΄ΡΠ΅ΡΠ° ΠΈΠ· 56 ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² (35 Π±Π°ΠΉΡ) Π½Π΅ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ Π±ΠΈΡΠΎΠ² Π½Π΅Ρ.
ΠΠ΅ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ Π²Π΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ
Strip the ".b32.i2p" from the hostname
data = Base32.decode(hostname)
Calculate checksum = CRC-32(data[3:end])
Treat checksum as little-endian.
flags = data[0] ^ (byte) checksum
if 1 byte sigtypes:
pubkey sigtype = data[1] ^ (byte) (checksum >> 8)
blinded sigtype = data[2] ^ (byte) (checksum >> 16)
else (2 byte sigtypes) :
pubkey sigtype = data[1] ^ ((byte) (checksum >> 8)) || data[2] ^ ((byte) (checksum >> 16))
blinded sigtype = data[3] || data[4]
parse the remainder based on the flags to get the public key
ΠΠΈΡΡ ΡΠ΅ΠΊΡΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΈ ΠΏΡΠΈΠ²Π°ΡΠ½ΠΎΠ³ΠΎ ΠΊΠ»ΡΡΠ°
ΠΠΈΡΡ secret ΠΈ private key ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π΄Π»Ρ ΡΠΊΠ°Π·Π°Π½ΠΈΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°ΠΌ, ΠΏΡΠΎΠΊΡΠΈ ΠΈΠ»ΠΈ Π΄ΡΡΠ³ΠΎΠΌΡ ΠΊΠ»ΠΈΠ΅Π½ΡΡΠΊΠΎΠΌΡ ΠΊΠΎΠ΄Ρ, ΡΡΠΎ secret ΠΈ/ΠΈΠ»ΠΈ private key ΠΏΠΎΡΡΠ΅Π±ΡΡΡΡΡ Π΄Π»Ρ ΡΠ°ΡΡΠΈΡΡΠΎΠ²ΠΊΠΈ leaseset. ΠΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠ΅ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΌΠΎΠ³ΡΡ Π·Π°ΠΏΡΠΎΡΠΈΡΡ Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ ΠΈΠ»ΠΈ ΠΎΡΠΊΠ»ΠΎΠ½ΠΈΡΡ ΠΏΠΎΠΏΡΡΠΊΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ, Π΅ΡΠ»ΠΈ ΡΡΠ΅Π±ΡΠ΅ΠΌΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ ΠΎΡΡΡΡΡΡΠ²ΡΡΡ.
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΡ
- XOR ΠΏΠ΅ΡΠ²ΡΡ 3 Π±Π°ΠΉΡ Ρ Ρ ΡΡΠ΅ΠΌ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π½ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΊΠΎΠ½ΡΡΠΎΠ»ΡΠ½ΠΎΠΉ ΡΡΠΌΠΌΡ ΠΈ Π³Π°ΡΠ°Π½ΡΠΈΡΡΠ΅Ρ, ΡΡΠΎ Π²ΡΠ΅ base32 ΡΠΈΠΌΠ²ΠΎΠ»Ρ Π² Π½Π°ΡΠ°Π»Π΅ ΡΠ°Π½Π΄ΠΎΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Ρ. ΠΠ΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½Ρ ΡΠΎΠ»ΡΠΊΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΠΉ ΡΠ»Π°Π³ΠΎΠ² ΠΈ sigtype, ΠΏΠΎΡΡΠΎΠΌΡ Π»ΡΠ±Π°Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΊΠ° ΡΠΊΠΎΡΠ΅Π΅ Π²ΡΠ΅Π³ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ Π½Π΅Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΡ ΠΈ Π±ΡΠ΄Π΅Ρ ΠΎΡΠΊΠ»ΠΎΠ½Π΅Π½Π°.
- Π ΠΎΠ±ΡΡΠ½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ (1-Π±Π°ΠΉΡΠΎΠ²ΡΠ΅ sigtypes, Π±Π΅Π· ΡΠ΅ΠΊΡΠ΅ΡΠ°, Π±Π΅Π· ΠΏΠ΅Ρ-ΠΊΠ»ΠΈΠ΅Π½ΡΡΠΊΠΎΠΉ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ), ΠΈΠΌΡ Ρ ΠΎΡΡΠ° Π±ΡΠ΄Π΅Ρ {56 ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ²}.b32.i2p, Π΄Π΅ΠΊΠΎΠ΄ΠΈΡΡΡΡΡ Π² 35 Π±Π°ΠΉΡ, ΠΊΠ°ΠΊ Π² Tor.
- 2-Π±Π°ΠΉΡΠΎΠ²Π°Ρ ΠΊΠΎΠ½ΡΡΠΎΠ»ΡΠ½Π°Ρ ΡΡΠΌΠΌΠ° Tor ΠΈΠΌΠ΅Π΅Ρ ΡΠ°ΡΡΠΎΡΡ Π»ΠΎΠΆΠ½ΡΡ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠ² 1/64K. Π‘ 3 Π±Π°ΠΉΡΠ°ΠΌΠΈ, ΠΌΠΈΠ½ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΈΠ³Π½ΠΎΡΠΈΡΡΠ΅ΠΌΡΡ Π±Π°ΠΉΡ, Π½Π°ΡΠ° ΠΏΡΠΈΠ±Π»ΠΈΠΆΠ°Π΅ΡΡΡ ΠΊ 1 ΠΈΠ· ΠΌΠΈΠ»Π»ΠΈΠΎΠ½Π°, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΠΉ flag/sigtype Π½Π΅Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½Ρ.
- Adler-32 - ΠΏΠ»ΠΎΡ ΠΎΠΉ Π²ΡΠ±ΠΎΡ Π΄Π»Ρ ΠΌΠ°Π»ΡΡ Π²Ρ ΠΎΠ΄Π½ΡΡ Π΄Π°Π½Π½ΡΡ ΠΈ Π΄Π»Ρ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΡ Π½Π΅Π±ΠΎΠ»ΡΡΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. ΠΠΌΠ΅ΡΡΠΎ ΡΡΠΎΠ³ΠΎ ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ CRC-32. CRC-32 Π±ΡΡΡΡ ΠΈ ΡΠΈΡΠΎΠΊΠΎ Π΄ΠΎΡΡΡΠΏΠ΅Π½.
- Π₯ΠΎΡΡ ΡΡΠΎ Π²ΡΡ ΠΎΠ΄ΠΈΡ Π·Π° ΡΠ°ΠΌΠΊΠΈ Π΄Π°Π½Π½ΠΎΠΉ ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ, router-Ρ ΠΈ/ΠΈΠ»ΠΈ ΠΊΠ»ΠΈΠ΅Π½ΡΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΠΎΠΌΠ½ΠΈΡΡ ΠΈ ΠΊΡΡΠΈΡΠΎΠ²Π°ΡΡ (Π²Π΅ΡΠΎΡΡΠ½ΠΎ, ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎ) ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΏΡΠ±Π»ΠΈΡΠ½ΠΎΠ³ΠΎ ΠΊΠ»ΡΡΠ° Π½Π° Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΈ Π½Π°ΠΎΠ±ΠΎΡΠΎΡ.
- ΠΡΠ»ΠΈΡΠ°ΡΡ ΡΡΠ°ΡΡΠ΅ Π²ΠΊΡΡΡ ΠΎΡ Π½ΠΎΠ²ΡΡ ΠΏΠΎ Π΄Π»ΠΈΠ½Π΅. Π‘ΡΠ°ΡΡΠ΅ b32 Π°Π΄ΡΠ΅ΡΠ° Π²ΡΠ΅Π³Π΄Π° {52 ΡΠΈΠΌΠ²ΠΎΠ»Π°}.b32.i2p. ΠΠΎΠ²ΡΠ΅ - {56+ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ²}.b32.i2p
- ΠΠ±ΡΡΠΆΠ΄Π΅Π½ΠΈΠ΅ Tor Π·Π΄Π΅ΡΡ
- ΠΠ΅ ΠΎΠΆΠΈΠ΄Π°ΠΉΡΠ΅, ΡΡΠΎ 2-Π±Π°ΠΉΡΠΎΠ²ΡΠ΅ sigtypes ΠΊΠΎΠ³Π΄Π°-Π»ΠΈΠ±ΠΎ ΠΏΠΎΡΠ²ΡΡΡΡ, ΠΌΡ ΠΏΠΎΠΊΠ° ΡΠΎΠ»ΡΠΊΠΎ Π½Π° 13. ΠΠ΅Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²ΡΠ²Π°ΡΡ ΡΠ΅ΠΉΡΠ°Ρ.
- ΠΠΎΠ²ΡΠΉ ΡΠΎΡΠΌΠ°Ρ ΠΌΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π² jump ΡΡΡΠ»ΠΊΠ°Ρ (ΠΈ ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°ΡΡΡΡ jump ΡΠ΅ΡΠ²Π΅ΡΠ°ΠΌΠΈ) ΠΏΡΠΈ ΠΆΠ΅Π»Π°Π½ΠΈΠΈ, ΡΠΎΡΠ½ΠΎ ΡΠ°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ b32.
- ΠΡΠ±ΠΎΠΉ ΡΠ΅ΠΊΡΠ΅Ρ, ΠΏΡΠΈΠ²Π°ΡΠ½ΡΠΉ ΠΊΠ»ΡΡ ΠΈΠ»ΠΈ ΠΏΡΠ±Π»ΠΈΡΠ½ΡΠΉ ΠΊΠ»ΡΡ Π΄Π»ΠΈΠ½Π½Π΅Π΅ 32 Π±Π°ΠΉΡ ΠΏΡΠ΅Π²ΡΡΠΈΠ» Π±Ρ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΡΡ Π΄Π»ΠΈΠ½Ρ DNS-ΠΌΠ΅ΡΠΊΠΈ Π² 63 ΡΠΈΠΌΠ²ΠΎΠ»Π°. ΠΡΠ°ΡΠ·Π΅ΡΠ°ΠΌ, Π²Π΅ΡΠΎΡΡΠ½ΠΎ, Π²ΡΡ ΡΠ°Π²Π½ΠΎ.
- ΠΠ΅Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌ Ρ ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠΉ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΡΡ. ΠΠΎΠ»Π΅Π΅ Π΄Π»ΠΈΠ½Π½ΡΠ΅ b32 Π°Π΄ΡΠ΅ΡΠ° Π½Π΅ ΡΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½Ρ Π² 32-Π±Π°ΠΉΡΠΎΠ²ΡΠ΅ Ρ ΡΡΠΈ Π² ΡΡΠ°ΡΠΎΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠΌ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠΈ.