I2P

Source: Wikipedia, the free encyclopedia.
Original author(s)I2P Team[1]
Initial release2003; 21 years ago (2003)
Stable release
2.5.0[2] Edit this on Wikidata / 8 April 2024; 3 days ago (8 April 2024)
Repository
Written in
MIT
Websitegeti2p.net

The Invisible Internet Project (I2P) is an anonymous network layer (implemented as a mix network) that allows for censorship-resistant, peer-to-peer communication. Anonymous connections are achieved by encrypting the user's traffic (by using end-to-end encryption), and sending it through a volunteer-run network of roughly 55,000 computers distributed around the world. Given the high number of possible paths the traffic can transit, a third party watching a full connection is unlikely. The software that implements this layer is called an "I2P router", and a computer running I2P is called an "I2P node". I2P is free and open sourced, and is published under multiple licenses.[5]

Technical design

I2P has been

Freenet.[6][7] The software's developers emphasize that bugs are likely to occur in the beta version and that peer review has been insufficient to date.[8] However, they believe the code is now reasonably stable and well-developed, and more exposure can help the development of I2P.[citation needed
]

The network is strictly message-based, like

public keys), so that neither senders nor recipients of messages need to reveal their IP address
to the other side or to third-party observers.

Although many developers had been a part of the Invisible IRC Project (IIP)

web proxy network using Squid, or DNS
).

Many developers of I2P are known only under

pseudonyms. While the previous main developer, jrandom, is currently on hiatus,[12] others, such as zzz, killyourtv, and Complication have continued to lead development efforts,[citation needed] and are assisted by numerous contributors.[1]

I2P uses 2048bit

Releases

I2P has had a stable release every six to eight weeks. Updates are distributed via I2P torrents and are signed by the release manager (generally zzz or str4d).

Funding

On the website it states, that "funding for I2P comes entirely from donations".[59] Admins and managers of the project said, that "the core project itself doesn't take donations". These should instead go to secondary applications or be spent on hiring others, to work on I2P.[60] Support for the onboarding for I2P came from the Open Technology Fund.[61][62] In contrast to The Tor Project, I2P has "not the financial or legal infrastructure to support a network of exit nodes".[63] The reseed servers,[64] a sort of bootstrap nodes,[65] which connect the user with the initial set of peers to join the I2P-network, should be run by volunteers.[66]

Software

I2P 0.9.31-0 router console

Since I2P is an anonymizing network layer, it is designed so other software can use it for anonymous communication. As such, there are a variety of tools currently available for I2P or in development.

The I2P router is controlled through the router console, which is a web frontend accessed through a web browser.

General networking

Chat

  • Any
    IRC server
    (on localhost). I2P have the option to create tunnels that are specific for this usage, where certain commands that could de-anonymize the user are filtered out.

File sharing

Bridging to clearnet

