Introduction

Des éléments d’introduction supplémentaires sur le chiffrement homomorphe peuvent être trouvés sur la page Wikipedia du chiffrement homomorphe.

Bases du chiffrement homomorphe

Le chiffrement totalement homomorphe, ou simplement chiffrement homomorphe, fait référence à une classe de méthodes de chiffrement envisagées par Rivest, Adleman et Dertouzos dès 1978, et construites pour la première fois par Craig Gentry en 2009. Le chiffrement homomorphe diffère des méthodes de chiffrement classiques en ce qu’il permet d’effectuer des calculs directement sur les données chiffrées sans avoir besoin d’accéder à une clé secrète. Le résultat d’un tel calcul reste sous forme cryptée et peut, à un moment ultérieur, être révélé par le propriétaire de la clé secrète.

applications

Le cloud computing et le stockage en nuage bon marché ont fondamentalement changé la façon dont les entreprises et les particuliers utilisent et gèrent leurs données. Les méthodes de chiffrement traditionnelles, telles que l’AES, sont extrêmement rapides et permettent de stocker commodément les données sous forme chiffrée. Cependant, pour effectuer des analyses, même simples, sur les données cryptées, soit le serveur en nuage doit avoir accès à la clé secrète, ce qui pose des problèmes de sécurité, soit le propriétaire des données doit télécharger, décrypter et exploiter les données localement, ce qui peut être coûteux et créer un défi logistique. Le cryptage homomorphique peut être utilisé pour simplifier considérablement ce scénario, car le nuage peut directement opérer sur les données cryptées et ne renvoyer que le résultat crypté au propriétaire des données. Des scénarios d’application plus complexes peuvent impliquer plusieurs parties avec des données privées sur lesquelles un tiers peut opérer, et renvoyer le résultat à un ou plusieurs des participants pour qu’il soit décrypté.

Le concours annuel iDASH met au défi la communauté des chercheurs de repousser les limites et d’étendre le cryptage homomorphe à de nouveaux cas d’utilisation dans le domaine de la confidentialité du génome.

Sécurité

La sécurité des schémas de cryptage homomorphes les plus pratiques est basée sur le problème de l’apprentissage en anneau avec erreurs (RLWE), qui est un problème mathématique difficile lié aux treillis de haute dimension. En d’autres termes, l’hypothèse de sécurité de ces systèmes de cryptage stipule que si le système peut être cassé efficacement, alors le problème RLWE peut être résolu efficacement. Une longue série de recherches évaluées par des pairs confirmant la dureté du problème RLWE nous donne confiance dans le fait que ces schémas sont en effet au moins aussi sûrs que n’importe quel schéma de cryptage standardisé.

Comme cela a été mentionné ci-dessus, le problème RLWE est étroitement lié aux célèbres problèmes de treillis durs qui sont actuellement considérés comme sûrs contre les ordinateurs quantiques. De même, RLWE et, par la suite, la plupart des schémas de cryptage homomorphes sont considérés comme sûrs face aux ordinateurs quantiques, ce qui les rend en fait plus sûrs que les systèmes basés sur la factorisation et le logarithme discret tels que RSA et de nombreuses formes de cryptographie à courbe elliptique. En fait, le projet de normalisation de la cryptographie post-quantique organisé par le NIST avait plusieurs soumissions basées sur des problèmes de treillis durs similaires à ce que le cryptage homomorphique moderne utilise.

standardisation

Il y a plusieurs raisons pour lesquelles nous pensons que c’est le bon moment pour normaliser le cryptage homomorphique.

  • Il y a déjà un besoin criant de technologie de calcul sécurisée facilement disponible, et ce besoin sera de plus en plus fort à mesure que de plus en plus d’entreprises et de particuliers passent au stockage et à l’informatique en nuage. Le cryptage homomorphique est déjà mûr pour une utilisation grand public, mais le manque actuel de normalisation rend difficile de commencer à l’utiliser.
  • Spécifiquement, les implémentations actuelles ne sont pas assez faciles à utiliser par des non-experts. La norme poussera à uniformiser et simplifier leur API, et à éduquer les développeurs d’applications sur leur utilisation.
  • Les propriétés de sécurité des schémas de chiffrement homomorphes basés sur RLWE peuvent être difficiles à comprendre. La norme présentera les propriétés de sécurité du ou des schémas normalisés sous une forme claire et compréhensible.

Disponibilité

Plusieurs implémentations open-source de schémas de chiffrement homomorphes existent aujourd’hui. La liste ci-dessous est incomplète. Si vous souhaitez que votre implémentation soit ajoutée, veuillez nous contacter à l’adresse [email protected].

  • Microsoft SEAL : une bibliothèque open source largement utilisée de Microsoft qui supporte les schémas BFV et CKKS.
  • PALISADE : Une bibliothèque open source largement utilisée d’un consortium d’entrepreneurs de la défense financés par le DARPA qui supporte plusieurs schémas de chiffrement homomorphes tels que BGV, BFV, CKKS, TFHE et FHEW, entre autres, avec un support multipartite.
  • HELib : Une bibliothèque ancienne et largement utilisée d’IBM qui supporte le schéma CKKS et BGV et le bootstrapping.
  • FHEW / TFHE : supporte le schéma TFHE. TFHE est conçu à partir de FHEW, qui n’est plus activement développé.
  • HeaAn : Cette bibliothèque met en œuvre le schéma CKKS avec un support natif pour l’arithmétique approximative en virgule fixe.
  • Λ ○ λ (prononcé « L O L ») : Il s’agit d’une bibliothèque Haskell pour la cryptographie en treillis basée sur l’anneau qui supporte le FHE.
  • NFLlib : Cette bibliothèque est une excroissance du projet européen HEAT pour explorer le cryptage homomorphique à haute performance en utilisant des primitives de processeur de bas niveau.
    • HEAT : Cette bibliothèque se concentre sur une API qui fait le pont entre FV-NFLib et HeLIB.
    • HEAT : Une implémentation d’accélérateur HW pour FV-NFLlib.
  • cuHE : Cette bibliothèque explore l’utilisation des GPGPU pour accélérer le chiffrement homomorphique.
  • Lattigo : C’est une bibliothèque cryptographique basée sur le treillis écrite en Go.
  • Concrete : Cette bibliothèque supporte une variante personnalisée du schéma TFHE.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.