Délai de traitement des transactions et file d'attente au comptoir du magasin

Bonjour,

J’ai discuté avec un commerçant du coin de la G1.
Son problème est le suivant :

Sachant que les clients font la queue à son comptoir, il faut vérifier la transaction rapidement, c’est à dire en quelques secondes. Actuellement il faut entre 5 et 20 minutes pour valider une transaction. C’est tout simplement impossible pour son comptoir.

Je me demande donc s’il ne serait pas possible d’envisager que le commerçant ait un noeud membre et que les transactions vers son compte soient prioritairement traitées par son noeud. Le noeud pourrait ainsi être en mesure de calculer plusieurs blocs en même temps à condition que toutes les transactions incluses dans le calcul soient à destination du membre à qui appartient le noeud.

Discussion en lien avec : https://forum.duniter.fr/t/terminaux-de-paiement-pour-g1/895

De manière générale :

  • Du moment que la transaction apparait sur le réseau, le commerçant peut considérer quelle sera acceptée dans un bloc
  • Si il tombe sur quelqu’un de mal-intentionné, ça serait un attaquant qui tenterait de faire une double dépense.
  • Ce serait équivalent à quelqu’un lui donnerait un faux billets : pour des petits paiement, il ne scan pas tous les billets qu’il reçoit… Alors je pense qu’il peut se permettre la même chose pour un paiement Duniter.
  • Donc, de manière générale, du moment que la transaction est apparue, il peut considérer que c’est bon et laisser le client partir. Une fausse transaction n’apparaitrait même pas dans les piscines du réseau
  • Enfin, si il veut vraiment se protéger, il peut toujours faire une facture pour s’assurer que le paiement pourra être réclamé plus tard
3 « J'aime »

D’ailleurs, le terminal pourrait rapidement constater qu’il existe des transactions du même auteur en attente sur le réseau. Le terminal peut alors refuser le paiement pour « protection contre la double dépense ». Cette protection peut être plus souple si le terminal est capable de vérifier aussi les sources consommées, autorisant alors plusieurs transaction en attente sans refuser le paiement tant qu’il ne constate pas de tentative de double-dépense.

À noter qu’il faut en moyenne de 2 à 10 minutes (estimation personnelle après observations) pour voir une transaction inscrite en blockchain. Ça peut prendre beaucoup plus de temps, c’est vrai, mais déjà c’est suffisant pour énormément de cas.

@jardin a noter également qu’il y a aussi les https://lightning.network/ que le protocole duniter permet potentiellement de développer :slight_smile: