Secure Scuttlebutt — ein peer-to-peer soziales Netzwerk, das auch offline funktioniert.

Scuttlebutt — ein umgangssprachlicher Begriff, der unter amerikanischen Seeleuten verbreitet ist und GerĂŒchte und Klatsch bezeichnet. Der Node.js-Entwickler Dominic Tarr, der in einem Segelschiff vor der KĂŒste Neuseelands lebt, verwendete dieses Wort fĂŒr ein P2P-Netzwerk, das fĂŒr den Austausch von Nachrichten und persönlichen Mitteilungen gedacht ist. Secure Scuttlebutt (SSB) ermöglicht es, Informationen auszutauschen, wobei nur sporadischer Zugang zum Internet oder sogar völlige Abwesenheit davon erforderlich ist.

SSB funktioniert bereits seit mehreren Jahren. Die Funktionen des sozialen Netzwerks können mit zwei Desktop-Anwendungen getestet werden (Patchwork und Patchfoo), sowie einer Anwendung fĂŒr Android (Manyverse). FĂŒr Technikbegeisterte gibt es ssb-git. Interessiert, wie ein offline-first P2P-Netzwerk ohne Werbung und ohne Registrierung funktioniert? Dann lesen Sie weiter.

Secure Scuttlebutt — ein peer-to-peer soziales Netzwerk, das auch offline funktioniert.

FĂŒr die Funktionsweise von Secure Scuttlebutt sind lediglich zwei Computer erforderlich, die in einem lokalen Netzwerk verbunden sind. Anwendungen, die auf dem SSB-Protokoll basieren, senden Broadcast-UDP-Nachrichten und können sich automatisch finden. Die Suche nach Knoten im Internet ist etwas komplizierter, und auf dieses Thema werden wir in ein paar AbsĂ€tzen zurĂŒckkommen.

Ein Benutzerkonto ist eine zusammenhĂ€ngende Liste aller seiner EintrĂ€ge (Protokoll). Jeder nachfolgende Eintrag enthĂ€lt den Hash des vorherigen und wird mit dem privaten SchlĂŒssel des Benutzers signiert. Der öffentliche SchlĂŒssel dient als Benutzeridentifikation. Das Löschen und Bearbeiten von EintrĂ€gen ist weder dem Autor noch jemand anderem möglich. Der EigentĂŒmer kann EintrĂ€ge am Ende des Protokolls hinzufĂŒgen. Andere Benutzer können es lesen.

Anwendungen, die sich im selben lokalen Netzwerk befinden, erkennen einander und fordern automatisch Aktualisierungen bei den Nachbarn fĂŒr die Protokolle an, die sie interessieren. Es spielt keine Rolle, von welchem Knoten Sie das Update herunterladen, da Sie die AuthentizitĂ€t jedes Eintrags mithilfe des öffentlichen SchlĂŒssels ĂŒberprĂŒfen können. Bei der Synchronisierung werden keine persönlichen Informationen ausgetauscht, außer den öffentlichen SchlĂŒsseln der Protokolle, die Sie interessieren. WĂ€hrend Sie zwischen verschiedenen WiFi-/LAN-Netzwerken (zu Hause, im CafĂ©, bei der Arbeit) wechseln, werden Kopien der lokal gespeicherten Protokolle automatisch auf GerĂ€te anderer Benutzer in Ihrer NĂ€he ĂŒbertragen. Das funktioniert Ă€hnlich wie «Mundpropaganda»: Wanja erzĂ€hlte Masha, Masha erzĂ€hlte Petja und Petja erzĂ€hlte Walentina. Der wesentliche Unterschied zur «Mundpropaganda» besteht darin, dass bei der Kopie von TagebĂŒchern die Informationen darin nicht verzerrt werden.

«In den Freundeslisten von jemandem sein» hat hier eine konkrete physische Bedeutung: meine Freunde bewahren eine Kopie meines Tagebuchs auf. Je mehr Freunde ich habe, desto zugĂ€nglicher ist mein Tagebuch fĂŒr andere. In der Beschreibung des Protokolls steht, dass die Anwendung Patchwork TagebĂŒcher synchronisiert, die sich bis zu 3 Schritte (Freunde von Freunden von Freunden) von Ihnen entfernt befinden. In den meisten FĂ€llen ermöglicht dies, lange Diskussionen mit vielen Teilnehmern offline zu lesen.

Das Benutzerjournal kann EintrĂ€ge verschiedener Typen enthalten: öffentliche Nachrichten, die Ă€hnlich wie BeitrĂ€ge auf der Wall von VKontakte sind, persönliche Nachrichten, die mit dem öffentlichen SchlĂŒssel des EmpfĂ€ngers verschlĂŒsselt sind, Kommentare zu den BeitrĂ€gen anderer Benutzer und Likes. Das ist eine offene Liste. Bilder und andere große Dateien werden nicht direkt im Journal abgelegt. Stattdessen wird ein Hash des Files eingetragen, mit dem diese Datei separat vom Journal angefordert werden kann. Die Sichtbarkeit der Kommentare fĂŒr den Autor der ursprĂŒnglichen Nachricht ist nicht garantiert: Wenn zwischen Ihnen nicht genĂŒgend gemeinsame Freunde bestehen, werden Sie diese Kommentare wahrscheinlich nicht sehen. Selbst wenn also ungebetene GĂ€ste versuchen, Ihren Beitrag zu erobern, werden Sie nichts bemerken, solange es sich nicht um Ihre Freunde oder Freunde von Freunden handelt.

