Chiffrement complètement homomorphe Fully Homomorphic Encryption (FHE)



Documents pareils
Cryptographie Homomorphe

La cryptographie du futur

Problèmes arithmétiques issus de la cryptographie reposant sur les réseaux

Sécurisation du stockage de données sur le Cloud Michel Kheirallah

Cryptographie RSA. Introduction Opérations Attaques. Cryptographie RSA NGUYEN Tuong Lan - LIU Yi 1

Cryptographie. Cours 3/8 - Chiffrement asymétrique

Cryptologie. Algorithmes à clé publique. Jean-Marc Robert. Génie logiciel et des TI

Cryptographie et fonctions à sens unique

CRYPTOGRAPHIE. Signature électronique. E. Bresson. SGDN/DCSSI Laboratoire de cryptographie

Panorama de la cryptographie des courbes elliptiques

Gestion des certificats digitaux et méthodes alternatives de chiffrement

Royal Military Academy Brussels, BELGIUM Secure Information Storage in the Cloud

Sécuristation du Cloud

Les fonctions de hachage, un domaine à la mode

Sommaire Introduction Les bases de la cryptographie Introduction aux concepts d infrastructure à clés publiques Conclusions Références

Fonction de hachage et signatures électroniques

Cryptologie à clé publique

Annexe 8. Documents et URL de référence

Nouveaux résultats en cryptographie basée sur les codes correcteurs d erreurs

Nombres premiers. Comment reconnaître un nombre premier? Mais...

Les protocoles cryptographiques: sommes-nous bien protégés?

: protection de la vie privée dans le contexte des services mobiles sans contact

TIW4 : SÉCURITÉ DES SYSTÈMES D INFORMATION

Cryptographie à clé publique : Constructions et preuves de sécurité

Certificats X509 & Infrastructure de Gestion de Clés. Claude Gross CNRS/UREC

Cours 14. Crypto. 2004, Marc-André Léger

Certificats et infrastructures de gestion de clés

ÉPREUVE COMMUNE DE TIPE Partie D

Quelques tests de primalité

Introduction à l étude des Corps Finis

17/07/2013. Décisionnel dans le Nuage. Laboratoire ERIC. Section 1. Équipe d Accueil Décisionnel dans le Nuage.

Chapitre 7. Sécurité des réseaux. Services, attaques et mécanismes cryptographiques. Hdhili M.H. Cours Administration et sécurité des réseaux

CRYPTOGRAPHIE. Chiffrement par flot. E. Bresson. SGDN/DCSSI Laboratoire de cryptographie

Initiation au développement d'applications sécurisées...

Sécurité des systèmes d'informations et communicants dans le médical

EMV, S.E.T et 3D Secure

Petite introduction aux protocoles cryptographiques. Master d informatique M2

Factorisation d entiers (première partie)

Sécurité de l'information

Trouver un vecteur le plus court dans un réseau euclidien

Définition et diffusion de signatures sémantiques dans les systèmes pair-à-pair

Travail d intérêt personnel encadré : La cryptographie

Sécurité et sûreté des systèmes embarqués et mobiles

BONJOURGRID : VERSION ORIENTÉE DONNÉE & MAPREDUCE SÉCURISÉ

Gestion des clés. Génération des clés. Espaces de clés réduits. Mauvais choix de clés. Clefs aléatoires. Phrases mots de passe

INF 4420: Sécurité Informatique Cryptographie II

Géométrie des nombres et cryptanalyse de NTRU

Sécurité de protocoles cryptographiques fondés sur les codes correcteurs d erreurs

Qu est-ce qu un ordinateur quantique et à quoi pourrait-il servir?

Calculateur quantique: factorisation des entiers

Le partage de clés cryptographiques : Théorie et Pratique

Principe de symétrisation pour la construction d un test adaptatif

Les Protocoles de sécurité dans les réseaux WiFi. Ihsane MOUTAIB & Lamia ELOFIR FM05

