Rapport d’avancées techniques (Février 2021)

En décembre dernier, nous avons fait le point sur les progrès récents réalisés par l’équipe Nimiq. Le temps s’écoule vite quand il se passe tant de choses – que ce soit avec Nimiq ou dans l’écosystème crypto en général ! Nous avons maintenant d’autres mises à jour pour vous, alors mettez-vous à l’aise, servez vous un verre et commençons !

L’équipe Blockchain


Intégration LibP2P


LibP2P est une bibliothèque de réseau créée par Protocol Labs et codée dans de nombreux langages, dont Rust, qui est celui utilisé par Nimiq. Ce « network stack » (pile réseau) modulaire est conçu pour permettre aux projets de mélanger et faire correspondre les éléments de base des fonctionnalités réseau. De plus, l’implémentation de LibP2P est conçue pour fonctionner également dans le network stack du navigateur, ce qui permet à Nimiq 2.0 de fonctionner dans le navigateur tout en réutilisant l’excellent travail déjà réalisé par Protocol Labs. La réutilisation de ce code présente le grand avantage d’avoir une équipe indépendante qui travaille et améliore le code, ce qui nous évite de le recréer et de le maintenir. Ces dernières semaines, les développeurs de Nimiq ont dû faire face à des bogues de type « edge case » (cas marginaux) lors de l’intégration de LibP2P dans Nimiq 2.0, mais il semble que nous soyons en train de gagner !

Testnet


Un gros travail est en cours pour configurer des environnements de test de plus en plus complexes dans lesquels nous faisons tourner l’implémentation du Testnet afin de procéder à des essais de plus en plus approfondis et à des débogages afin que le Testnet soit prêt pour la sortie publique.

Dans le cadre de ce processus, une image docker a été créée pour mettre en place un Testnet local sur les machines des développeurs. Puisque cela sera utile à la communauté des développeurs de Nimiq, cette image sera publiée avec le Testnet, ainsi que sa documentation et ses instructions.

Nano-consensus


Pour que Nimiq 2.0 fonctionne sur les appareils mobiles et autres appareils à faible capacités, nous devons trouver un moyen intelligent d’établir un consensus sur les appareils sans synchroniser toute la blockchain – comme les clients nano qui utilisent NiPoPoW dans Nimiq 1.0. La solution consiste à partager une preuve « zéro connaissance » (« zero-knowledge » proof) – vous pouvez trouver tous les détails ici – et ce code a été livré en janvier et est désormais en phase de débogage et de test.

Staking


Le Testnet étant sur le point d’être achevé, l’équipe planifie la manière d’aborder certains détails importants pour optimiser le fonctionnement de la mise en staking et du retrait de staking du point de vue de l’UI (Interface utilisateur). Ces sujets ne sont pour l’instant que couchés sur papier, mais nous pensons qu’ils peuvent être intéressants pour certains membres de la communauté. Nimiq 2.0 nécessitera deux transactions pour le retrait du staking: la première pour signaler que vous ne voulez plus staker et la seconde pour récupérer vos fonds une fois qu’ils ont été retirés, ce qui se produit après le prochain macro-bloc, donc au maximum douze heures plus tard. Les développeurs de Nimiq ont discuté de la manière de sécuriser la blockchain tout en garantissant une bonne expérience utilisateur. La solution actuelle sur laquelle nous travaillons consiste à signer les deux transactions en même temps et à créer un service qui relaie la deuxième transaction requise dans le réseau après le prochain macro-bloc – c’est un service optionnel qui rendra le système plus facile à utiliser mais ne compromet pas la décentralisation.

Validateurs


Pour améliorer la convivialité de la blockchain, les développeurs de Nimiq ont permis le changement de validateur instantané, en une seule transaction. De plus, les validateurs peuvent désormais être référencés par un identifiant unique. Même lorsqu’un validateur est mis à jour, l’identifiant reste le même.

OASIS


Infrastructure

Le déploiement de l’infrastructure au niveau commercial est en phase finale. Il s’agit de séparer les trois composantes essentielles : l’API publique HTLC, le règlement (qui connaît des secrets pour pouvoir envoyer des paiements) et la compensation (vérification des transactions entrantes) – qui est une mesure de sécurité importante. Des mesures et des contrôles sont également ajoutés pour vérifier les erreurs et être prêts à être mis à l’échelle (scaling). Ce sont les dernières étapes de la préparation à la mise en production .

