Compte Rendu du troisième volet de l’Ethereum Community Conference (EthCC)

le 03/04/2020 par Simon DE LAGARDE
Tags: Cloud & Platform

J’ai participé à l’EthCC [3], le plus grand rassemblement communautaire Européen autour de la blockchain Ethereum. Le programme était très riche avec plus de 250 conférences et ateliers sur trois jours. L'événement a rassemblé un écosystème d’acteurs variés de développeurs, de chercheurs, de startupers et d’investisseurs.

L’EthCC est organisé chaque année par l’association Ethereum France qui a pour objectif de promouvoir la compréhension et le développement de la technologie blockchain Ethereum, et plus largement des technologies de la blockchain, du pair-à-pair et de la cryptographie.

Voici un compte rendu de quelques présentations que j’ai apprécié et qu’il me semble pertinent de partager. La première section est une présentation des cas d’usages de la blockchain les plus prometteurs selon l’entreprise ConsenSys. La deuxième met l’accent sur l’importance de l’UX/UI dans la blockchain et partage quatre principes de design du Web 3.0. La troisième regroupe deux présentations sur le thème des hardware wallets, ou portefeuilles physiques. La dernière section présente une solution de versioning de code pair-à-pair.

1. Les cas d’usages de la blockchain (selon ConsenSys)

Dounia Agharbi - ConsenSys

Lors de cette présentation ConsenSys, entreprise technologique leader en développement et en conseil sur Ethereum, a exposé son point de vue sur les cas d’usages de la blockchain les plus prometteurs.

L’identité Digitale : ici nous partons du constat que notre identité numérique est fragmentée et silotée sur de multiples plateformes. Une nouvelle approche axée sur l’utilisateur est proposée à travers l'implémentation de systèmes d’auto-identité souveraines, appelés SSI pour Self Sovereign Identity ou encore DID pour Decentralised Identity.

Dans ce modèle un identifiant est d’abord généré par une personne physique, morale ou par un objet. Cet identifiant est protégé cryptographiquement par une paire de clés publique / privée. Ensuite des parties tierces, tel qu’un gouvernement ou une université, peuvent associer des attestations ou vérifiable credentials à cet identifiant permettant par exemple d’attester de l’âge, des diplômes ou de l’adresse d’un utilisateur. La validité et l’empreinte d’une attestation est vérifiable publiquement dans la blockchain. Un utilisateur peut générer plusieurs DIDs, afin de créer plusieurs profils. À noter que l’attestation en tant que telle n’est pas stockée dans la blockchain.

Les systèmes d'auto-identités souveraines permettraient d’apporter aux utilisateurs plus de contrôle et de flexibilité sur la gestion de leurs données privées et sur les interactions de ces derniers avec des parties tierces.

ConsenSys mène plusieurs expérimentations avec la Ville de Lyon, EDF et Pôle Emploi. Trois initiatives à suivre sur le sujet : uPort, Civic et Sovrin.

Certification et preuve d'existence : la blockchain permet une identification des modifications faites par différents acteurs grâce à l'enregistrement permanent de l’historique transactionnel dans un registre partagé.

ConsenSys met en avant le potentiel de ces nouveaux modèles dans les chaînes logistiques. L’entreprise développe notamment une solution dans le secteur du luxe appelé AURA en partenariat avec LVMH et Microsoft. L’objectif ici est d’améliorer la traçabilité en amont le long de la chaîne d'approvisionnement et de production ainsi qu’en aval en fournissant des certificats digitaux des produits vendus aux clients. Quand on parle de traçabilité, il convient de mettre en place une identification forte entre le monde physique et le monde numérique, pour créer un “jumeau numérique”. Cette identification peut être plus ou moins complexe à mettre en œuvre en fonction de la chaîne logistique et des produits associés.

Tokenisation d’actifs financiers : la « tokenisation » désigne la création de la représentation numérique d’un actif sur une blockchain, permettant l’échange et la gestion de cet actif en pair-à-pair. Il est ainsi possible de tokeniser des actifs financiers existants tels que des actions ou des parts de fonds immobiliers représentés sous forme de tokens.