Les risques liés à la signature numérique. Pascal Seeger Expert en cybercriminalité

ISFA INSTITUT DE SCIENCE FINANCIÈRE ET D ASSURANCES GRANDE ÉCOLE D ACTUARIAT ET DE GESTION DES RISQUES

Une introduction aux codes correcteurs quantiques

Cryptographie et Linux

TECHNIQUES DE CRYPTOGRAPHIE

Ludovic Mé http ://rennes.supelec.fr/rennes/si/equipe/lme/ Campus de Rennes Equipe SSIR

Représentation des Nombres

Instructions Mozilla Thunderbird Page 1

Théorie et Pratique de la Cryptanalyse à Clef Publique

Pascal Gachet Travail de diplôme Déploiement de solutions VPN : PKI Etude de cas

Protocole SSH-2.0. Tuan-Tu, TRAN. Janvier 2009

Le protocole sécurisé SSL

Accélérateurs logiciels et matériels pour l algèbre linéaire creuse sur les corps finis

Informatique. Les réponses doivent être données en cochant les cases sur la dernière feuille du sujet, intitulée feuille de réponse

Clouds/Big Inria. Frédéric Desprez Frederic.Desprez@inria.fr

TP 2 : Chiffrement par blocs

Cryptologie et physique quantique : Espoirs et menaces. Objectifs 2. distribué sous licence creative common détails sur

Cours Informatique 1. Monsieur SADOUNI Salheddine

Infrastructure à Clé Publique (PKI Public Key Infrastructure)

Organiser vos données - Big Data. Patrick Millart Senior Sales Consultant

Formation. Mastère Spécialisé en Sécurité des Systèmes Intégrés & Applications. Post-master s degree in Security of Integrated Systems & Applications

La stratégie Cloud de Microsoft

Du 03 au 07 Février 2014 Tunis (Tunisie)

Attaques Wi-Fi WPA. Séparer le bon grain de l ivraie dans le buzz ambiant. Cédric Blancher. sid@rstack.org Rstack Team

Sécurité des réseaux wi fi

FORMATION SUR «CRYPTOGRAPHIE APPLIQUEE

La sécurité des réseaux. 9e cours 2014 Louis Salvail

Traitement et communication de l information quantique

SEAhawk. CryptoMill FRENCH/ FRANCÉS/ FRANÇAIS

Module de confiance de plate-forme. Attaque; réparation; vérification

FORMATIONS

Richard MONTBEYRE Master 2 Professionnel Droit de l Internet Administration Entreprises. La banque en ligne et le protocole TLS : exemple

Gestion des Clés. Pr Belkhir Abdelkader. 10/04/2013 Pr BELKHIR Abdelkader

La révolution SaaS au service de la valorisation de la recherche

Un Consortium de Recherche Européen Expérimente de Nouvelles Solutions pour Assurer le Respect de la Vie Privée Numérique au Lycée et à l Université

Semestre HPC. Violaine Louvet. Institut Camille Jordan - CNRS louvet@math.univ-lyon1.fr. Labex MILyon, Printemps 2016

Rapport de certification

Plan de l exposé. La sécurité informatique. Motivation & risques. Quelques chiffres. Introduction. Un premier exemple. Chiffres à clé secrète

D31: Protocoles Cryptographiques

Développement décimal d un réel

La sécurité dans les grilles

MATHÉMATIQUES DISCRÈTES (4) CRYPTOGRAPHIE CLASSIQUE

De même, le périmètre P d un cercle de rayon 1 vaut P = 2π (par définition de π). Mais, on peut démontrer (difficilement!) que

Qualité et ERP CLOUD & SECURITY (HACKING) Alireza MOKHTARI. 9/12/2014 Cloud & Security

Transcription:

Réunion de rentrée du CLUSIR ISFA Chiffrement complètement homomorphe Fully Homomorphic Encryption (FHE) Fabien Laguillaumie 1 & Damien Stehlé 2 1 Professeur Univ Lyon 1/ISFA LIP 2 Professeur ENS de Lyon LIP mercredi 19 septembre 2011 1 / 22

