!"#$ &'#"()* (avec Loïc Juniot) France Télécom Division R&D, site de Caen Séminaire Crypto'Puces, 15-18 avril 2007 research & development ! Déferlement annoncé des puces RFID (Radio-Frequency Identification) ! ! ! Authentification (symétrique) des puces à logique câblée ! ! ! À bas coût, à logique câblée (sans microprocesseur) Utilisation de base : fournir un identifiant " authentification ? Premiers algorithmes (propriétaires) par FT et Siemens : cartes téléphoniques prépayées (500 portes logiques) Quelques autres depuis (également propriétaires) Authentification asymétrique ! ! Réputée impossible Annonce de NTRU en 2003 (?) Cryptographie à clé publique et RFID/18 avril 2007/MG-LJ – p 2 research & development France Telecom Group ! Démontrer la faisabilité de la cryptographie à clé publique dans une puce RFID Spécifier l'algorithme adéquat ! Implémenter l'algorithme sur FPGA dans tous ses aspects (crypto, protocole de communication, commandes d'écriture/lecture….) " prototype immédiatement industrialisable ! ! Approches ! ! ! Spécifier un algorithme "sur mesure" : NTRU (mais sécurité mal connue) Spécifier un mode d'utilisation particulier d'un algorithme traditionnel et prouvé sûr (mais ce mode peut être contraignant) A-t-on vraiment le choix ? Cryptographie à clé publique et RFID/18 avril 2007/MG-LJ – p 3 research & development France Telecom Group ! Utilise le problème du logarithme discret ! ! ! GPS (Girault-Poupard-Stern) ! ! ! ! ! Mode à coupons Flexibilité Zero-knowledge, inspiré de Schnorr Années 90 (spécification en 91, preuve en 98) Permet de montrer qu'on connaît un logarithme discret dans "n'importe quel" groupe, même d'ordre inconnu (JoC, nov.2006) Norme ISO/IEC 9798-5 GPS optimisé ! Divers travaux de Girault, Lefranc, Stern Cryptographie à clé publique et RFID/18 avril 2007/MG-LJ – p 4 research & development France Telecom Group Réduction de la taille de la clé publique Compression du défi +#,(-.(# Choisir r ! [0, A-1] n composé Clé privée : s Clé publique : v = gs (mod n) /0#'1'.(# Engagement x X = h (gr (mod n)) Taille réduite Défi c Vérifier c ! [0, B-1] Calculer y = r - sc Réponse y Choix de c ! [0,B-1] Vérifier : y ![0,A+(B- 1)(S-1)-1] et h(gyvc) = x (mod n) Utilisation d'un générateur pseudo-aléatoire (+ graine) Cryptographie à clé publique et RFID/18 avril 2007/MG-LJ – p 5 Utilisation d'un défi de faible poids de Hamming research & development France Telecom Group R0 80 bits I 16 bits 22+34! J 16 bits 16 +1 3,39 MHz PRNG R0 (80 bits) I (16 bits) x 2 Clé secrète (160 bits) Certificat (560 bits) - identifiant - clé publique - signature ECDSA Aléa 16 bits Coupon (80 bits) x 10 Défi (32 bits) 847,5 KHz "Soustracteur" 16 1118 t out 106 KHz Cryptographie à clé publique et RFID/18 avril 2007/MG-LJ – p 6 5667 8'*9 research & development France Telecom Group ! durée totale d'une authentification : 188 ms ! temps de calcul et de transmission de la réponse par le module : 28,8 ms ! temps de calcul de la réponse par le module : 14,2 ms ! espace requis sur le composant : 6000 portes logiques dont 2600 portes pour le module cryptographique ! 0,05 mm² avec une techno 0,180 µm Cryptographie à clé publique et RFID/18 avril 2007/MG-LJ – p 7 research & development France Telecom Group Module sans-contact Intégrant un FPGA Cryptographie à clé publique et RFID/18 avril 2007/MG-LJ – p 8 Lecteur sans-contact research & development PC + logiciel France Telecom Group