PACE: Policy-Bound Multi-Party Authorization with State-Consistent Execution for Smart Contracts
Cet article introduit PACE, un cadre pour les contrats intelligents qui assure une autorisation multipartite cohérente avec l'état en liant les décisions collectives à des politiques actives et à des contextes d'exécution via un schéma de signature basé sur les réseaux à deux tours, garantissant ainsi la cohérence entre la politique, la décision, la requête et l'exécution tout en maintenant des coûts de vérification stables.
Article original sous licence CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). Ceci est une explication générée par l'IA de l'article ci-dessous. Elle n'a pas été rédigée ni approuvée par les auteurs. Pour une précision technique, consultez l'article original. Lire la clause de non-responsabilité complète
Dans le monde numérique des contrats intelligents, le code fait office de loi, exécutant automatiquement les accords lorsque certaines conditions sont remplies. Ces programmes gèrent souvent des actifs de grande valeur ou des permissions sensibles, exigeant des règles strictes sur qui peut faire quoi. Traditionnellement, une seule personne ou un simple mot de passe peut accorder l'accès, mais pour des décisions à enjeux élevés impliquant plusieurs organisations, un point d'approbation unique est souvent trop risqué. Au lieu de cela, un groupe de parties de confiance doit se mettre d'accord avant qu'une action ne puisse avoir lieu. Cela est connu sous le nom d'autorisation multipartite. Cependant, un fossé important existe entre le moment où un groupe accepte une requête et le moment où le contrat l'exécute réellement. Entre ces deux moments, les règles peuvent changer, la requête peut être modifiée, ou la permission peut être utilisée deux fois. Si le système ne verrouille pas étroitement l'accord à l'action spécifique et aux règles actuelles, une signature valide d'un groupe pourrait être détournée pour autoriser quelque chose qu'ils n'avaient jamais intentionné, ou pour exécuter une transaction après que les règles ont déjà changé.
Des chercheurs ont développé un nouveau cadre appelé PACE pour résoudre ce problème de connexions lâches dans l'autorisation numérique. L'équipe, dirigée par Yaowei Sun et ses collègues, a créé un système qui garantit que la permission accordée par un groupe d'autorités reste parfaitement liée à la requête spécifique, à l'ensemble actuel des règles et au moment exact de l'exécution. Imaginez un groupe de directeurs de banque signant un chèque ; avec PACE, la signature n'est pas seulement une marque d'approbation, mais un sceau numérique qui verrouille la signature sur le montant exact, la succursale bancaire spécifique et la date actuelle, empêchant quiconque de modifier les détails ou d'utiliser la signature un autre jour. Les chercheurs ont construit un prototype pour tester cette idée, simulant un scénario où plusieurs autorités doivent se mettre d'accord avant qu'un contrat intelligent n'effectue une opération protégée. Leur travail démontre qu'en liant l'approbation à une version de politique spécifique et à une session unique, ils peuvent empêcher les actions non autorisées même si les règles changent ou si un acteur malveillant tente de réutiliser une ancienne permission.
Le cœur du système PACE est un processus en trois étapes qui lie les personnes, les règles et l'action en une chaîne unique et incassable. Premièrement, le système établit une configuration liée à la politique. Cela signifie qu'avant qu'un groupe puisse donner sa permission, le système enregistre exactement quelles règles sont actives et quelles personnes spécifiques sont autorisées à signer. Si les règles changent plus tard, le système passe à une nouvelle « époque », ou version, et les anciennes signatures de la version précédente deviennent invalides. Cela empêche un groupe d'utiliser un ancien accord pour contourner de nouvelles restrictions. Deuxièmement, les autorités s'engagent dans une autorisation conjointe liée au contexte. Lorsqu'une requête arrive, chaque personne autorisée examine les détails exacts de la requête — le contrat spécifique à appeler, les données à envoyer et la limite de temps. Elles travaillent ensuite ensemble pour générer une pièce unique de preuve cryptographique. Cette preuve n'est pas seulement une collection de signatures individuelles ; c'est une preuve unifiée que l'ensemble du groupe a accepté cet ensemble précis de détails à ce moment précis. Le système utilise des techniques mathématiques avancées basées sur des structures de réseaux (lattices), qui sont conçues pour être sécurisées même contre les futurs ordinateurs quantiques, afin de créer cette preuve conjointe.
Enfin, le système effectue une exécution cohérente avec l'état. Lorsque la requête arrive au contrat intelligent, le contrat ne se contente pas de vérifier si la signature semble valide. Il effectue une série de vérifications strictes pour s'assurer que tout correspond. Il vérifie que les règles actives au moment de l'exécution sont les mêmes que les règles auxquelles le groupe a consenti. Il vérifie que la requête en cours d'exécution est identique à celle que le groupe a examinée. Il confirme que la permission n'a pas expiré et n'a pas été utilisée auparavant. Crucialement, le système lie la consommation de la permission à l'exécution de l'action en une étape atomique unique. Cela signifie que si l'action échoue pour une raison quelconque, la permission n'est pas consommée, et si la permission est utilisée, l'action doit réussir. Il n'y a pas d'écart où une permission pourrait être dépensée sans un résultat correspondant, ou où un résultat pourrait se produire sans que la permission ne soit correctement dépensée.
Pour tester l'efficacité de ce système, les chercheurs ont construit une simulation utilisant un processeur informatique standard et un ensemble spécifique de paramètres mathématiques conçus pour gérer jusqu'à trente-deux autorités différentes. Ils ont lancé des milliers de tests pour voir comment le système se comportait sous différentes conditions, telles que le changement du nombre de personnes dans le groupe ou la taille des données traitées. Les résultats ont montré que le système appliquait avec succès toutes les règles prévues. Lorsque les chercheurs ont tenté de tromper le système en soumettant une ancienne permission, en modifiant les détails de la requête ou en tentant d'utiliser une permission deux fois, le système a correctement rejeté la tentative. Les tests ont confirmé que les vérifications de cohérence de la politique, de liaison de la requête et de l'état d'autorisation fonctionnaient comme prévu. Dans les scénarios où l'action cible échouait, le système annulait correctement tout le processus, garantissant qu'aucun changement d'état partiel ne subsiste.
L'étude a également mesuré le coût de fonctionnement de ce système en termes de temps et de données. La partie la plus chronophage du processus était la signature collaborative et l'agrégation de la preuve, qui ont consommé la majeure partie du temps de calcul. À mesure que le nombre d'autorités augmentait, le temps requis pour générer la preuve conjointe augmentait, mais le temps requis pour que le contrat vérifie le résultat final restait relativement stable. Par exemple, avec trente-deux autorités, le processus de génération de la preuve conjointe prenait environ huit secondes, tandis que la vérification du côté du contrat prenait moins d'une seconde. La quantité de données qui devait être échangée entre les autorités augmentait également avec le nombre de participants, dépassant les cent mégaoctets pour un groupe de trente-deux, mais la pièce finale de preuve soumise au contrat restait de petite taille et de taille fixe. Cela suggère que bien que le système nécessite une coordination importante parmi le groupe, la charge sur l'étape d'exécution finale est gérable.
Les chercheurs ont également exploré la manière dont le système gère le processus mathématique d'« échantillonnage de rejet » (rejection sampling), qui est une méthode utilisée pour garantir la sécurité des signatures en écartant occasionnellement les tentatives qui ne répondent pas à des critères statistiques stricts. Ils ont constaté qu'en permettant quelques tentatives de réessai, le système pouvait achever le processus d'autorisation avec une probabilité très élevée. Même avec un grand groupe d'autorités, le système a pu accomplir la tâche avec succès dans presque tous les cas lorsqu'on lui accordait un nombre raisonnable de tentatives. Cela indique que le système est suffisamment robuste pour gérer l'imprévu mathématique occasionnel sans échouer à délivrer une autorisation valide. L'étude conclut que PACE fournit une base solide pour un contrôle multipartite sécurisé sur les contrats intelligents, comblant efficacement le fossé entre l'approbation et l'exécution. Bien que la version actuelle suppose une configuration de confiance et un type spécifique d'accord de groupe, les résultats montrent que l'idée centrale de lier la politique, la requête et l'état est une voie viable vers une gouvernance numérique plus sécurisée.
Noyé(e) sous les articles dans votre domaine ?
Recevez des digests quotidiens des articles les plus récents correspondant à vos mots-clés de recherche — avec des résumés techniques, dans votre langue.