AriC Équipe-projet INRIA du Laboratoire de l Informatique du Parallélisme (UMR CNRS - ENS de Lyon - UCB Lyon 1 - INRIA 5668) Florent de Dinechin, 25 membres 1 Vers la conception automatique d opérateurs et de fonctions 2 Nouvelles techniques mathématiques pour l approximation de fonctions 3 Algorithmique des réseaux euclidiens et applications 4 Méthodes numériques garanties 5 Algèbre linéaire complexity Nouvelles applications Calcul haute performance Cryptographie Traitement du signal automate design Linear Algebra use Arithmetic Operators + Elementary Functions Computing Cores Euclidean Lattices DSP Filters validate 2 / 22

Introduction Cryptographie = conception de protocoles sûrs confidentialité - authenticité - intégrité Cryptographie à clé publique : Concept : Diffie & Hellman 76 Le secret est secret une clé publique est disponible sk pk Premières réalisations : RSA 78 factorisation McEliece 78 décodage de codes aléatoires Elgamal 84 log discret dans (F q) Koblitz / Miller 85 log discret sur des courbes 3 / 22

Introduction Que signifie sûr? dépend des applications modèle de sécurité pour une primitive cryptographique preuve de sa sécurité prouver = réduire un problème difficile P à une attaque contre le schéma Π instance I of P A Π solution to I Exhiber des problèmes difficiles : problèmes NP difficiles (e g, réseaux euclidiens) problèmes arithmétiques : log discret, factorisation N = p q (record in January 2010 : 768 bits) 4 / 22

Introduction Public-Key Cryptography : Protocols e-cash e-voting anonymous access Cryptographic Primitives encryption signatures Algorithmics hardness of arithmetic problems efficient operations 5 / 22

Introduction Public-Key Cryptography : Protocols e-cash e-voting anonymous access Cryptographic Primitives encryption signatures Algorithmics hardness of arithmetic problems efficient operations be strong - be fast - be functional 5 / 22

Le chiffrement Définition informelle Alice KG Bob pk B sk B E m c c m D Génération du couple de clés (sk, pk) (Key Generation) Chiffrement d un message (Encryption) Déchiffrement d un chiffré (Decryption) 6 / 22

Le chiffrement : sécurité Intuitivement : il doit être impossible de déchiffrer un message chiffré sans la clé secrète En réalité, on veut plus : Un message chiffré ne donne pas un bit d information sur le clair sous-jacent 7 / 22

Le chiffrement : sécurité Intuitivement : il doit être impossible de déchiffrer un message chiffré sans la clé secrète En réalité, on veut plus : Un message chiffré ne donne pas un bit d information sur le clair sous-jacent même si un adversaire a un accès à une machine qui lui déchiffre les chiffrés de son choix 7 / 22

Le chiffrement : sécurité Intuitivement : il doit être impossible de déchiffrer un message chiffré sans la clé secrète En réalité, on veut plus : Un message chiffré ne donne pas un bit d information sur le clair sous-jacent même si un adversaire a un accès à une machine qui lui déchiffre les chiffrés de son choix Le niveau de sécurité maximale d un protocole de chiffrement est l indistinguabilité des chiffrés sous une attaque à chiffrés choisis 7 / 22

Chiffrement homomorphe 8 / 22

Chiffrement homomorphe Rivest, Adleman, Dertouzos 1978 : Can we do arbitrary computations on data while it remains encrypted, without ever decrypting it? ils proposent l exponentiation et la fonction RSA comme homomorphisme additif et multiplicatif : 9 / 22

Chiffrement homomorphe Rivest, Adleman, Dertouzos 1978 : Can we do arbitrary computations on data while it remains encrypted, without ever decrypting it? ils proposent l exponentiation et la fonction RSA comme homomorphisme additif et multiplicatif : g x g y = g x+y x e (mod N) y e (mod N) = (x y) e (mod N) 9 / 22

