— een slangterm die veel voorkomt onder Amerikaanse zeelieden en verwijst naar roddels en geruchten. Node.js-ontwikkelaar Dominic Tarr, die op een zeilboot woont voor de kust van Nieuw-Zeeland, gebruikte dit woord in de naam van een p2p-netwerk dat bedoeld is voor het delen van nieuws en persoonlijke berichten. Secure Scuttlebutt (SSB) maakt het mogelijk om informatie te delen met sporadische toegang tot het internet of zelfs zonder enige toegang.
SSB is al enkele jaren in gebruik. De functies van het sociale netwerk kunnen worden getest met behulp van twee desktopapplicaties ( en ) en een Android-applicatie (). Voor techneuten is er . Ben je nieuwsgierig hoe een offline-first p2p-netwerk zonder advertenties en zonder registratie werkt? Kijk dan verder.

Voor het functioneren van Secure Scuttlebutt zijn slechts twee computers nodig die met elkaar verbonden zijn in een lokaal netwerk. De applicaties op basis van het SSB-protocol sturen broadcast UDP-berichten en kunnen elkaar automatisch vinden. Het vinden van knooppunten op het internet is iets ingewikkelder en we zullen dit onderwerp over enkele alinea's bespreken.
Een gebruikersaccount is een doorlopend overzicht van al zijn berichten (logboek). Elk volgend item bevat de hash van het voorgaande item en wordt ondertekend met de privésleutel van de gebruiker. De openbare sleutel fungeert als de identificatie van de gebruiker. Het is niet mogelijk om berichten te verwijderen of te bewerken, noch door de auteur, noch door iemand anders. De eigenaar kan alleen berichten aan het einde van het logboek toevoegen. Andere gebruikers kunnen het lezen.
Applicaties die zich in hetzelfde lokale netwerk bevinden, zien elkaar en verzoeken automatisch updates voor de logboeken waarin ze geïnteresseerd zijn. Het maakt niet uit van welk knooppunt je de update downloadt, omdat je de authenticiteit van elk bericht kunt controleren met behulp van de openbare sleutel. Bij synchronisatie vindt er geen uitwisseling van persoonlijke informatie plaats, behalve de openbare sleutels van de logboeken waarin je geïnteresseerd bent. Terwijl je tussen verschillende WiFi/LAN-netwerken schakelt (thuis, in een café, op het werk), worden de lokaal opgeslagen kopieën van je logboeken automatisch overgedragen aan de apparaten van andere gebruikers die zich in de buurt bevinden. Het lijkt op hoe : Vasya vertelde Masha, Masha — Petya, en Petya — Valentina. Het belangrijke verschil met «mond-tot-mondreclame» is dat bij het kopiëren van tijdschriften de informatie erin niet vervormd wordt.
«Bij iemand in de vriendenlijst staan» krijgt hier een concrete fysieke betekenis: mijn vrienden bewaren een kopie van mijn tijdschrift. Hoe meer vrienden ik heb, hoe toegankelijker mijn tijdschrift is voor anderen. In de beschrijving van de fout staat , dat de Patchwork-app tijdschriften synchroniseert die zich op een afstand van maximaal 3 stappen (vrienden van vrienden van vrienden) van jou bevinden. In de meeste gevallen is het mogelijk om lange discussies met veel deelnemers offline te lezen.
Het tijdschrift van de gebruiker kan verschillende soorten berichten bevatten: openbare berichten, vergelijkbaar met berichten op de muur van Vkontakte, persoonlijke berichten, versleuteld met de openbare sleutel van de ontvanger, opmerkingen op berichten van andere gebruikers, likes. Dit is een open lijst. Afbeeldingen en andere grote bestanden worden niet rechtstreeks in het tijdschrift geplaatst. In plaats daarvan wordt een hash van het bestand genoteerd, waarmee dit bestand apart van het tijdschrift kan worden opgevraagd. De zichtbaarheid van opmerkingen voor de auteur van het oorspronkelijke bericht kan niet worden gegarandeerd: als er tussen jou en de schrijver geen voldoende korte weg is via gemeenschappelijke vrienden, zul je die opmerkingen waarschijnlijk niet zien. Zelfs als de hierboven genoemde groepen proberen je post te veroveren, zul je er niets van merken, tenzij het niet je vrienden of vrienden van vrienden zijn.
Secure Scuttlebutt is niet het eerste p2p-netwerk en ook niet het eerste p2p sociale netwerk. De drang om zonder tussenpersonen te communiceren en buiten de invloed van grote bedrijven te blijven, bestaat al lang en er zijn verschillende duidelijke redenen voor. Gebruikers raken gefrustreerd door de regels die door grote spelers worden opgelegd: nauwelijks iemand wil reclame op zijn scherm zien of geblokkeerd worden en dagen moeten wachten op een antwoord van de klantenservice. De ongecontroleerde verzameling van persoonlijke gegevens en de overdracht ervan aan derden, die uiteindelijk ervoor zorgt dat deze gegevens soms op het dark web worden verkocht, benadrukt opnieuw de noodzaak om andere interactiemethoden te ontwikkelen, waarbij de gebruiker meer controle over zijn gegevens heeft en zelf verantwoordelijk is voor de verspreiding en veiligheid ervan.
Goed bekende gedecentraliseerde sociale netwerken zoals of , en het protocol zijn niet peer-to-peer, omdat er altijd een client- en serverside is. In plaats van een centrale database zoals Facebook, kun je jouw 'thuis' server kiezen waar jouw gegevens worden opgeslagen, wat al een grote stap vooruit is. Echter, de beheerder van jouw 'thuis' server heeft nog steeds veel mogelijkheden: hij kan jouw gegevens delen zonder dat je het weet, jouw account verwijderen of blokkeren. Bovendien kan hij zijn interesse in het onderhouden van de server verliezen zonder jou hiervan op de hoogte te stellen.
In Secure Scuttlebutt zijn er ook tussenliggende nodes die synchronisatie vergemakkelijken (ze worden 'pubs' genoemd). Het gebruik van pubs is echter optioneel, en ze zijn onderling vervangbaar. Als de node die je gewend bent niet beschikbaar is, kun je andere gebruiken zonder iets te verliezen, aangezien je altijd een volledige kopie van al jouw gegevens hebt. Een tussenliggende node slaat geen onvervangbare gegevens op. Een pub zal, als je het vraagt, je vriendschap aanbieden en bij verbinding zijn kopie van jouw logboek bijwerken. Wanneer jouw volgers verbinding maken, kunnen ze jouw nieuwe berichten downloaden, zelfs als jij al bent afgemeld. Om een pub-vriendschap te krijgen, moet je een uitnodiging van de pub-beheerder ontvangen. Meestal kan dit zelfstandig via de webinterface (). Als je geband wordt door alle pub-beheerders, zal jouw logboek op de eerder beschreven manier worden verspreid, dat wil zeggen alleen onder degenen die je persoonlijk ontmoet. Het overdragen van updates op een USB-stick is ook mogelijk.
Hoewel het netwerk al een tijdje bestaat, zijn er relatief weinig mensen op. Volgens schattingen van André Staltz, de ontwikkelaar van de Android-app , had hij in juni 2018 in zijn lokale database . Ter vergelijking, in Diaspora zijn er , in Mastodon ongeveer 1 miljoen.

De handleiding voor beginners is te vinden . De belangrijkste stappen: installeer de applicatie, maak een profiel aan, ontvang een uitnodiging op de pub-website, kopieer deze uitnodiging in de applicatie. Het is mogelijk om meerdere pubs tegelijkertijd te verbinden. Wees geduldig: het netwerk werkt veel langzamer dan Facebook. De lokale cache (map .ssb) zal snel enkele gigabytes groot worden. Interessante berichten zijn gemakkelijk te zoeken via hashtags. Je kunt bijvoorbeeld beginnen met het lezen van Dominik Tarr (@EMovhfIrFk4NihAKnRNhrfRaqIhBv1Wj8pTxJNgvCCY=.ed25519).
Alle afbeeldingen zijn afkomstig uit het artikel van André Staltz en zijn .
Nuttige links:
[1]
[2] (app voor Windows/Mac/Linux)
[3] (app voor Android)
[4]
[5] («Scuttlebutt Protocol Guide - Hoe Scuttlebutt-peers elkaar vinden en met elkaar praten»)
Bron: habr.com
