Secure Scuttlebutt - réseau social hors ligne p2p

Scuttlebutt est un mot d'argot utilisé par les marins américains pour désigner les rumeurs et les ragots. Le développeur de Node.js, Dominic Tarr, qui vit sur un voilier au large des côtes de la Nouvelle-Zélande, a utilisé ce mot dans le nom de réseau p2p, conçu pour échanger des nouvelles et des messages personnels. Secure Scuttlebutt (SSB) vous permet de partager des informations en utilisant uniquement un accès occasionnel à Internet ou même en son absence totale.

SSB fonctionne depuis plusieurs années. Les fonctionnalités des réseaux sociaux peuvent être testées à l'aide de deux applications de bureau ( Patchwork et Patchfoo ) et d'une application Android ( Manyverse ). Il y a ssb-git pour les geeks. Êtes-vous curieux de savoir comment fonctionne le réseau p2p hors ligne sans publicité et sans inscription? Je demande un chat.



Pour le fonctionnement de Secure Scuttlebutt, deux ordinateurs connectés au réseau local suffisent. Les applications SSB envoient des messages UDP diffusés et peuvent se retrouver automatiquement. Trouver des sites sur Internet est un peu plus compliqué, et nous reviendrons sur ce problème dans quelques paragraphes.

Un compte utilisateur est une liste liée de toutes ses entrées (journal). Chaque enregistrement suivant contient le hachage du précédent et est signé par la clé privée de l'utilisateur. La clé publique est l'identifiant de l'utilisateur. La suppression et la modification d'entrées ne sont impossibles ni par l'auteur lui-même, ni par quiconque. Le propriétaire peut ajouter des entrées à la fin du journal. Autres utilisateurs - lisez-le.

Les applications situées sur le même réseau local se voient et demandent automatiquement des mises à jour aux voisins dans les magazines qui les intéressent. Peu importe le nœud à partir duquel vous téléchargez la mise à jour, car Vous pouvez vérifier l'authenticité de chaque entrée à l'aide de la clé publique. Pendant la synchronisation, aucune information personnelle n'est échangée autre que les clés publiques des magazines qui vous intéressent. Lorsque vous basculez entre différents réseaux WiFi / LAN (à la maison, dans un café, au travail), des copies de vos journaux locaux seront automatiquement transférées vers les appareils d'autres utilisateurs proches de vous. Cela ressemble au fonctionnement du bouche à oreille : Vasya a dit à Masha, Masha-Pete et Petya-Valentina. Une différence significative par rapport au bouche à oreille est que lors de la copie de magazines, les informations qu'ils contiennent ne sont pas déformées.

«Être avec des amis» prend ici un sens physique spécifique: mes amis gardent une copie de mon journal. Plus j'ai d'amis, plus mon magazine est accessible aux autres. La description de la crevaison indique que l'application Patchwork synchronise les journaux qui se trouvent jusqu'à 3 étapes (amis d'amis d'amis) de vous. Dans la plupart des cas, cela vous permet de lire de longues discussions avec de nombreux participants hors ligne.

Le journal d'un utilisateur peut contenir des enregistrements de différents types: messages publics similaires à ceux du mur VK, messages privés chiffrés avec la clé publique du destinataire, commentaires sur les publications d'autres utilisateurs, j'aime. Ceci est une liste ouverte. Les images et autres fichiers volumineux ne sont pas directement enregistrés. Au lieu de cela, un hachage du fichier y est écrit, à l'aide duquel ce fichier peut être demandé séparément du journal lui-même. La visibilité des commentaires pour l'auteur du message d'origine n'est pas garantie: s'il n'y a pas un court chemin entre vos amis communs entre vous, alors vous ne verrez probablement pas de tels commentaires. Ainsi, même si les traîneaux militaires tentent de s'emparer de votre poste, alors s'il ne s'agit pas de vos amis ou amis d'amis d'amis, vous ne remarquerez rien.

