Schémas de calcul inconscient multi-précision
Published in UQAM, 2024
Contexte
Un schéma de chiffrement homomorphe (HE) permet de calculer une fonction (ou un circuit) arbitraire sur des données chiffrées de telle manière à ce que l’entité effectuant le calcul (ex : un fournisseur de ressources de calcul) n’apprenne aucune information sur les données d’entrée ou même la sortie du calcul. De pure vue de l’esprit pendant une trentaine d’années, le HE est devenu ces dernières années, en partie notamment aux avancées concernant le calcul sur les réseaux Euclidiens, un outil utilisable en pratique [2], même si sa performance en termes de temps de calcul n’est pas encore satisfaisante pour permettre un déploiement à très large échelle. En particulier, des schémas de chiffrement partiellement homomorphe, dont le nombre d’opération dans le monde des chiffrés est paramétré, ont permis des avancées notables dans le monde des technologies d’amélioration du respect de la vie privée [1].
Poussé par le succès du chiffrement homomorphe, la cryptographie basée sur les réseaux a fait récemment de grande avancées, tant en terme de nouveaux schémas de chiffrement partiellement ou complètement homomorphe, qu’au niveau de applicabilité et son efficacité. On dispose par exemple maintenant de schémas dédiés aux données encodées en binaire (ex : TFHE [8] qui est complète- ment homomorphe et permet donc de construire des circuits booléens arbitraires) ou aux calculs en virgule fixe (ex : CKKS [6] qui permet de contrôler le débordement du bruit du aux opérations homomorphes). Il s’agit toutefois d’outils encore complexes à utiliser, maîtriser et paramétrer. De plus, comme il s’agit d’un sujet très actif la cryptographie continue d’avancer en direction de schémas de chiffrement plus efficaces et compacts [9]. Par exemple, [7] ont proposé une solution efficace pour comparer des nombres chiffrés avec le schéma CKKS alors qu’auparavant, les constructions efficaces de comparaison (<,>,min, max) se basaient sur une représentation binaire des nombres et des circuits d’évaluation booléens et avaient en conséquence un coût important, tant en espace qu’en temps de calcul. Ces nouveaux résultats ouvrent de nouvelles perspectives très prometteuses pour calculer un argmax de façon privée par exemple.
Le chiffrement homomorphe protège les données mais n’assure aucunement la confidentialité des fonctions. Hors, la confidentialité des fonctions est essentielle à la conception d’un schéma de calcul décentralisé entièrement confidentiel. En effet, dans plusieurs domaines, la connaissance de la fonction calculée est suffisante pour recueillir des informations sur l’organisation. Par exemple, la connaissance du type de tests effectués quotidiennement par un hôpital peut suffire à déduire la maladie de certains patients, en particulier si ces patients souffrent d’une maladie chronique avec des examens réguliers.
L’inconscience des calculs vise à résoudre ce problème en cachant à la fois la fonction et son entrée à la partie calculante. Toutes les techniques actuelles le font en utilisant un schéma qui traite la fonction à calculer comme une autre partie de l’entrée. Les deux approches actuelles sont les circuits universels et les machines de Turing inconscientes (Oblivious Turing Machines ou OTM). D’un côté, les conceptions de circuits universels se rapprochent de leur limite théorique en termes de complexité. De l’autre, les machines de Turing inconscientes sont une nouvelle primitive avec de nombreuses pistes à explorer, mais étant basées sur les machines de Turing, elles présentent l’inconvénient d’être un modèle de calcul obsolète, malgré de grandes garanties de fonctionnalité universelle dues à leur lien direct avec les machines de Turing. Ainsi, la conception de nouvelles primitives de calcul inconscient est indispensable pour garantir la confidentialité des données et des personnes derrière ces données.
Par ailleurs, les schémas de chiffrement homomorphe sont souvent limités par la taille maximale des nombres chiffrés, ce qui restreint l’éventail de valeurs de données représentables et complique la prise en charge de calculs complexes. Cette limitation peut impacter la polyvalence du schéma, en particulier dans les applications nécessitant une précision numérique plus élevée ou une gamme plus large d’opérations arithmétiques. Pour contourner ces contraintes, de grands textes clairs peuvent être répartis sur plusieurs textes chiffrés, en encodant des portions de données séparément. Cette approche permet de représenter des valeurs plus grandes ou plus complexes, mais calculer directement dans cette représentation nécessite des techniques spécialisées. Les opérations entre plusieurs textes chiffrés doivent être soigneusement coordonnées pour garantir la cohérence des composants encodés. De plus, ces techniques doivent gérer les dépendances inter-chiffrés, garantissant que les données encodées restent exactes à chaque étape du calcul.
L’extension de l’espace des textes clairs avec l’inconscience présentent plusieurs défis, mais la conception de schémas combinant ces deux fonctionnalités est une étape essentielle pour une adoption plus large des schémas inconscient et de meilleures garanties de confidentialité.
Objectifs de la Maitrise
Adapter des schémas de calcul inconscient avec des représentations des nombres en plusieurs chiffrés pour leur permettre de calculer n’importe quelle fonction inconsciemment par l’accès à un catalogue public de fonctions.
Contact
Me contacter (killijian.marc-olivier.2@uqam.ca) par courriel pour discuter de ce sujet et de vos intérêts.