Currently, Vuze and BiglyBT are the torrent clients that make clearnet (connections not through I2P) torrents available on I2P and vice versa. Depending on the client settings, torrents from the internet can be made available on I2P (via announcements to I2P's DHT network) and torrents from I2P can be made available to the internet. For this reason, torrents previously published only on I2P can be made available to the entire Internet, and users of I2P can often download popular content from the Internet while maintaining the anonymity of I2P. As of August 2022, the default outproxy is exit.stormycloud.i2p which is run by StormyCloud Inc.[77][78][79]

Email

A screenshot of the inbox of I2P-Bote.

Instant messaging

  • I2P-Messenger is a simple
    instant messenger for I2P.[81] No servers can log the user's conversations. No ISP can log with whom the user chats, when, or for how long. As it is serverless, it can make use of I2P's end-to-end encryption, preventing any node between two parties from having access to the plain text. I2P-Messenger can be used for fully anonymous instant communication with persons the user doesn't even know, or, alternatively, to communicate securely and untraceably with friends, family members, or colleagues. In addition to messaging, file transfer
    is also supported.
  • I2P-Talk is another simple instant messenger incompatible with I2P-Messenger, but having the same security properties

Publishing

Routers

  • I2PBerry is a Linux distribution which can be used as a router to encrypt and route network traffic through the I2P network.
  • i2pd is a light-weight I2P router written in C++, stripping the excessive applications such as e-mail, torrents, and others that can be regarded as bloat.[82][83]
  • Kovri is an I2P router written in C++.
    Monero to send new transaction information over I2P, making it much more difficult to find which node is the origin of a transaction request.[86] Those using the Kovri router will be running full I2P routers that contribute to the I2P network the same way the current Java router does. This project is expected to benefit both the Monero and I2P communities, since it will allow for greater privacy in Monero, and it should increase the number of nodes on the I2P network.[87]

The Privacy Solutions project

The Privacy Solutions project,[88] a new organization that develops and maintains I2P software, launched several new development efforts designed to enhance the privacy, security, and anonymity for users, based on I2P protocols and technology.

These efforts include:[89]

  • The Abscond browser bundle.
  • i2pd,[90] an alternate implementation of I2P, written in C++ (rather than Java).
  • The "BigBrother" I2P network monitoring project.

The code repository and download sections for the i2pd and Abscond project is available for the public to review and download.[91] Effective January, 2015 i2pd is operating under PurpleI2P.[92]

Android

I2P running on Android.
  • Release builds of an I2P Router application for Android can be found on the Google Play store under The Privacy Solutions Project's Google Play account or on an F-Droid repository hosted by the developers.[93]
  • Nightweb is an Android application that utilizes I2P and Bittorrent to share blog posts, photos, and other similar content. It can also be run as a desktop application. It is no longer in development.[94]

Cryptocurrency

Some cryptocurrencies that support I2P are listed below.

Terminology

I2P's mascot, itoopie, who is looking through a magnifying glass.[96]
Eepsite
Eepsites are websites that are hosted anonymously within the I2P network. Eepsite names end in .i2p, such as ugha.i2p or forum.i2p. EepProxy can locate these sites through the cryptographic identifier keys stored in the hosts.txt file found within the I2P program directory. Typically, I2P is required to access these eepsites.[97]
.i2p
'I2p' is a pseudo-top-level domain which is only valid within the I2P overlay network scope. .i2p names are resolved by browsers by submitting requests to EepProxy which will resolve names to an I2P peer key and will handle data transfers over the I2P network while remaining transparent to the browser.[98]
EepProxy
The EepProxy program handles all communication between the browser and any eepsite. It functions as a proxy server that can be used by any web browser.
Peers, I2P nodes
Other machines using I2P that are connected to user's machine within the network. Each machine within the network shares the routing and forwarding of encrypted packets.
Tunnels
Every ten minutes, a connection is established between the user's machine and another peer. Data to and from the user, along with the data for other peers (routed through the user's machine), pass through these tunnels and are forwarded to their final destination (may include more
jumps).[99]
netDb
The distributed hash table (DHT) database based on the Kademlia algorithm that holds information on I2P nodes and I2P eepsites. This database is split up among routers known as "floodfill routers". When a user wants to know how to contact an eepsite, or where more peers are, they query the database.[100][97]

Vulnerabilities

Denial of service attacks are possible against websites hosted on the network, though a site operator may secure their site against certain versions of this type of attack to some extent.[101][102]

A

zero-day vulnerability was discovered for I2P in 2014, and was exploited to de-anonymize at least 30,000 users. This included users of the operating system Tails.[103] This vulnerability was later patched.[104][105]

A 2017 study examining how forensic investigators might exploit vulnerabilities in I2P software to gather useful evidence indicated that a seized machine which had been running I2P router software may hold unencrypted local data that could be useful to law enforcement. Records of which eepsites a user of a later-seized machine was interested in may also be inferred. The study identified a "trusted" I2P domain registrar ("NO.i2p") which appeared to have been abandoned by its administrator, and which the study identified as a potential target for law enforcement takeover. It alternatively suggested waiting for NO.i2p's server to fail, only to social engineer the I2P community into moving to a phony replacement. Another suggestion the study proposed was to register a mirror version of a target website under an identical domain.[102]

I2PCon

David Dagon presenting at the first I2Pcon.

From August 15, 2015 to August 16, 2015 an I2P convention was held in Toronto, Ontario.[106] The conference was hosted by a local hackerspace, Hacklab. The conference featured presentations from I2P developers and security researchers.