Les avantages seraient multiples : amélioration de la liquidité en automatisant et en accélérant les transactions, réductions du nombre d’intermédiaires entraînant une réduction de la complexité, des dépendances et des coûts, ou encore la création de nouvelles catégories d’investisseurs attirés par des montants d’investissement plus faible.

Mon avis : ces cas d’usages utilisant la blockchain sont connus depuis plusieurs années, de nombreuses expérimentations ont été réalisées cependant les lancements à grandes échelles se font attendre.

Il y a plusieurs challenges communs à leurs implémentations, tel que le codéveloppement d'écosystèmes d’acteurs autour de standards communs, la scalabilité des blockchains, l’expérience utilisateur ou encore la sécurisation des clés privées de l’utilisateur.

Il y a aussi des freins spécifiques à certains cas d’usages, par exemple les cas d’usages liés aux chaînes logistiques sont limités par la qualité des données enregistrées sur la blockchain. Concernant la tokenisation d’actifs financiers elle est fortement limitée juridiquement par les autorités financières. De plus, il manque une vraie gestion de la conservation des tokens (custody) et une meilleure définition des standards dans le secteur financier.

2. Evolving Design in Web3 through Open Source Principles / Évolution des principes de design à travers l'Open Source

Amy Jung - cLabs et MakerDAO / Vidéo

L'expression Web 3.0 est utilisée pour désigner le Web qui suivrait le Web 2.0, son contenu réel n'est pas défini de manière consensuelle, chacun l'utilisant pour désigner sa propre vision du futur d'internet. Il repose sur trois critères : indépendant, c’est-à-dire utilisable sur tous les supports (smartphones, ordinateurs, TV...); universel, il ne doit être sous l'emprise d'aucun système d'exploitation (marque, fabricant de logiciel ou de matériel); accessible à tous, en conformité avec les directives du W3C et ouvert à diverses bases de données (source : Journal du Net).

Amy a plusieurs années d’expérience en tant qu’UX designer dans des startups blockchain. Elle a commencé par souligner la complexité conceptuelle et technique de la blockchain qui est un frein à sa compréhension et finalement à l’adoption de masse.

Ensuite, elle a partagé quatre principes de design du Web 3.0 :

Le premier est d’augmenter la fluidité des échanges inter-équipes, entre les développeurs, les équipes fonctionnelles et les porteurs de projets, notamment à travers la création d’équipes temporaires intégrant des intervenants externes.

Le deuxième, est l’open source par défaut à travers l’utilisation de frameworks, d’outils et de processus ouverts qui favorisent le partage de connaissances et la collaboration. Elle a recommandé l’outil de design collaboratif FIGMA et promu la diffusion publique et en direct des sessions de travail.

Le troisième, la création et la promotion de standards et d’un langage commun en UI design et UX flows soutenu par des études scientifiques et la création de bibliothèques Design System open source, elle donne l’exemple du projet Aragon.

Le quatrième, définir l'éthique et les valeurs partagées d’un projet. Les technologies devenant de plus en plus puissantes, la création d’un manifeste autour de principes éthiques devient une nécessité. Ils servent de fondation pour des équipes qui sont de plus en plus délocalisées.

Mon avis : le design UX/UI est en effet un enjeu majeur pour l’adoption de la blockchain à grande échelle. En plus d’une interface claire, les designers doivent faciliter la compréhension de nouveaux concepts tels que les interactions avec la blockchain ou la gestion des portefeuilles.

J’apprécie la vision d’Amy où le partage en open source des démarches et des ressources UX/UI deviendra aussi commun que de partager son code sur GitHub.

3. Les Hardware wallets

