Trend
06.07.2021, 00:00 Uhr
Dezentralität ist die Zukunft
Content Delivery Networks, dezentrale Dateisysteme: Wie Web3-Technologie das Internet auf den Kopf stellt.
IT-Sicherheit ist die Basis jeglicher Online-Aktivitäten. Das haben gerade die vergangenen zwölf Monate gezeigt, in denen die Anzahl an Cyber-Attacken massiv angestiegen ist, unter anderem durch den schnellen Wechsel zahlreicher Unternehmen zu Remote-Work. IT-Experten fordern deshalb den zunehmenden Einsatz von Web3-Technologien, also dem vermehrten Speichern und Prozessieren von Daten auf den jeweiligen Endgeräten, statt auf server- oder in cloudbasierten Lösungen. Denn nicht nur die Datensicherheit, sondern ebenso die Datenhoheit der Nutzer ist beim Einsatz dezentraler Systeme deutlich leichter zu gewährleisten. Auf welchem Stand befinden sich Web3-Technologien aktuell, was können sie bereits leisten – und was nicht?
Was ist das Web3 genau?
Werfen wir hierfür zunächst einen Blick auf die Grundlagen der Zukunftstechnologie. Das Web3 wird allgemein als die nächste Stufe des Internets angesehen. Da es sich zurzeit noch im Aufbau befindet, gibt es noch keine einheitliche, etablierte Definition dessen, was das Web3 ist oder sein wird. Im Allgemeinen bezieht sich der Begriff jedoch auf ein Internet, das durch dezentrale Netzwerke ermöglicht wird. Die wichtigste Innovation dieser Netzwerke ist die Schaffung von Plattformen, die keine einzelne Instanz kontrolliert und denen dennoch jeder vertrauen kann. Das wird möglich, weil jeder Nutzer und Betreiber dieser Netzwerke denselben fest kodierten Regeln folgen muss, die als Konsensprotokolle bekannt sind.
Während das Web 2.0 eine Frontend-Revolution war, ist das Web3 also eine Backend-Revolution und besonders für Backend-Developer eine geradezu wahnwitzige Vorstellung: Denn wie soll das Speichern von Daten funktionieren und sicher sein, wenn man die Datenbanken aus ihren Händen nimmt?
Ein Beispiel: IPFS
Eine technologische Antwort hierauf liefert zum Beispiel IPFS, kurz für "interplanetares Filesystem". IPFS setzt im Kern auf ein selbstorganisierendes P2P-Netzwerk und ermöglicht es so, völlig kostenfrei Daten mit jedem anderen Nutzer der Welt zu teilen. Jeder Node im IPFS-Netzwerk verteilt dabei Datenfragmente so, dass – sofern ein bestimmter Datensatz von hinreichend vielen Nodes oft genug angefragt wird – Daten immer verfügbar sind.
Das IPFS läuft per Default vollständig offline und benötigt keinen laufenden Service für minimale Funktionalität. Mit Hilfe einem einfachen, an POSIX-Filesystem-Kommandos angelehnten API lassen sich Dateien und Ordner lokal in einem IPFS Repository speichern. Unter der Haube zerteilt IPFS alle Dateien in Blöcke konstanter Größe, berechnet einen einfachen Hash über den binären Inhalt eines Blocks und verbindet sie mit Hilfe eines Merkle-DAGs (Merkle Directed Acyclic Graphs) zu einer kryptografisch abgesicherten Struktur, die die Integrität und Authentizität der Datei garantiert. Die Blöcke werden in einem lokalen Key-Value-Store abgelegt und ihre Prüfsummen in eine Hash-Tabelle geschrieben.
Sobald man einen IPFS-Daemon startet, verbindet man sich mit dem globalen Schwarm von anderen IPFS Peers und macht die lokale Hash-Tabelle zum Teil einer global verteilten "Distributed Hash Table", der DHT. Um eine Datei auszutauschen, teilt man seinem Gegenüber die Content-ID (CID) der Datei mit, die als Hash über den Merkle-DAG ihrer Blöcke gebildet wurde. Die andere Partei versucht nun, eine Route durch das P2P-Netzwerk zu einem Node zu finden, der den Inhalt hinter der Content-ID liefern kann. Zur Stunde Null ist das der Rechner, der den Content erstmals veröffentlichte. Dafür bittet er alle mit ihm verbundenen Peers, in ihrem lokalen Teil der DHT nachzuschauen, ob sie die Datei haben oder jemanden kennen, der sie hat.
Was kann das Web3 leisten?
Der große Vorteil von web3-Technologien wie dem IPFS ist die Demokratisierung und Dezentralisierung des Internets. Während Sie heute eine neu erstellte Webseite auf einem zentralen Server vorhalten müssen, können Sie sie morgen schon über ein dezentrales Netzwerk verfügbar machen und später über den Hash bei jedem Nutzer abfragen, der den Content bei sich gespeichert hat. Um hierbei wiederum die Verfügungsvollmacht über eine Domain zu sichern, bieten sich Systeme wie zum Beispiel der Ethereum Name Service (ENS) an. ENS ist praktisch ein Nachschlagewerk, das Informationen eines dezentralen Netzwerks per Blockchain mit einem Namen verknüpft.
Wer jetzt als Entwickler neugierig geworden ist und eine Webseite dezentral hosten möchte, ohne sich mit allen Details auseinandersetzen zu müssen, kann dies zum Beispiel mit [Link auf fleek.co:fleek.co%7C_blank] tun. Fleeks Developer Experience gleicht nicht ohne Grund der von Netlify, dem vermutlich ultimativen Dienst, um statische Webseiten auf Grundlage von Headless-Technologien beziehungsweise dem JAM-Stack (JavaScript, APIs, Markup) zu deployen. Das Build-Ergebnis von Fleeks Pipeline liegt aber nicht auf einem zentral kontrollierten CDN, sondern wird als dezentrale Webseite auf IPFS veröffentlicht und bei Bedarf mit einem ENS-Namen verlinkt.
Obwohl das Web3 bereits viele Möglichkeiten öffnet, um klassische Applikationen neu zu denken, sind wir noch weit entfernt von seiner Mass-Adoption. Das liegt unter anderem daran, dass Webbrowser bislang dezentrale Protokolle wie IPFS nicht direkt unterstützen. Den ersten Schritt in diese Richtung hat Anfang des Jahres der Brave Browser getan: Die Version 1.19 beinhaltet seit Januar auch einen eingebauten IPFS-Support. Damit die Revolution schließlich flächendeckend an Fahrt aufnehmen kann, müssen auch Chrome, Firefox und Co. hier bald nachziehen.
Die Herausforderungen für Web3-Technologien
Bei all dem aktuellen Hype um spektakuläre Blockchain-Projekte, NFTs oder eben die besagte Aussicht auf ein zukünftiges Internet ohne zentrale Server gibt es genügend Grenzen und Herausforderungen des Web3. Zum einen sind Updates von Informationen schwierig, wenn man Inhalte mit Hilfe von Content-Hashes adressiert. Um in einer dezentralen Architektur Dateien aktualisieren zu können, die weiterhin vor Manipulation geschützt sind, benötigen Clients entweder eine Liste von Änderungen, die zur aktuellen Version einer Datei führen oder einen Anker-Hash, mit dem sich die zu einem bestimmten Zeitpunkt gültige Version einer Datei auflösen lässt. Unter der Prämisse, dass das Gesamtsystem vollständig vertrauenslos sein soll, kommt man spätestens hier um den Einsatz von Blockchain-Technologie nicht herum. Ein Verfahren, mit dem sich diese Komplexität heute bereits auflösen lässt, ist das chain-agnostische, auf IPFS aufbauende Ceramic-Protokoll. Die dort verwendeten Verfahren sind jedoch im Vergleich zu einem klassischen, namensadressierten Cloud-Filesystem ziemlich aufwendig, verbrauchen je nach verwendeter Blockchain viel Energie und führen zu einer spürbaren Latenz während der Content-Auflösung. Web3-Technologien machen das Internet also demokratischer und sicherer, aber keinesfalls schneller.
Ein weiteres Problem erwächst aus dem Aspekt der Demokratisierung. Die nicht kompromittierbaren Protokolle des Web3 haben das Potenzial, nicht stoppbare Software zu bauen, bei der niemand einen Urheber aufhalten kann, Inhalte zu publizieren. Einerseits ist es zu begrüßen, dass kein Staat, Großkonzern oder lupenreiner Demokrat der Welt mehr in der Lage sein wird, bestimmte Inhalte im Netz zu löschen oder zu blockieren, indem er einfach den entsprechenden Server abschaltet oder Netzwerk-Traffic zensiert. Diesen Vorteil genießen im Umkehrschluss aber natürlich auch Urheber weniger wünschenswerter Inhalte wie Fake-Newsseiten oder kriminelle Marktplätze.
Bevor es also zur nächsten Revolution des Internets kommen kann, müssen noch grundlegende Fragen geklärt und technologische Hürden genommen werden. Der Grundstein ist gelegt und die wichtigsten Anwendungsmöglichkeiten stehen Entwicklern bereits heute offen. Das Web3 wird uns früher oder später in ein neues Zeitalter des Internets führen – eine Zukunft, in der jeder einen Wert zum Netz beitragen kann und dafür belohnt wird.
Quelle: Stefan Adolf