L'idée d'un réseau social décentralisé de nouvelle génération


Dans cet article, je vous présente mes réflexions sur l'histoire et les perspectives de développement de l'Internet, des réseaux centralisés et décentralisés et, par conséquent, de l'architecture possible du réseau décentralisé de prochaine génération.

Quelque chose ne va pas avec Internet


J'ai dĂ©couvert Internet pour la premiĂšre fois en 2000. Bien sĂ»r, ce n'est pas le tout dĂ©but - le RĂ©seau existait dĂ©jĂ  avant cela, mais ce temps peut ĂȘtre appelĂ© le premier Ăąge d'or d'Internet. Le World Wide Web est une brillante invention de Tim Berners-Lee, web1.0 dans sa forme canonique classique. De nombreux sites et pages qui se lient les uns aux autres avec des hyperliens. À premiĂšre vue - une architecture simple, comme toute brillante: dĂ©centralisĂ©e et gratuite . Je veux - je voyage sur les sites d'autres personnes, en suivant des hyperliens; Je veux - je crĂ©e mon propre site Web sur lequel je publie ce qui m'intĂ©resse - par exemple, mes articles, photos, programmes, hyperliens vers des sites qui m'intĂ©ressent. Et d'autres m'envoient des liens.

Il semblerait - une image idyllique? Mais vous savez déjà comment tout cela s'est terminé.

Il y avait trop de pages et la recherche d'informations est devenue une chose trĂšs simple. Les hyperliens enregistrĂ©s par les auteurs n'ont tout simplement pas pu structurer cette Ă©norme quantitĂ© d'informations. Il y a d'abord eu des rĂ©pertoires remplis manuellement, puis des moteurs de recherche gĂ©ants qui ont commencĂ© Ă  utiliser des algorithmes de classement heuristique ingĂ©nieux. Des sites ont Ă©tĂ© crĂ©Ă©s et abandonnĂ©s, les informations ont Ă©tĂ© dupliquĂ©es et dĂ©formĂ©es. Internet se commercialisait rapidement et s'Ă©loignait davantage du rĂ©seau universitaire idĂ©al. Le langage de balisage s'est rapidement transformĂ© en langage de formatage. Il y avait la publicitĂ©, les banniĂšres ennuyeuses et la technologie de promotion et de tromperie des moteurs de recherche - SEO. Le rĂ©seau s'est rapidement engorgĂ© de dĂ©chets d'informations. Les hyperliens ont cessĂ© d'ĂȘtre un outil de communication logique et sont devenus un outil de promotion. Les sites Ă©taient choyĂ©s, fermĂ©s sur eux-mĂȘmes, transformĂ©s de "pages" ouvertes en "applications" hermĂ©tiques, devenues le seul moyen de gĂ©nĂ©rer des revenus.

MĂȘme alors, j'avais une certaine pensĂ©e que "quelque chose ne va pas ici." Un tas de sites diffĂ©rents, allant de pages d'accueil primitives avec une apparence vyrviglazny, et se terminant par des "mĂ©gaportaux", surchargĂ©s de banniĂšres vacillantes. MĂȘme si les sites sur le mĂȘme sujet - ils sont complĂštement indĂ©pendants, chacun a sa propre conception, sa propre structure, des banniĂšres ennuyeuses, une recherche qui fonctionne mal, des problĂšmes de tĂ©lĂ©chargement (oui, je voulais avoir des informations hors ligne). MĂȘme alors, Internet a commencĂ© Ă  se transformer en une sorte de tĂ©lĂ©vision, oĂč toutes sortes de guirlandes Ă©taient Ă©pinglĂ©es Ă  un contenu utile avec des clous.
La décentralisation est devenue un cauchemar.

Que veux-tu?