Chiffrement homomorphe (M, ) espace des messages, (C, ) espace des chiffrés Encrypt(m 1 ) Encrypt(m 2 ) = Encrypt(m 1 m 2 ) Elgamal (logarithme discret) Encrypt(m 1 ) Encrypt(m 2 ) = Encrypt(m 1 m 2 ) Paillier (factorisation) Encrypt(m 1 ) Encrypt(m 2 ) = Encrypt(m 1 + m 2 ) 10 / 22

Chiffrement homomorphe (M, ) espace des messages, (C, ) espace des chiffrés Encrypt(m 1 ) Encrypt(m 2 ) = Encrypt(m 1 m 2 ) Elgamal (logarithme discret) Encrypt(m 1 ) Encrypt(m 2 ) = Encrypt(m 1 m 2 ) Paillier (factorisation) Encrypt(m 1 ) Encrypt(m 2 ) = Encrypt(m 1 + m 2 ) Additions ou multiplications, mais pas les deux! 10 / 22

Chiffrement homomorphe Une longue histoire : Goldwasser and Micali (84), Benaloh (88), Naccache and Stern (98), or Okamoto and Uchiyama (98), Damgård and Jurik (01) Boneh, Goh and Nissim (BGN) (05) nombre arbitraire de + et une A quoi ça sert? chiffrement vérifiable, cherchable vote électronique interrogation anonyme de base de données enchères 11 / 22

Chiffrement homomorphe Exemple : Vote électronique Candidats : X, Y, Z Électeurs : V 1, V 2,,V n 12 / 22

Chiffrement homomorphe Exemple : Vote électronique Candidats : X, Y, Z Électeurs : V 1, V 2,,V n Candidats Électeurs X Y Z V 1 1 0 0 V 2 1 0 0 V 3 0 0 1 V n 0 1 0 Total Tot X Tot Y Tot Z 12 / 22

Chiffrement homomorphe Exemple : Vote électronique Candidats : X, Y, Z Électeurs : V 1, V 2,,V n Candidats Électeurs X Y Z V 1 C 1,X = Enc(1, pk A ) C 1,Y = Enc(0, pk A ) C 1,Z = Enc(0, pk A ) V 2 C 2,X = Enc(1, pk A ) C 2,Y = Enc(0, pk A ) C 2,Z = Enc(0, pk A ) V 3 C 3,X = Enc(0, pk A ) C 3,Y = Enc(0, pk A ) C 3,Z = Enc(1, pk A ) V n C n,x = Enc(0, pk A ) C n,y = Enc(1, pk A ) C n,z = Enc(0, pk A ) Total??? 12 / 22

Chiffrement homomorphe Exemple : Vote électronique Candidats : X, Y, Z Électeurs : V 1, V 2,,V n Candidats Électeurs X Y Z V 1 C 1,X = Enc(1, pk A ) C 1,Y = Enc(0, pk A ) C 1,Z = Enc(0, pk A ) V 2 C 2,X = Enc(1, pk A ) C 2,Y = Enc(0, pk A ) C 2,Z = Enc(0, pk A ) V 3 C 3,X = Enc(0, pk A ) C 3,Y = Enc(0, pk A ) C 3,Z = Enc(1, pk A ) V n C n,x = Enc(0, pk A ) C n,y = Enc(1, pk A ) C n,z = Enc(0, pk A ) Total??? Solution triviale : déchiffrer tous les votes et calculer les totaux 12 / 22

