V2S: refund transactions fees between members

Attention les frais fixes de 0.001 Ğ1 sont une béquille temporaire pour la ĞDev mais pas du tout utilisables en production.

Il vous faut finir l’étalonnage des poids que j’avais commencer puis implémenter dans la configuration de la pallet transaction-payment une formule pour déterminer les frais à partir de cesr 2 paramètres:

  • Poid de l’extrinsic en temps d’exécution benchmarké
  • Taille de l’extrinsic en octets

Cette formule est le seul rempart contre le spam en temps d’exécution ou en taille, car chaque bloc est limité dans les 2 grandeurs (2secondes et 5Mo).

La formule ne doit pas être purement linéaire, du moins plus au delà d’un certain seuil, pour prévenir les attaques avec grosses transactions.

Les frais peuvent être remboursés à la fin de l’exécution du call en retournant Pays::No si et seulement si certaines conditions sont réunies, mais l’utilisateur doit quand même avoir le solde nécessaire pour soumettre la transaction.
Et les conditions de remboursement doivent définir leurs propres limites sinon c’est open bar pour spammer.

2 Likes