Solid (projet de web décentralisé)

Un article de Wikipédia, l'encyclopédie libre.
Solid
Description de l'image MIT's Solid project logo.svg.

Informations
Créateur Tim Berners-LeeVoir et modifier les données sur Wikidata
Développé par Massachusetts Institute of Technology
Dépôt https://github.com/solid
État du projet actif
Écrit en JavaScript (Node.js)
Environnement World Wide WebVoir et modifier les données sur Wikidata
Type Norme technique
Personal Online Data Store (d)
ProjetVoir et modifier les données sur Wikidata
Licence MIT
Site web solidproject.orgVoir et modifier les données sur Wikidata

Solid (Social Linked Data, en anglais) [1] est un projet développant, de manière collaborative, des solutions pour un web décentralisé. Il est dirigé par Tim Berners-Lee, l'inventeur du WWW (World Wide Web), au sein du Massachusetts Institute of Technology depuis 2015.

Le projet « vise à changer radicalement le mode de fonctionnement actuel des applications Web, pour aboutir à une véritable propriété des données et à une confidentialité améliorée[2] » en développant une plate-forme pour les applications de données liées qui seront complètement décentralisées et entièrement sous le contrôle des utilisateurs plutôt que contrôlées par d'autres entités. Le but de Solid est de permettre aux utilisateurs d'avoir le contrôle total de leurs données personnelles (ou au moins de disposer de leurs propres données), y compris le contrôle d'accès et l'emplacement de stockage. À cette fin, Tim Berners-Lee a créé une société, dont le nom est Inrupt, pour aider à construire un écosystème commercial pour développer Solid.

Historique[modifier | modifier le code]

Deux décennies après l’invention du World Wide Web en 1989, Tim Berners-Lee a exposé les problèmes de conception de ce dernier (WWW) dans les brouillons (ou ébauches) qu'il a écrit pour le World Wide Web Consortium pour ce qui est devenu plus tard le projet Solid[3],[4]. Berners-Lee est devenu de plus en plus consterné de voir son invention utilisée abusivement, comme lorsque des pirates russes se seraient prétendument immiscés dans les élections américaines de 2016, quand le Scandale Facebook-Cambridge Analytica est devenu public, quand Facebook a effectué des expériences psychologiques sur près de 700 000 utilisateurs en secret en 2012, et quand Google et Amazon ont déposé des demandes de brevets pour des appareils qui écoutent les voix humaines afin de déterminer des changements émotionnels[5].

Berners-Lee a estimé que l'Internet avait besoin d'être réparé et a conçu le projet Solid comme une première étape pour le réparer, c'est-à-dire un moyen de donner un contrôle total sur l'utilisation de leurs données aux utilisateurs individuels[6]. Le projet Solid est à la disposition de tous, toute personne peut le rejoindre pour y participer et contribuer à celui-ci, bien que Berners-Lee conseille aux personnes sans compétences de développement ou codage qu'elles devraient plutôt plaider publiquement pour le changement de l'Internet[7].

En 2015, le MIT a reçu un don de la société Mastercard pour soutenir le développement (logiciel) de Solid. L'équipe de recherche de Berners-Lee a collaboré avec l'Institut de recherche informatique du Qatar et l'Université d'Oxford sur Solid[8].

En 2018, Berners-Lee a pris un congé sabbatique du MIT pour lancer une entreprise commerciale basée sur le développement de Solid et dont le nom est Inrupt[9],[10]. La mission de la société est de "fournir de l'énergie commerciale et un écosystème pour aider à protéger l'intégrité et la qualité du nouveau web bati sur Solid."[11]

Conception[modifier | modifier le code]

Pour décentraliser le Web selon la vision de Berners-Lee, il faut surmonter un certain nombre de défis techniques en les résolvant[12]. Plutôt que d’utiliser un système centralisé avec un paradigme de distribution de type réseau en étoile (Hub and spoke), un réseau décentralisé de type Pair à pair est mis en œuvre d'une manière qui ajoute plus de contrôle et de performance que les réseaux traditionnels en pair à pair (peer-to-peer) tel le BitTorrent. Les autres objectifs sont que le système soit facile à utiliser, rapide, et permette aux développeurs de créer simplement des applications[12].

