- I2P
-
I2P - Das Anonyme Netzwerk Basisdaten Aktuelle Version 0.8.11
(8. November 2011)Betriebssystem Plattformunabhängig Kategorie Overlay-Netzwerk, Sicherheitssoftware Lizenz mehrere:[1] Gemeinfreiheit, BSD-Lizenz, GNU GPL, MIT-Lizenz, Artistic License Deutschsprachig teilweise 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 zensurresistenter, ü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.
Inhaltsverzeichnis
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 zusätzlich installiert werden.
Robert
Robert ist eine Weiterentwicklung von I2PRufus. Statt SAM benutzt er BOB und unterhält für jeden aktiven torrent Tunnel, die von den anderen völlig getrennt sind. Robert muss zusätzlich installiert werden.
i2p-bt
i2p-bt ist ein Kommandozeilen-Bittorrent-Client für I2P.
Transmission for I2P
Transmission for I2P ist eine Portierung des 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 zusätzlich installiert werden. Die Diskussion und Koordination zu I2Phex findet in den Foren des Projekts statt.
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 E-Mail-System. Es unterstützt das Erstellen und Verwenden verschiedener Identitäten und filtert die Mail-Header so, dass nur die wirklich notwendigen, nicht-identifizierenden Headerbestandteile verwendet werden (diese sind dann aber ebenfalls verschlüsselt). Diese Anwendung ist noch im Alpha-Stadium, befindet sich aber in aktiver Entwicklung. Derzeit kann man sie über das Webinterface benutzen, aber für die Zukunft ist POP3-Unterstützung geplant, sodass es mit jedem gängigen E-Mail-Programm verwendet werden kann. I2P-Bote bietet zusätzlich noch einen high-latency transport ähnlich wie mixmaster oder mixminion an, der eine noch stärkere Anonymität bieten soll. I2P-Bote ist somit auch als Remailer zu bezeichnen. 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.
Alle Bote-Mails sind 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 E-Mail-Systemen und auch bei Susimail noch besteht, sich selbst separat um die Verschlüsselung und Authentifizierung der E-Mails kümmern zu müssen, wenn man nicht will, dass beispielsweise der Betreiber des E-Mail-Servers den Inhalt der E-Mails lesen kann.
Aufgrund dessen, dass I2P-Bote völlig denzentral ist, gibt es natürlich auch keinen solchen Mailserver der verschiedene anonyme Identitäten miteinander in Verbindung bringen könnte (Stichwort: Profiling): Selbst die weiterleitenden und speichernden Rechner kennen weder den realen Absender noch dessen pseudonyme E-Mail-Adresse, und ausschließlich der letzte Knoten der 'high-latency' Mailrouten und die speichernden Rechner kennen überhaupt die anonyme Empfängeradresse. Und selbst für sie bleiben Betreff, Datum, etc. uneinsehbar.
I2P-Messenger
Seit Anfang 2008 gibt es ein Programm für Instant Messaging. 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. Ab der kommenden Version unterstützt I2P-Messenger auch die Suche nach usern nach nickname oder Interessen.
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 und 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 einen Outproxy. Ein solcher Outproxy erlaubt es den Nutzern, freigegebene 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 die Nutzdaten Ende-zu-Ende-verschlüsselt sind. Dies ist zwar auch bei Tor hidden services der Fall, nicht aber wenn man Tor benutzt, um ganz normale Webservices zu nutzen.
Gleiches gilt für E-Mails, 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-Angriffen hilfreich ist, denn eine Anfrage und die Antwort darauf nehmen nicht denselben Weg. Allerdings verdoppelt dies auch die Anzahl aufgebauter Tunnel, was wiederum die Wahrscheinlichkeit erhöht, einen Tunnel aus Knoten aufzubauen, die unter der Kontrolle eines Angreifers liegen. Damit wäre für diesen Angreifer ggf. eine Deanonymisierung der Verkehrsbeziehung zwischen Sender und Empfänger möglich. I2P ist im Gegensatz zu Tor völlig dezentral und die Tunnel ändern sich mindestens alle zehn Minuten.
Ferner kommen bei I2P zusätzlich zum onion routing auch garlic messages zum Einsatz.[2] Diese realisieren die Ende-zu-Ende-Verschlüsselung innerhalb des I2P-Netzes und bündeln eine oder mehrere Nachrichten, die beim Empfänger gemeinsam entschlüsselt werden. Die einzelnen Nachrichten müssen dabei nicht alle unbedingt für den Empfänger selbst bestimmt sein, sondern können teilweise auch Weiterleitungs- und Verzögerungsanweisungen enthalten. Dies wäre insbesondere für nichtzeitkritische Dienste interessant, da die durch die Verzögerung realisierte zeitliche Entkopplung der Nachrichtenweiterleitung die Anonymität stärken kann. Allerdings ist diese Verzögerungsfunktion momentan nur angedacht und nicht implementiert.[3] Prinzipiell wäre I2P so auch komplett ohne Tunnelaufbau allein durch Nutzung der Weiterleitungsfunktion innerhalb der garlic messages anonym verwendbar, indem die weiterzuleitende Nachricht selbst wieder eine garlic message für den nächsten Knoten in der Route ist usw. Standardmäßig wird diese Form der Nachrichtenweiterleitung aber nicht verwendet.
Quellenangaben
- ↑ I2P Software Licenses, www.i2p2.de. Abgerufen: 9. Juni 2010.
- ↑ I2P Technical Introduction: Garlic messages. Abgerufen am 29. August 2011.
- ↑ I2P Technical Introduction: Variable latency. Abgerufen am 29. August 2011.
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 OS X und Linux
Für die folgenden Links muss I2P installiert sein:
Kategorien:- Freie Sicherheitssoftware
- Netzwerkprotokoll
- Anonymität
Wikimedia Foundation.