#dusk $DUSK Récemment, lors des tests du réseau Dusk, l’incitation liée aux dépôts a déclenché une vérification de la source des fonds : on m’a bloqué au moment de l’approvisionnement. À ce moment-là, j’étais déjà prêt : j’avais préparé des relevés d’adresses sur une demi-année—j’avais déjà fait ce genre de preuve de conformité en jouant à Zcash, et rien que pour envoyer des captures d’écran, j’ai dû m’acharner pendant 20 minutes. Le Gas m’a coûté presque 0,1 coin, et j’ai en plus révélé à la partie vérificatrice l’ensemble des positions de mon adresse. À chaque fois que je tombe sur ce type d’exigence, ça me donne des nœuds au cerveau.

Résultat : dans mon wallet Dusk, j’ai cliqué trois fois, et en deux minutes la vérification a été acceptée. La partie vérificatrice n’a même pas vu combien de tokens de test il me restait dans mon adresse.

Ma compréhension de Dusk s’arrêtait avant tout à l’idée d’« une blockchain orientée confidentialité ». J’avais même par défaut l’hypothèse que, comme d’autres chaînes anonymes, elle sacrifiait l’auditabilité pour préserver la confidentialité. J’ai passé presque deux heures à éplucher le code source Rust du modèle de transactions Phoenix : les yeux me piquaient à force de chercher, mais j’ai fini par comprendre que sa conception frappe vraiment là où ça fait mal.

Dusk ne propose pas un interrupteur binaire « tout public / tout anonyme ». Au contraire, au niveau de la couche de preuves zk-SNARKs, elle met en œuvre une conception de certificats cryptographiques vérifiables (VEP), en utilisant l’algorithme Plookup pour compresser la taille d’une preuve à moins de 1 Ko. D’autres chaînes ZK de confidentialité produisent pour des preuves similaires au moins 10 Ko, et la vérification prend des dizaines de secondes ; sur Dusk, la vérification on-chain ne demande que 2 millisecondes : pour prouver que les fonds proviennent d’un échange légitime, il suffit de générer une preuve ciblée pour cette seule opération de dépôt. Inutile d’exposer l’adresse complète, le solde total, ni d’autres historiques de transactions—et même pas besoin de dire à l’autre partie quelle est ton adresse de réception. De mon côté, la génération de la preuve m’a coûté seulement 0,0003 DUSK de Gas, moins cher qu’un transfert standard, et la partie vérificatrice peut valider la véracité directement via un contrat sur la chaîne, sans même devoir télécharger de captures d’écran. En consultant l’explorateur de blocs, on voit que dans cette transaction il n’y a que le hachage de la preuve : aucune donnée en clair à mi-parcours.

Avant, toutes les chaînes de confidentialité se heurtaient à l’impasse « soit on a de la confidentialité, soit on peut être conforme, mais pas les deux ». Avec cette conception, Dusk remet totalement le contrôle de la confidentialité entre les mains de l’utilisateur : quand il faut cacher les transactions, on ne trouve aucun texte en clair on-chain ; quand il faut produire une preuve de conformité, on ne montre à l’autre partie que l’information strictement nécessaire, sans divulguer la moindre confidentialité superflue.

Avez-vous déjà vécu une situation gênante où, pour faire une authentification on-chain, vous avez été forcé d’exposer l’intégralité de vos positions ? @Dusk