IPFS und mein Blog
IPFS - oder das InterPlanetary File System bietet die Möglichkeit,
das verteilte Web zu realisieren.
Dieser Artikel beschreibt, warum das für jeden Internet-Nutzer interessant ist, wie
man diese Technik ganz leicht nutzen kann und was mein Blog damit zu tun hat.
Normalerweise behandle ich ein Thema, indem ich mit den technischen Grundlagen beginne.
In diesem Fall weiche ich davon ab, da vermutlich viele dann nach den ersten Zeilen aufgeben.
IPFS ist jedoch etwas, das vom Mitmachen möglichst vieler Beteiligter lebt. Deswegen zunächst
eine ganz praktische Einführung.
Die wichtigsten Fakten zum IPFS finden Sie am Ende dieser Seite.
Bringt Ihnen das etwas?
Kurze Antwort: ja.
Längere Antwort: IPFS kann Ihnen kürzere Ladezeiten und weniger Tracking von Webseiten bringen. Durch die Browser-Erweiterung IPFS-Companion (siehe unten) ist es auch extrem einfach, IPFS zu benutzen.
Je mehr Leute IPFS benutzen, desto größer sind die Vorteile. Und Sie haben keine Nachteile, wenn Sie IPFS benutzen.
Kurz zusammengefaßt: Sie helfen sich und anderen, wenn sie teilnehmen.
Wie kann ich IPFS benutzen?
Am einfachsten ist es, wenn Sie die Browser-Erweiterung IPFS-Companion benutzen. Diese ist sowohl für Firefox verfügbar, als auch für Browser, die den Chrome-Store für ihre Erweiterungen benutzen:

Hier der Link zur Firefox-Erweiterung: https://addons.mozilla.org/en-GB/firefox/addon/ipfs-companion/
Der Link für die anderen Browser: https://chrome.google.com/webstore/detail/ipfs-companion/nibjojkomfdiaoajekhjakgkdhaomnch
Sollte einer dieser Links nicht funktionieren, suchen Sie einfach nach “IPFS companion”.
Nach der Installation des IPFS companions wechselt Ihr Browser zur Willkommensseite
der Browser-Erweiterung, die Sie darauf hinweist, dass Sie auf Ihrem Rechner kein
IPFS installiert haben.
Sie können jetzt noch nicht das volle Potenzial nutzen, aber der Zugriff auf IPFS
funktioniert schon!
Geben Sie einfach folgendes in die Adreßzeile Ihres Browsers ein: ipfs://bafkrmid2p56v6eo4fbzv35yue6i3gqf5wsgaoyqvfi2au6hm3dnyxssqey
Der IPFS companion müßte Sie dann auf das öffentliche IPFS Gateway ipfs.io umleiten und Sie sehen mein Profilbild als Ergebnis: https://ipfs.io/ipfs/bafkrmid2p56v6eo4fbzv35yue6i3gqf5wsgaoyqvfi2au6hm3dnyxssqey
Eventuell verlangt der Companion, den IPFS Desktop zu starten - erlauben Sie das einfach.
Wichtig:
Die Benutzung eines Gateway-Dienstes bringt weder Ihnen noch sonst jemandem
die Vorteile, die IPFS bietet. Sie erhalten dadurch lediglich die Möglichkeit
auf IPFS-Daten zuzugreifen, auch wenn Sie kein IPFS auf Ihrem Rechner installiert
haben.
Hier einige IPFS-Gateways, über die sie auf meinen Blog zugreifen können:
- https://cloudflare-ipfs.com/ipns/frank.tegtmeyer.net/
- https://gateway.temporal.cloud/ipns/frank.tegtmeyer.net/
- https://eternum.io/t/franktegtmeyer
- https://ipfs.io/ipns/frank.tegtmeyer.net/
Richtig: Installation von IPFS-Desktop
Der IPFS Companion erledigt zunächst alles, was im Web-Browser benötigt wird, um auf IPFS-Daten zugreifen zu können.
Mit dem IPFS Desktop wird es aber erst interessant - dieser macht Sie zu einem
vollwertigen Mitglied des IPFS-Universums.
Sie greifen dann nicht nur auf Inhalte zu, die von anderen Benutzern bereitgestellt
werden, sondern Sie selbst stellen dann ebenfalls Inhalte zur Verfügung.
Zunächst sind das erst einmal diejenigen, die sie selbst abgerufen haben - insofern
verhält sich IPFS ungefähr wie ein gemeinsamer Browser-Cache.
Ihr Rechner stellt keine Inhalte bereit, die sie nicht selbst ausgewählt haben -
das ist zum Beispiel anders als bei FreeNet und anderen verteilten Systemen.
Die Installations-Datei für den IPFS-Desktop erhalten Sie auf der folgenden github-Seite: https://github.com/ipfs-shipyard/ipfs-desktop/releases
Für die Installation unter Windows wählen Sie die entsprechende Exe-Datei aus - momentan wäre das die Datei IPFS-Desktop-Setup-0.10.4.exe. Für den Mac steht eine dmg-Datei bereit, momentan die Datei IPFS-Desktop-0.10.4.dmg
Hinweis: Der IPFS-Desktop kann auch auf Deutsch umgeschaltet werden - das geht über den Menüpunkt ganz links unten (Settings) und dann Language/Change.
Nach der Installation sehen sie zunächst erst einmal nichts - der IPFS-Desktop versteckt sich in der Status-Leiste als kleines Icon, hier das Beispiel für den Mac:
Klicken Sie auf das Icon und wählen Sie “Status” - das öffnet das IPFS-Desktop Fenster:

