Qu'est-ce qu'une preuve de fraude ?
Le terme « fraude » est défini comme un comportement répréhensible commis dans le but d'obtenir un avantage illégal en privant la victime d'un droit. La fraude fiscale, la fraude à la carte de crédit, la fraude électronique et bien d’autres en sont autant d’exemples. Un comportement frauduleux peut être perpétré par une seule personne, un groupe de personnes ou une entreprise dans son ensemble.
Dans le monde de la blockchain, le terme preuve de fraude représente une méthode technique essentielle pour permettre l'évolutivité des blockchains en chaîne (par exemple, via le partitionnement ou des blocs plus grands) tout en garantissant que les données en chaîne sont disponibles et correctes. Les preuves de fraude utilisent des Optimistic Rollups (OR) qui remplissent deux fonctions : réduire les coûts et abaisser les niveaux de latence pour les applications décentralisées sur un réseau blockchain.
Pour récompenser les bonnes performances, un séquenceur nécessaire au traitement des salles d'opération doit fournir un travail infalsifiable. Les séquenceurs sont rémunérés financièrement pour l'exécution des cumuls conformément aux règles de consensus , et ils sont pénalisés financièrement s'ils les brisent en perdant leur preuve de fraude.
Les preuves de fraude par transition d’état fonctionnent bien, mais elles reposent sur l’hypothèse cruciale que toutes les données de bloc sont disponibles. Il est impossible d'établir qu'un mineur de bloc est incorrect s'il publie simplement l'en-tête du bloc sans le contenu correct .
De plus, même si 99 % des données sont accessibles, le 1 % restant peut être nécessaire pour établir la validité d'un bloc car nous exigeons une disponibilité complète des données. Il s'agit d'un besoin rigoureux de validation de bloc, car les données peuvent être inaccessibles pour diverses raisons, et pas seulement pour des nœuds malveillants. Rendre l’indisponibilité des données difficile pour un nœud malveillant est la bonne solution.
La mise à l’échelle des blockchains publiques nécessite l’utilisation de preuves de fraude et de codes d’effacement. Ils permettent aux nœuds légers de prendre leurs propres décisions quant aux blocs à rejeter sans avoir à s'appuyer sur une pluralité de nœuds complets dignes de confiance.
Même si de brèves preuves de connaissance nulle pouvaient être utilisées pour confirmer l'exactitude, un intrus/ escroc qui parvient à publier des blocs inaccessibles et à les inclure dans la chaîne reste un gros problème , car cela empêche tous les autres validateurs de calculer complètement l'état ou créer des blocs qui communiquent avec la partie de l'état qui n'est plus disponible.
Les preuves de fraude montrent qu'une transition d'état a été effectuée de manière incorrecte . L’avantage fondamental des preuves de fraude est qu’elles ne sont pas requises à chaque transition d’état, mais uniquement lorsque les choses tournent mal. En conséquence, ils utilisent moins de ressources informatiques et sont plus adaptés à un environnement contraint en termes d’évolutivité . L'interaction de ces protocoles constitue leur plus grand inconvénient : ils établissent un « dialogue » entre de nombreux participants. Un dialogue/interaction/communication nécessite la présence des parties , en particulier de la partie alléguant la fraude, et permet à d'autres parties de perturber la conversation de diverses manières.