Paradoxalement, en tant qu'utilisateur, je n'avais pas besoin de dĂ©centralisation! En me souvenant de mes pensĂ©es claires de cette Ă©poque, j'arrive Ă  la conclusion que j'avais besoin ... d'une seule base de donnĂ©es ! Une telle requĂȘte Ă  laquelle donneraient tous les rĂ©sultats, mais pas la plus adaptĂ©e Ă  l'algorithme de classement. Celui dans lequel tous ces rĂ©sultats seraient uniformĂ©ment stylisĂ©s et stylisĂ©s par mon propre design unique, plutĂŽt que par des designs de vyrviglaznymi faits par de nombreux Vasya Pupkin. Celui qui pourrait ĂȘtre gardĂ© hors ligne et ne pas avoir peur que demain le site disparaisse et que les informations disparaissent Ă  jamais. Celui dans lequel je pouvais entrer mes informations - par exemple, les commentaires et les balises. Celui dans lequel je pouvais rechercher, trier et filtrer avec mes algorithmes personnels.

Web 2.0 et réseaux sociaux


Pendant ce temps, le concept Web 2.0 est entré dans l'arÚne. Formulée en 2005 par Tim O'Reilly comme «une méthodologie pour concevoir des systÚmes qui, en prenant en compte les interactions réseau, s'améliorent au fur et à mesure que les gens les utilisent» - et impliquant l'implication active des utilisateurs dans la création collective et l'édition de contenu Web. Sans exagération, les réseaux sociaux sont devenus le summum et le triomphe de ce concept. Des plateformes géantes qui rassemblent des milliards d'utilisateurs et stockent des centaines de pétaoctets de données.

Qu'avons-nous obtenu dans les réseaux sociaux?

  • unification de l'interface; il s'est avĂ©rĂ© que toutes les possibilitĂ©s de crĂ©ation d'un design vyviglazny diversifiĂ© n'ont pas besoin des utilisateurs; toutes les pages de tous les utilisateurs ont le mĂȘme design et il convient Ă  tout le monde et est mĂȘme pratique; seul le contenu est diffĂ©rent.
  • unification fonctionnelle; toute la variĂ©tĂ© des scripts Ă©tait Ă©galement inutile. Lenta, amis, albums ... pendant l'existence des rĂ©seaux sociaux, leur fonctionnalitĂ© s'est plus ou moins stabilisĂ©e et est peu susceptible de changer: aprĂšs tout, la fonctionnalitĂ© est dĂ©terminĂ©e par les types d'activitĂ© des gens, et les gens ne changent pratiquement pas.
  • base de donnĂ©es unique; travailler avec une telle base de donnĂ©es s'est avĂ©rĂ© beaucoup plus pratique qu'avec de nombreux sites disparates; la recherche est devenue beaucoup plus facile. Au lieu d'analyser en continu une variĂ©tĂ© de pages Ă  couplage lĂąche, de mettre tout cela en cache, de les classer par des algorithmes heuristiques complexes - une requĂȘte unifiĂ©e relativement simple dans une seule base de donnĂ©es avec une structure connue.
  • interface de rĂ©troaction - likes et reposts; sur le Web normal, le mĂȘme Google n'a pas pu obtenir de commentaires des utilisateurs aprĂšs avoir cliquĂ© sur le lien dans les rĂ©sultats de la recherche. Dans les rĂ©seaux sociaux, cette connexion Ă©tait simple et naturelle.

Qu'avons-nous perdu? Nous avons perdu la dĂ©centralisation, ce qui signifie la libertĂ© . On pense que maintenant nos donnĂ©es ne nous appartiennent pas. Si auparavant nous pouvions hĂ©berger une page d'accueil mĂȘme sur notre propre ordinateur, maintenant nous donnons toutes nos donnĂ©es aux gĂ©ants d'Internet.

De plus, Ă  mesure qu'Internet Ă©voluait, les gouvernements et les entreprises s'y sont intĂ©ressĂ©s et il y a eu des problĂšmes de censure politique et de restrictions du droit d'auteur. Nos pages sur les rĂ©seaux sociaux peuvent ĂȘtre interdites et supprimĂ©es si le contenu n'est pas conforme aux rĂšgles du rĂ©seau social; pour un poste imprudent - engager une responsabilitĂ© administrative voire pĂ©nale.

Et là, nous réfléchissons encore: est-il possible de nous restituer la décentralisation? Mais sous une forme différente, dépourvue des lacunes de la premiÚre tentative?

RĂ©seaux d'Ă©gal Ă  Ă©gal