See also

Software

References

  1. ^ a b "I2P Project Members". geti2p.net. Archived from the original on 26 February 2019. Retrieved 22 November 2015.
  2. ^ "Release More Application Improvements, Audit of NetDB Isolation strategy · i2p/i2p.i2p". 8 April 2024. Retrieved 11 April 2024.
  3. ^ I2P (project), Transifex, archived from the original on 2013-12-25, retrieved 2014-02-12.
  4. ^ "Licenses", Get involved, Get I2P, archived from the original on 2013-12-24, retrieved 2013-12-24.
  5. ^ Gallagher, Sean (2015-01-13). "Under the hood of I2P, the Tor alternative that reloaded Silk Road". Ars Technica. Archived from the original on 2019-07-12. Retrieved 2019-08-17.
  6. ^ "Anonymity Networks: VPNs, Tor, and I2P | Restore Privacy". 3 February 2020. Archived from the original on 28 January 2021.
  7. ^ Get I2P (blog), archived from the original on 2017-07-02, retrieved 2013-12-24.
  8. ^ "Benefits of Tor over I2P". I2P Dev Team. Archived from the original on 24 December 2013. Retrieved 23 December 2013.
  9. ^ "Secure Semireliable UDP (SSU)". geti2p.net. Archived from the original on 6 September 2023. Retrieved 18 May 2023.
  10. ^ "Garlic Routing – I2P". geti2p.net. Archived from the original on 2019-11-16. Retrieved 2017-12-12.
  11. ^ "IIP", Invisible IP, Source forge, archived from the original on 2009-05-18, retrieved 2012-02-11.
  12. ^ "Jrandom's Announcement – I2P". geti2p.net. Archived from the original on 2017-08-19. Retrieved 2017-07-15.
  13. ^ "ElGamal/AES + SessionTag Encryption – I2P". geti2p.net. Archived from the original on 2017-03-31. Retrieved 2017-03-30.
  14. ^ "Crypto/ECDSA – I2P Bugtracker". trac.i2p2.de. Archived from the original on 2015-05-20. Retrieved 2017-03-30.
  15. ^ zzz (8 February 2014). "0.9.11 Release". geti2p.net. Archived from the original on 2 September 2016. Retrieved 15 September 2015.
  16. ^ zzz (31 March 2014). "0.9.12 Release". geti2p.net. Archived from the original on 2 September 2016. Retrieved 15 September 2015.
  17. ^ zzz (22 May 2014). "0.9.13 Release". geti2p.net. Archived from the original on 2 August 2015. Retrieved 15 September 2015.
  18. ^ zzz (26 July 2014). "0.9.14 Release". geti2p.net. Archived from the original on 6 October 2015. Retrieved 15 September 2015.
  19. ^ zzz (9 August 2014). "0.9.14.1 Release". geti2p.net. Archived from the original on 2 September 2016. Retrieved 15 September 2015.
  20. ^ zzz (20 September 2014). "0.9.15 Release". geti2p.net. Archived from the original on 28 June 2017. Retrieved 15 September 2015.
  21. ^ zzz (1 November 2014). "0.9.16 Release". geti2p.net. Archived from the original on 3 March 2016. Retrieved 15 September 2015.
  22. ^ zzz (30 November 2014). "0.9.17 Release". geti2p.net. Archived from the original on 17 December 2015. Retrieved 15 September 2015.
  23. ^ zzz (22 February 2015). "0.9.18 Release". geti2p.net. Archived from the original on 11 September 2015. Retrieved 15 September 2015.
  24. ^ zzz (12 April 2015). "0.9.19 Release". geti2p.net. Archived from the original on 19 April 2015. Retrieved 4 May 2015.
  25. ^ zzz (2 June 2015). "0.9.20 Release". geti2p.net. Archived from the original on 11 September 2015. Retrieved 15 September 2015.
  26. ^ zzz (31 July 2015). "0.9.21 Release". geti2p.net. Archived from the original on 11 September 2015. Retrieved 2 August 2015.
  27. ^ zzz (12 December 2015). "0.9.22 Release". geti2p.net. Archived from the original on 4 March 2016. Retrieved 13 September 2015.
  28. ^ str4d (19 November 2015). "0.9.23 Release". geti2p.net. Archived from the original on 21 November 2015. Retrieved 20 November 2015.{{cite web}}: CS1 maint: numeric names: authors list (link)
  29. ^ zzz (27 January 2016). "0.9.24 Release". geti2p.net. Archived from the original on 2 February 2016. Retrieved 29 January 2016.
  30. ^ zzz (3 March 2016). "0.9.25 Release". geti2p.net. Archived from the original on 3 April 2016. Retrieved 23 March 2016.
  31. ^ zzz (7 June 2016). "0.9.26 Release". geti2p.net. Archived from the original on 2 September 2016. Retrieved 7 June 2016.
  32. ^ zzz (17 October 2016). "0.9.27 Release". geti2p.net. Archived from the original on 6 February 2017. Retrieved 6 January 2017.
  33. ^ zzz (12 December 2016). "0.9.28 Release". geti2p.net. Archived from the original on 29 August 2017. Retrieved 15 July 2017.
  34. ^ zzz (27 February 2017). "0.9.29 Release". geti2p.net. Archived from the original on 6 March 2017. Retrieved 5 March 2017.
  35. ^ zzz (3 May 2017). "0.9.30 Release". geti2p.net. Archived from the original on 3 October 2020. Retrieved 14 June 2017.
  36. ^ zzz (7 August 2017). "0.9.31 Release". geti2p.net. Archived from the original on 11 August 2017. Retrieved 11 August 2017.
  37. ^ zzz (11 November 2017). "0.9.32 Release". geti2p.net. Archived from the original on 15 November 2017. Retrieved 15 November 2017.
  38. ^ zzz (30 January 2018). "0.9.33 Release". geti2p.net. Archived from the original on 31 January 2018. Retrieved 30 January 2018.
  39. ^ zzz (10 April 2018). "0.9.34 Release". geti2p.net. Archived from the original on 12 April 2018. Retrieved 11 April 2018.
  40. ^ zzz (26 June 2018). "0.9.35 Release". geti2p.net. Archived from the original on 29 June 2018. Retrieved 29 June 2018.
  41. ^ zzz (23 August 2018). "0.9.36 Release". geti2p.net. Archived from the original on 27 March 2019. Retrieved 29 January 2019.
  42. ^ zzz (4 October 2018). "0.9.37 Release". geti2p.net. Archived from the original on 7 January 2019. Retrieved 29 January 2019.
  43. ^ zzz (22 January 2019). "0.9.38 Release". geti2p.net. Archived from the original on 29 January 2019. Retrieved 29 January 2019.
  44. ^ zzz (21 March 2019). "0.9.39 Release". geti2p.net. Archived from the original on 22 March 2019. Retrieved 22 March 2019.
  45. ^ zzz (7 May 2019). "0.9.40 Release". geti2p.net. Archived from the original on 2 August 2019. Retrieved 7 December 2019.
  46. ^ zzz (2 July 2019). "0.9.41 Release". geti2p.net. Archived from the original on 13 August 2019. Retrieved 13 August 2019.
  47. ^ zzz (28 August 2019). "0.9.42 Release". geti2p.net. Archived from the original on 3 October 2020. Retrieved 27 September 2020.
  48. ^ zzz (22 October 2019). "0.9.43 Release". geti2p.net. Archived from the original on 25 November 2019. Retrieved 23 November 2019.
  49. ^ zzz (1 December 2019). "0.9.44 Release". geti2p.net. Archived from the original on 5 December 2019. Retrieved 7 December 2019.
  50. ^ zzz (25 February 2020). "0.9.45 Release". geti2p.net. Archived from the original on 21 October 2020. Retrieved 3 October 2020.
  51. ^ zzz (25 May 2020). "0.9.46 Release". geti2p.net. Archived from the original on 20 September 2020. Retrieved 3 October 2020.
  52. ^ zzz (24 August 2020). "0.9.47 Release". geti2p.net. Archived from the original on 27 August 2020. Retrieved 9 September 2020.
  53. ^ zzz (30 November 2020). "0.9.48 Release". geti2p.net. Archived from the original on 20 January 2021. Retrieved 6 January 2021.
  54. ^ zzz (17 February 2021). "0.9.49 Release". geti2p.net. Archived from the original on 13 December 2021. Retrieved 13 December 2021.
  55. ^ zzz (17 May 2021). "0.9.50 Release". geti2p.net. Archived from the original on 26 May 2021. Retrieved 1 June 2021.
  56. ^ zzz (23 August 2021). "1.5.0 Release". geti2p.net. Archived from the original on 13 December 2021. Retrieved 13 December 2021.
  57. ^ 1.6.0 was tagged, but not released.
  58. ^ zzz (29 September 2021). "1.6.1 Release". geti2p.net. Archived from the original on 13 December 2021. Retrieved 13 December 2021.
  59. ^ "I2P: A scalable framework for anonymous communication – Introduction". I2P Website. Archived from the original on 2022-03-14. Retrieved 2022-03-14.
  60. ^ idk aka. eyedeekay (2022-03-06). "Network privacy via i2p w/ idk and Sadie". Opt Out Podcast. 00:55:43. Archived from the original on 2022-03-07. Retrieved 2022-03-14.
  61. ^ Mascis, Sadie (2022-03-06). "Network privacy via i2p w/ idk and Sadie"". Opt Out Podcast. 00:54:20. Archived from the original on 2022-03-07. Retrieved 2022-03-13.
  62. ^ Open Technology Fund. "5G and Human Rights". Open Technology Fund Website. U.S. Agency for Global Media. Archived from the original on 2022-03-14. Retrieved 2022-03-14.
  63. ^ idk aka. eyedeekay (2022-03-06). "Network privacy via i2p w/ idk and Sadie". Opt Out Podcast. 00:34:20. Archived from the original on 2022-03-07. Retrieved 2022-03-13.
  64. ^ "How to Set up a Reseed Server". I2P Website. Archived from the original on 2022-03-14. Retrieved 2022-03-13.
  65. ^ "How to volunteer by helping I2P-Bote bootstrap – Blog". I2p Website. Archived from the original on 2022-04-07. Retrieved 2022-03-13.
  66. ^ idk aka. eyedeekay (2022-03-06). "Network privacy via i2p w/ idk and Sadie". Opt Out Podcast. 00:57:00. Archived from the original on 2022-03-07. Retrieved 2022-03-13.
  67. ^ "SAM", API, I2P, archived from the original on 2013-12-24, retrieved 2013-12-24.
  68. ^ "BOB", API, Get I2P, archived from the original on 2013-12-24, retrieved 2013-12-24.
  69. ^ "GitHub – subgraph/Orchid". 7 March 2019. Archived from the original on 9 August 2017. Retrieved 20 October 2017 – via GitHub.
  70. ^ I2P Bittorrent FAQ (forum), DE: i2p2, archived from the original on 2011-11-03.
  71. ^ The Hunting of the Snark Project – BitTorrent Application Suite, Klomp, archived from the original on 2013-11-24, retrieved 2013-12-22.
  72. ^ "How To for I2P Network Plugin", I2PHelper (Howto) (setup tutorial), Vuze, archived from the original on 2015-02-25, retrieved 2015-02-23.
  73. ^ "Rufus – BitTorrent Client". Sourceforge. Archived from the original on 2010-01-07. Retrieved 2006-09-06..
  74. ^ "GitHub – majestrate/XD: i2p bittorrent client". 22 March 2019. Archived from the original on 29 July 2017. Retrieved 2 November 2017 – via GitHub.
  75. ^ "Official Nachtblitz Resource". Archived from the original on 2022-11-01. Retrieved 2022-11-01.
  76. ^ "r/i2p – Introducing MuWire – a file-sharing application for I2P". reddit. 31 May 2019. Archived from the original on 2022-04-07. Retrieved 2019-12-17.
  77. ^ "Vuze Speeds Up Torrent Downloads Through "Swarm Merging"". TorrentFreak. 20 March 2015. Archived from the original on 17 October 2017. Retrieved 4 June 2016.
  78. ^ "I2PHelper HowTo". VuzeWiki. Archived from the original on 20 October 2017. Retrieved 4 June 2016.
  79. ^ "StormyCloud – I2P Outproxy | I2P Anonymous Network". stormycloud.org. Retrieved 2023-07-24.
  80. ^ i2p/i2p.i2p-bote, The I2P Project, 2024-03-06, retrieved 2024-03-08
  81. ^ Introducing I2P, Nov 10, 2015, archived from the original on November 25, 2015, retrieved November 11, 2015
  82. ^ "PurpleI2P/i2pd". GitHub. Archived from the original on 2018-10-04. Retrieved 2018-08-20.
  83. ^ "Invisible Internet Protocol Daemon". i2pd.website. Archived from the original on 2018-08-20. Retrieved 2018-08-20.
  84. ^ "Kovri". Archived from the original on 2017-11-07. Retrieved 2017-10-30.
  85. ^ "What is the difference between i2pd and Kovri?". StackExchange. Retrieved 4 March 2017.
  86. ^ "Kovri – Moneropedia". GetMonero. Archived from the original on 5 March 2017. Retrieved 4 March 2017.
  87. ^ "What use cases will Kovri have for Monero?". StackExchange. Archived from the original on 2023-01-17. Retrieved 2017-03-04.
  88. ^ Privacy Solutions project, archived from the original on 19 April 2018.
  89. ^ List of ongoing Privacy Solutions projects, archived from the original on 2021-05-07, retrieved 2022-08-27.
  90. ^ "Invisible Internet Protocol Daemon". i2pd.website. Archived from the original on 2018-08-20. Retrieved 2018-08-20.
  91. ^ Active development, The Privacy Solutions, 22 September 2022, archived from the original on 12 November 2014, retrieved 16 January 2015
  92. ^ Active development, Purple I2P, 22 September 2022, archived from the original on 4 February 2016, retrieved 7 February 2016
  93. ^ Android App Releases, archived from the original on 2014-12-15, retrieved 2014-12-15
  94. ^ Discontinued, Nightweb, archived from the original on 2017-07-04, retrieved 2015-04-26.
  95. ^ "Add I2P support using I2P SAM by vasild · Pull Request #20685 · bitcoin/bitcoin". GitHub. Archived from the original on 2021-03-03. Retrieved 2021-04-03.
  96. ^ "I2P con 2015 – Growing the Network, Spreading the Word, 03:41". YouTube. Archived from the original on 2022-04-07. Retrieved 2018-06-30.
  97. ^ a b "Intro". I2P. Archived from the original on 6 April 2016. Retrieved 4 June 2016.
  98. ^ "Naming and Addressbook – I2P". geti2p.net. Archived from the original on 29 March 2016. Retrieved 4 June 2016.
  99. ^ "Tunnel Routing". I2P. Archived from the original on 26 March 2016. Retrieved 4 June 2016.
  100. ^ "The Network Database". I2P. Archived from the original on 7 March 2016. Retrieved 4 June 2016.
  101. ^ Kack, Christopher (2012-09-11). "Layer 7 DOS against I2P darknet". Kejsarmakten:Development. Archived from the original on 2012-10-14. Retrieved 2021-03-13.
  102. ^ .
  103. ^ Storm, Darlene (2014-07-24). "Zero-day broker exploits vulnerability in I2P to de-anonymize Tails users". Computerworld. Archived from the original on 2020-09-29. Retrieved 2021-03-13.
  104. ^ "I2P patched against de-anonymizing 0-day, Tails integration still to follow". Help Net Security. 2014-07-29. Archived from the original on 2020-12-10. Retrieved 2021-03-13.
  105. ^ "0.9.14 Release – Blog – I2P". geti2p.net. Archived from the original on 2021-04-22. Retrieved 2021-03-13.
  106. ^ "I2PCon: Mission Accomplished – Blog". I2P. Archived from the original on 10 June 2016. Retrieved 4 June 2016.

External links

This page is based on the copyrighted Wikipedia article: I2P. Articles is available under the CC BY-SA 3.0 license; additional terms may apply.Privacy Policy