Mise en œuvre


Simplifier la structure tarifaire (fees), rendre l’API plus facile à utiliser. Améliorer les informations sur l’état des transactions entrantes et sortantes – ce qui est beaucoup plus complexe pour le monde bancaire traditionnel que pour la crypto; détecter et rembourser les transactions qui ont été soumises par erreur (ou sans le savoir) comme étant non instantanées.

L’équipe Front-end


Ledger


Le dernier Hub Nimiq peut maintenant faire des échanges crypto-crypto ainsi que fiat-crypto avec le Ledger ! En coulisses, la librairie de l’API du Ledger a fait l’objet d’une mise à jour majeure. L’implémentation originale utilisait des solutions de contournement pour communiquer avec l’appareil Ledger, mais les standards web se sont considérablement améliorés et il était temps de remplacer cette solution de contournement par une implémentation correcte utilisant toutes ces nouvelles et magnifiques API web. Ce faisant, la prise en charge multi-coin a été ajoutée, permettant à la bibliothèque d’accepter Bitcoin dès maintenant. De plus, le support du Bluetooth a aussi été ajouté, afin que le travail sur le wallet puisse commencer en vue de prendre en charge le nouveau Ledger Nano X via Bluetooth. Le travail sur la librairie a été recommencé à zéro avec une nouvelle architecture, l’ouvrant à la réutilisation par d’autres développeurs qui veulent intégrer les Ledgers dans leurs applications web. La prochaine étape consiste à mettre à jour l’application Nimiq Ledger (le programme qui s’exécute sur votre appareil Ledger) aux dernières normes de l’interface utilisateur Ledger et à ajouter des fonctionnalités supplémentaires.

Mise à jour du wallet


L’équipe en charge du front a travaillé sur une nouvelle version du wallet qui est sortie récemment. Elle comprend les mises à jour importantes suivantes :

  • Nouveau mode d’inscription : Les utilisateurs doivent désormais télécharger leur fichier de connexion lors de la création d’un compte. Bien que cela semble demander plus d’efforts de la part des utilisateurs, nous avons reçu régulièrement des demandes d’assistance de la part de personnes souhaitant les aider à restaurer leur compte après avoir perdu l’accès. Mais bien sûr, nous sommes dans la crypto, si vous n’avez pas de sauvegarde, nous ne pouvons pas vous aider. Donc maintenant, le fichier de connexion se télécharge automatiquement lors de la création d’un nouveau compte – cela ne prend qu’une seconde et si vous en avez vraiment besoin, vous le trouverez au moins dans votre dossier de téléchargements.
  • Amélioration des limites de mots de passe : Les nouveaux mots de passe sont limités à 256 caractères. C’est trop ? Nous venons de fixer une limite supérieure pour éviter que les utilisateurs n’empiètent sur le portefeuille en saisissant des mots de passe incroyablement longs pour tenter de casser les choses.
  • Améliorations d’iOS/Safari : Les nouveaux comptes ne sont plus nommés « 1 » ou « 2 » dans le Portefeuille, mais affichent leur nom correct (à l’origine basé sur la couleur de fond), traduit dans votre langue.
  • Amélioration de l’interface utilisateur : l’équipe et les concepteurs ont passé en revue l’ensemble de l’interface utilisateur – pour les téléphones portables et les ordinateurs de bureau – et ont résolu les petits problèmes et bugs visuels. Les interfaces utilisateur sont donc encore plus belles maintenant.
  • iOS/Safari : Les nouveaux comptes sont maintenant automatiquement activés pour le BTC, plus besoin d’activation manuelle !
  • Taille réduite : Un nettoyage approfondi a permis de supprimer le code inutile, ce qui a permis de réduire la quantité de données lors du chargement du wallet et des composants.

Comme vous l’avez peut-être remarqué, l’équipe est entièrement concentrée sur Nimiq 2.0 et OASIS. Bien que beaucoup de progrès aient été réalisés, nous continuons avec toute notre énergie à relever les défis qui nous attendent. Comme toujours, nous vous remercions de vous joindre à nous pour ce voyage.

Pura Vida,

L’équipe Nimiq

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.