Les premiers rĂ©seaux p2p sont apparus bien avant le web 2.0 et se sont dĂ©veloppĂ©s en parallĂšle avec le dĂ©veloppement du web. La principale application classique de p2p est le partage de fichiers; les premiers rĂ©seaux ont Ă©tĂ© conçus pour partager de la musique. Les premiers rĂ©seaux (comme Napster) Ă©taient essentiellement centralisĂ©s et les titulaires de droits d'auteur les ont donc rapidement couverts. Les adeptes ont pris le chemin de la dĂ©centralisation. En 2000, les protocoles ED2K (le premier client eDokney) et Gnutella sont apparus; en 2001, le protocole FastTrack (client KaZaA) est apparu. Progressivement, le degrĂ© de dĂ©centralisation a augmentĂ©, les technologies se sont amĂ©liorĂ©es. Les systĂšmes avec une «file d'attente de tĂ©lĂ©chargement» ont Ă©tĂ© remplacĂ©s par des torrents, et le concept de tables de hachage DHT distribuĂ©es est apparu. Comme les noix ont Ă©tĂ© resserrĂ©es par les États, l'anonymat des participants est devenu plus exigĂ©. Depuis 2000, le rĂ©seau Freenet est en dĂ©veloppement, depuis 2003 I2P, et en 2006 le projet RetroShare a Ă©tĂ© lancĂ©. Vous pouvez mentionner les nombreux rĂ©seaux p2p qui existaient auparavant et ont dĂ©jĂ  disparu - et sont maintenant opĂ©rationnels: WASTE, MUTE, TurtleF2F, RShare, PerfectDark, ARES, Gnutella2, GNUNet, IPFS, ZeroNet, Tribbler et bien d'autres. Il y en a beaucoup. Ils sont diffĂ©rents. TrĂšs diffĂ©rent - Ă  la fois dans le but et dans la conception ... Probablement beaucoup d'entre vous ne connaissent mĂȘme pas tous ces noms. Et c'est loin d'ĂȘtre tout.