Was können Sie hier sehen?
- Ob Sie zum IPFS Verbindung haben (“Connected to IPFS”)
- Wie viel Daten Sie bereitstellen (Hosting)
- Mit wie vielen Gegenstellen Sie Verbindung haben (Discovered XXX peers)
- Ihre eigene Peer-ID (normalerweise müssen Sie die nicht wissen)
- Eine Grafik, die Ihnen anzeigt wie viel Daten Sie empfangen und senden
- und zwei “Tachometer”, die die aktuelle Geschwindigkeit für das Senden und Empfangen von Daten anzeigen
Ganz oben finden Sie auch ein Eingabefeld, wo Sie einen “Fingerabdruck” (CID) eingeben können - lassen Sie sich nicht beirren, dass dort QmHash steht - inzwischen gibt es auch andere Arten von Fingerabdrücken.
Probieren Sie doch einmal den Hash, den ich weiter oben schon
angegeben habe:
bafkrmid2p56v6eo4fbzv35yue6i3gqf5wsgaoyqvfi2au6hm3dnyxssqey
Das Bild, für das er steht kann zwar im IPFS Desktop nicht direkt angezeigt werden, Sie können es aber herunterladen (download).
Interessant im Menü auf der linken Seite ist der Eintrag “Peers”.
Hier bekommen Sie sogar eine Weltkarte angezeigt, auf der die Computer
verzeichnet sind, mit denen Sie gerade kommunizieren.
Und wenn Sie selbst Dinge im IPFS veröffentlichen wollen: im Menü (links) finden Sie ebenfalls den Eintrag “Files”. Hier können Sie Dateien zum IPFS hinzufügen und sie auf ihrem IPFS-Desktop “pinnen”. Wenn Sie Daten pinnen, werden diese nicht mehr automatisch durch IPFS gelöscht.
Suchmaschinen
Ein System wie IPFS ist ohne eine Suchmaschine nicht so richtig brauchbar - das ist wie
in den Anfangstagen des Web: Sie mussten einen URL irgendwo “finden”, um auf eine Webseite
zu stoßen.
Bei IPFS ist es ähnlich - um Inhalte abzurufen, benötigen Sie einen Content-Identificator
(auch CID oder Hash genannt).
Zum Glück gibt es inzwischen schon einige Suchmaschinen für IPFS über die auch ohne Kenntnis eines Hashes Inhalte gefunden werden können. Welche gute Ergebnisse liefern, wird sich im Laufe der Zeit zeigen.
Ein Problem ist, dass Hashes manchmal nur eine kurze Lebensdauer haben - wenn Dokumente
überarbeitet werden, ändert sich auch ihr Hash. Dieses Problem wird durch das IPNS
(Inter-Planetary Name System)
und durch DNSLink adressiert
die beide dafür sorgen, dass man sich ändernden Inhalten feste Namen geben kann.
Unter Umständen bevorzugen die Suchmaschinen DNSLink und IPNS, so dass das
Problem nicht so gravierend ist.
Und: Oft abgerufene Inhalte bleiben ganz automatisch im Netz erhalten. Diese sind dann natürlich
über die Suchmaschinen auch gut zu finden.
Einige Beispiele für IPFS Suchmaschinen:
Wie können Sie selbst Inhalte veröffentlichen?
Das ist ganz einfach. Im IPFS-Desktop können Sie Dateien oder fremde CIDs pinnen.
Im Menü auf der linken Seite finden Sie den Datei-Eintrag (Files). Auf der zugehörigen
Seite gibt es den Hinzufügen-Button (“Add”). Dort können Sie Dateien von Ihrem Computer
zum IPFS hinzufügen. Nach dem Hinzufügen erscheint die Datei zusammen mit ihrem CID in der
Liste auf dieser Seite.
Um das Löschen dieser Dateien im IPFS zu verhindern können Sie auf die drei Punkte rechts
neben dem Eintrag klicken und dort “Pin” auswählen. Damit ist das Dokument dann fest
im IPFS verfügbar (solange Ihr IPFS-Desktop läuft).
Sie können auch oben im Eingabefeld des IPFS-Desktop einen CID eingeben - dieser wird dann eventuell angezeigt oder aber zum Download angeboten. Wenn Sie dann auf den erwähnten Button (diesmal heißt er “More”) klicken, können Sie auch diesen CID in ihrem IPFS-Client pinnen.
Da Ihr IPFS-Desktop vermutlich nicht ständig läuft, gibt es inzwischen schon mindestens drei kommerzielle (aber sehr preiswerte) Pinning-Dienste, die dafür sorgen daß die Inhalte ständig verfügbar sind. Das wären zur Zeit:
Wenn Sie dort einen (vorhandenen) CID pinnen lassen, holen die Services die Dokumente von Ihrem Rechner (oder von anderen Rechnern) und stellen sie ebenfalls im IPFS-Netzwerk bereit.
Was hat das alles mit meinem Blog zu tun?
Ganz einfach - ich publiziere meinen Blog jetzt auch über IPFS. Wenn Sie den IPFS Companion und IPFS Desktop installiert haben, benutzen Sie das ganz automatisch, sobald Sie meinen Blog aufrufen.
Der IPFS-Companion ändert dann die Adreßzeile Ihres Browsers zum Beispiel von https://frank.tegtmeyer.net/ in http://localhost:8080/ipns/frank.tegtmeyer.net/
Das bedeutet, dass der Browser jetzt über Ihren lokalen IPFS Gateway auf
meine publizierten IPFS-Inhalte zugreift.
Sie können das übrigens für jede einzelne Webseite ein- und ausschalten,
wenn Sie auf das IPFS Companion Icon klicken, das rechts oben in Ihrem Browser
angezeigt wird:

