Comment Nimiq est en avance sur son temps – Keyguard et Hub

Article original rédigé et publié par Talleyrand

La dernière fois, nous avons parlé de la façon dont Nimiq exploite la rapidité du consensus et des nœuds navigateurs pour créer un protocole plus décentralisé et plus sûr tout en facilitant son utilisation et son intégration dans les sites et applications web existants.


Aujourd’hui, le sujet portera davantage sur la manière dont Nimiq parvient à offrir une expérience utilisateur aussi fluide et sur les possibilités qu’il offre aux utilisateurs, aux commerçants et aux développeurs. Pour cela, je vais essayer d’expliquer deux éléments de base de l’écosystème actuel de Nimiq qui sont le Keyguard et le Hub.


Qu’est-ce que la Keyguard ? Eh bien, comme son nom l’indique, c’est une application qui stocke vos clés privées localement et de manière sécurisée dans votre navigateur. Mais attendez, des clés privées ? Comment cela fonctionne-t-il déjà ?



Imaginons une blockchain (la base de données elle-même) comme une gare publique : supposons maintenant que tout le monde puisse construire une copie identique de cette gare publique et la faire fonctionner lui-même, c’est exactement ce qu’est un noeud de blockchain.
Ensuite, répétez ce processus plusieurs fois, connectez toutes ces gares entre elles à l’aide de rails (Internet) et faites rouler les trains entre eux (les données circulent dans les deux sens), c’est tout : vous avez un réseau en chaîne.


Bien sûr, dans notre cas, un train ne transporterait pas de passagers ou de marchandises mais des messages (et dans le cas de Nimiq : des transactions) destinés à d’autres gares afin qu’ils puissent tous rester synchronisés dans le temps.


Mais attendez, si tout le monde a accès à la base de données et peut gérer la sienne, qu’est-ce qui empêche les gens de jouer avec le solde de mon compte ?


C’est là que l’équivalent d’une chaîne de casiers à bagages entre en jeu. Dans ce cas, le casier serait votre adresse où se trouvent les fonds. Comme nous l’avons dit, toutes les gares sont strictement identiques et disposent exactement de la même pièce de consigne avec exactement le même contenu dans chacune d’entre elles.


Le fait est que tout le monde peut voir le contenu des casiers, de sorte que les manipulations dans une station seraient immédiatement évidentes. Seule la personne ayant accès à la clé d’un casier (vous) peut l’ouvrir et en déplacer le contenu, cette clé est appelée « clé privée ». Avec Nimiq, votre clé privée peut être sous la forme de 24 mots ou d’un fichier de connexion que vous avez obtenu lors de la création de votre compte. C’est pourquoi les personnes qui travaillent dans le domaine de la cryptographie sont extrêmement prudentes quant à la manière dont elles manipulent leurs clés privées : si quelqu’un accède à vos clés, il peut faire ce qu’il veut avec vos fonds, mais ne nous laissons pas distraire.


Une clé privée fonctionne de telle manière qu’elle vous permet de « signer » des transactions, une signature étant ici en fait une preuve cryptographique montrant que la personne qui envoie la transaction ou le message est bien le propriétaire de l’adresse.


La signature, une fois diffusée dans le cadre de la transaction, permet au reste du réseau de valider le changement de solde dans le grand livre/base de données sur la chaîne de blocage.


Maintenant avec Nimiq, les clés sont prises en charge par le Keyguard, c’est une application qui stocke et gère vos clés dans le navigateur de manière sécurisée. Elle est par conception séparée du reste de l’écosystème pour réduire la surface d’attaque.


En fait, elle est écrite en JavaScript simple, sans dépendances de frameworks et de bibliothèques pour éviter les failles de sécurité provenant de telles dépendances, mais elle conduit également à une base de code plus petite qui est auditée avec un soin tout particulier.


Cela dit, n’est-il pas encore un peu dangereux de faire interagir le Keyguard directement avec un site web ou une application ? Cela pourrait l’être.



