Comment Ring intègre la blockchain dans sa plateforme de communication libre

Suite de notre dossier Blockchain aujourd’hui, avec un nouveau cas d’usage. Dans le cadre de notre partenariat avec la Digital Tech Conférence, dédiée cette année en partie à la blockchain, nous avons eu la chance de pouvoir interviewer Adrien Béraud, en charge du projet Ring. Cette plateforme de communication libre et distribuée se sert de la blockchain de manière innovante depuis plus d’un an. Pour dépasser le stade de la théorie et comprendre comment la blockchain peut être utile dès aujourd’hui, nous vous proposons d’en savoir plus sur Ring et sur la manière dont elle intègre cette technologie.

Pouvez-vous commencer par vous présenter ?

Je suis directeur du projet Ring chez Savoir-faire Linux. Nous l’avons commencé en 2013, il s’appelait alors SFLphone. Il s’agissait d’un projet de téléphonie IP développé en interne. Nous avons alors étudié ce qui se faisait dans le milieu de l’échange de fichiers, notamment Bittorrent. Ils utilisaient une technologie DHT distribuée pour permettre aux gens de rentrer en contact en peer-to-peer. Nous nous sommes alors dit que nous pouvions adapter cette technologie pour permettre aux gens de rentrer directement en communication grâce au protocole SIP sans passer par un serveur. De là, l’idée de Ring a démarré. Le nom lui-même est porteur de sens : il n’y a pas d’infrastructure centrale, c’est la communauté qui forme le réseau.

 

Concrètement, que propose Ring à ses utilisateurs ?

Ring souhaite proposer une plateforme de communication qui est entièrement distribué et sécurisé à ses utilisateurs. L’aspect distribué implique que les utilisateurs ont la maîtrise entière de leur compte et de leur identité sur le réseau, et donc de leurs communications. Ils n’ont pas besoin de passer par un service comme Google ou Facebook pour les authentifier auprès des autres utilisateurs. Cette authentification se fait par un système de clés publiques, les clés privées étant sur les appareils des utilisateurs.  Notre objectif est de s’adresser au grand public, le fonctionnement choisi est donc très simple pour les utilisateurs, tout en s’assurant qu’ils ne dépendent pas d’une organisation qui centralise leurs données ou contrôle leurs communications ou leurs méta-données.

Ring est une plateforme, un protocole et un ensemble de librairies et de logiciels autour. Nous proposons un ensemble de clients sur les plateformes les plus populaires : Android, Mac, Windows, Linux, bientôt iOS. Ces clients sont développés à partir de la plateforme Ring, et ils sont grand public, en offrant des fonctionnalités proches de Skype ou Facebook Messenger par exemple. Il est possible de se baser sur Ring pour concevoir ou développer des clients pour des besoins plus spécifiques, professionnels par exemple. En tant que système distribué, Ring a la possibilité de fonctionner sur un réseau privé ou dans des environnements où Internet n’est pas disponible mais où on a accès à un réseau IP, lors de catastrophes par exemple, sur un bateau ou encore dans des villages isolés.

 

Quel rôle joue la blockchain dans Ring ?

Dans Ring, un système distribué est utilisé pour mettre en contact les utilisateurs. On va utiliser la blockchain pour permettre d’enregistrer des noms d’utilisateurs. Nous avons un modèle de sécurité basé sur des clés publiques, qui vont permettre d’authentifier chaque utilisateur. Ces clés sont de longues séries de caractères que les gens ne peuvent pas retenir, et donc qu’ils ne peuvent pas utiliser pour se contacter ou s’identifier. Nous avions besoin de trouver une manière de permettre aux gens de s’identifier sur le réseau avec un identifiant personnel unique. Nous avions donc besoin d’un mécanisme d’enregistrement de nom d’utilisateur, mais aucune technologie ne permettait de le faire de manière distribuée, sans serveur central. La technologie blockchain permet d’avoir une réponse à cette problématique, notamment avec les smart contacts. Le système est fiable, tout reste distribué, il n’y a aucune infrastructure centrale, ni même d’organisation ou d’autorité qui gère ces noms comme dans le système DNS par exemple. Dans celui-ci, des autorités vont pouvoir arbitrairement modifier ou supprimer des noms. Même chose chez Google ou Facebook, ces entreprises auront l’autorité sur qui possède ou contrôle tel nom. Ce système de contrat intelligent, via Ethereum, permet de proposer cette fonctionnalité avec une confiance qui repose sur le code du contrat, qui est public et que tout le monde peut voir.

