Les nouvelles spécifications et mises à jour annoncées hier par l'Enterprise Ethereum Alliance (EEA) doivent permettre aux développeurs de créer des réseaux blockchains de classe entreprise plus rapides, plus faciles à utiliser et pouvant interagir avec d'autres réseaux de registres distribués. Entre autres choses, un tout nouvel ensemble d'API permet de déplacer des fonctions de traitement hors des chaînes de blocs Ethereum (elles sont dites hors chaîne) afin de réduire les charges de traitement et améliorer les performances du réseau primaire. Grâce aux nouvelles API, les programmeurs blockchain pourront intégrer des spécifications relatives à la confidentialité, la faible latence et le débit qui répondent aux besoins de secteurs comme la Fintech, la chaîne logistique, l'IoT et d’autres applications métier.

A l’origine, la blockchain Ethereum était une chaîne de blocs ouverte, publique et open-source, dans la même veine que Bitcoin, et servait à la création et à l’échange de cryptomonnaie dans un grand livre distribué ouvert basé sur une architecture pair-à-pair. Au fil du temps, les éditeurs ont modifié Ethereum de manière indépendante, créant une version autorisée pour l’entreprise ou pouvant être administrée de manière centralisée, tout en offrant de meilleures performances transactionnelles et une plus grande confidentialité des utilisateurs. Fondée par plusieurs start-ups, groupes de recherche et entreprises du Fortune 500, l'Enterprise Ethereum Alliance (EEA) fait la promotion d’un socle de chaînes de blocs Ethereum de classe entreprise commun, afin d’éviter que les développeurs ne construisent des versions Ethereum radicalement différentes, incapables de fonctionner ensemble.

Un nouvel algorithme de consensus plus rapide...

L'idée de la spécification Off-Chain Trusted Compute Specification V1.0 de l'Enterprise Ethereum Alliance est d’extraire les charges lourdes et intensives du grand livre distribué (généralement, une base de données distribuée) pour améliorer les performances et la capacité de stockage. « L’objectif est de fournir une spécification de haut niveau qui pourra donner aux différents fabricants de processeurs une feuille de route pour la conception d'un composant de traitement hors chaîne, si l’opérateur d'une plate-forme Ethereum Enterprise en fait la demande », a déclaré John Whelan, président de l'EEA et responsable de la banque d'investissement numérique de Banco Santander.

Les modifications apportées à la version 1.0 de la spécification Off-Chain améliorent sa compatibilité avec les méthodes de calcul fiables suivantes : Environnements d'exécution fiables ou Trusted Execution Environment (TEE) ; Preuves à divulgation nulle de connaissance ou Zero-Knowledge Proofs; et Calcul multipartite sécurisé ou Trusted Multi-Party-Compute (MPC). « Déplacer temporairement certaines transactions hors chaîne pour les traiter ailleurs, puis renvoyer un résumé à la chaîne principale, est une méthode prometteuse pour satisfaire à ces exigences », a déclaré Ron Resnick, directeur exécutif de l'Enterprise Ethereum Alliance. Parallèlement au nouveau protocole hors chaîne, l'EEA a publié la troisième version de sa spécification principale, l'Enterprise Ethereum Client. Celle-ci définit désormais comment automatiser le processus de permissions et utilise un nouvel algorithme de consensus plus rapide, la preuve d'autorité ou Proof of Authority (PoA). Plus précisément, l'EEA a choisi l'algorithme dénommé Clique Proof of Authority.

... et moins coûteux que Proof-of-Work

L’algorithme de consensus PoA est similaire à un autre protocole de validation de la chaîne de blocs appelé Proof of Stake (PoS), qui, comme son nom l'indique, permet à ceux dont l’intérêt monétaire dans le registre est le plus élevé, de voter la validation des transactions. Le problème avec les chaînes de blocs PoS, c’est que le validateur dont les intérêts sont les plus importants - et qui possède donc le plus grand pouvoir de vote - n’agit pas nécessairement dans le meilleur intérêt de tous. Dans une chaîne de blocs consensuelle de type PoA, les utilisateurs sont pré-validés en fonction de leur identité avant d'être autorisés à voter sur le groupe de transactions - connu sous le nom de blocs - qui pourront être ajoutées au registre. Jusqu'à présent, les chaînes de blocs publiques les plus populaires - Bitcoin, Ethereum (Ether) et Litecoin - ont utilisé le Proof-of-Work (PoW) comme mécanisme de consensus. Mais ce processus est lent et coûteux parce que chaque ordinateur du grand livre distribué doit exécuter une équation mathématique complexe avant de pouvoir valider les transactions. Une pré-validation par le biais du PoA accélère le flux transactionnel, car les machines ne sont pas ralenties par la résolution obligatoire d'équations.

Plus tôt cette année, la start-up Devvio a affirmé que son algorithme consensuel - très similaire au PoA - était capable de traiter huit millions de transactions par seconde, dépassant de loin ce que peuvent faire les réseaux conventionnels de compensation monétaire et de règlement comme VisaNet. L'Enterprise Ethereum Client Specification V3, disponible en téléchargement gratuit, standardise également la manière dont les différents utilisateurs gèrent l'intégration des réseaux autorisés, et permet aussi de construire davantage de systèmes d'autorisation pour les entreprises. « De nombreuses méthodes existent pour construire un système d'autorisation blockchain. L’idée de la version 3.0 est de baser ces systèmes sur des contrats intelligents », a expliqué M. Whelan. « Jusqu'à présent, selon l'application, le processus restait un peu manuel ». Le nouveau protocole d'autorisation permet d'établir une liste en chaîne des adresses de nœuds, de créer des listes blanches et noires pour définir qui peut se joindre à une chaîne de blocs, qui peut écrire dans le grand livre distribué et qui dispose uniquement d’options de lecture.

Une notion d'identité qui varie entre blockchain publique et d'entreprise

L’un des défis relatif à la création d'un système d'entreprise basé sur un Ethereum public, c’est que l’adresse utilisateur est liée à un porte-monnaie électronique totalement anonyme - une clé de cryptage publique. À la différence des chaînes de blocs publiques, comme Bitcoin, la notion d’identité dans le monde de l'entreprise est très différente. Elle peut faire référence à une entreprise, un processus commercial ou un utilisateur individuel. De plus, les entreprises doivent connaître leurs clients et être capables, entre autres choses, d'identifier les systèmes de blanchiment de capitaux. « Un aspect de la spécification version 3.0 de l'Enterprise Ethereum Alliance concerne la façon dont le système d'identité en chaîne peut communiquer avec un système d'identité hors chaîne. En cela, elle répond tout à fait aux besoins de l’entreprise », a encore déclaré M. Whelan. « Pensez aux logiciels d'un gros éditeur comme Microsoft ou IBM. La gestion des identités, les autorisations et les contrôles basés sur les rôles, tout cela est intégré et sous une forme bien comprise et raisonnablement standardisée ».