L'objectif principal de Solid est de permettre la découverte et le partage d'informations de manière à préserver la confidentialité et la vie privée. Un utilisateur stocke ces données personnelles dans des "pods" (magasins de données personnelles en ligne (personal online data stores)) ou "modules" ou "magasins" hébergés partout où l'utilisateur le souhaite. Les applications, qui sont authentifiés par Solid, sont autorisés à demander des données, si l'utilisateur a donné la permission à l'application. Un utilisateur peut diffuser ou répartir ses informations personnelles sur plusieurs pods (ou modules ou magasins); par exemple, des pods (ou modules ou magasins) différents peuvent contenir des données de profil personnel, des informations de contact, des informations financières, des données sur la santé, un plan de voyage ou d'autres informations. L'utilisateur peut alors rejoindre (ou se connecter à) une application de réseau social authentifiée en donnant sa permission pour accéder aux informations appropriées dans un pod ou magasin spécifique. L'utilisateur conserve la propriété totale et le contrôle complet des données dans les pods ou magasins qui lui appartiennent : quelles sont les données contenues dans chaque pod ou magasin, où chaque pod ou magasin est stocké, et quelles applications ont la permission d'utiliser les données[1].

Plus en détail, Solid est constitué des composants suivants[13] :

  • Une collection organisée de normes et de formats/vocabulaires de données fournissant les mêmes fonctionnalités que les services de réseaux ou médias sociaux centralisés offrent, tels qu'identification, l'authentification, la connexion, les listes d'autorisations, la gestion des contacts, la messagerie, les abonnements aux flux divers (infos, etc), les commentaires, les discussions et autres choses.
  • Des spécifications et des notes de conception décrivant une API REST pour étendre les normes existantes, pour guider les développeurs dans la construction de serveurs ou d'applications.
  • Des serveurs qui mettent en œuvre la norme de la spécification Solid en l'implémentant dans leur code source.
  • Une suite de test pour tester et valider les implémentations ou mise en œuvre de Solid dans des serveurs ou applications.
  • Un écosystème d'applications de réseaux sociaux, de fournisseurs d'identification, et des bibliothèques d'aide qui fonctionnent sur la plateforme Solid.
  • Une communauté fournissant de la documentation, (des forums) de discussion, des tutoriels, et des présentations.

Voir aussi[modifier | modifier le code]

Notes[modifier | modifier le code]

  1. a et b David Weinberber, « How the father of the World Wide Web plans to reclaim it from Facebook and Google » [archive du ], (consulté le 30 juillet 2018)
  2. « Solid project website » [archive du ], Massachusetts Institute of Technology (consulté le 7 octobre 2018)
  3. Tim Berners-Lee, « Socially Aware Cloud Storage », World Wide Web Consortium,
  4. Tim Berners-Lee, « Read-Write Linked Data », World Wide Web Consortium,
  5. Katrina Brooker, « “I Was Devastated”: Tim Berners-Lee, the Man Who Created the World Wide Web, Has Some Regrets » [archive du ], (consulté le 30 juillet 2018)
  6. Klint Finley, « Tim Berners-Lee, inventor of the web, plots a radical overhaul of his creation » [archive du ], (consulté le 30 juillet 2018)
  7. Kathryn Krawczyk, « World Wide Change: The creator of the web realizes his invention has gone way wrong » [archive du ], (consulté le 30 juillet 2018)
  8. « Web inventor Tim Berners-Lee's next project: a platform that gives users control of their data », sur Computer Science & Artificial Intelligence Lab, Massachusetts Institute of Technology,
  9. Katrina Booker, « Exclusive: Tim Berners-Lee tells us his radical new plan to upend the World Wide Web », sur Fast Company,
  10. « Inrupt », Inrupt (consulté le 7 janvier 2019) Website.
  11. Tim Berners-Lee, « One Small Step for the Web... », Inrupt,
  12. a et b John Leonard, « Decentralising the web: OmiseGO on the importance of user experience for new platforms » [archive du ], sur Computing, (consulté le 30 juillet 2018)
  13. « About Solid » [archive du ], GitHub (consulté le 30 juillet 2018)

Liens externes[modifier | modifier le code]