Est-il possible d’utiliser le même compte depuis plusieurs appareils ?

Nous avons beaucoup travaillé pour permettre un fonctionnement où l’on puisse utiliser son compte Ring sur plusieurs appareils. La création d’un compte consiste en la création d’une nouvelle paire de clés qui identifie l’appareil. Le modèle d’authentification est basé sur une chaîne de certificats : quand vous créez votre compte, vous générez un certificat pour votre appareil. On va utiliser encore une fois le réseau distribué DHT pour permettre aux utilisateurs de se connecter depuis d’autres appareils en transmettant des archives chiffrées qui vont contenir les paires de clés permettant le contrôle du compte. L’accès au compte demandera toujours un mot de passe qui permettra de déchiffrer ces archives stockées localement.

 

Où en êtes-vous du projet ? Quelles sont les prochaines étapes de son évolution ?

Tout ce que j’ai mentionné précédemment sur la gestion des noms d’utilisateur par la blockchain, pour laquelle nous avons été les pionniers, est déjà disponible et en production depuis un an. Nous en sommes à la version 1.0 de Ring, une version initiale sur laquelle il reste énormément de travail. Nous nous concentrons actuellement sur les échanges de fichiers et sur la version iOS. Notre but, à terme, est de fournir des outils aux entreprises pour leur permettre d’intégrer Ring dans leur infrastructure et dans leur réseau.

 

Quel est le positionnement de Ring par rapport aux grandes messageries centralisées ?

Ring s’est développé dans un esprit ouvert propre aux logiciels libres. Mais l’idée est aussi de proposer une plateforme qui puisse éventuellement devenir un standard et être utilisée par de nombreux acteurs, y compris peut-être un jour les GAFA. Et cela de la même manière que l’email, qui est à l’origine un système entièrement distribué et qui est devenu un système de communication standard et universel, encore utilisé aujourd’hui malgré ses défauts techniques.

L’idée est de ne pas dépendre d’un service propriétaire lié à un protocole propriétaire qu’on ne maitrise pas, dans lequel il est difficile d’avoir confiance, et pour lequel il est nécessaire de donner le contrôle de ses données qui sont ensuite exploitées. Proposer une plateforme universelle pourrait éviter d’avoir à utiliser ces protocoles propriétaires, comme Facebook Messenger, les services de Google, et autres.

 

Pour finir, quelle est votre vision de la blockchain ? Que représente-t-elle pour vous ?

La blockchain permet de déporter l’autorité d’un humain qui n’est pas infaillible, à un code source publique dont le fonctionnement est prédictible. La technologie Bitcoin permet de faire des transactions de valeurs, mais c’est surtout la technologie Ethereum qui donne tout son sens à la blockchain, en lui permettant d’effectuer de nombreuses autres opérations, comme la gestion des noms d’utilisateur dans notre cas. Cela peut aussi permettre une démocratie ouverte, une organisation entièrement distribuée sans nécessité de base légale, où la confiance en l’organisation se base sur le code source, qui devient une sorte de constitution. C’est une révolution technologique qui va changer le monde, mais cela va prendre du temps, le temps de prendre la mesure de toutes les possibilités qu’elle offre. Nous sommes encore dans une phase exploratoire, ce n’est que le début !

Sujets liés :
1 commentaire
Commentaire (1)
  • njager

    bonne interview, juste un détail :
    pas GAFA mais GAFAM

Ajouter un commentaire

Votre adresse email ne sera pas publiée.

Les meilleurs outils pour les professionnels du web