Qu'est-ce que 0-conf ?
0-conf est une couche utilitaire existante de Bitcoin Cash qui permet d’accepter des transactions sans confirmation, facilitant ainsi les paiements et offrant une expérience pratique et instantanée.
Lorsqu’une personne utilise Bitcoin Cash pour payer un bien ou un service, en particulier en personne, il peut s’écouler jusqu’à dix minutes avant que la transaction ne soit incluse dans un bloc. C’est ce qu’on appelle la confirmation. Par exemple, une transaction incluse dans le dernier bloc généré a une confirmation. Celle qui a été incluse dans trois blocs précédents a trois commits.
Au fur et à mesure qu’une transaction obtient des confirmations, le risque qu’elle soit annulée diminue considérablement, ce qui amène certains services, tels que les échanges, à exiger un certain nombre de confirmations avant de créditer le solde.
Cependant, cela ne signifie pas que si quelqu’un paie pour un café, il doit attendre sur place que le paiement soit confirmé. 0-conf donne une plus grande assurance au commerçant que le paiement ne peut pas être annulé et qu’il sera inclus dans le bloc suivant.
En outre, le commerçant peut utiliser le BCH reçu instantanément (également en utilisant 0-conf), il n’a donc pas besoin d’attendre une confirmation avant de pouvoir l’utiliser. C’est comme de l’argent liquide, mais sous forme numérique.
Toutefois, il convient de noter qu’un commerçant peut décider de ne pas accepter les transactions sans confirmation, en fonction du type de produit ou de service offert. Il s’agit d’une démarche totalement volontaire.
Les utilisateurs, lorsqu’ils effectuent une transaction à l’aide d’un portefeuille, construisent une transaction et la signent avec les clés privées correspondant aux pièces de monnaie Bitcoin Cash qu’ils essaient de dépenser. Cette transaction est communiquée via Internet aux nœuds et aux mineurs qui assurent la sécurité du réseau. Les mineurs vérifient que la transaction est valide (conforme aux règles de consensus) et l’ajoutent au mempool, qui est l’espace mémoire où les transactions attendent d’être incluses dans un futur bloc.
Si un utilisateur malveillant, dans le but d’escroquer un commerçant, envoie une nouvelle transaction en dépensant les mêmes pièces, elle sera rejetée par la plupart des nœuds, qui sont configurés pour ne pas accepter les transactions qui tentent de dépenser des pièces non valides ou celles qui sont déjà incluses dans le mempool.
C’est pourquoi, étant donné que l’intérêt des mineurs honnêtes est d’inclure autant de transactions que possible dans la blockchain afin de percevoir les frais qu’ils paient, les nouvelles transactions sans confirmation seront très probablement incluses dans le prochain bloc trouvé.
Sécurité
La sécurité 0-conf est basée sur le système de sécurité de Bitcoin Cash et est largement utilisée par la grande majorité des outils de l’écosystème. Le fonctionnement est simple et ne nécessite aucune configuration de la part de l’utilisateur.
De plus, dans la mise à jour de mai 2021, un système de sécurité connu sous le nom de DSProofs a été inclus, qui permet de générer une preuve cryptographique de double dépense et de la propager à travers le réseau, ce qui facilite l’identification d’une tentative de double dépense d’une transaction frauduleuse.
D’autre part, la sécurité fournie par 0-conf est variable. Il est naturel de penser que pour un café ou un hamburger, un commerçant acceptant le Bitcoin Cash décidera de ne pas attendre de confirmation, acceptant les transactions dès que leur système de paiement les détecte. Une voiture ou une maison nécessitera des confirmations, mais il y a suffisamment de décalage pour que cela ne soit pas un problème.