Difference between revisions of "I2Pd"

From I2P Wiki
Jump to navigation Jump to search
m (→‎Cryptography: wikification)
m (→‎Misc: it's the "protocols" not the "apps")
 
(7 intermediate revisions by 2 users not shown)
Line 1: Line 1:
  +
The '''Invisible Internet Protocol (daemon)''' (short ''I2Pd''<!-- The short form must be I2Pd, because it is based on I2P --> or also ''I2P Daemon'') describes itself as a full-featured C++ implementation of I2P client.
[[Category:I2p]]
 
  +
[[Category:HowTo]]
 
[[Category:I2P implementation]]
 
 
== Introduction ==
 
== Introduction ==
  +
I2Pd is a I2P router written in C++, launching in 2013 and reaching near complete feature parity with the official Java router in 2019. Being in C++ makes I2Pd less resource hungry than a JVM, making it suitable for low performance systems as a daemon (hence "I2P Daemon").
I2Pd is a project implementing the I2P router in C++ instead of Java (in order to require less CPU power and RAM).
 
   
Performance: according to Echelon (2015-12) "On a usual system, it pushes the same data as the java version through the network. It maybe using 5-10% less CPU while doing so."<ref>http://forum.i2p/viewtopic.php?t=12261</ref>
+
Performance (might not reflect current state): according to Echelon (2015-12) "On a usual system, it pushes the same data as the java version through the network. It maybe using 5-10% less CPU while doing so."<ref>http://forum.i2p/viewtopic.php?t=12261</ref>
   
 
== I2Pd configuration file ==
I2Pd uses significantly less memory.
 
   
Launched in 2013.
 
 
As of 2019 it almost has a full feature parity with Java I2P implementation.
 
 
== i2pd.conf configuration file ==
 
 
=== To browse I2P web sites ===
 
=== To browse I2P web sites ===
 
I2Pd has SOCKS Proxy enabled by default on port '''4447'''.
 
I2Pd has SOCKS Proxy enabled by default on port '''4447'''.
   
 
== Status for I2Pd and some services/software ==
 
== Status for I2Pd and some services/software ==
  +
  +
I2Pd is a full-fledged replacement for the Java-based I2P. The following historical data reflects to some extent the history of development.
   
 
=== Applications that use I2CP : supported ===
 
=== Applications that use I2CP : supported ===
   
i2pd currently (november 2016) supports the SAM, BOB, and SOCKS interfaces. Starting from relese 2.8.0 it supports the [[I2CP]] interface, which is required for the following applications: [[I2PSnark]], [[I2P-Bote]], SusiMail<ref>http://forum.i2p/viewtopic.php?t=11760</ref>.
+
I2Pd currently (november 2016) supports the SAM, BOB, and SOCKS interfaces. Starting from relese 2.8.0 it supports the [[I2CP]] interface, which is required for the following applications: [[I2PSnark]], [[I2P-Bote]], SusiMail<ref>http://forum.i2p/viewtopic.php?t=11760</ref>.
   
 
=== Applications that use SAM, BOB, and SOCKS interfaces : supported ===
 
=== Applications that use SAM, BOB, and SOCKS interfaces : supported ===
  +
 
These interfaces are supported by I2Pd (december 2014)<ref>[http://forum.i2p/viewtopic.php?t=11760 interfaces supported by I2Pd (dec 2014)]</ref>.
 
These interfaces are supported by I2Pd (december 2014)<ref>[http://forum.i2p/viewtopic.php?t=11760 interfaces supported by I2Pd (dec 2014)]</ref>.
   
Examples of applications that use them :
+
Examples of applications that use them:
  +
* [[libtorrent]] (and the clients using it, mainly [[qBittorrent]]) (SAM)
 
* [[I2P-Messenger]]
 
* [[I2P-Messenger]]
* [[iMule]] (SAM). Supported from I2Pd v0.9.0. How to : run i2pd with SAM bridge enabled &quot;-samport=7656&quot;<ref>http://forum.i2p/viewtopic.php?t=11889</ref>.
+
* [[iMule]] (SAM). Supported from I2Pd v0.9.0.<ref>http://forum.i2p/viewtopic.php?t=11889</ref>.
* [[PyBitmessage-I2P]] ? (SAM)
 
* [[Robert]] (BOB ?)
 
 
* [[Syndie]] (SOCKS ?)
 
* [[Syndie]] (SOCKS ?)
   
 
== [[Cryptography]] ==
 
== [[Cryptography]] ==
I2Pd uses OpenSSL as major crypto library, and it's own implementation of EdDSA.<ref>http://algorithms.samsu.ru/-tom2-nom4.pdf</ref>
+
I2Pd uses OpenSSL as major crypto library, and it's own implementation of [[Elliptic Curve Cryptography|EdDSA]].<ref>http://algorithms.samsu.ru/-tom2-nom4.pdf</ref>
   
 
== Misc ==
 
== Misc ==
  +
=== How to torrent with the I2Pd router ? ===
 
  +
I2Pd is an bare-bones I2P router and does not bring any additional software alongside. However, I2P's own protocols (like [[En/docs/api/samv3|SAM]] or [[En/docs/protocol/i2cp|I2CP]]), therefore programs supporting them (like [[Filesharing and I2P|file sharing]] and [[BitTorrent]] clients) are supported.
I2Pd has no integrated torrent client (such as [[I2PSnark]] in the official I2P Java router).
 
  +
There are several other Bittorrents clients compatible with the I2P network: [[Filesharing and I2P]].
 
  +
I2Pd can be installed via the distributions used, if available, or obtained from the developers' homepage.
   
 
== See also ==
 
== See also ==
Line 48: Line 45:
   
 
== External links ==
 
== External links ==
* (en) http://i2pd.website/ - Official web site of I2Pd (and official forum)
+
* (en) https://i2pd.website/ - Official web site of I2Pd (and official forum)
* (en) http://i2pd.readthedocs.org - Official documentation
+
* (en) https://i2pd.readthedocs.io/en/latest/ - Official documentation
  +
 
[[Category:I2P]]
 
[[Category:HowTo]]
 
[[Category:I2P implementation]]

Latest revision as of 20:00, 2 April 2024

The Invisible Internet Protocol (daemon) (short I2Pd or also I2P Daemon) describes itself as a full-featured C++ implementation of I2P client.

Introduction

I2Pd is a I2P router written in C++, launching in 2013 and reaching near complete feature parity with the official Java router in 2019. Being in C++ makes I2Pd less resource hungry than a JVM, making it suitable for low performance systems as a daemon (hence "I2P Daemon").

Performance (might not reflect current state): according to Echelon (2015-12) "On a usual system, it pushes the same data as the java version through the network. It maybe using 5-10% less CPU while doing so."[1]

I2Pd configuration file

To browse I2P web sites

I2Pd has SOCKS Proxy enabled by default on port 4447.

Status for I2Pd and some services/software

I2Pd is a full-fledged replacement for the Java-based I2P. The following historical data reflects to some extent the history of development.

Applications that use I2CP : supported

I2Pd currently (november 2016) supports the SAM, BOB, and SOCKS interfaces. Starting from relese 2.8.0 it supports the I2CP interface, which is required for the following applications: I2PSnark, I2P-Bote, SusiMail[2].

Applications that use SAM, BOB, and SOCKS interfaces : supported

These interfaces are supported by I2Pd (december 2014)[3].

Examples of applications that use them:

Cryptography

I2Pd uses OpenSSL as major crypto library, and it's own implementation of EdDSA.[5]

Misc

I2Pd is an bare-bones I2P router and does not bring any additional software alongside. However, I2P's own protocols (like SAM or I2CP), therefore programs supporting them (like file sharing and BitTorrent clients) are supported.

I2Pd can be installed via the distributions used, if available, or obtained from the developers' homepage.

See also

References

External links