Modern technology gives us many things.

FOSDEM: Secure Scuttlebutt im Browser für dezentrale Netze

0 0

Kein zentraler Server, instabile Netzwerkverbindungen – diese Probleme will einer der Entwickler von Secure Scuttlebutt mit einem Peer-to-Peer-Protokoll lösen.


    FOSDEM: Secure Scuttlebutt im Browser für dezentrale Netze

(Bild: Manyverse / FOSDEM)

Von

  • David Wolski

Der Begriff "Scuttlebutt", der diesem Protokoll für dezentrale Datenbanken den Namen leiht, steht für Klatsch und Tratsch unter Seeleuten. Nicht alle der so verbreiteten Gerüchte lassen sich verifizieren. Secure Scuttlebutt (SSB) macht dagegen alle Transaktionen beim Abgleich oder Replizieren von Datenbanken in einem Peer-To-Peer-Netzwerk verifizierbar. Ein Anwendungsbeispiel dafür ist ein soziales Netzwerk im Stil von GNU social und dem verwandten Mastodon. Alle Teilnehmer hosten bei Secure Scuttlebutt auf ihrem System die eigenen Daten sowie Kopien der Daten jener anderen Peers, denen sie folgen. Die kryptografisch signierten, unveränderbaren Datensätze sind als Feed aufgebaut, an die stets nur angefügt wird.

Die Teilnehmer am Netzwerk haben dabei ihren eigenen Ledger (Hauptbuch) und nicht wie bei Blockchain einen global verteilten Ledger, über dessen Konsistenz Konsens herrschen muss. Größere Dateien wie beispielsweise Bilder werden nicht im Feed gespeichert, sondern nur über ihren Hashwert referenziert und separat als Blob behandelt. Secure Scuttlebutt ist keine neue Entwicklung, sondern wurde schon 2014 einer breiteren Öffentlichkeit vorgestellt. Es gibt bereits eine Reihe an Open-Source-Programmen und Android- sowie iOS-Apps wie das soziale Netzwerk Manyverse, die das Protokoll nutzen.

Zur FOSDEM 21 hat nun der an Secure Scuttlebutt beteiligte Programmierer Anders Jensen einen Talk zur Portierung des Protokolls für Webbrowser präsentiert. Diese Portierung kommt mit Javascript sowie WASM aus und läuft in den modernen, HTML5-fähigen Browsern, während die übliche Referenzimplementierung von Secure Scuttlebutt mit Node.js funktioniert.

Für Netzwerkverbindungen nutzt die Browser-Portierung das TCP-Protokoll WebSocket, das bidirektionale Kommunikation über eine TCP-Verbindung bietet. Es ist seit 2011 von der IETF standardisiert und besonders effizient im Vergleich zu HTTP: Der Overhead von WebSocket ist mit zwei Byte pro Nachricht besonders effizient. Bei HTTPS sind es mehrere Hundert Byte Overhead. Anders Jensens SSB-Implementierung nutzt "libsodium.js" als Kryptografiemodul und kommt dabei laut eigener Aussage immerhin auf bis zu 90 Prozent der Geschwindigkeit von nativ implementierten Kryptobibliotheken.

Die Tools und Dienste um SSB waren bis 2018 ungeschliffen und auf die Bedürfnisse von Entwicklern zugeschnitten. Das ist der Akzeptanz von Secure Scuttlebutt generell eher abträglich gewesen. Ein immer wieder formuliertes Ziel im Talk ist der Aufbau eines dezentralen Netzwerks zum Informationsaustausch. Als Aushängeschild und Testplattform kam 2018 deshalb das semi-öffentliche, soziale Netzwerk Manyverse hinzu, das Secure Scuttlebutt erfolgreich demonstriert. Damit gelang es, das breitere Interesse von Anwendern zu wecken. Der Einsatzzweck von SSB muss aber keines der gerne angeführten und schon etwas abgedroschenen sozialen Netzwerken sein – auch der Betrieb eines ein Git-Repository wäre mit SSB möglich.

Mit diesen Einsatzmöglichkeiten hat Secure Scuttlebutt für Webbrowser das Interesse der EU-Initiative NGI Pointer geweckt und vor drei Monaten Fördermittel gewonnen. Aktuell arbeitet Jensen in einem vierköpfigen Team an der Verbesserung des Protokolls bis zur theoretischen Marktreife. Zwei Probleme, die es laut Jensen zu lösen gilt, sind der aktuell noch zu komplizierte Einsteig für neue Teilnehmer und die Performance der wachsenden, lokalen Datenbank. Die kommenden Entwicklungen im Rahmen von NGI Pointer sollen sich zunächst in Manyverse beweisen, bevor sie anderen SSB-Anwendungen zur Verfügung stehen.

(bme)

Quelle: www.heise.de

Hinterlasse eine Antwort

Deine Email-Adresse wird nicht veröffentlicht.