L’enco-fondateur d’Ethereum Vitalik Buterin a publié le 28 juillet, sur son blog officiel, le deuxième volet d’une série d’articles sur l’obfuscation cryptographique, analysant l’architecture du protocole « Diamond iO ». Par rapport au temps de calcul « galactique » requis par les protocoles iO grand public, Diamond iO a réussi à réduire la complexité jusqu’au niveau « planétaire ». Vitalik estime qu’avec seulement quelques optimisations clés, certains cas d’usage spécifiques pourraient être déployés à grande échelle d’un point de vue commercial.
Percée d’architecture : le Diamond iO passe au niveau « planétaire »
(來源:Vitalik.eth)
Les technologies iO traditionnelles exécutent généralement des opérations de chiffrement homomorphe intégral (FHE) à l’intérieur d’un chiffrement par attributs avec chiffrement de type ABE (ABE), puis s’appuient sur une tour de protocoles empilés pour garantir que l’évaluateur ne pourra déchiffrer qu’après avoir exécuté correctement le calcul. Cette architecture entraîne une charge de calcul dévastatrice. Diamond iO résout ce problème grâce à deux modifications centrales du schéma ABE BGG+14 : l’introduction d’un tout nouveau mécanisme de déchiffrement FHE conditionnel, ainsi que d’un nouveau mécanisme de génération de codage des entrées, ce qui réduit fortement la puissance de calcul pour la ramener à un niveau globalement comparable à celui d’un chiffrement de fonctions (FE).
Dans le déroulement du protocole, l’évaluateur obtient des jetons auxiliaires, chiffre en FHE l’entrée cachée z, puis reçoit l’entrée publique sous forme de bits x et une clé de déchiffrement FHE pour un petit intervalle (s). Le protocole utilise astucieusement l’« opérateur de décalage à gauche par seaux (Bucket-wise left shift) » pour mettre à l’échelle les poids des bits et éviter l’explosion des erreurs. Enfin, il extrait le résultat via un « portillon d’anti-trap (Trapdoor) », lequel ne laisse passer que les opérations correspondant à la forme du circuit exécutée correctement.
Hypothèses de sécurité : prévention des attaques d’annulation par Evasive LWE et All-product LWE
La partie la plus controversée mais aussi la plus innovante de Diamond iO concerne son mécanisme de génération du codage d’entrée, qui s’appuie sur deux hypothèses cryptographiques relativement nouvelles : l’Evasive LWE proposé par Wee22 et l’All-product LWE propre à Diamond iO. Ces deux hypothèses empêchent efficacement l’évaluateur de divulguer des secrets via des méthodes telles que la soustraction, tout en évitant les « Zeroizing attacks » ayant déjà mis à plusieurs reprises à mal les premiers protocoles d’obfuscation.
Pour la sécurité, le protocole utilise la technique « PROM bootstrap » : on fait en sorte que l’entrée cachée z contienne de véritables secrets ainsi que des clés PRF aléatoires, puis on calcule une nouvelle fonction avec un décalage avant de traiter l’ensemble via un hachage XOR. Le protocole transforme ainsi l’obfuscation d’une fonctionnalité pseudo-aléatoire en une obfuscation compatible avec le protocole iO général.
Vitalik reconnaît que ces hypothèses sont relativement novatrices et comportent un certain risque ; à l’avenir, il faudra que la communauté cryptographique investisse davantage d’efforts pour mener des analyses et des validations de sécurité.
Axes d’optimisation à venir : PRF plus efficace, protocoles FHE avancés et optimisation via l’intégration STARK
Diamond iO fait face à des goulots d’étranglement en termes de performance, notamment : le coût d’évaluation BGG+ (le produit entre ABE et FHE), l’arbre Goldreich PRG dont la profondeur dépend fortement de la longueur de l’entrée pour l’usage interne du PRF, la nécessité de se limiter à des circuits de faible profondeur afin d’éviter l’accumulation des erreurs, ainsi que le besoin d’utiliser des paramètres de sécurité quasi-déterministes d’une grande taille. Les axes d’optimisation proposés par Vitalik sont les suivants :
· Remplacer l’arbre de Goldreich par un PRF plus efficace
· Utiliser un protocole FHE plus avancé (par exemple BGV/CKKS ou packed GSW)
· Fusionner davantage les couches ABE et FHE afin de réduire les coûts
· Procéder à une optimisation ciblée de « iO complet » (iO full program), spécifiquement en vue d’un couplage avec des preuves STARK
En conclusion de son article, Vitalik indique que la plus grande valeur de Diamond iO réside dans sa structure relativement simple et facile à analyser : les développeurs n’ont pas besoin de maîtriser toutes les constructions complexes des 20 dernières années pour comprendre le cœur du sujet. Il espère que cet article attirera davantage de chercheurs à s’investir dans l’analyse de sécurité et l’optimisation des performances.
Questions fréquentes
Que représente concrètement la complexité « planétaire » du Diamond iO ?
Dans l’article, Vitalik décrit le temps de calcul requis par les protocoles iO traditionnels comme « galactique (Galactic) », c’est-à-dire une quantité de calcul qui dure plus longtemps que la vie de l’univers ; Diamond iO réduit avec succès cette complexité au niveau « planétaire (Planetary) ». Bien que cela reste irréalisable avec les conditions matérielles actuelles, cela réduit déjà de manière significative la distance entre la théorie et la mise en pratique. Vitalik pense que, grâce à quelques optimisations clés, certains cas d’usage spécifiques pourraient être déployés commercialement.
Sur quelles deux nouvelles hypothèses cryptographiques le Diamond iO s’appuie-t-il, et quel problème résolvent-elles ?
Diamond iO repose sur Evasive LWE (proposé par Wee22) et All-product LWE (spécifique à Diamond iO). Ces hypothèses empêchent efficacement l’évaluateur de divulguer des secrets via des méthodes telles que la soustraction, tout en évitant les « Zeroizing attacks » qui avaient déjà plusieurs fois fait échouer les premiers protocoles d’obfuscation. Vitalik estime que ces hypothèses sont relativement nouvelles et nécessitent, à l’avenir, davantage d’analyses de sécurité de la part de la communauté cryptographique.
Quels sont actuellement les principaux goulots d’étranglement en termes de performance du Diamond iO ?
Les principaux goulots d’étranglement comprennent : le coût d’évaluation BGG+ (le produit entre ABE et FHE), l’arbre Goldreich PRG interne dont la profondeur dépend fortement de la longueur de l’entrée, la contrainte de n’autoriser que des circuits de faible profondeur pour éviter l’explosion des erreurs, ainsi que le besoin d’utiliser des paramètres de sécurité quasi-exponentiels de grande taille. Les orientations d’amélioration suggérées par Vitalik incluent un PRF plus efficace, des protocoles FHE avancés (comme BGV/CKKS) et la fusion des couches ABE et FHE.