Chiffrement homomorphe Exemple : Vote électronique Candidats : X, Y, Z Électeurs : V 1, V 2,,V n Candidats Électeurs X Y Z V 1 C 1,X = Enc(1, pk A ) C 1,Y = Enc(0, pk A ) C 1,Z = Enc(0, pk A ) V 2 C 2,X = Enc(1, pk A ) C 2,Y = Enc(0, pk A ) C 2,Z = Enc(0, pk A ) V 3 C 3,X = Enc(0, pk A ) C 3,Y = Enc(0, pk A ) C 3,Z = Enc(1, pk A ) V n C n,x = Enc(0, pk A ) C n,y = Enc(1, pk A ) C n,z = Enc(0, pk A ) Total??? Utiliser un chiffrement homomorphe (Enc(m 1 ) Enc(m 2 ) = Enc(m 1 + m 2 )) : n i=1 C i,x = Enc(Tot X, pk A ) n i=1 C i,y = Enc(Tot Y, pk A ) n i=1 C i,z = Enc(Tot Z, pk A ) 12 / 22

Chiffrement homomorphe Exemple : Vote électronique Candidats : X, Y, Z Électeurs : V 1, V 2,,V n Candidats Électeurs X Y Z V 1 C 1,X = Enc(1, pk A ) C 1,Y = Enc(0, pk A ) C 1,Z = Enc(0, pk A ) V 2 C 2,X = Enc(1, pk A ) C 2,Y = Enc(0, pk A ) C 2,Z = Enc(0, pk A ) V 3 C 3,X = Enc(0, pk A ) C 3,Y = Enc(0, pk A ) C 3,Z = Enc(1, pk A ) V n C n,x = Enc(0, pk A ) C n,y = Enc(1, pk A ) C n,z = Enc(0, pk A ) Total??? Utiliser un chiffrement homomorphe (Enc(m 1 ) Enc(m 2 ) = Enc(m 1 + m 2 )) : n i=1 C i,x = Enc(Tot X, pk A ) n i=1 C i,y = Enc(Tot Y, pk A ) n i=1 C i,z = Enc(Tot Z, pk A ) 3 déchiffrements de l autorité A 12 / 22

