fbpx

IPFS für Blockchains

Als eine Speichertechnologie wird IPFS in vielen Blockchain-Projekten genutzt. Wir erklären einfach, wie das Verfahren funktioniert.

Das Readme-Dokument von IPFS bringt die eigene Technologie wie folgt auf den Punkt:

„IPFS ist ein verteiltes Dateisystem, das alle Geräte mit dem selben Set an Dateien verbinden möchte“

Was ist der Unterschied von IPFS zum Web und http?

Auf den ersten Blick scheint IPFS also ähnlich wie das Web auszusehen. Allerdings ist es ein Protokoll, das auf Peer-to-Peer Netzwerken besteht und Torrent-Technologien nutzt. Das Projekt selbst übt starke Kritik am gängigen http-Protokoll, das klassischerweise für Übertragungen im Web bekannt ist. Während bei der Nutzung von http Dateien von einem einzelnen „Server“ heruntergeladen werden, nutzt IPFS verschiedene dezentrale Zugriffspunkte für den Dateiaustausch.

IPFS-Protokoll zum Dateiaustauschhttp-Protokoll zum Dateiaustausch
Download von verschiedenen Zugriffspunkten parallel möglichDownload erfolgt von einem Zugriffspunkt direkt

Kernelement Versionierung

Ein weiterer, entscheidender Aspekt an IPFS ist die Möglichkeit zur Versionierung. Das erlaiubt es, Dateien über ihre Zeit zu  verfolgen und Änderungen einsehen zu können. Insbesondere Entwickler nutzen Versionierungen häufig für Software-Projekte zur effizienteren Zusammenarbeit von Entwicklerteams und dem Auffinden von Codefehlern in der Historie.

Auch dies bemängelt das Projekt am derzeitigen Web: Die Archivierung sei nicht ausreichend und einmal überschriebene Informationen gingen einfach verloren, wenn sich bspw. eine Website ändert.

Wie genau funktioniert die Speicherung von Dateien über IPFS?

  • Jede Datei und die verschiedenen Blöcke in ihr werden mit einem eindeutigen Fingerprint versehen – dem Hashwert.
  • Das Protokoll entfernt Duplikate im Netzwerk und überwacht die Versionshistorie jeder Datei
  • Jede Node im Netzwerk speichert nur die Inhalte, die sie für interessant oder relevant hält – außerdem hält sie Index-Informationen bereit, über die sich herausfinden lässt, welche Node welche Dateien speichert.
  • Wenn eine Datei heruntergeladen werden soll, wird im Netzwerk die Datei über den Fingerprint angefragt, über den sie aufgefunden werden kann.
  • Das IPNS-System erlaubt es, lesbare Namen statt Hashes (=Fingerprints) zu nutzen, um Dateien aufzufinden. Das dezentrale Naming-System übernimmt die Speicherung von Namen zu ihren zugehörigen Fingerprints. Damit erfüllt es dieselbe Funktion wie DNS-Server bei Domains, die angeben, zu welcher IP-Adresse bspw. die Domain BTC-ECHO.de gehört und den Nutzer an den korrekten Server weiterleiten.

Was hat IPFS mit der Blockchain zu tun?

In vielen Whitepapers jüngerer Projekte liest man, dass IPFS als Speichertechnologie genutzt wird. Dies bietet sich in der Regel an, weil sich die Referenzen von der Blockchain zu über IPFS gespeicherten Daten herstellen lässt. Der unveränderbare IPFS-Link kann damit mit einer Blockchain-Transaktion verknüpft werden, die ebenfalls unveränderlich ist.

Das bietet den wesentlichen Vorteil, dass Dateien nicht auf der Chain selbst gespeichert werden müssen und diese verstopfen. Stattdessen werden auf der Chain lediglich Referenzen, also Links, zu den Dateien gespeichert, die in Wirklichkeit über das IPFS-Netzwerk verteilt sind.

BTC-ECHO