Pour comprendre le principe de fonctionnement de la majorité des blockchains il est essentiel de comprendre le principe de chiffrement asymétrique ou chiffrement par clés publiques / privées. Les clés privées doivent rester confidentielles puisqu'elles permettent de disposer de ses actifs numériques enregistrés sur une blockchain. Elles sont stockées dans des portefeuilles ou wallets.

L’utilisateur est responsable de la sécurisation de ses portefeuilles, c’est donc un enjeu majeur pour le passage à l’échelle de solutions blockchain.

Il existe plusieurs types de procédés de stockage. Le hardware wallet est l'un d'entre eux, il s'agit d'un portefeuille physique qui prend la forme d'une clé USB, ou d'un mini-ordinateur sécurisé. Ledger ou Trezor sont les modèles les plus populaires sur le marché.

J’ai participé à deux présentations sur le sujet, la première sur des cartes à puces et la deuxième sur des billets intelligents.

Keycard: an open framework for smart cards in crypto

Guy-Louis Grau - keycard

La startup Keycard part du constat que la fabrication et l’utilisation de cartes à puces ou smart cards sont aujourd’hui largement démocratisées. Nous possédons tous plusieurs cartes à puces telles que notre carte bancaire ou notre titre de transport.

Leur objectif est de rendre la création de hardwares wallets plus accessible à travers les cartes à puces. Cette startup a développé une API open source permettant de simplifier l’intégration de portefeuilles de crypto actifs dans ce type de cartes. Deux cas d’usages peuvent être implémentés : soit la carte à puce est utilisée comme stockage de valeur, en créant par exemple une carte prépayée contenant des crypto monnaies. Soit elle peut servir de clé de sécurité dans le cadre du double facteur d’authentification (2FA), similaire à d’autres produits sur le marché tel que la clé Yubico.

How we think about storing crypto is broken

Cameron Robertson - Kong cash

La startup Kong a commencé par souligner l’importance de la sécurisation des clés privées “securing crypto is the first step to securing the decentralised web”.

À l’instar de Keycard, Cameron insiste sur le fait que la sécurité des cartes à puces a été remise en cause de multiples fois, notamment à cause de failles dans les APIs. Il ajoute qu’un hardware wallet est coûteux et qu’il nous oblige à faire confiance à son firmware.

Leur solution est la création d’un billet intelligent ou crypto cash qui ressemble exactement à un billet de banque. Avec des caractéristiques particulières en plus. Les billets Kong sont associés à des contrats intelligents ou smart contracts, qui sont bloqués sur des durées qui varient de 3 mois à 1 an. De plus, à l’intérieur du billet une puce spéciale est intégrée. Appelée secure element cette puce n’est pas programmable, sa seule fonctionnalité est de générer des paires de clés publiques / privées ou ECDSA.

Les créateurs concluent en insistant sur la nécessité d’une nouvelle génération de puces au standard ouvert pour favoriser la démocratisation de la blockchain. Appelé SILO pour Silicon Locked Contract, cette nouvelle génération permettra d’ancrer des crypto actifs dans des puces plus ouvertes et plus sécurisées.

Mon avis : les initiatives de ces deux startups permettraient d’améliorer et de simplifier la sécurisation de crypto actifs. Cependant le sujet est vaste et complexe, il reste un travail de fond important d’évangélisation et de responsabilisation des utilisateurs.

La nouvelle puce développée par Kong est intéressante car  son application va au-delà d’un billet intelligent. Elle a pour objectif d’améliorer le lien entre le monde physique et numérique. Intégrée à des produits d’une chaîne logistique de nombreux cas d’usages pourraient être développés.

La création d’un standard open source pour des puces de nouvelles générations tel que le Silicon-Locked Contract proposé par Kong est nécessaire pour des raisons de sécurité et d’interopérabilité.

4. Towards peer-to-peer alternatives for code collaboration

Abbey Titcomb - radicle / Vidéo

Abbey a d’abord présenté l’historique des outils de gestion de version de code ou software version control. Elle a ensuite fait une analyse des points forts et des points faibles du modèle actuel qui est centralisé autour de plateformes collaboratives tel que GitHub. Dans la seconde partie de sa présentation, elle a proposé une solution alternative développée par radicle qui est basée sur la collaboration et la décentralisation.

La première génération d’outils, qualifiée de stand-alone and file-focused, a été développée en 1972 (SCCS). Elle est restrictive car un seul utilisateur peut travailler sur un seul fichier à la fois. De plus, cette première génération ne permet pas de partager son code. La deuxième génération, qualifiée de centralisée, a été développée en 1986 (CVS). Celle-ci est plus permissive car elle permet la modification simultanée d’un fichier par plusieurs utilisateurs mais avec une restriction notable : l’utilisateur doit réaliser un merge en local avant de réaliser un commit sur un serveur central. La troisième génération, qualifiée de distribuée, ne dépend pas d’un serveur central et permet de réaliser un commit avant un merge. Elle est introduite par Bitkeeper en 2000 suivi par son équivalent libre de droit Git en 2005.

C’est sur cette troisième génération d’outils que se base la célèbre plateforme GitHub. Le succès de telles plateformes tient principalement à l’ajout des fonctionnalités de collaboration_,_ à leurs simplicités d’utilisation et à l’intégration d’outils permettant l’amélioration du workflow de développement.

Cependant, d’après Abbey ce modèle est imparfait “our dependence on centrally hosted platforms and corporations for the distribution of critical open source infrastructure is inherently unsustainable”. Elle cite des risques économiques, tel que l’ajout de fonctionnalités payantes; politiques, la plateforme peut arbitrairement fermer le compte d’un utilisateur ou interdire son accès à certaines zones géographiques; et techniques une défaillance de sécurité pourrait impacter de nombreux projets.

L’idée de radicle est de conserver Git comme fondation. Le système de login est remplacé par un système de clés publiques / privées, le suivi et la sauvegarde des issues sont répliqués de pair-à-pair et des fonctionnalités sociales telles que la création de profils et l’envoi de messages sont ajoutées. Le projet se base sur le réseau social décentralisé Scuttlebutt. À noter que la blockchain n’est pas centrale ici, radicle est plutôt axé sur un système de versioning pair-à-pair avec des repos résistants à la censure.

Mon avis : le projet radicle est attrayant car il va au-delà d’un simple outil de gestion de version de code. Une solution alternative aux plateformes actuelles est proposée à travers une véritable stack de développement de code pair-à-pair et collaborative.

Cependant, comme l'a souligné Abbey il y a des challenges techniques non résolus inhérents aux systèmes décentralisés tel que la disponibilité et l’uniformité de la donnée. Il est également difficile d’imaginer comment un tel système va pouvoir rivaliser avec les protagonistes du marché en termes de design UX/UI.

Conclusion

J’ai constaté que l’écosystème d’Ethereum et de la blockchain en général sont plus matures avec une plus grande diversité d’acteurs, un plus grand nombre de développeurs et une ontologie plus marquée comparés aux conférences auxquelles j’ai assisté en 2019.

Dans cet article nous avons vu que l’entreprise ConsenSys parie sur trois cas d’usages, qui sont l’identité digitale, la certification et la preuve d’existence ainsi que la tokenisation d’actifs financiers (section 1). Cependant, il y a des challenges à leur implémentation, tel que le codéveloppement d'écosystèmes d’acteurs autours de standards communs, le sujet a été traité dans un précédent article de blog; l’expérience utilisateur (section 2); et l_a sécurisation des clés privées_ de l’utilisateur (section 3). Enfin, la dernière présentation (section 4) met en avant le projet radicle qui propose une solution de versioning de code pair-à-pair.

Je recommande vivement cette conférence qui est une véritable immersion dans la communauté d’Ethereum et de la blockchain. Le contenu convient à un public d’experts comme aux amateurs curieux. Cependant, je vous conseille de préparer votre agenda à l'avance car l’emploi du temps est chargé, plusieurs présentations et ateliers ont lieu en parallèle.