forked from I2P_Developers/i2p.www
141 lines
9.9 KiB
HTML
141 lines
9.9 KiB
HTML
{% extends "global/layout.html" %}
|
||
{% block title %}{{ _('Intro') }}{% endblock %}
|
||
{% block content %}
|
||
<h1>{{ _('The Invisible Internet Project') }} (I2P)</h1>
|
||
<p>{% trans ip='http://en.wikipedia.org/wiki/Internet_Protocol',
|
||
tcp='http://en.wikipedia.org/wiki/Transmission_Control_Protocol',
|
||
pke='http://en.wikipedia.org/wiki/Public_key_encryption' -%}
|
||
I2P is an anonymous network, exposing a simple layer that applications can
|
||
use to anonymously and securely send messages to each other. The network itself is
|
||
strictly message based (a la <a href="{{ ip }}">IP</a>), but there is a
|
||
library available to allow reliable streaming communication on top of it (a la
|
||
<a href="{{ tcp }}">TCP</a>).
|
||
All communication is end to end encrypted (in total there are four layers of
|
||
encryption used when sending a message), and even the end points ("destinations")
|
||
are cryptographic identifiers (essentially a pair of <a href="{{ pke }}">public keys</a>).
|
||
{%- endtrans %}</p>
|
||
|
||
<h2>{{ _('How does it work?') }}</h2>
|
||
|
||
<p>{% trans tunnelrouting=site_url('docs/how/tunnel-routing') -%}
|
||
To anonymize the messages sent, each client application has their I2P "router"
|
||
build a few inbound and outbound "<a href="{{ tunnelrouting }}">tunnels</a>" - a
|
||
sequence of peers that pass messages in one direction (to and from the client,
|
||
respectively). In turn, when a client wants to send a message to another client,
|
||
the client passes that message out one of their outbound tunnels targeting one of the
|
||
other client's inbound tunnels, eventually reaching the destination. Every
|
||
participant in the network chooses the length of these tunnels, and in doing so,
|
||
makes a tradeoff between anonymity, latency, and throughput according to their
|
||
own needs. The result is that the number of peers relaying each end to end
|
||
message is the absolute minimum necessary to meet both the sender's and the
|
||
receiver's threat model.
|
||
{%- endtrans %}</p>
|
||
|
||
<p>{% trans netdb=site_url('docs/how/network-database'),
|
||
dht='http://en.wikipedia.org/wiki/Distributed_hash_table',
|
||
kad='http://en.wikipedia.org/wiki/Kademlia' -%}
|
||
The first time a client wants to contact another client, they make a query
|
||
against the fully distributed "<a href="{{ netdb }}">network
|
||
database</a>" - a custom structured <a href="{{ dht }}">
|
||
distributed hash table (DHT)</a> based off the
|
||
<a href="{{ kad }}">Kademlia algorithm</a>. This is done
|
||
to find the other client's inbound tunnels efficiently, but subsequent messages
|
||
between them usually includes that data so no further network database lookups
|
||
are required.
|
||
{%- endtrans %}</p>
|
||
|
||
<p>{% trans docs=site_url('docs') -%}
|
||
More details about how I2P works are <a href="{{ docs }}">available</a>.
|
||
{%- endtrans %}</p>
|
||
|
||
<h2>{{ _('What can you do with it?') }}</h2>
|
||
|
||
<p>{% trans %}When you install the I2P software made available at geti2p.net, you are
|
||
actually installing an I2P router and an accompanying bundle of basic
|
||
applications. The I2P Java distribution is the first I2P software gateway and
|
||
has been actively developed since 2001.{%- endtrans %}</p>
|
||
<p>{% trans %}The applications are made available through a webUI, which listens at
|
||
127.0.0.1:7657, and the main page of which is called the “Router Console,”
|
||
where you monitor the health of your connection to the network and access
|
||
applications that to use on the network.{%- endtrans %}</p>
|
||
<h3>{% trans %}What is included:{%- endtrans %}</h3>
|
||
<p>{% trans %}<strong>The Set Up Wizard</strong>: When you download the
|
||
I2P software, a set up wizard will guide you through a few configuration steps
|
||
while your router is making its first connections to the network. This happens
|
||
the same way that your home router connects you to the Internet. During the set
|
||
up process, you will be given the option to test your bandwidth and set your
|
||
bandwidth limits in order to ensure a good connection as a network peer.{%- endtrans %}</p>
|
||
<p>{% trans %}<strong>The I2P Router Console</strong>: Here is where you can see your
|
||
network connections and information about your router. You will be able to see how many peers you
|
||
have, and other information that will help if you need to troubleshoot. You can
|
||
stop and start the router as well. You will see the applications that the
|
||
software includes, as well as links to some community forums and sites on the
|
||
I2P network. You will receive news when there is a a new software release, and
|
||
will be able to download the latest version here as well. Additionally, you can
|
||
find shortcuts to other available applications. The console is customizable and
|
||
includes a default light theme with a dark theme option.{%- endtrans %}</p>
|
||
<p>{% trans %}<strong>SusiMail</strong>: SusiMail is a secure email client. It is primarily
|
||
intended for use with Postman’s email servers inside of the I2P network . It
|
||
is designed to avoid leaking information about email use to other networks.
|
||
SusiMail is bridged so it can send and receive email from the internet as well.
|
||
Occasionally you may see some services like Gmail classifying it as spam, which
|
||
you can correct in your Internet email service providers settings.{%- endtrans %}</p>
|
||
<p>{% trans bittorrent='http://www.bittorrent.com/' -%}<strong><a href="{{ bittorrent }}">I2PSnark</a></strong>: Snark is an I2P network only BitTorrent client.
|
||
It never makes a connection to a peer over any other network.{%- endtrans %}</p>
|
||
<p>{% trans addressbook='docs/naming' -%}<strong><a href="{{ addressbook }}">The AddressBook</a></strong>: This is a locally-defined list of
|
||
human-readable addresses ( ie: i2p-projekt.i2p) and corresponding I2P addresses.(udhdrtrcetjm5sxzskjyr5ztpeszydbh4dpl3pl4utgqqw2v4jna.b32.i2p) It integrates with other applications to
|
||
allow you to use those human-readable addresses in place of those I2P
|
||
addresses. It is more similar to a hosts file or a contact list than a network
|
||
database or a DNS service. There is no recognized global namespace, you decide
|
||
what any given .i2p domain maps to in the end.{%- endtrans %}</p>
|
||
<p><strong>The QR Code Generator</strong>: Besides the Addressbook, I2P
|
||
addresses can be shared by converting them into QR codes and scanning them with
|
||
a camera. This is especially useful for Android devices.</p>
|
||
<p>{% trans i2ptunnel=site_url('docs/api/i2ptunnel') -%}<strong><a href="{{ i2ptunnel }}">I2P Hidden Services Manager</a></strong> This is a general-purpose
|
||
adapter for forwarding services ( ie SSH ) into I2P and proxying client
|
||
requests to and from I2P. It provides a variety of “Tunnel Types” which are
|
||
able able to do advance filtering of traffic before it reaches I2P.{%- endtrans %}</p>
|
||
<h3>{% trans %}Applications Outside I2P to use with I2P{%- endtrans %}</h3>
|
||
<p>{% trans browser=site_url('about/browser-config') %}<strong><a href="{{ browser }}">Mozilla Firefox</a></strong>: A web browser with advanced privacy and
|
||
security features, this is the best browser to configure to browse I2P
|
||
sites.{%- endtrans %}</p>
|
||
<p>{% trans browser=site_url('about/browser-config') %}<strong><a href="{{ browser }}">Chromium</a></strong>: A web browser developed by Google that is the
|
||
Open-Source base of Google Chrome, this is sometimes used as an alternative to
|
||
Firefox.{%- endtrans %}</p>
|
||
<p>{% trans %}<strong><a href="https://biglybt.com">BiglyBT</a></strong>: A Feature-Rich bittorrent client including I2P
|
||
support and the unique ability to “Bridge” regular torrents in-to I2P so
|
||
people can download them anonymously.{%- endtrans %}</p>
|
||
<p><strong>OpenSSH</strong>: OpenSSH is a popular program used by systems
|
||
administrators to remotely administer a server, or to provide “Shell”
|
||
accounts for users on the server.</p>
|
||
<p>{% trans git=site_url('docs/applications/git'), gitlab=site_url('docs/applications/gitlab') %}<strong><a href="{{ git }}">Git</a>/<a href="{{ gitlab}}">Gitlab</a></strong>: Git is a source-code control tool which is
|
||
distributed, and often recommends a fork-first workflow. Hosting source code on
|
||
I2P is an important activity, so Gitlab-specific instructions are available for
|
||
all to use.{%- endtrans %}</p>
|
||
<p>{% trans %}<strong>Debian and Ubuntu GNU/Linux</strong>: It is possible to obtain
|
||
packages for Debian and Ubuntu GNU/Linux over I2P using <a href="https://i2pgit.org/idk/apt-transport-i2p">apt-transport-i2p</a> and
|
||
<a href="https://i2pgit.org/idk/apt-transport-i2phttp">apt-transport-i2phttp</a>. In the future, a bittorrent-based transport may also be
|
||
developed. {%- endtrans %}</p>
|
||
<h3>{% trans %} Applications for Developers to create new things{%- endtrans %}</h3>
|
||
<p>{% trans sam=site_url('docs/api/sam') %}<strong><a href="{{ sam }}">The SAM API Bridge</a></strong>: The SAM API is a language-independent
|
||
API for writing applications that are I2P-native by communicating with the
|
||
local I2P router. It can provide Streaming-like capabilities, Anonymous
|
||
Datagrams, or Repliable Datagrams.{%- endtrans %}</p>
|
||
<p>{% trans bob=site_url('docs/api/bob') %}<strong><a href="{{ bob }}">The BOB API Bridge</a></strong>: This is a deprecated technology, BOB
|
||
users should migrate to SAM if it is possible for them to do so.{%- endtrans %}</p>
|
||
<p>{% trans i2cp=site_url('docs/protocol/i2cp') %}<strong><a href="{{ i2cp }}">The I2CP API</a></strong>: Not strictly an application, this is how Java
|
||
applications communicate with the I2P router to set up tunnels, generate and
|
||
manage keys, and communicate with other peers on the network.{%- endtrans %}</p>
|
||
|
||
<p>{% trans team=site_url('about/team'), volunteer=site_url('get-involved'),
|
||
licenses=site_url('get-involved/develop/licenses'), sam=site_url('docs/api/sam'),
|
||
roadmap=site_url('get-involved/roadmap') -%}
|
||
The I2P development <a href="{{ team }}">team</a> is an open group, welcome to all
|
||
who are interested in <a href="{{ volunteer }}">getting involved</a>, and all of
|
||
the code is <a href="{{ licenses }}">open source</a>. The core I2P SDK and the
|
||
current router implementation is done in Java. The network is actively being developed
|
||
and has not yet reached the 1.0 release, but the current <a href="{{ roadmap }}">roadmap</a>
|
||
describes our schedule.
|
||
{%- endtrans %}</p>
|
||
{% endblock %}
|