Chiffrement homomorphe Exemple : Vote électronique Candidats : X, Y, Z Électeurs : V 1, V 2,,V n Candidats Électeurs X Y Z V 1 C 1,X = Enc(1, pk A ) C 1,Y = Enc(0, pk A ) C 1,Z = Enc(0, pk A ) V 2 C 2,X = Enc(1, pk A ) C 2,Y = Enc(0, pk A ) C 2,Z = Enc(0, pk A ) V 3 C 3,X = Enc(0, pk A ) C 3,Y = Enc(0, pk A ) C 3,Z = Enc(1, pk A ) V n C n,x = Enc(0, pk A ) C n,y = Enc(1, pk A ) C n,z = Enc(0, pk A ) Total??? exemple simplifié système de vote Helios (http://heliosvotingorg/) 12 / 22

Chiffrement complètement homomorphe 13 / 22

Chiffrement complètement homomorphe Craig Gentry (PhD Standford) - IBM Fully homomorphic encryption using ideal lattices Proc of STOC 2009, ACM, 169-178 (2009) 10 Emerging Technologies 2011 (Technology reviews) http://wwwtechnologyreviewcom/tr10/?year=2011 Forbes : An MIT Magic Trick : Computing On Encrypted Databases Without Ever Decrypting Them DARPA Will Spend $ 20 Million To Search For Crypto s Holy Grail Developments : Bristol, ENS de Lyon, IBM, Microsoft, MIT, Stanford, Toronto 14 / 22

Chiffrement complètement homomorphe Key Generation : KeyGen(k) (pk, evk, sk) Encryption : Encrypt(m, pk) c m {0, 1} Decryption : Decrypt(c, sk) m Homomorphic evaluation : Eval(f, c 1,, c l, evk) c f où f : {0, 1} l {0, 1} est représenté par un circuit arithmétique booléen (portes ET et OU) Un FHE doit être compact : la taille du chiffré après l évaluation homomorphe en dépend ni de l, ni de la complexité de f Sécurité : indistinguabilité des chiffrés contre des attaques à clairs choisis 15 / 22

Chiffrement complètement homomorphe Key Generation : KeyGen(k) (pk, evk, sk) Encryption : Encrypt(m, pk) c m {0, 1} Decryption : Decrypt(c, sk) m Homomorphic evaluation : Eval(f, c 1,, c l, evk) c f où f : {0, 1} l {0, 1} est représenté par un circuit arithmétique booléen (portes ET et OU) Un FHE doit être compact : la taille du chiffré après l évaluation homomorphe en dépend ni de l, ni de la complexité de f Sécurité : indistinguabilité des chiffrés contre des attaques à clairs choisis Théorème Un chiffrement homomorphe (malléable) ne peut pas atteindre le niveau de sécurité maximal (IND-CCA2) 15 / 22

Chiffrement complètement homomorphe On ne chiffre plus que les données : on chiffre les calculs! Circuit privacy : f n est pas connu du client Multi-hop homomorphism Applications : Private Information Retrieval somewhat HE suffisant un utilisateur veut obtenir l entrée n o i d une base de données sans révéler l indice i au propriétaire de la base de données Recherche dans des données chiffrées Calcul déporté vérifiable 16 / 22

Chiffrement complètement homomorphe La technique de Gentry : somewhat homomorphic encryption (SWHE) évalue une classe limitée de fonctions (polynômes de petits degrés) une méthode de boostrapping un SWHE qui peut évaluer sa propre fonction de déchiffrement peut être transformé en un schéma plus expressif bootstrappable HE + circular security FHE circular security = sûr même lorsque l attaquant connaît un chiffré de la clé secrète squashing the decryption circuit réduire la taille du circuit de déchiffrement 17 / 22

Chiffrement complètement homomorphe La sécurité des instantiations courantes repose sur la difficulté de problèmes du type pcgd approché : pq 1 + r 1 pq 2 + r 2 Étant donné retrouver p pq k + r k sac-à-dos recherche de vecteurs courts dans des réseaux 18 / 22

Chiffrement complètement homomorphe Somewhat homomorphic encryption à clé secrète KeyGen(ρ) : sk = p un grand premier evk = {x i = pq i + r i } 0 i γ q i entiers croissants et r i petits entiers Encrypt(m {0, 1}, sk) : c = pq + 2r + m Eval(evk, C, c 1,, c l ) c add = c 1 + c 2 (mod x 0 ) c mul = (((c 1 c 2 (mod x γ )) (mod x γ 1 )) (mod x 0 )) Decrypt(c, sk) m = (c (mod p)) (mod 2) 19 / 22

Chiffrement complètement homomorphe Le déchiffrement fonctionne à condition que le bruit 2r est suffisamment petit c 1 + c 2 = p(q 1 + q 2 ) + 2(r 1 + r 2 ) + (m 1 + m 2 ) c 1 c 2 = p(q 1 c 2 + q 2 c 1 pq 1 q 2 ) + 2(2r 1 r 2 + r 1 m 2 + r 2 m 1 ) + (m 1 m 2 ) réduire modulo x i permet de conserver une taille correcte pour le chiffré, sans augmenter trop le bruit Rothblum : somewhat HE à clé secrète somewhat HE à clé publique 20 / 22

Chiffrement complètement homomorphe Timings : Gentry-Halevy 2010 : 70Mo < pk < 23Go 30 secondes < boostrapping operation < 30 minutes Gentry-Halevi-Smart 2012 : évaluation homomorphe d AES-128 (sans bootstrapping) : 36 heures 256 Go de RAM Lauter-Naehrig-Vaikuntanathan (Microsoft) variante supportant 1 et beaucoup de + comparable à BGN 21 / 22

Chiffrement complètement homomorphe Problèmes ouverts : Implantations réalistes? Sélection des opérations homomorphes? Peut-on apprendre f (m 1,, m l )? Évaluer précisément les meilleures attaques contre les FHE Signatures? A-t-on vraiment besoin de FHE? Vice president of Software Research at IBM Charles Lickel described the technique as being similar to enabling a layperson to perform flawless neurosurgery while blindfolded, and without later remembering the episode 22 / 22