Secure Scuttlebutt n'est pas le premier réseau p2p ni même le premier réseau social p2p. La volonté de communiquer sans intermédiaires et de quitter la sphère d'influence des grandes entreprises existe depuis longtemps, et elle a plusieurs raisons évidentes. Les utilisateurs sont ennuyés par l'imposition de règles de jeu par les gros joueurs: peu de gens veulent voir des publicités sur leur écran ou être bannis et attendre quelques jours une réponse du service d'assistance. La collecte incontrôlée de données personnelles et leur transfert à des tiers, ce qui conduit finalement au fait que ces données sont parfois vendues sur Internet, vous rappelle encore et encore la nécessité de construire d'autres moyens d'interaction où l'utilisateur aurait plus de contrôle sur ses données. Et lui-même serait responsable de leur distribution et de leur conservation.

Les réseaux sociaux décentralisés bien connus, tels que Diaspora ou Mastodon , et le protocole Matrix ne sont pas peer-to-peer, car ils ont toujours une partie client et serveur. Au lieu d'une base de données Facebook commune, vous pouvez choisir votre serveur «domestique» sur lequel vos données seront publiées, et c'est un grand pas en avant. Cependant, l'administrateur de votre serveur «domestique» a encore de nombreuses possibilités: il peut partager vos données à votre insu, supprimer ou bloquer votre compte. De plus, il peut perdre tout intérêt pour la prise en charge du serveur et ne pas vous en avertir.

Secure Scuttlebutt possède également des nœuds intermédiaires pour faciliter la synchronisation (ils sont appelés "pubs"). Cependant, l'utilisation des pubs est facultative et ils sont eux-mêmes interchangeables. Si votre site habituel ne vous est pas accessible, vous pouvez en utiliser d'autres sans rien perdre, car vous avez toujours une copie complète de toutes vos données. Le proxy ne stocke pas de données irremplaçables. Le pub, si vous le demandez, vous ajoutera comme ami et, une fois connecté, mettra à jour sa copie de votre journal. Lorsque vos abonnés s'y connectent, ils pourront télécharger vos nouveaux messages, même si vous vous êtes déjà déconnecté. Pour que le pub soit ami avec vous, vous devez obtenir une invitation de l'administrateur du pub. Le plus souvent, cela peut se faire indépendamment via une interface web ( liste de pubs ). Si vous obtenez une interdiction de la part de tous les administrateurs de pub, votre journal sera distribué comme décrit précédemment, c'est-à-dire seulement parmi ceux que vous rencontrez en personne. Le transfert de mises à jour vers un lecteur flash est également possible.

Bien que le réseau existe depuis un certain temps, il y a peu de monde. Selon les estimations d'André Staltz, le développeur de l'application Manyverse Android, en juin 2018, dans sa base de données locale, il y avait environ 7 mille clés . A titre de comparaison, dans la diaspora - plus de 600 000 , à Mastodon - environ 1 million.



Les instructions pour les débutants sont ici . Les principales étapes: installer l'application, créer un profil, recevoir une invitation sur le site du pub, copier cette invitation dans l'application. Vous pouvez connecter plusieurs pubs en même temps. Vous devrez être patient: le réseau est beaucoup plus lent que Facebook. Le cache local (dossier .ssb) passera rapidement à quelques gigaoctets. Il est pratique de rechercher des messages intéressants par des balises de hachage. Vous pouvez commencer à lire, par exemple, avec Dominic Tarra (@ EMovhfIrFk4NihAKnRNhrfRaqIhBv1Wj8pTxJNgvCCY = .ed25519).

Toutes les images proviennent de l'article d'André Staltz «Un réseau social hors réseau» et de son compte Twitter .

Liens utiles:

[1] Site officiel

[2] Patchwork (application pour Windows / Mac / Linux)

[3] Manyverse (application Android)

[4] ssb-git

[5] Description du protocole ("Guide du protocole Scuttlebutt - Comment les pairs Scuttlebutt se trouvent et se parlent")

Source: https://habr.com/ru/post/fr449568/


All Articles