Secure Scuttlebutt ist nicht das erste P2P-Netzwerk und auch nicht das erste P2P-soziale Netzwerk. Der Wunsch, ohne ZwischenhĂ€ndler zu kommunizieren und aus dem Einfluss großer Unternehmen auszubrechen, besteht schon lange und hat mehrere offensichtliche GrĂŒnde. Nutzer sind genervt von den Regeln, die großen Akteuren aufgezwungen werden: Nur wenige möchten Werbung auf ihrem Bildschirm sehen oder gesperrt werden und dann Tage auf eine Antwort des Supports warten. Die unkontrollierte Erhebung persönlicher Daten und deren Weitergabe an Dritte, die schließlich dazu fĂŒhrt, dass diese Daten manchmal im Darknet verkauft werden, erinnert immer wieder an die Notwendigkeit, andere Interaktionsformen zu schaffen, bei denen der Nutzer mehr Kontrolle ĂŒber seine Daten hat. Er selbst sollte auch fĂŒr deren Verbreitung und Sicherheit verantwortlich sein.

Bekannte dezentralisierte soziale Netzwerke wie Diaspora oder Mastodonund das Protokoll Matrix sind keine Peer-to-Peer-Netzwerke, da sie immer eine Client- und eine Server-Seite haben. Statt einer gemeinsamen Datenbank wie bei Facebook können Sie Ihren "Heimserver" auswĂ€hlen, auf dem Ihre Daten gespeichert werden, was bereits ein großer Fortschritt ist. Allerdings hat der Administrator Ihres "Heimservers" immer noch viele Möglichkeiten: Er kann Ihre Daten ohne Ihr Wissen teilen, Ihr Konto löschen oder sperren. Zudem kann es sein, dass er das Interesse an der Wartung des Servers verliert, ohne Sie darĂŒber zu informieren.

Bei Secure Scuttlebutt gibt es auch Zwischennodes, die die Synchronisierung erleichtern (diese werden "Pubs" genannt). Die Nutzung von Pubs ist jedoch optional, und sie sind untereinander austauschbar. Wenn der Ihnen vertraute Node nicht verfĂŒgbar ist, können Sie andere nutzen, ohne etwas zu verlieren, da eine vollstĂ€ndige Kopie aller Ihrer Daten immer bei Ihnen ist. Der Zwischennode speichert keine unverzichtbaren Daten. Ein Pub wird, wenn Sie ihn darum bitten, Sie als Freund hinzufĂŒgen und bei der Verbindung seine Kopie Ihres Protokolls aktualisieren. Wenn sich Ihre Abonnenten mit ihm verbinden, können sie Ihre neuen EintrĂ€ge herunterladen, auch wenn Sie bereits offline sind. Damit ein Pub mit Ihnen befreundet wird, mĂŒssen Sie eine Einladung vom Pub-Administrator erhalten. In der Regel kann dies selbststĂ€ndig ĂŒber die Web-OberflĂ€che erfolgen (Liste der Pubs). Sollte Ihnen von allen Pub-Administratoren ein Bann erteilt werden, wird Ihr Protokoll auf die zuvor beschriebene Weise verbreitet, d.h. nur unter denen, die Sie persönlich treffen. Auch die Übertragung von Updates auf einen USB-Stick ist möglich.

Obwohl das Netzwerk schon recht lange existiert, sind nur wenige Menschen darin aktiv. Laut den SchĂ€tzungen von AndrĂ© Staltz, dem Entwickler der Android-App Manyverse, waren im Juni 2018 in seiner lokalen Datenbank etwa 7.000 SchlĂŒssel. Zum Vergleich, in Diaspora — ĂŒber 600.000, in Mastodon — etwa 1 Million.

Secure Scuttlebutt — ein peer-to-peer soziales Netzwerk, das auch offline funktioniert.

Die Anleitung fĂŒr AnfĂ€nger befindet sich hier. Die grundlegenden Schritte sind: die App installieren, ein Profil erstellen, eine Einladung auf der Pub-Website erhalten und diese Einladung in die App kopieren. Es ist möglich, mehrere Pubs gleichzeitig zu verbinden. Man muss Geduld haben: das Netzwerk funktioniert viel langsamer als Facebook. Der lokale Cache (Ordner .ssb) wird schnell auf mehrere Gigabyte anwachsen. Interessante BeitrĂ€ge lassen sich bequem ĂŒber Hashtags suchen. Man kann beispielsweise mit Dominik Tarr anfangen (@EMovhfIrFk4NihAKnRNhrfRaqIhBv1Wj8pTxJNgvCCY=.ed25519).

Alle Bilder stammen aus dem Artikel von AndrĂ© Staltz „Ein unabhĂ€ngiges soziales Netzwerk“ und seinem Twitter.

NĂŒtzliche Links:

[1] Offizielle Website

[2] Patchwork (App fĂŒr Windows/Mac/Linux)

[3] Manyverse (App fĂŒr Android)

[4] ssb-git

[5] Beschreibung des Protokolls („Scuttlebutt Protocol Guide — Wie Scuttlebutt-Teilnehmer einander finden und miteinander kommunizieren“)

Quelle: habr.com

Kaufen Sie zuverlĂ€ssiges Hosting fĂŒr Websites mit DDoS-Schutz, VPS VDS-Server đŸ”„ Kaufen Sie zuverlĂ€ssiges Hosting fĂŒr Websites mit DDoS-Schutz, VPS VDS-Server | ProHoster