Routing in the I2P network. Floodfiles

"Open Source" and "Decentralization" are the two main nameplates that provide a good first impression of a project. Often, popular projects are cunning about these topics, or they completely mislead their users, being proprietary and partially centralized. For example, a semi-open Telegram and a very noticeably centralized TOR.





What do we know about I2P? I propose to understand in detail what ensures the connectivity and performance of a completely decentralized network: Floodfiles are a kind of bulletin boards.





Introduction to the topic

To begin with, I2P intranet names do not correspond in any way to any IP addresses, as they do on the traditional Internet. Consequently, there is no network and subnet routing that the IP concept provides. Moreover, the status of the network, directly related to anonymity, must be based on something. Agree, the question here is clearly not about optimal short paths from point to point, but rather about something opposite: unpredictable routes and a ton of clever cryptography.





, , , - . , «.b32.i2p», – SHA256 , . , .





, - , .. , . , b32- , , IP- : DNS- . I2P DNS- – , , .





:





  • I2P ( «.i2p», , - , «.b32.i2p»);





  • , .. . , , ;





  • , , . 10 , , .





I2P-

, (destination) (floodfill), :





(, , URI- ) . SHA256. : . , I2P-. , « b32- + » .





, , , , , . , , .





. . , . .





(destination), , . . , . , , . . , , , . .





– , . , : IP-. – : floodfill = true



.





: , I2P-. , , ?





- IP-, – IP- .





I2P- : . , . – – , base64- . SHA256, 32 . , b32-. , (router ident) base64 ( ).





: NTCP2 (- TCP) SSU (- UDP). I2P , , -. . . , .





, . , . RI (router info) – , . , .





Router Info «netDb». RI (Router Caps), ( ). .





(gateway). , .





, - , Router Info . .





. .





: , Router Info. « ». , , , , , «».





, . , , .





( -) «» «», , . . I2P .





I2P, . , , .





. . … I2P , , .





, . ElGamal, . ( ECIES_X25519_AEAD, 4



). , , .





i2pd OpenWRT. .








All Articles