C’est à ce moment que le Nimiq Hub apparait. Le Hub est une deuxième couche qui agit comme une interface entre le Keyguard et le reste du monde, c’est l’endroit où sont stockées toutes les données de vos comptes (sans la clé privée) et en gros ce qui interagit directement avec d’autres applications (comme une extension WordPress ou Nimipay). Chaque fois que vous voulez importer/exporter un compte ou envoyer une transaction, c’est seulement à ce moment-là que le Hub demandera une signature au Keyguard.


En fait, vous pouvez le vérifier par vous-même : lorsque vous allez dans le wallet nimiq pour, disons, vérifier votre solde, interagir avec votre compte, voir l’historique de vos transactions etc… toutes les données affichées sont stockées dans le Hub.


Le Keyguard UI


La petite fenêtre qui s’ouvre pour vous demander votre mot de passe lors de l’envoi d’une transaction ou de l’importation/exportation d’un compte : C’est le Keyguard.


Maintenant que ces notions sont, espérons-le, plus claires (malgré l’affreuse analogie avec les trains !), il est temps d’exposer pourquoi ces deux composants sont extrêmement puissants :

  • C’est, du point de vue de l’utilisateur, le moyen le plus simple imaginable de payer quelque chose en ligne. Vous voulez regarder du contenu derrière un paywall ? Donner un conseil à quelqu’un ? Cliquez sur un bouton de ce site, le Keyguard apparaît, tapez votre mot de passe et c’est tout. Pas besoin de vous connecter à une entité centralisée comme PayPal, d’entrer votre numéro de carte de crédit sur un site web de mauvaise qualité, de copier/coller une adresse cryptée entre deux fenêtres, etc… En fait, vous n’aurez probablement même pas besoin de vous enregistrer (vous en saurez plus à ce sujet dans le paragraphe suivant). Il vous suffit de cliquer sur un bouton d’une page web, de taper un mot de passe et c’est tout !
  • Vous vous souvenez quand nous avons parlé des signatures ? Elles sont utilisées pour authentifier votre propriété d’une adresse et des fonds qui s’y trouvent, mais elles peuvent aussi servir à vous identifier. Cela rend obsolète l’enregistrement traditionnel par mail / mot de passe, pensez aux comptes Google ou Facebook mais décentralisés et sans que des sociétés de type « big brother » ne pillent vos données privées.
  • Du point de vue d’un commerçant ou d’un créateur de contenu, c’est un moyen très intéressant de recevoir des paiements combiné avec OASIS, tout d’abord parce qu’il permet de se décharger d’un poids : vous n’avez pas à traiter avec un processeur de paiement comme PayPal ou, dans le cas des cryptos, BitPay et leurs conditions et frais. Ajoutez à cela les frais de transaction potentiellement faibles de Nimiq 2.0 et vous obtenez tout un univers de possibilités de monétisation en ligne par le biais de micro-transactions. Dans le cas de Nimiq ID, cela pourrait même leur permettre de ne plus avoir à s’occuper de l’hébergement des mots de passe. Ce serait moins cher et plus sûr.
  • Pour mettre le dernier clou dans le cercueil des prestataires de paiement centralisé, les développeurs disposent d’une API leur permettant d’utiliser les fonctionnalités du Hub Nimiq. Cela signifie qu‘il n’est pas nécessaire de construire des solutions maison à partir de zéro pour interagir avec la blockchain ni d’héberger un nœud pour fournir des services. Si l’on ajoute à cela ce qui a été dit dans le dernier fil de discussion, on obtient quelque chose de beaucoup plus léger à manipuler et à intégrer pour les développeurs par rapport aux autres cryptomonnaies.


Cool, non ?

DISCLAIMER: Aucune des déclarations ne doit être considérée comme une approbation ou une recommandation pour Nimiq, une crypto-monnaie ou un produit d'investissement. Ni les informations, ni les opinions contenues dans ce document ne constituent une sollicitation ou une offre par les créateurs ou participants d'acheter ou de vendre des titres ou d'autres instruments financiers ou de fournir des conseils ou des services d'investissement.