Cependant, les réseaux p2p présentent de nombreux inconvénients. En plus des défauts techniques inhérents à chaque implémentation spécifique du protocole et du client, par exemple, un inconvénient assez général est la complexité de la recherche (c'est-à-dire tout ce que Web 1.0 a rencontré, mais dans une version encore plus compliquée). Google n'est pas là avec sa recherche omniprésente et instantanée. Et si pour les réseaux de partage de fichiers, vous pouvez toujours utiliser la recherche par nom de fichier ou méta-informations, alors trouver quelque chose, par exemple, dans les réseaux de superposition oignon ou i2p, est trÚs difficile, si possible.

En général, si nous établissons des analogies avec l'Internet classique, la plupart des réseaux décentralisés sont bloqués quelque part au niveau FTP. Imaginez Internet, dans lequel il n'y a que FTP: ni sites modernes, ni web2.0, ni Youtube ... C'est à peu prÚs dans cet état, et il y a des réseaux décentralisés. Et malgré les tentatives individuelles de changer quelque chose, il y a peu de changements.

Le contenu


Passons Ă  une autre piĂšce importante de ce puzzle - le contenu. Le contenu est le principal problĂšme de toute ressource Internet, et notamment dĂ©centralisĂ©e. D'oĂč l'obtenir? Bien sĂ»r, vous pouvez compter sur un tas de passionnĂ©s (comme c'est le cas avec les rĂ©seaux p2p existants), mais alors le dĂ©veloppement du rĂ©seau sera assez long et il y aura peu de contenu.

Travailler avec l'Internet normal est la recherche et l'étude de contenu. Parfois, c'est la préservation (si le contenu est intéressant et utile, alors beaucoup, en particulier ceux qui sont venus sur le réseau pendant la période de connexion - y compris moi) le gardent hors ligne de maniÚre sage afin de ne pas se perdre; car Internet est une chose incontrÎlable pour nous, aujourd'hui il n'y a pas de site Web demain , aujourd'hui il y a une vidéo sur YouTube - demain elle a été supprimée, etc.

Et pour les torrents (que nous percevons plus comme un simple moyen de livraison que comme un rĂ©seau p2p), la conservation est gĂ©nĂ©ralement implicite. Et cela, en passant, est l'un des problĂšmes des torrents: il est difficile de dĂ©placer le fichier tĂ©lĂ©chargĂ© une fois oĂč il est plus pratique de l'utiliser (en rĂšgle gĂ©nĂ©rale, vous devez rĂ©gĂ©nĂ©rer manuellement la distribution) et il est absolument impossible de le renommer (vous pouvez crĂ©er un lien dur, mais trĂšs peu de gens le savent).

En gĂ©nĂ©ral, de nombreux magasins stockent le contenu d'une maniĂšre ou d'une autre. Quel est son futur destin? Habituellement, les fichiers enregistrĂ©s apparaissent quelque part sur le disque, dans un dossier comme TĂ©lĂ©chargements, dans un segment de mĂ©moire commun, et s'y trouvent avec plusieurs milliers d'autres fichiers. C'est mauvais - et mauvais pour l'utilisateur lui-mĂȘme. Si Internet a des moteurs de recherche, alors l'ordinateur local de l'utilisateur n'a rien de tel. C'est bien si l'utilisateur est soignĂ© et utilisĂ© pour trier les fichiers tĂ©lĂ©chargĂ©s «entrants». Mais pas tous ...

En fait, il y a maintenant beaucoup de ceux qui n'enregistrent rien, mais qui se fient entiÚrement à Internet. Mais dans les réseaux p2p, il est supposé que le contenu est stocké localement sur l'appareil de l'utilisateur et distribué aux autres participants. Est-il possible de trouver une solution qui permettra d'impliquer les deux catégories d'utilisateurs dans un réseau décentralisé sans changer leurs habitudes, et en plus, leur faciliter la vie?

L'idĂ©e est assez simple: que se passe-t-il si nous crĂ©ons un moyen pratique et transparent pour l'utilisateur de sauvegarder du contenu Ă  partir d'Internet normal, et de sauvegarder intelligemment avec des mĂ©ta-informations sĂ©mantiques, et non pas dans un tas gĂ©nĂ©ral, mais dans une structure spĂ©cifique avec la possibilitĂ© de structurer davantage, et en mĂȘme temps distribuer le contenu enregistrĂ© Ă  dĂ©centralisĂ© le rĂ©seau?

Commençons par économiser


Nous ne considĂ©rerons pas l'utilisation utilitaire d'Internet pour consulter les prĂ©visions mĂ©tĂ©orologiques ou les horaires des avions. Nous nous intĂ©ressons davantage aux objets autonomes et plus ou moins immuables - articles (Ă  partir de tweets / posts de rĂ©seaux sociaux et se terminant par de gros articles, comme ici sur HabrĂ©), livres, images, programmes, enregistrements audio et vidĂ©o. D'oĂč proviennent les informations? Habituellement,

  • rĂ©seaux sociaux (nouvelles diverses, petites notes - «tweets», photos, audio et vidĂ©o)
  • articles sur les ressources thĂ©matiques (comme Habr); il n'y a pas beaucoup de bonnes ressources, gĂ©nĂ©ralement ces ressources sont Ă©galement construites sur le principe des rĂ©seaux sociaux
  • sites d'actualitĂ©s

En rÚgle générale, il existe des fonctions standard: aimer, republier, partager sur les réseaux sociaux, etc.

Imaginez un plug-in de navigateur qui enregistrera de maniĂšre spĂ©ciale tout ce que nous avons aimĂ©, republiĂ©, enregistrĂ© dans le "favori" (ou cliquĂ© sur un bouton de plug-in spĂ©cial affichĂ© dans le menu du navigateur au cas oĂč le site n'aurait pas de fonction similaire / repost / bookmark). L'idĂ©e principale est que vous aimez - comme vous l'avez fait un million de fois auparavant, et le systĂšme enregistre l'article, l'image ou la vidĂ©o dans un stockage hors ligne spĂ©cial et cet article ou cette image devient disponible - et pour une visualisation hors ligne via l'interface client dĂ©centralisĂ©e , et dans le rĂ©seau le plus dĂ©centralisĂ©! Moi, c'est trĂšs pratique. Aucune action inutile et nous rĂ©solvons immĂ©diatement de nombreux problĂšmes:

  • enregistrer du contenu prĂ©cieux qui peut ĂȘtre perdu ou supprimĂ©
  • remplissage rapide du rĂ©seau dĂ©centralisĂ©
  • agrĂ©gation de contenu provenant de diffĂ©rentes sources (vous pouvez ĂȘtre enregistrĂ© dans des dizaines de ressources Internet, et tous les likes / reposts afflueront vers une seule base de donnĂ©es locale)
  • structurer votre contenu selon vos rĂšgles

Évidemment, le plug-in du navigateur doit ĂȘtre configurĂ© sur la structure de chaque site (c'est assez rĂ©aliste - il existe dĂ©jĂ  des plugins pour sauvegarder du contenu de Youtube, Twitter, VK, etc.). Il n'y a pas tellement de sites pour lesquels il est logique de crĂ©er des plugins personnels. Il s'agit en gĂ©nĂ©ral de rĂ©seaux sociaux trĂšs rĂ©pandus (il n'y en a guĂšre plus d'une douzaine) et d'un certain nombre de sites thĂ©matiques de grande qualitĂ© comme Habr (il y en a aussi peu). Avec le code et les spĂ©cifications open source, le dĂ©veloppement d'un nouveau plugin basĂ© sur un modĂšle vierge ne devrait pas prendre beaucoup de temps. Pour les autres sites, vous pouvez utiliser le bouton d'enregistrement universel, qui enregistrerait la page entiĂšre en mhtml - Ă©ventuellement aprĂšs avoir supprimĂ© la page de la publicitĂ©.

Maintenant sur la structuration


Par sauvegarde «intelligente», j'entends au moins la sauvegarde avec des mĂ©ta-informations: source de contenu (URL), ensemble de likes prĂ©cĂ©demment dĂ©finis, tags, commentaires, leurs identifiants, etc. En effet, lors d'un stockage normal, ces informations sont perdues ... Une source peut signifier non seulement une URL directe, mais aussi un composant sĂ©mantique: par exemple, un groupe sur les rĂ©seaux sociaux ou un utilisateur qui a republiĂ©. Le plugin peut ĂȘtre suffisamment intelligent pour utiliser ces informations pour la structuration et le balisage automatiques. En outre, il faut comprendre que l'utilisateur lui-mĂȘme peut toujours ajouter des mĂ©ta-informations au contenu stockĂ©, pour lesquelles vous devez fournir des outils d'interface masquablement pratiques (j'ai beaucoup d'idĂ©es sur la façon de le faire).

Ainsi, le problĂšme de la structuration et de l'organisation des fichiers utilisateurs locaux est rĂ©solu. Il s'agit d'un avantage prĂȘt Ă  l'emploi qui peut ĂȘtre utilisĂ© mĂȘme sans p2p. C'est juste une sorte de base de donnĂ©es hors ligne qui sait quoi, oĂč et dans quel contexte nous avons enregistrĂ©, et vous permet de mener de petites Ă©tudes. Par exemple, trouvez des utilisateurs d'un rĂ©seau social externe qui aiment surtout sous les mĂȘmes messages que vous. Combien de rĂ©seaux sociaux le permettent explicitement?

Il convient dĂ©jĂ  de mentionner ici qu'un plugin de navigateur n'est certainement pas suffisant. Le deuxiĂšme composant le plus important du systĂšme est un service rĂ©seau dĂ©centralisĂ© qui s'exĂ©cute en arriĂšre-plan et dessert Ă  la fois le rĂ©seau p2p lui-mĂȘme (demandes du rĂ©seau et demandes du client), ainsi que l'enregistrement de nouveau contenu Ă  l'aide du plug-in. Le service, en collaboration avec le plugin, placera le contenu au bon endroit, calculera les hachages (et dĂ©terminera Ă©ventuellement qu'un tel contenu a dĂ©jĂ  Ă©tĂ© enregistrĂ©), ajoutera les mĂ©ta-informations nĂ©cessaires Ă  la base de donnĂ©es locale.

Ce qui est intéressant - le systÚme serait déjà utile sous cette forme, sans p2p. De nombreuses personnes utilisent des clippers Web qui ajoutent du contenu intéressant du Web, par exemple, à Evernote. L'architecture proposée est une version étendue d'un tel clipper.

Enfin, Ă©change p2p


La meilleure partie est que les informations et les mĂ©ta-informations (Ă  la fois capturĂ©es sur le Web et les vĂŽtres) peuvent ĂȘtre Ă©changĂ©es. Le concept de rĂ©seau social est bien portĂ© Ă  l'architecture p2p. On peut dire que le rĂ©seau social et le p2p semblent ĂȘtre faits l'un pour l'autre. Tout rĂ©seau dĂ©centralisĂ© devrait idĂ©alement ĂȘtre construit comme un rĂ©seau social, ce n'est qu'alors qu'il fonctionnera efficacement. «Amis», «Groupes» - ce sont les fĂȘtes mĂȘmes avec lesquelles il devrait y avoir des liens stables, et ceux qui sont tirĂ©s d'une source naturelle - les intĂ©rĂȘts communs des utilisateurs.

Les principes de stockage et de distribution de contenu dans un réseau décentralisé sont complÚtement identiques aux principes de stockage (capture) de contenu à partir d'Internet ordinaire. Si vous utilisez du contenu du réseau (ce qui signifie que vous l'avez enregistré), n'importe qui peut utiliser vos ressources (disque et canal) nécessaires pour recevoir ce contenu spécifiquement.

Les likes sont l'outil le plus simple pour enregistrer et partager. Si j'aime - cela n'a pas d'importance, sur Internet externe ou Ă  l'intĂ©rieur d'un rĂ©seau dĂ©centralisĂ© - alors j'aime le contenu, et si oui, alors je suis prĂȘt Ă  le conserver localement et Ă  le distribuer Ă  d'autres membres du rĂ©seau dĂ©centralisĂ©.

  • Le contenu n'est pas "perdu"; il est maintenant stockĂ© localement avec moi, je peux y revenir plus tard, Ă  tout moment, sans craindre que quelqu'un le supprime ou le bloque
  • Je peux (immĂ©diatement ou plus tard) le catĂ©goriser, Ă©tiqueter, commenter, associer Ă  d'autres contenus, en gĂ©nĂ©ral, faire quelque chose de significatif avec lui - appelons-le «formation de mĂ©ta-informations»
  • Je peux partager cette mĂ©ta-information avec d'autres membres du rĂ©seau.
  • Je peux synchroniser mes mĂ©ta-informations avec les mĂ©ta-informations des autres participants

Probablement, le refus des aversions semble Ă©galement logique: si je n'aime pas le contenu, il est tout Ă  fait logique que je ne veuille pas gaspiller mon espace disque pour le stockage et ma chaĂźne Internet pour distribuer ce contenu. Par consĂ©quent, les aversions trĂšs organiques ne rentrent pas dans la dĂ©centralisation (mĂȘme si parfois elles sont toujours utiles ).

Parfois, vous devez également enregistrer ce que vous n'aimez pas. Il y a un tel mot "nécessaire" :)
« Signets » (ou «Favoris») - Je n'exprime pas mon attitude envers le contenu, mais je le sauvegarde dans ma base de donnĂ©es de signets locale. «» (favorites) ( ), «» (bookmarks) — . «» — «» (.. «» ), «» - . ?

" ". , , , . () .

" " — , , - , — , . , «», , — , / , .


, . — . — . , , , .

, , . , , , . , -, , ; , , .

, . , . , , , .. , . — , (, «» — , 
 , ).

, — ( i2p Retroshare), TOR VPN.

( ). , — , . — p2p , («backend»). , . — frontend. - ( ), GUI- (Windows, Linux, MacOS, Andriod, iOS ..). frontend'. backend'.

, . (.. , , , , — , , , ..), ( , Libgen), ( Freenet), ( ), ( — , , , , ..) .


1. — . (, ...) (, ...) —
2. , — /; p2p,
3.
4. /

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


All Articles