I2P
I2P - Das Anonyme Netzwerk
| |
---|---|
![]() | |
![]() | |
Basisdaten
| |
Erscheinungsjahr | 2003 |
Aktuelle Version | 0.7.14 (7. Juni 2010) |
Betriebssystem | Plattformunabhängig |
Programmiersprache | Java[1], C++[2][3] |
Kategorie | Overlay-Netzwerk, Sicherheitssoftware |
Lizenz | mehrere: Gemeinfreiheit, BSD-Lizenz, GNU GPL, MIT-Lizenz, Artistic License |
deutschsprachig | ja |
i2p2.de |
I2P (Abk. für Invisible Internet Project, deutsch: Projekt unsichtbares Internet) ist ein Freie-Software-Projekt mit dem Ziel, ein anonymes/pseudonymes Netzwerk zu schaffen, welches eine einfache Übertragungsschicht mit dem Nutzen der Anonymität und Sicherheit für Applikationen zur Verfügung stellt. Das Netzwerk selbst ist nachrichtenbasiert (wie IP), bietet aber auch eine Bibliothek an, die Streaming von Daten erlaubt und TCP ähnelt. Die Kommunikation ist an beiden Enden verschlüsselt, dafür werden insgesamt vier Schichten zur Verschlüsselung je Paket verwendet. Auch die Empfangspunkte sind wiederum durch Verschlüsselungsverfahren geschützt. Größtenteils besteht diese aus einem Paar öffentlicher Schlüssel.
Obwohl die meisten der Software-Entwickler vorher Teil der IIP- und Freenet-Gemeinschaft waren, sind schon auf den ersten Blick deutliche Unterschiede zwischen deren Konzept und dem Design von I2P erkennbar. IIP ist ein anonymer, zentralisierter IRC-Server, Freenet ist ein Zensur-resistenter, über mehrere Clients verteilter Datenspeicher, I2P jedoch ist eine anonyme, über Peer-to-Peer verteilte Kommunikationsschicht, die dafür entworfen wurde, jedes herkömmliche Protokoll (z. B. Usenet, E-Mail, IRC, HTTP, Telnet, XMPP, ...), genauso wie die traditionellen verteilten Anwendungen (z. B. Squid oder auch DNS) zu unterstützen. Es sind verschiedene Dienste in Entwicklung wie Syndie (authentifizierbarer und anonymer Blog), anonyme E-Mail (funktionsfähig), anonymes IRC (funktionsfähig), eepsites (funktionsfähig).
Das Programm selbst bezeichnet man als I2P-Router und ein Rechner, auf dem I2P läuft, wird als node bzw. (I2P-)Knoten bezeichnet - wobei aber auch hier oft von Routern die Rede ist.
Realisierung
Der Kern der I2P-Anwendung ist in Java geschrieben, eine aktuelle Java-Version muss also installiert sein.
Ein Teil der Dienste ist in Form von Webanwendungen integriert und über den Browser erreichbar. Die zentrale Rolle spielt hierbei die „router console“ als Einstiegsseite.
Andere Dienste werden teilweise dadurch realisiert, dass der I2P-Dienst als Proxy (z. B. für HTTP, IRC, Mail, CVS) arbeitet, wobei er sich teilweise gegenüber dem jeweiligen Client wie ein normaler Server verhält. Auf diese Weise können dann die normalen Client-Programme wie Firefox eingesetzt werden, die lediglich auf den eigenen I2P-Server/Proxy umkonfiguriert werden müssen. Hierbei kommen meist abweichende, 4-stellige Port-Nummern zum Einsatz.
Daneben gibt es noch speziell angepasste Zusatzprogramme: eine Erweiterung für Vuze für BitTorrent im I2P-Netz und I2Phex, ein I2P-Gnutella-Servent. Die Netze I2P-Bittorrent und I2P-Gnutella sind ohne Verbindung zu ihren nicht anonymen Vaternetzen, so dass hier Inhalte separat bereitgestellt werden müssen.
Versionsplanung
I2P ist nach Einstufung der Entwickler eine Beta-Version und bietet noch nicht den angestrebten Grad an Anonymität. Dieser soll in einer Version 1.0 erreicht werden.
Schnittstellen
I2PTunnel
I2PTunnel ist eine in I2P eingebettete Anwendung, die es erlaubt, beliebige TCP/IP-Dienste über I2P zur Verfügung zu stellen.
SAM
SAM ist ein Protokoll, welches es erlaubt, I2P-basierte Programme in einer größeren Auswahl von Programmiersprachen zu entwickeln.
BOB
BOB ist eine weitere Schnittstelle, die es erlaubt, I2P-basierte Programme in einer größeren Auswahl von Programmiersprachen zu entwickeln.
Applikationen
I2PSnark
I2PSnark ist ein anonymer, in I2P als Web-Applikation integrierter Bittorrent-Client. Damit lassen sich spezielle I2P-Bittorrents unter Nutzung des I2P-Layers herunterladen oder auch erzeugen.
I2PRufus
I2PRufus ist ein anonymer, auf Rufus basierender Bittorrent-Client. Damit lassen sich spezielle I2P-Bittorrents unter Nutzung des I2P-Layers herunterladen oder auch erzeugen, es muss jedoch zusätzlich installiert werden.
Robert
Robert ist eine Weiterentwicklung von I2PRufus. Statt SAM benutzt er BOB und unterhalt für jeden aktiven torrent Tunnel, die von den anderen völlig getrennt sind. Robert muss jedoch zusätzlich installiert werden. Er ist I2P-intern unter [1] zu finden.
i2p-bt
i2p-bt ist ein Kommandozeilen-Bittorrent-Client für I2P.
Transmission for I2P
Transmission for I2P ist eine Portierung des beliebten Bittorrent-Klienten Transmission auf das I2P-Netz.
I2Phex
I2Phex ist ein auf dem Open-Source-Programm Phex basierendes P2P-Programm. Dieses bildet ein anonymes Gnutella-Netz innerhalb des I2P-Netzes. Es muss jedoch zusätzlich installiert werden. Die Diskussion und Koordination zu I2Phex findet in den Foren des Projekts statt.[4]
iMule
iMule ist ein auf aMule basierendes Programm für anonymes Filesharing über I2P.
Vuze
Das Open-Source-Programm Vuze hat ebenfalls eine I2P-Funktion; allerdings konnte die Tauglichkeit bisher nicht reproduzierbar nachvollzogen werden, die Entwickler raten deshalb von der Verwendung ab.
Susimail
I2P besitzt einen kostenlosen, pseudonymen E-Mail-Dienst, der von „Postman“ gehostet wird. Susimail wurde entwickelt, um Sicherheitslücken traditioneller E-Mail-Clients zu vermeiden. Diese Clients geben beispielsweise Auskunft über die tatsächliche Identität des Benutzers und gefährden somit die Anonymität.
I2P-Bote
I2P-Bote ist ein Ende-zu-Ende verschlüsseltes, netzwerkinternes und völlig dezentrales, serverloses Email-System. Es unterstützt das Erstellen und Verwenden verschiedener Identitäten und Mail-Header werden gefiltert, sodass nur die wirklich notwendigen, nicht-identifizierenden Headerbestandteile verwendet werden - aber ebenfalls verschlüsselt. Diese Anwendung ist noch im Alpha-Stadium, befindet sich aber weiterhin in aktiver Entwicklung. Derzeit kann man sie nur über das Webinterface benutzen, aber POP3-Unterstützung ist geplant, sodass es mit jedem gängigen Email-Programm verwendet werden kann. I2P-Bote wird in Zukunft zusätzlich noch einen high-latency transport anbieten, der dann eine noch stärkere Anonymität bieten soll. Des Weiteren sind alle Bote-Mails automatisch Ende-zu-Ende verschlüsselt, sodass der Inhalt der Mail an keiner Stelle als Klartext lesbar ist, außer bei Sender und Empfänger selbst. Damit entfällt die Notwendigkeit, die bei normalen Email-Systemen und auch bei Susimail noch besteht, sich selbst separat um die Verschlüsselung und Authentifizierung der Emails kümmern zu müssen, wenn man nicht will, dass beispielsweise der Betreiber des Email-Servers den Inhalt der Emails lesen kann.
Aufgrund dessen, dass I2P-Bote völlig denzentral ist, gibt es natürlich auch keinen Mailserver der verschiedene anonyme Identäten miteinander in Verbindung bringen könnte (Stichwort: Profiling): Selbst die weiterleitenden und speichernden Rechner kennen weder den realen Absender noch dessen pseudonyme Email-Adresse, und ausschließlich der letzte Knoten der 'high-latency' Mailrouten und die speichernden Rechner kennen überhaupt die Empfängeradresse. Doch selbst für sie bleiben Betreff, Datum, etc. uneinsehbar. Der ursprüngliche Autor bzw. Sender der Bote-Mail kann schon längst wieder offline sein, wenn die Bote-Mail bei den sie speichernden Knoten ankommt. Aber für all jene, die ein schnelles Versenden ihrer Bote-Mails bevorzugen, wird selbstverständlich die zügige, nicht über viele andere Rechner weitergeleitete und verzögerte Methode des Sendens weiterhin bestehen bleiben. Jeder Benutzer kann selbst entscheiden, wie viel Anonymität und wie viel Geschwindigkeit er haben will. I2P-Bote kann hier heruntergeladen werden: http://i2pbote.i2p
I2P-Messenger
Seit Anfang 2008 gibt es ein Programm für Instant Messaging.[5] Es basierte zunächst auf der .NET-Technik, wurde dann jedoch völlig umgeschrieben und ist nun als ein auf QT basierender I2P-Messenger erhältlich. Der I2P-Messenger verbindet sich 'direkt' (also ohne Zuhilfenahme eines zentralen Servers) über den lokalen I2P-Router mit dem Gesprächspartner. Beide Kommunikationspartner können also völlig anonym füreinander sein. Man kann den I2P-Messenger jedoch auch zum Umgehen der Vorratsdatenspeicherung und zur abhörsicheren, untraceable Kommunikation mit Freunden, Bekannten, Kollegen und/oder Geschäftspartnern nutzen. Da sämtliche Kommunikation über I2P geht, kann selbst der Internet Service Provider nicht feststellen, mit wem man eigentlich kommuniziert hat. Die Inhalte sind - dank I2P - selbstverständlich von Ende zu Ende verschlüsselt und es gibt auch, wie oben erwähnt, keinen Server über den sämtliche Kommunikation abgewickelt würde, der dann statistische Daten sammeln könnte. Die Entwicklung befindet sich derzeit noch in der Beta-Phase, aber er ist durchaus schon alltagstauglich, jedoch gibt es keine offline messages. Zu finden ist der Messenger unter QT-Messenger auf http://echelon.i2p (oder über das unsichere Internet: http://echelon.i2p.to).
Syndiemedia
Syndiemedia, kurz Syndie, ist der Versuch, ein benutzerfreundliches und sicheres Blogging-Tool zu schaffen, welches die Techniken von anonymen und sicheren Systemen wie I2P, Tor, Freenet, MNet und anderen verwendet. Die Inhalts-Distributionsseite wird dabei vom verwendeten System losgelöst; Syndie lässt sich über das Web mit allen gängigen Anonymisierern nutzen. Syndie erlaubt Benutzern die Bildung netzwerkübergreifender Communitys, anstatt sich auf ein bestimmtes Netzwerk zu konzentrieren, und ist dadurch weniger von Trends abhängig. Derzeit ist die Entwicklung von Syndie jedoch etwas ins Stocken geraten, uns es gibt derzeit keinen funktionierenden Installer.
Syndies Ansatz ist es, die Sicherheits-, Anonymitäts- und Kryptografiewelten mit der Einfachheit und dem Benutzerfokus der Bloggingwelt zu verschmelzen. Vom Benutzerstandpunkt her kann man Syndie als sicheres verteiltes LiveJournal sehen, während es technisch viel simpler aufgebaut ist. Im März 2007 wurde Syndie als eigenständiges Projekt unter dem Dach von I2P mit der Versionsnummer 1.005a herausgegeben.
IRC
Es gibt in I2P auch mehrere IRC-Server. Diese können unter der Adresse localhost:6668 (bzw. bei einigen IRC-Programmen localhost/6668) erreicht werden, sofern I2P auf demselben Rechner läuft. Ansonsten ist die IP des Rechners zu verwenden, auf dem der I2P-Router läuft. Kanäle sind #i2p-de, #i2p-help, #i2p-chat und #i2p. Wenn man nicht anonym und über I2P diesen Räumen beitreten will oder kann, besteht noch die Möglichkeit des Zugangs via Freenode. Die Raumnamen sind die dort die selben und es gibt Changates.
Outproxy
Die I2P-Community betreibt einige Outproxys. Ein solcher Outproxy erlaubt es den Nutzern, auch Webseiten außerhalb des I2P-Netzwerkes aufzurufen.
Unterschied zu Tor
Während Tor hauptsächlich anonyme Proxyserver für diverse Internet-Dienste wie IRC, E-Mail oder HTTP bietet, geschieht bei I2P primär alles innerhalb des Netzwerks. Der Vorteil dessen ist, dass dabei nicht nur ip-Nummern verschleiert werden, sondern auch die Nutzdaten Ende-zu-Ende verschlüsselt sind. Dies ist auch bei tor hidden services der Fall, nicht aber wenn man tor benutzt, um ganz normale Webservices zu nutzen. Zwar konzentriert sich I2P auf die netzinterne Kommunikation, aber auch hier gibt es mindestens einen outproxy, der das anonyme Besuchen normaler Internetseiten ermöglicht, wo dann jedoch keine Ende-zu-Ende-Verschlüsselung der Daten mehr gegeben ist. Gleiches gilt für Emails die über einen I2P-internen Server gehen (Susimail): diese sind nur vom Sender bis zum Server und vom Server zum Empfänger verschlüsselt - I2P-Bote ist davon nicht betroffen, da es serverlos ist.
Auch benutzt I2P ausschließlich unidirektionale Tunnel, was bei timing attacks hilfreich ist, denn eine Anfrage und die Antwort darauf nehmen nicht den selben Weg. I2P is völlig dezentral und die Tunnel ändern sich mindestens alle 10 Minuten. Statt bloßem onion routings, kommt bei I2P das fortschrittlichere garlic routing [2] zum Einsatz.
Quellenangaben
- ↑ The i2p Open Source Project on Open Hub: Languages Page. In: Open Hub. (abgerufen am 3. September 2018).
- ↑ In: GitHub.
- ↑ github.com.
- ↑ http://forum.i2p2.de/viewforum.php?f=25
- ↑ http://forum.i2p2.de/viewtopic.php?t=2474
Verwandte Projekte
Weblinks
- Offizielle I2P-Webseite
- Das deutsche I2P-Handbuch
- Artikel Anonyme Internetnutzung I2P bei Telepolis
- Eintrag über I2P im ubuntuusers-Wiki
- gulli:das I2P-Projekt im Interview
- Installationsanleitung für Windows, Mac OSX und Linux
Für die folgenden Links muss I2P installiert sein: