i2pd 2.11 released

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 are 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.

i2pd is licensed under the 3-clause BSD license, binary packages are available for Debian, Ubuntu, OS X, FreeBSD, Android and Windows.

View release on GitHub

Changelog for i2pd version 2.11:

  • Full support of zero-hops tunnels
  • Tunnel configuration for HTTP and SOCKS proxy
  • Websockets support
  • Multiple acceptors for SAM destination
  • Routing path for UDP tunnels
  • Reseed through a floodfill
  • Use AVX instructions for DHT and HMAC …

Read more ...


PPA repository for i2pd is available

Good news for Ubuntu/Linux Mint users of Invisible Internet! You can now install i2pd very easily from PPA repository created by community member R4SAS.

Add the PPA and install i2pd using the following commands:

sudo add-apt-repository ppa:purplei2p/i2pd
sudo apt-get update
sudo apt-get install i2pd

That's it. When new version of i2pd will be available, you'll recieve updates via package manager.


Connecting to I2P network through restrictive firewalls

If you'll ever experience problems with connecting to I2P network, your Internet Service Provider may be blocking access to I2P bootstrap servers. It is not a big deal if you have access to GitHub.

Edit reseed section in your i2pd config file i2pd.conf file like that:

[reseed]
verify = true
file = https://github.com/r4sas/i2pd-reseed/releases/download/1.0/i2pseeds.su3

or run binary with option:

./i2pd --verify true --reseed.file https://github.com/r4sas/i2pd-reseed/releases/download/1.0/i2pseeds.su3

and you will bootstrap to I2P network from GitHub.

Alternatively, simply download this file with web browser and reseed from local file:

./i2pd --verify true --reseed.file i2pseeds.su3

ipfs access

this blog can now be accessed via ipfs at /ipns/QmUXNVeuFPqjYRFduTxLkaKB4y6WHV8Drj3gWW2bdamtZU/


DIY darknet for fun and profit

A darknet (or dark net) is an overlay network that can only be accessed with specific software, configurations, or authorization, often using non-standard communications protocols and ports.

Well known example of the darknet is the Onionland -- public darknet created with Tor software. This article will show you how to create your own darknet with Invisible Internet Protocol (I2P) for fun and profit. Unlike the Onionland, it will be fully distributed and suitable for any type of private and anonymous communications.

How own darknet can be useful

Online privacy and anonymity research

You can run your own network to study how anonymous networks work, find their weaknesses and performance improvement possibilities.

Filesharing software

Anonymous network layer can be added to any filesharing software, for example, to torrent clients and apps like PopcornTime. Users will download and share content anonymously …

Read more ...


gpgpipe, an alternative for people who want to curlpipe

The term curlpipe comes from using the program curl to download a file and immediately executing the file via a pipe in the command line (this is bad and you should feel bad for doing this)

curlpipe found in the wild

Regardless of the obvious security concerns, many projects feel the need to tell users to execute arbitrary scripts transmitted over plaintext. Is there a workarround for these people? I believe there is now: just pipe it through gpg.

But wait, that won't actually work.

Consider the following:

curl $url | gpg | bash

This command SHOULD fail if the signature is invalid but it doesn't.

curl http://i2p.rocks/files/gpg-test.sh.asc | gpg | bash
% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                        Dload  Upload   Total   Spent    Left  Speed
100   293  100   293    0     0   7274      0 --:--:-- --:--:-- --:--:--  7325
it works
backdoor
gpg: Signature made Sat 22 Oct 2016 08:18:57 AM EDT using …

Read more ...


i2pd 2.10 released

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 are 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.

i2pd is licensed under the 3-clause BSD license, binary packages are available for Debian, Ubuntu, OS X, FreeBSD, Android and Windows.

View release on GitHub

Changelog for i2pd version 2.10:

  • Added support of datagram I2P tunnels
  • Reduced file descriptors usage
  • Unique local addresses for server tunnels
  • Added configuration options for list of reseed servers and initial addressbook
  • Added configuration option for netid
  • Added ability to …

Read more ...


Anonymous instant messaging with end-to-end encryption

Centralized commercial IM providers are a real threat to our privacy. They often require users to run proprietary software, confirm their identity with SMS and give away control over their data.

We always have a freedom to take control back over our private communications.

In this tutorial, we will use XMPP as decentralized and open-source instant messaging system, OTR for end-to-end encryption and I2P network to anonymize our network activities.

Install i2pd

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.

If you don't have I2P client already, go to i2pd.website, install and run it.

Install XMPP client

Make sure your client supports OTR encryption. In this tutorial we will use psi+.

Windows users can find downloads here.

In Debian/Ubuntu, run following commands:

sudo apt-get install psi-plus psi-plus-plugins

Psi+ will ask …

Read more ...


i2p.rocks xmpp

Quick update: For those who don't know, i2p.rocks has a federated jabber server with open registration (for now) and is available on i2p, via ynkz7ebfkllljitiodcq52pa7fgqziomz4wa7tv4qiqldghpx4uq.b32.i2p:5222 (the port is important).

This blog is now also reachable via i2p here


Meet i2lua -- I2P router with "smart" configuration

With i2lua you can add custom logic to your Invisible Internet router by writing scripts in Lua.

Lua is a full-featured programming language, which means you can resolve complex issues with it.

Some basic tasks you can accomplish with i2lua:

  • make all tunnels to have only trusted nodes as first hop (restricted routes, similar to Tor's guard nodes)
  • make I2P router to only use high-speed nodes for building tunnels
  • create tunnels with first hop in specific countries (e.g. make connections only to Russia and Germany)
  • implement custom node profiling mechanism

and so on.

Example script for i2lua