I2P#Instant messaging
{{Short description|Free and open source project building an anonymous network}}
{{Primary sources|article|date=August 2017}}
{{Infobox software
| title =
| name = I2P — The Anonymous Network
| logo = file:I2P logo.svg
| logo_size = 300px
| logo_alt =
| logo caption =
| screenshot =
| screenshot_size =
| screenshot_alt =
| caption = I2P 0.9.8.1 Router Console
| collapsible =
| developer =
| released = {{Start date and age|2003}}
| latest release version = {{wikidata|property|preferred|references|edit|Q565283|P348|P548=Q2804309}}
| latest release date = {{Start date and age|{{wikidata|qualifier|preferred|single|Q565283|P348|P548=Q2804309|P577}}}}
| latest preview version = {{wikidata|property|preferred|references|edit|Q565283|P348|P548=Q51930650}}
| latest preview date = {{Start date and age|{{wikidata|qualifier|preferred|single|Q565283|P348|P548=Q51930650|P577}}}}
| programming language = Java
| operating system = Cross-platform: Unix-like (Android, Linux, BSD, macOS), Microsoft Windows
| platform =
| size =
| language = English, Spanish
Incomplete translations: Russian, French, Romanian, German, Swedish, Italian, Portuguese, Chinese, Dutch, Polish, Hungarian, Arabic, Japanese, Estonian, Persian{{Citation | title = I2P | url = https://www.transifex.com/projects/p/I2P/ | publisher = Transifex | type = project | access-date = 2014-02-12 | archive-date = 2013-12-25 | archive-url = https://web.archive.org/web/20131225141917/https://www.transifex.com/projects/p/I2P/ | url-status = live }}.
| language count =
| language footnote =
| genre = Anonymity application, Overlay network, mix network, garlic router, peer-to-peer
| license = Public domain, BSD, GPL, MIT (license varies by component){{
Citation
| access-date = 2013-12-24
| archive-date = 2013-12-24
| archive-url = https://web.archive.org/web/20131224112728/https://geti2p.net/en/get-involved/develop/licenses
| contribution = Licenses
| contribution-url = https://geti2p.net/en/get-involved/develop/licenses
| publisher = Get I2P
| title = Get involved
| url-status = live
}}
| alexa =
| website = {{URL|https://geti2p.net/}}
| standard =
| AsOf =
}}
{{File sharing sidebar}}
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 source, and is published under multiple licenses.{{Cite web|url=https://arstechnica.com/information-technology/2015/01/under-the-hood-of-i2p-the-tor-alternative-that-reloaded-silk-road/|title=Under the hood of I2P, the Tor alternative that reloaded Silk Road|last=Gallagher|first=Sean|date=2015-01-13|website=Ars Technica|language=en-us|archive-url=https://archive.today/20190712191700/https://arstechnica.com/information-technology/2015/01/under-the-hood-of-i2p-the-tor-alternative-that-reloaded-silk-road/|archive-date=2019-07-12|url-status=live|access-date=2019-08-17}}
Technical design
I2P started in 2003 as a fork of Freenet.{{cite web |url=https://restoreprivacy.com/anonymity-networks/ |title=Anonymity Networks: VPNs, Tor, and I2P | Restore Privacy |date=3 February 2020 |format= |accessdate= |archive-date=28 January 2021 |archive-url=https://web.archive.org/web/20210128084403/https://restoreprivacy.com/anonymity-networks/ |url-status=live }}{{Citation | url = https://geti2p.net/en/blog/ | type = blog | title = Get I2P | access-date = 2013-12-24 | archive-date = 2017-07-02 | archive-url = https://web.archive.org/web/20170702010806/https://geti2p.net/en/blog/ | url-status = live }}.
The network is strictly message-based, like IP, but a library is available to allow reliable streaming communication on top of it (similar to Non-blocking IO-based TCP, although from version 0.6, a new Secure Semi-reliable UDP transport is used{{cite web |title=Secure Semireliable UDP (SSU) |url=https://geti2p.net/en/docs/transport/ssu |access-date=18 May 2023 |archive-url=https://archive.today/20230906220752/https://geti2p.net/en/docs/transport/ssu |archive-date=6 September 2023 |website=geti2p.net}}). All communication is end-to-end encrypted (in total, four layers of encryption are used when sending a message) through garlic routing,{{cite web|url=https://geti2p.net/en/docs/how/garlic-routing|title=Garlic Routing – I2P|website=geti2p.net|access-date=2017-12-12|archive-date=2019-11-16|archive-url=https://web.archive.org/web/20191116095738/https://geti2p.net/en/docs/how/garlic-routing|url-status=live}} and even the end points ("destinations") are cryptographic identifiers (essentially a pair of 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){{Citation | title = Invisible IP | publisher = Source forge | contribution = IIP | contribution-url = http://invisibleip.sourceforge.net/iip/ | access-date = 2012-02-11 | archive-date = 2009-05-18 | archive-url = https://web.archive.org/web/20090518155407/http://invisibleip.sourceforge.net/iip/ | url-status = live }}. and Freenet communities, significant differences exist between their designs and concepts. IIP was an anonymous centralized IRC server. Freenet is a censorship-resistant distributed data store. I2P is an anonymous peer-to-peer distributed communication layer designed to run any traditional internet service (e.g. Usenet, email, IRC, file sharing, Web hosting and HTTP, or Telnet), as well as more traditional distributed applications (e.g. a distributed data store, a 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,{{Cite web|url=https://geti2p.net/en/misc/jrandom-awol|title=Jrandom's Announcement – I2P|website=geti2p.net|language=en|access-date=2017-07-15|archive-date=2017-08-19|archive-url=https://web.archive.org/web/20170819182716/https://geti2p.net/en/misc/jrandom-awol|url-status=live}} others, such as zzz, killyourtv, and Complication have continued to lead development efforts,{{source?|date=September 2023}} and are assisted by numerous contributors.
I2P uses 2048bit ElGamal/AES256/SHA256+Session Tags encryption{{cite web|url=https://geti2p.net/pl/docs/how/elgamal-aes|title=ElGamal/AES + SessionTag Encryption – I2P|website=geti2p.net|access-date=2017-03-30|archive-date=2017-03-31|archive-url=https://web.archive.org/web/20170331115147/https://geti2p.net/pl/docs/how/elgamal-aes|url-status=live}} and Ed25519 EdDSA/ECDSA signatures.{{cite web|url=https://trac.i2p2.de/wiki/Crypto/ECDSA|title=Crypto/ECDSA – I2P Bugtracker|website=trac.i2p2.de|access-date=2017-03-30|archive-date=2015-05-20|archive-url=https://web.archive.org/web/20150520144801/https://trac.i2p2.de/wiki/Crypto/ECDSA|url-status=live}}
= 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 str4d or zzz{{efn|stepped back after the 2.1.0 release}}).
|}
Funding
The website states that "funding for I2P comes entirely from donations".{{Cite web |title=I2P: A scalable framework for anonymous communication – Introduction |url=https://geti2p.net/en/docs/how/tech-intro |url-status=live |archive-url=https://web.archive.org/web/20220314000316/https://geti2p.net/en/docs/how/tech-intro |archive-date=2022-03-14 |access-date=2022-03-14 |website=I2P Website }} 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.{{Cite web |last=idk aka. eyedeekay |date=2022-03-06 |title=Network privacy via i2p w/ idk and Sadie |url=https://optoutpod.com/episodes/s2e10-i2p/ |access-date=2022-03-14 |website=Opt Out Podcast |at=00:55:43 |archive-date=2022-03-07 |archive-url=https://web.archive.org/web/20220307010619/https://optoutpod.com/episodes/s2e10-i2p/ |url-status=live }} Support for the onboarding for I2P came from the Open Technology Fund.{{Cite web |last=Mascis |first=Sadie |date=2022-03-06 |title=Network privacy via i2p w/ idk and Sadie" |url=https://optoutpod.com/episodes/s2e10-i2p/ |access-date=2022-03-13 |website=Opt Out Podcast |at=00:54:20 |archive-date=2022-03-07 |archive-url=https://web.archive.org/web/20220307010619/https://optoutpod.com/episodes/s2e10-i2p/ |url-status=live }}{{Cite web |last=Open Technology Fund |author-link=Open Technology Fund |title=5G and Human Rights |url=https://www.opentech.fund/results/supported-projects/5g-and-human-rights/ |access-date=2022-03-14 |website=Open Technology Fund Website |date=4 January 2022 |publisher=U.S. Agency for Global Media |archive-date=2022-03-14 |archive-url=https://web.archive.org/web/20220314022625/https://www.opentech.fund/results/supported-projects/5g-and-human-rights/ |url-status=live }} In contrast to The Tor Project, I2P has "not the financial or legal infrastructure to support a network of exit nodes".{{Cite web |last=idk aka. eyedeekay |date=2022-03-06 |title=Network privacy via i2p w/ idk and Sadie |url=https://optoutpod.com/episodes/s2e10-i2p/ |access-date=2022-03-13 |website=Opt Out Podcast |at=00:34:20 |archive-date=2022-03-07 |archive-url=https://web.archive.org/web/20220307010619/https://optoutpod.com/episodes/s2e10-i2p/ |url-status=live }} The reseed servers,{{Cite web |title=How to Set up a Reseed Server |url=https://geti2p.net/en/get-involved/guides/reseed |access-date=2022-03-13 |website=I2P Website |archive-date=2022-03-14 |archive-url=https://web.archive.org/web/20220314022059/https://geti2p.net/en/get-involved/guides/reseed |url-status=live }} a sort of bootstrap nodes,{{Cite web |title=How to volunteer by helping I2P-Bote bootstrap – Blog |url=https://geti2p.net/en/blog/post/2019/05/25/help-bootstrap-bote |access-date=2022-03-13 |website=I2p Website |archive-date=2022-04-07 |archive-url=https://web.archive.org/web/20220407054348/https://geti2p.net/en/blog/post/2019/05/25/help-bootstrap-bote |url-status=live }} which connect the user with the initial set of peers to join the I2P-network, should be run by volunteers.{{Cite web |last=idk aka. eyedeekay |date=2022-03-06 |title=Network privacy via i2p w/ idk and Sadie |url=https://optoutpod.com/episodes/s2e10-i2p/ |access-date=2022-03-13 |website=Opt Out Podcast |at=00:57:00 |archive-date=2022-03-07 |archive-url=https://web.archive.org/web/20220307010619/https://optoutpod.com/episodes/s2e10-i2p/ |url-status=live }}
Software
File:I2P router console 0.9.31-0.png
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 =
- I2PTunnel is an application embedded into I2P that allows arbitrary TCP/IP applications to communicate over I2P by setting up "tunnels" which can be accessed by connecting to pre-determined ports on localhost.
- SAM (Simple Anonymous Messaging) is a protocol which allows a client application written in any programming language to communicate over I2P, by using a socket-based interface to the I2P router.{{Citation | title = API | contribution-url = https://geti2p.net/en/docs/api/sam | contribution = SAM | publisher = I2P | access-date = 2013-12-24 | archive-date = 2013-12-24 | archive-url = https://web.archive.org/web/20131224112749/https://geti2p.net/en/docs/api/sam | url-status = live }}.
- BOB (Basic Open Bridge) is a less complex app to router protocol similar to "SAM"{{Citation | title = API | contribution-url = https://geti2p.net/en/docs/api/bob | contribution = BOB | publisher = Get I2P | access-date = 2013-12-24 | archive-date = 2013-12-24 | archive-url = https://web.archive.org/web/20131224112753/https://geti2p.net/en/docs/api/bob | url-status = live }}.
- Orchid Outproxy Tor plugin{{cite web|url=https://github.com/subgraph/Orchid|title=GitHub – subgraph/Orchid|date=7 March 2019|via=GitHub|access-date=20 October 2017|archive-date=9 August 2017|archive-url=https://web.archive.org/web/20170809050525/https://github.com/subgraph/Orchid|url-status=live}}
- As of version 2.6.0, released in July 2024, I2P no longer allows I2P access over Tor connections.{{Cite web |last=idk |title=I2P 2.6.0 Release - Blog - I2P |url=https://geti2p.net/en/blog/post/2024/07/19/2.6.0-Release |url-status=live |archive-url=https://web.archive.org/web/20240721131455/https://geti2p.net/en/blog/post/2024/07/19/2.6.0-Release |archive-date=2024-07-21 |access-date=2024-07-21 |website=geti2p.net}}
= Chat =
- Any IRC client made for the Internet Relay Chat can work, once connected to the I2P 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.
- Some XMPP clients like Gajim, Pidgin or a modified Conversations client{{Citation |last=R4SAS |title=r4sas/Conversations-I2P |date=2024-04-02 |url=https://github.com/r4sas/Conversations-I2P |access-date=2024-05-24}} can work with I2P XMPP servers using Prosody that are using the mod_darknet module{{Cite web |title=Decentralized instant messenger (XMPP aka Jabber) - i2pd documentation |url=https://i2pd.readthedocs.io/en/latest/tutorials/xmpp/ |access-date=2024-05-24 |website=i2pd.readthedocs.io}}
= File sharing =
- Several programs provide BitTorrent functionality for use within the I2P network. Users cannot connect to non-I2P torrents or peers from within I2P, nor can they connect to I2P torrents or peers from outside I2P.{{Citation | place = DE | url = https://forum.i2p2.de/viewtopic.php?t=2068 | title = I2P Bittorrent FAQ | publisher = i2p2 | type = forum | url-status = dead | archive-url = https://web.archive.org/web/20111103091108/http://forum.i2p2.de/viewtopic.php?t=2068 | archive-date = 2011-11-03 }}. I2PSnark, included in the I2P install package, is a port of the BitTorrent client named Snark.{{Citation | url = http://klomp.org/snark/ | title = The Hunting of the Snark Project – BitTorrent Application Suite | publisher = Klomp | access-date = 2013-12-22 | archive-date = 2013-11-24 | archive-url = https://web.archive.org/web/20131124085714/http://www.klomp.org/snark/ | url-status = live }}. Vuze, formerly known as Azureus, is a BitTorrent client that includes a plugin for I2P, allowing anonymous swarming through this network.{{Citation | url = http://wiki.vuze.com/w/I2PHelper_HowTo | title = I2PHelper | contribution = How To for I2P Network Plugin | format = Howto | type = setup tutorial | publisher = Vuze | access-date = 2015-02-23 | archive-date = 2015-02-25 | archive-url = https://web.archive.org/web/20150225030106/http://wiki.vuze.com/w/I2PHelper_HowTo | url-status = live }}. This plugin is still in an early stage of development, however it is already fairly stable. I2P-BT is a BitTorrent client for I2P that allows anonymous swarming for file sharing. This client is a modified version of the original BitTorrent 3.4.2 program which runs on MS Windows and most dialects of Unix in a GUI and command-line environment. It was developed by the individual known as 'duck' on I2P in cooperation with 'smeghead'. It is no longer being actively developed; however, there is a small effort to upgrade the I2P-BT client up to par with the BitTorrent 4.0 release. I2PRufus is an I2P port of the Rufus BitTorrent client.{{cite web | url = http://rufus.sourceforge.net/ | title = Rufus – BitTorrent Client | work = Sourceforge | access-date = 2006-09-06 | archive-date = 2010-01-07 | archive-url = https://web.archive.org/web/20100107002810/http://rufus.sourceforge.net/ | url-status = live }}. Robert (P2P Software) is the most actively maintained I2PRufus fork. XD is a standalone BitTorrent client written in Go.{{cite web|url=https://github.com/majestrate/XD|title=GitHub – majestrate/XD: i2p bittorrent client.|date=22 March 2019|via=GitHub|access-date=2 November 2017|archive-date=29 July 2017|archive-url=https://web.archive.org/web/20170729192542/https://github.com/majestrate/XD|url-status=live}} BiglyBT is a bittorrent client based on Vuze which also allows the use of i2p for downloading/seeding. Additionally, there exists a torrent index named Postman, ran by the individual with the same name, its rules says that it does not allow illegal content, but warez and piracy is accepted.
- Two Kad network clients exist for the I2P network, iMule and Nachtblitz. iMule (invisible Mule) is a port of eMule for I2P network. iMule has not been developed since 2013. iMule is made for anonymous file sharing. In contrast to other eDonkey clients, iMule only uses the Kademlia for proceeding to connect through I2P network, so no servers are needed. Nachtblitz{{cite web | url=http://files.i2p-projekt.de/misc/nachtblitz/ | title=Official Nachtblitz Resource | access-date=2022-11-01 | archive-date=2022-11-01 | archive-url=https://web.archive.org/web/20221101080841/http://files.i2p-projekt.de/misc/nachtblitz/ | url-status=live }} is a custom client built on the .NET Framework. The latest version is 1.4.27, released on March 23, 2016. Nachtblitz includes a time lock to disable the software one year after its release date.
- I2Phex is a port of the popular Gnutella client Phex to I2P. It is stable and fairly functional.
- Tahoe-LAFS has been ported to I2P. This allows for files to be anonymously stored in Tahoe-LAFS grids.
- MuWire is a file-sharing program inspired by the LimeWire Gnutella client that works atop the I2P network.{{Cite web|url=https://www.reddit.com/r/i2p/comments/bvamf1/introducing_muwire_a_filesharing_application_for/|title=r/i2p – Introducing MuWire – a file-sharing application for I2P|website=reddit|date=31 May 2019|language=en-US|access-date=2019-12-17|archive-date=2022-04-07|archive-url=https://web.archive.org/web/20220407054312/https://www.reddit.com/r/i2p/comments/bvamf1/introducing_muwire_a_filesharing_application_for/|url-status=live}}
== 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.{{cite web |url=https://torrentfreak.com/vuze-speeds-up-torrent-downloads-through-swarm-merging-150320/ |title=Vuze Speeds Up Torrent Downloads Through "Swarm Merging" |date=20 March 2015 |work=TorrentFreak |access-date=4 June 2016 |archive-date=17 October 2017 |archive-url=https://web.archive.org/web/20171017233439/https://torrentfreak.com/vuze-speeds-up-torrent-downloads-through-swarm-merging-150320/ |url-status=live }}{{cite web |url=https://wiki.vuze.com/w/I2PHelper_HowTo#Network_Mixing |title=I2PHelper HowTo |work=VuzeWiki |access-date=4 June 2016 |archive-date=20 October 2017 |archive-url=https://web.archive.org/web/20171020084042/https://wiki.vuze.com/w/I2PHelper_HowTo#Network_Mixing |url-status=live }}{{Cite web |title=StormyCloud – I2P Outproxy {{!}} I2P Anonymous Network |url=https://stormycloud.org/i2p-outproxy/ |access-date=2023-07-24 |website=stormycloud.org}}
= Email =
{{unreferenced section|date=February 2024}}
- I2P-Bote is a free, fully decentralized and distributed anonymous email system with a strong focus on security.{{Citation |title=i2p/i2p.i2p-bote |date=2024-03-06 |url=https://github.com/i2p/i2p.i2p-bote |access-date=2024-03-08 |publisher=The I2P Project}} It supports multiple identities and does not expose email metadata. {{As of | 2015}}, it is still considered beta software. I2P-Bote is accessible via the I2P web console interface or using standard email protocols (i.e. IMAP/SMTP). All bote-mails are transparently end-to-end encrypted and signed by the sender's private key, thus removing the need for PGP or other email encryption software. I2P-Bote offers additional anonymity by allowing for the use of mail relays with variable length delays. Since it is decentralized, there is no centralized email server that could correlate different email identities as communicating with each other (i.e. profiling). Even the nodes relaying the mails do not know the sender, and apart from sender and receiver, only the end of the high-latency mail route and the storing nodes will know to whom (which I2P-Bote address – the user's IP address is still hidden by I2P) the mail is destined. The original sender could have gone offline long before the email becomes available to the recipient. No account registration is necessary, all you have to do in order to use it is create a new identity. I2P-Bote can be installed as an I2P plugin .{{Citation |title=i2p/i2p.i2p-bote |date=2024-09-20 |url=https://github.com/i2p/i2p.i2p-bote |access-date=2024-10-13 |publisher=The I2P Project}}
- I2P also has a free pseudonymous e-mail service run by an individual called Postman. Susimail is a web-based email client intended primarily for use with Postman's mail servers, and is designed with security and anonymity in mind. Susimail was created to address privacy concerns in using these servers directly using traditional email clients, such as leaking the user's hostname while communicating with the SMTP server. It is currently included in the default I2P distribution, and can be accessed through the I2P router console web interface. Mail.i2p can contact both I2P email users and public internet email users.
- Bitmessage.ch can be used over I2P{{cn|date=February 2024}}
= Instant messaging =
- I2P-Messenger is a simple Qt-based, serverless, end-to-end-encrypted instant messenger for I2P.{{Citation | title = Introducing I2P | url = https://geti2p.net/en/docs/how/tech-intro#app.i2pmessenger | date = Nov 10, 2015 | access-date = November 11, 2015 | archive-date = November 25, 2015 | archive-url = https://web.archive.org/web/20151125093633/https://geti2p.net/en/docs/how/tech-intro#app.i2pmessenger | url-status = live }} 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 =
- Syndie is a content distribution application, suitable for blogs, newsgroups, forums and small media attachments. Syndie is designed for network resilience. It supports connections to I2P, the Tor network (Syndie does not support Socks proxies, workaround needed for Tor access), Freenet and the regular internet. Server connections are intermittent, and support higher-latency communications. Connections can be made to any number of known servers. Content is spread efficiently using a Gossip protocol.
- Aktie is an anonymous file sharing and distributed web of trust forums system. Aktie can connect to I2P with its internal router or use an external router. To fight spam, "hash payments" (proof of CPU work) is computed for every published item.
= Routers =
{{Expand section
|small=no
|talksection=Talk:I2P#i2pd
|1=i2pd|date=May 2024}}
- 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.{{Cite web|url=https://github.com/PurpleI2P/i2pd/wiki/Differences-between-i2pd-and-Java-I2P-router|title=PurpleI2P/i2pd|website=GitHub|language=en|access-date=2018-08-20|archive-date=2018-10-04|archive-url=https://web.archive.org/web/20181004010416/https://github.com/PurpleI2P/i2pd/wiki/Differences-between-i2pd-and-Java-I2P-router|url-status=live}}{{Cite web|url=https://i2pd.website/|title=Invisible Internet Protocol Daemon|website=i2pd.website|access-date=2018-08-20|archive-date=2018-08-20|archive-url=https://web.archive.org/web/20180820074847/https://i2pd.website/|url-status=live}} The I2PSnark standalone BitTorrent client by I2P+ Team can still be used with it.
= The Privacy Solutions project =
The Privacy Solutions project,{{Citation | url = https://privacysolutions.no/ |archive-url=https://web.archive.org/web/20180419070653/https://privacysolutions.no/ | archive-date=19 April 2018 | title = Privacy Solutions project |url-status=dead }}. 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.
- The Abscond browser bundle.
- i2pd,{{cite web|url=https://i2pd.website/|title=Invisible Internet Protocol Daemon|website=i2pd.website|access-date=2018-08-20|archive-date=2018-08-20|archive-url=https://web.archive.org/web/20180820074847/https://i2pd.website/|url-status=live}} 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.{{Citation | url = https://github.com/PrivacySolutions/i2pd | title = Active development | date = 22 September 2022 | publisher = The Privacy Solutions | access-date = 16 January 2015 | archive-date = 12 November 2014 | archive-url = https://web.archive.org/web/20141112055632/https://github.com/PrivacySolutions/i2pd/ | url-status = live }}
Effective January, 2015 i2pd is operating under PurpleI2P.{{Citation | url = https://github.com/PurpleI2P/i2pd | title = Active development | date = 22 September 2022 | publisher = Purple I2P | access-date = 7 February 2016 | archive-date = 4 February 2016 | archive-url = https://web.archive.org/web/20160204015155/https://github.com/PurpleI2P/i2pd/ | url-status = live }}
=Android=
File:I2PAndroid-console-0.9.20.png.]]
- 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.{{Citation | url=https://geti2p.net/en/blog/post/2014/12/01/Android-app-releases | title=Android App Releases | access-date=2014-12-15 | archive-date=2014-12-15 | archive-url=https://web.archive.org/web/20141215232812/https://geti2p.net/en/blog/post/2014/12/01/Android-app-releases | url-status=live }}
- 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.{{Citation | url = https://sekao.net/nightweb/blog/discontinued.html | title = Discontinued | publisher = Nightweb | access-date = 2015-04-26 | archive-date = 2017-07-04 | archive-url = https://web.archive.org/web/20170704230216/https://sekao.net/nightweb/blog/discontinued.html | url-status = live }}.
=Cryptocurrency=
Some cryptocurrencies that support I2P are listed below.
- Bitcoin{{Cite web|title=Add I2P support using I2P SAM by vasild · Pull Request #20685 · bitcoin/bitcoin|url=https://github.com/bitcoin/bitcoin/pull/20685|access-date=2021-04-03|website=GitHub|language=en|archive-date=2021-03-03|archive-url=https://web.archive.org/web/20210303154106/https://github.com/bitcoin/bitcoin/pull/20685|url-status=live}}
- Monero
- Verge
Terminology
; 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.{{cite web |url=https://geti2p.net/en/about/intro |title=Intro |work=I2P |access-date=4 June 2016 |archive-date=6 April 2016 |archive-url=https://web.archive.org/web/20160406110604/https://geti2p.net/en/about/intro |url-status=live }}
; .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.{{cite web |url=https://geti2p.net/en/docs/naming |title=Naming and Addressbook – I2P |work=geti2p.net |access-date=4 June 2016 |archive-date=29 March 2016 |archive-url=https://web.archive.org/web/20160329181138/https://geti2p.net/en/docs/naming |url-status=live }}
; 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).{{cite web |url=https://geti2p.net/en/docs/how/tunnel-routing |title=Tunnel Routing |work=I2P |access-date=4 June 2016 |archive-date=26 March 2016 |archive-url=https://web.archive.org/web/20160326160508/https://geti2p.net/en/docs/how/tunnel-routing |url-status=live }}
; 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.{{cite web |url=https://geti2p.net/en/docs/how/network-database |title=The Network Database |work=I2P |access-date=4 June 2016 |archive-date=7 March 2016 |archive-url=https://web.archive.org/web/20160307163119/https://geti2p.net/en/docs/how/network-database |url-status=live }}
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.{{Cite web|last=Kack|first=Christopher|date=2012-09-11|title=Layer 7 DOS against I2P darknet|url=http://blog.kejsarmakten.se/all/projects/2012/09/11/dark-loris.html|url-status=dead|archive-url=https://web.archive.org/web/20121014004908/http://blog.kejsarmakten.se/all/projects/2012/09/11/dark-loris.html|archive-date=2012-10-14|access-date=2021-03-13|website=Kejsarmakten:Development}}{{Cite journal|last1=Bazli|first1=Behnam|last2=Wilson|first2=Maxim|last3=Hurst|first3=William|date=2017-01-01|title=The dark side of I2P, a forensic analysis case study|journal=Systems Science & Control Engineering|volume=5|issue=1|pages=278–286|doi=10.1080/21642583.2017.1331770|doi-access=free}}
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.{{Cite web|last=Storm|first=Darlene|date=2014-07-24|title=Zero-day broker exploits vulnerability in I2P to de-anonymize Tails users|url=https://www.computerworld.com/article/2476563/zero-day-broker-exploits-vulnerability-in-i2p-to-de-anonymize-tails-users.html|url-status=live|access-date=2021-03-13|website=Computerworld|language=en|archive-date=2020-09-29|archive-url=https://web.archive.org/web/20200929102557/https://www.computerworld.com/article/2476563/zero-day-broker-exploits-vulnerability-in-i2p-to-de-anonymize-tails-users.html}} This vulnerability was later patched.{{Cite web|date=2014-07-29|title=I2P patched against de-anonymizing 0-day, Tails integration still to follow|url=https://www.helpnetsecurity.com/2014/07/29/i2p-patched-against-de-anonymizing-0-day-tails-integration-still-to-follow/|access-date=2021-03-13|website=Help Net Security|language=en-US|archive-date=2020-12-10|archive-url=https://web.archive.org/web/20201210174852/https://www.helpnetsecurity.com/2014/07/29/i2p-patched-against-de-anonymizing-0-day-tails-integration-still-to-follow/|url-status=live}}{{Cite web|title=0.9.14 Release – Blog – I2P|url=https://geti2p.net/en/blog/post/2014/07/26/0.9.14-Release|access-date=2021-03-13|website=geti2p.net|archive-date=2021-04-22|archive-url=https://web.archive.org/web/20210422103231/https://geti2p.net/en/blog/post/2014/07/26/0.9.14-Release|url-status=live}}
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 websites 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.
I2PCon
File:I2PCon-2015-David-Dagon.jpg
From {{daterange|{{Format date|2015|08|15}}|{{Format date|2015|08|16}}}} an I2P convention was held in Toronto, Ontario.{{cite web |url=https://geti2p.net/en/blog/post/2015/08/20/I2PCon_Mission_Accomplished |title=I2PCon: Mission Accomplished – Blog |work=I2P |access-date=4 June 2016 |archive-date=10 June 2016 |archive-url=https://web.archive.org/web/20160610211015/https://geti2p.net/en/blog/post/2015/08/20/I2PCon_Mission_Accomplished |url-status=live }} The conference was hosted by a local hackerspace, Hacklab. The conference featured presentations from I2P developers and security researchers.
See also
{{div col|colwidth=30em}}
- Crypto-anarchism
- Deep web
- Darknet
- Garlic routing
- Key-based routing
- Public-key cryptography
- Rendezvous protocol
- Secure communication
- Threat model
{{div col end}}
=Software=
References
{{Reflist|2|refs = EXCHANGED.i2p}}
{{Notelist}}
External links
- {{official website}}
{{Prone to spam|date=November 2017}}
{{I2P|state=expanded}}
{{Cryptographic software}}
{{File sharing protocols}}
{{Internet censorship circumvention technologies}}
{{Portal bar|Free and open-source software}}
{{authority control}}
Category:Anonymous file sharing networks
Category:Application layer protocols
Category:Cross-platform free software
Category:Cross-platform software
Category:Cryptographic software
Category:Distributed data storage
Category:Distributed data structures
Category:Distributed data storage systems
Category:Distributed file systems
Category:Free and open-source Android software
Category:Free communication software
Category:Free file transfer software
Category:Free file sharing software
Category:Free multilingual software
Category:Free network-related software
Category:Free routing software
Category:Free software programmed in Java (programming language)
Category:Hash-based data structures
Category:Internet privacy software
Category:Peer-to-peer computing