🛡 I2P: End-to-End encrypted and anonymous Internet
Go to file
2016-10-10 15:07:22 +00:00
android Timestamp.cpp added 2016-09-21 12:02:52 -04:00
build thread sanitizer configuration option have been added 2016-10-06 22:49:44 +03:00
contrib/certificates remove tools 2016-10-10 08:18:54 -04:00
debian Update changelog 2016-08-13 16:52:51 +03:00
docs Fixed links 2016-09-24 14:26:59 +03:00
qt Timestamp.cpp added 2016-09-21 12:02:52 -04:00
tests * HTTP.cpp : add comments, update test case 2016-07-01 00:34:31 +00:00
Win32 Graceful shutdown 2016-07-26 11:52:44 -04:00
.gitignore add keyinfo tool 2016-10-05 11:40:25 -04:00
.travis.yml temporary disable OS X 2016-07-30 18:22:14 -04:00
AddressBook.cpp Revert "Unused parameter warnings removal" 2016-10-10 08:59:48 -04:00
AddressBook.h handle default subscription in separate thread 2016-08-09 10:17:40 -04:00
api.cpp optional elgamal precomputation for x64 2016-04-17 16:57:58 -04:00
api.h use shared_ptr for log's stream 2016-02-04 12:36:58 -05:00
appveyor.yml Revert "try fixing appveyor" 2016-10-05 11:03:51 -04:00
Base.cpp * Base.h : extract Tag template class to separate header 2016-06-28 01:45:11 +00:00
Base.h * Base.h : extract Tag template class to separate header 2016-06-28 01:45:11 +00:00
BOB.cpp Revert "Unused parameter warnings removal" 2016-10-10 08:59:48 -04:00
BOB.h more BOB error messages 2016-07-21 14:02:13 -04:00
ChangeLog Update ChangeLog 2016-08-12 15:21:55 -04:00
ClientContext.cpp fix #634.don't create timer in constructor 2016-09-16 10:31:11 -04:00
ClientContext.h fix #634.don't create timer in constructor 2016-09-16 10:31:11 -04:00
Config.cpp Adding option to configure reseed URLs 2016-09-16 22:56:51 +00:00
Config.h * fix doxygen warnings 2016-05-31 00:34:26 +00:00
Crypto.cpp fixed memory leak 2016-06-20 12:15:15 -04:00
Crypto.h * Base.h : extract Tag template class to separate header 2016-06-28 01:45:11 +00:00
Daemon.cpp fix meshnet mode: 2016-07-14 09:23:33 -04:00
Daemon.h android without qt initial commit 2016-07-10 04:54:11 +08:00
DaemonLinux.cpp Reload client config on SIGHUP 2016-07-24 17:58:26 +08:00
DaemonWin32.cpp fixed #546 2016-06-28 00:00:54 +03:00
Datagram.cpp tabify 2016-10-10 08:30:33 -04:00
Datagram.h tabify 2016-10-10 08:30:33 -04:00
Destination.cpp rename 2016-10-10 09:07:49 -04:00
Destination.h clean-up datagram session toghters with leasesets and tags 2016-09-08 10:16:42 -04:00
Family.cpp Revert "Unused parameter warnings removal" 2016-10-10 08:59:48 -04:00
Family.h set router's family 2016-02-20 20:20:19 -05:00
filelist.mk Timestamp.cpp added 2016-09-21 12:02:52 -04:00
FS.cpp add hooks for visiting netdb 2016-08-29 14:16:29 -04:00
FS.h add hooks for visiting netdb 2016-08-29 14:16:29 -04:00
Garlic.cpp Merge remote-tracking branch 'purple/openssl' into merge_udp_tunnel 2016-09-07 15:08:45 -04:00
Garlic.h Merge remote-tracking branch 'purple/openssl' into merge_udp_tunnel 2016-09-07 15:08:45 -04:00
Gzip.cpp * Base.cpp : extract gzip classes to separate file 2016-06-28 01:45:07 +00:00
Gzip.h * Base.cpp : extract gzip classes to separate file 2016-06-28 01:45:07 +00:00
HTTP.cpp copy ellimination for ranges #part1 2016-08-06 01:03:13 +03:00
HTTP.h + HTTP.{cpp,h} : add HTTPRes::is_gzipped() 2016-07-14 00:34:42 +00:00
HTTPProxy.cpp copy ellimination for ranges #part1 2016-08-06 01:03:13 +03:00
HTTPProxy.h * HTTPProxy.{cpp,h} : rename classes, drop typedef 2016-06-23 13:24:44 +00:00
HTTPServer.cpp show error message in the web-console 2016-09-19 21:37:04 -04:00
HTTPServer.h fixed #629. catch HTTPServer exceptions 2016-09-08 09:19:30 -04:00
i2pd.cpp eliminated DaemonQTImpl singleton 2016-06-17 11:25:28 -04:00
I2CP.cpp Revert "minimize count of errors "I2CP: Failed to send message. No outbound tunnels"" 2016-10-10 09:06:32 -04:00
I2CP.h single #ifdef for protocol type 2016-06-23 14:01:41 -04:00
I2NPProtocol.cpp copy ellimination for ranges #part1 2016-08-06 01:03:13 +03:00
I2NPProtocol.h fix off by ones 2016-07-15 12:49:45 -04:00
I2PControl.cpp Revert "Unused parameter warnings removal" 2016-10-10 08:59:48 -04:00
I2PControl.h * I2PControl.{cpp,h} : add BuildErrorResponse() 2016-05-26 00:09:25 +00:00
I2PEndian.cpp Avoid aliasing problems by using special buf endian handling functions wrapping memcpy 2014-12-29 23:04:02 +01:00
I2PEndian.h backport openbsd support 2015-11-20 09:55:34 -05:00
I2PService.cpp set socket options 2016-07-28 09:25:05 -04:00
I2PService.h allow same port at different interfaces 2016-04-24 17:32:24 -04:00
I2PTunnel.cpp Revert "Unused parameter warnings removal" 2016-10-10 08:59:48 -04:00
I2PTunnel.h fix memory leak with udp tunnel 2016-10-10 08:23:54 -04:00
Identity.cpp make sure verifier gets created once 2016-10-10 08:59:45 -04:00
Identity.h make sure verifier gets created once 2016-10-10 08:59:45 -04:00
LeaseSet.cpp Revert "Unused parameter warnings removal" 2016-10-10 08:59:48 -04:00
LeaseSet.h fix typo 2016-09-03 15:35:32 -04:00
LICENSE Update LICENSE 2015-01-23 14:02:37 -05:00
LittleBigEndian.h fix LittleEndian, change endian.h version 2014-02-05 09:14:07 +04:00
Log.cpp perfect forwarding for logging arguments 2016-09-16 01:47:53 +03:00
Log.h perfect forwarding for logging arguments 2016-09-16 01:47:53 +03:00
Makefile remove tools 2016-10-10 08:18:54 -04:00
Makefile.bsd * drop boost_regex from build deps 2016-05-27 01:32:03 +00:00
Makefile.homebrew * add global switch USE_UPNP to makefile 2016-06-27 13:12:01 +00:00
Makefile.linux try unbreaking static build 2016-08-27 09:29:18 -04:00
Makefile.mingw Merge remote-tracking branch 'purple/openssl' into merge-recent-udp-tunnel 2016-10-10 08:36:06 -04:00
Makefile.osx * add global switch USE_UPNP to makefile 2016-06-27 13:12:01 +00:00
NetDb.cpp check if RouterInfo has been decompressed completely 2016-09-11 21:36:17 -04:00
NetDb.h use shared pointers 2016-08-30 19:59:24 -04:00
NetDbRequests.cpp fixed race condition 2016-08-15 22:36:58 -04:00
NetDbRequests.h fixed race condition 2016-08-15 22:36:58 -04:00
NTCPSession.cpp Merge remote-tracking branch 'purple/openssl' 2016-08-29 10:56:27 -04:00
NTCPSession.h common termination timer for all SSU sessions 2016-08-24 11:21:49 -04:00
Profiling.cpp copy ellimination for ranges #part1 2016-08-06 01:03:13 +03:00
Profiling.h * Profiling : move storage from FS.cpp to Profiling.cpp 2016-02-21 01:49:35 +00:00
Queue.h copy ellimination for ranges #part1 2016-08-06 01:03:13 +03:00
README.md Add specs link 2016-10-10 15:07:22 +00:00
Reseed.cpp Adding option to configure reseed URLs 2016-09-16 22:56:51 +00:00
Reseed.h removed unused parameter 2015-12-21 09:33:09 -05:00
RouterContext.cpp Revert "Unused parameter warnings removal" 2016-10-10 08:59:48 -04:00
RouterContext.h show error message in the web-console 2016-09-19 21:37:04 -04:00
RouterInfo.cpp copy addresses list atomically 2016-10-01 15:05:35 -04:00
RouterInfo.h use atomic_store for addresses' list re-assignment 2016-09-23 13:15:08 -04:00
SAM.cpp Revert "Unused parameter warnings removal" 2016-10-10 08:59:48 -04:00
SAM.h copy elimination for ranges #part3 2016-08-09 01:53:37 +03:00
Signature.cpp fixed race condition at startup 2016-04-02 08:57:35 -04:00
Signature.h changed back to <openssl/ 2016-05-11 16:02:26 -04:00
SOCKS.cpp Revert "Unused parameter warnings removal" 2016-10-10 08:59:48 -04:00
SOCKS.h initial support for out proxy via local upstream socks proxy 2016-02-26 17:06:11 -05:00
SSU.cpp stop termination timer on shutdown 2016-08-24 12:34:18 -04:00
SSU.h common termination timer for all SSU sessions 2016-08-24 11:21:49 -04:00
SSUData.cpp copy elimination for ranges #part3 2016-08-09 01:53:37 +03:00
SSUData.h eliminate decay timer 2016-08-07 16:27:36 -04:00
SSUSession.cpp Revert "Unused parameter warnings removal" 2016-10-10 08:59:48 -04:00
SSUSession.h detect clock skew 2016-09-18 18:42:21 -04:00
stdafx.cpp Precompiled headers 2015-06-10 13:41:08 -05:00
stdafx.h * drop boost_regex from build deps 2016-05-27 01:32:03 +00:00
Streaming.cpp Revert "Unused parameter warnings removal" 2016-10-10 08:59:48 -04:00
Streaming.h change scope of Stream::Terminate 2016-07-28 15:34:32 -04:00
Tag.h fix typo 2016-09-03 16:16:16 -04:00
Timestamp.cpp NTP request 2016-09-21 16:18:51 -04:00
Timestamp.h Timestamp.cpp added 2016-09-21 12:02:52 -04:00
TransitTunnel.cpp Revert "Unused parameter warnings removal" 2016-10-10 08:59:48 -04:00
TransitTunnel.h use shared_ptr for transit tunnels 2016-03-01 15:22:36 -05:00
Transports.cpp Revert "Unused parameter warnings removal" 2016-10-10 08:59:48 -04:00
Transports.h copy elimination for ranges #part3 2016-08-09 01:53:37 +03:00
TransportSession.h common termination timer for all SSU sessions 2016-08-24 11:21:49 -04:00
Tunnel.cpp Revert "Unused parameter warnings removal" 2016-10-10 08:59:48 -04:00
Tunnel.h copy ellimination for ranges #part1 2016-08-06 01:03:13 +03:00
TunnelBase.h cumulative update from bitbucket 2015-11-03 09:15:49 -05:00
TunnelConfig.h copy elimination for ranges #part3 2016-08-09 01:53:37 +03:00
TunnelEndpoint.cpp stop using auto 2016-06-28 12:20:18 -04:00
TunnelEndpoint.h use shared_ptr for I2NP messages through tunnels 2015-06-19 14:38:31 -04:00
TunnelGateway.cpp copy elimination for ranges #part4 2016-08-10 01:16:24 +03:00
TunnelGateway.h random non-zero padding 2015-06-26 16:06:59 -04:00
TunnelPool.cpp implement SetCustomPeerSelector and ensure locking is good 2016-08-30 15:11:39 -04:00
TunnelPool.h implement SetCustomPeerSelector and ensure locking is good 2016-08-30 15:11:39 -04:00
UPnP.cpp copy elimination for ranges #part4 2016-08-10 01:16:24 +03:00
UPnP.h wait for UPnP discovery during startup 2016-07-31 10:22:41 -04:00
util.cpp * util.{cpp,h} : kill with fire i2p::util::http (#314, closes #432) 2016-07-27 13:10:29 +00:00
util.h * util.{cpp,h} : kill with fire i2p::util::http (#314, closes #432) 2016-07-27 13:10:29 +00:00
version.h 2.9.0 2016-08-12 10:43:06 -04:00

i2pd

i2pd (I2P Daemon) is a full-featured C++ implementation of I2P client.

I2P (Invisible Internet Protocol) is a universal anonymous network layer. All communications over I2P are anonymous and end-to-end encrypted, participants don't reveal their real IP addresses.

I2P client is a software used for building and using anonymous I2P networks. Such networks can work on top of ordinary Internet connection, LAN and even wireless mesh-networks.

I2P is commonly used for anonymous peer-to-peer applications (filesharing, cryptocurrencies) and anonymous client-server applications (websites, instant messengers, chat-servers).

I2P allows people from all around the world to communicate and share information without restrictions.

Installing

The easiest way to install i2pd is by using precompiled binaries. See documentation for how to build i2pd from source on your OS.

Supported systems:

  • Linux x86/x64 - Build Status
  • Windows - Build status
  • Mac OS X
  • FreeBSD
  • Android

Using i2pd

See documentation and example config file.

Donations

BTC: 1K7Ds6KUeR8ya287UC4rYTjvC96vXyZbDY
DASH: Xw8YUrQpYzP9tZBmbjqxS3M97Q7v3vJKUF
LTC: LKQirrYrDeTuAPnpYq5y7LVKtywfkkHi59
ANC: AQJYweYYUqM1nVfLqfoSMpUMfzxvS4Xd7z
DOGE: DNXLQKziRPAsD9H3DFNjk4fLQrdaSX893Y

License

This project is licensed under the BSD 3-clause license, which can be found in the file LICENSE in the root of the project source code.