- Ein-/Ausschalten für eine Webseite mit dem Schalter (“Enable on …")
- Sie können auch die Ressource dauerhaft pinnen (PIN IPFS resource”)
- Über den Schalter ganz oben (unter IPFS Companion") können Sie die Benutzung von IPFS auch ganz ausschalten.
- “Redirect to Gateway” sollte eigentlich immer eingeschaltet sein - wenn etwas nicht funktioniert, schalten Sie lieber IPFS für die Webseite aus
Den Blog für IPFS tauglich zu machen, war ganz schön aufwändig - falls Sie irgendwo noch Restprobleme feststellen wäre es nett, mir die mitzuteilen.
Beachten Sie aber, dass das Kommentar-Formular auf IPFS nicht funktioniert.
Und nun: Viel Spass mit IPFS!
Fakten zum IPFS
Hier die wichtigsten Fakten zum IPFS:
- Benutzung von P2P (peer-to-peer) Technologie
P2P verbindet Computer direkt miteinander, ohne Mitwirkung eines zwischengeschalteten Servers. Unter Umständen unterhält sich Ihr Computer direkt mit dem Ihres Nachbarn, um IPFS-Inhalte zu laden. - Kostenersparnis für Anbieter
Heute müssen Inhalte schnell zum Kunden transportiert werden. Dazu werden normalerweiser CDN (content delivery networks) eingesetzt, die die Inhalte physisch “dichter” zu den Kunden bringen um den Transport durch das Internet zu vermeiden. All das kostet natürlich Geld. Durch P2P kann man ähnliche Effekte erreichen, abhängig von der Anzahl der Teilnehmer und der Popularität der abgerufenen Inhalte. - Leistungs-Steigerung
Durch die P2P-Arbeitsweise ist es möglich, dass sich enorme Geschwindigkeitssteigerungen ergeben. Die Inhalte müssen unter Umständen nicht von einem schlecht angebundenen weit entfernten Server geladen werden, sondern von Leuten in der Nähe die besser erreichbar sind.
Das hängt natürlich von der Anzahl der Teilnehmer und von der Popularität des angefragten Inhalts ab. - Inhaltsbasierte Adressierung
Eine Webseite oder ein Bild, Video etc. wird nicht aufgefunden indem man weiß, wo etwas gespeichert ist. Stattdessen wird eine “Kurzbeschreibung” oder ein “Fingerabdruck” des Inhalts generiert. Dieser Fingerabdruck ist weltweit eindeutig. Mit Hilfe des Fingerabdrucks können Inhalte gefunden und geladen werden. - Deduplizierung von Inhalten
Da Inhalte über ihren Fingerabdruck gefunden werden, ist der Inhalt aus der Sicht des Nutzers immer nur einmal vorhanden - nicht wie im traditionellen WWW, wo sich ein gewünschtes Video bei Youtube, Vimeo, Twitter, Instagram oder auf einer beliebigen anderen Webseite befinden kann, von der man dann immer wissen muß.
Haben Sie bei IPFS einen Fingerabdruck, ist es Ihnen egal, woher der Inhalt geladen wird. - Bessere Privatsphäre
Durch die P2P-Technologie ist es schwieriger, Ihre Kommunikation zu belauschen. - Zensur-Resistenz
Die Inhalte werden verteilt im gesamten Internet gespeichert - je häufiger sie abgerufen werden, desto mehr verteilen sie sich. Damit wird es sehr schwierig, Inhalte wieder aus dem Netz zu entfernen.