Analyse de PRESENT avec peu de données



Documents pareils
Les fonctions de hachage, un domaine à la mode

Fonction de hachage et signatures électroniques

Journées MATHRICE "Dijon-Besançon" DIJON mars Projet MySafeKey Authentification par clé USB

IFT3245. Simulation et modèles

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

INF 4420: Sécurité Informatique Cryptographie II

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

Cryptographie. Master de cryptographie Architectures PKI. 23 mars Université Rennes 1

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

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

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

Architectures en couches pour applications web Rappel : Architecture en couches

ÉPREUVE COMMUNE DE TIPE Partie D

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

V- Manipulations de nombres en binaire

Chapitre 7. Récurrences

Mesure de Salinité Réalisation d'un conductimètre

Le format OpenPGP. Traduit par : Sébastien Person. personseb@yahoo.fr. Matthieu Hautreux. matthieu.hautreux@insa-rouen.fr.

Complexité. Licence Informatique - Semestre 2 - Algorithmique et Programmation

Chapitre V : La gestion de la mémoire. Hiérarchie de mémoires Objectifs Méthodes d'allocation Simulation de mémoire virtuelle Le mapping

Recherche dans un tableau

Étudiant : Nicolas Favre-Félix IFIPS Info 3. Les One Time Passwords, Mots de passe à usage unique

RapidMiner. Data Mining. 1 Introduction. 2 Prise en main. Master Maths Finances 2010/ Présentation. 1.2 Ressources

Vers l'ordinateur quantique

Sécurité de l'information

Sauvegarde collaborative entre pairs Ludovic Courtès LAAS-CNRS

Représentation d un entier en base b

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

Évaluation et optimisation de requêtes

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

Contexte. Pour cela, elles doivent être très compliquées, c est-à-dire elles doivent être très différentes des fonctions simples,

Sécurité des applications Retour d'expérience

LE PROBLEME DU PLUS COURT CHEMIN

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

Régression linéaire. Nicolas Turenne INRA

Systemes d'exploitation des ordinateurs

Génie logiciel (Un aperçu)

D31: Protocoles Cryptographiques

INF 232: Langages et Automates. Travaux Dirigés. Université Joseph Fourier, Université Grenoble 1 Licence Sciences et Technologies

Suivant les langages de programmation, modules plus avancés : modules imbriqués modules paramétrés par des modules (foncteurs)

Arithmétique binaire. Chapitre. 5.1 Notions Bit Mot

Qu est-ce qu une probabilité?

Développement itératif, évolutif et agile

Les opérations binaires

Oracles Cryptographiques. Trouver une joke de padding

Authentification de messages et mots de passe

TP 2 : Chiffrement par blocs

Système d énergie solaire et de gain énergétique

TECHNIQUES DE CRYPTOGRAPHIE

INF2015 Développement de logiciels dans un environnement Agile. Examen intra 20 février :30 à 20:30

GEA II Introduction aux probabilités Poly. de révision. Lionel Darondeau

6. Hachage. Accès aux données d'une table avec un temps constant Utilisation d'une fonction pour le calcul d'adresses

Exigences d aléa pour la sécurité

CHAPITRE VIII : Les circuits avec résistances ohmiques

Entreprises Citoyennes: Sécurité et Risques Industriels. Journées Annuelles du Pétrole. Christiane Muller, Air Liquide. Les Hydrocarbures de l extrême

Couples de variables aléatoires discrètes

UEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux.

Une introduction aux codes correcteurs quantiques

Définitions. Numéro à préciser. (Durée : )

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

LES NOMBRES DECIMAUX. I. Les programmes

Pourquoi l apprentissage?

WiFI Sécurité et nouvelles normes

Projet de traitement d'image - SI 381 reconstitution 3D d'intérieur à partir de photographies

A. Sécuriser les informations sensibles contre la disparition

Ordonnancement. N: nains de jardin. X: peinture extérieure. E: électricité T: toit. M: murs. F: fondations CHAPTER 1

La face cachée de la signature électronique

Calcul de développements de Puiseux et application au calcul du groupe de monodromie d'une courbe algébrique plane

Livre blanc. Sécuriser les échanges

0x700. Cryptologie Pearson France Techniques de hacking, 2e éd. Jon Erickson

Nombre de marches Nombre de facons de les monter

Protocoles d`authentification. Refik Molva et Yves Roudier. Institut EURECOM, BP 193 Sophia Antipolis Cedex - France

L'écoute des conversations VoIP

Sécurité des réseaux wifi. CREIX Kevin GIOVARESCO Julien

NO-BREAK KS. Système UPS dynamique PRÉSENTATION

Utilitaires méconnus de StrataFrame

Une protection antivirus pour des applications destinées aux dispositifs médicaux

Web : Stockage de mot de passe LOG619 Automne 2011 Olivier Bilodeau

TP 1 : 1 Calculs en binaire, octal et hexadécimal

Support Agile avec Kanban quelques trucs et astuces par Tomas Björkholm

Phase ERP : Usages et effets. Problématiques technique et organisationnelle de la phase d'exploitation de l'erp

Chapitre 2. Eléments pour comprendre un énoncé

Atelier C TIA Portal CTIA04 : Programmation des automates S7-300 Opérations numériques

Partie 7 : Gestion de la mémoire

MATHÉMATIQUES DISCRÈTES (4) CRYPTOGRAPHIE CLASSIQUE

1 Recherche en table par balayage

Manuel de configuration du Wi-Fi

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

7 ingrédients pour personnaliser l expérience client et booster votre chiffre d affaires en seulement 5 semaines

Diagramme de classes

Sommaire. Introduction Définition Historique Domaine d application.2. 4.Les Travaux réalisés sur les domaines d application.

Modes opératoires pour le chiffrement symétrique

TRUECRYPT SUR CLEF USB ( Par Sébastien Maisse 09/12/2007 )

inviu routes Installation et création d'un ENAiKOON ID

Mathématiques financières

Nouveau Barème W.B.F. de points de victoire 4 à 48 donnes

Cahier des charges. driver WIFI pour chipset Ralink RT2571W. sur hardware ARM7

CONCOURS D ENTREE A L ECOLE DE 2007 CONCOURS EXTERNE. Cinquième épreuve d admissibilité STATISTIQUE. (durée : cinq heures)

Transcription:

Analyse de PREENT avec peu de données (Un tour de plus dans les attaques meet-in-the-middle) María Naya-Plasencia 1, Bastien Vayssière 2 1:INRIA Rocquencourt 2:PRIM, Université de Versailles 12 octobre 2012

Plan 1 Contexte de cryptanalyse 2 Meet-in-the-middle classique 3 Notre amélioration : meet-in-the-middle à travers des boîtes 4 Application au chirement par blocs PREENT 5 Bilan et perspectives

Contexte de cryptanalyse Une chirement par bloc sur n bits, avec une clé k. On cherche à retrouver la clé. P P k E k E C C =? C Une attaque générique : la recherche exhaustive de clé Donnée : une paire clair-chiré (P, C) par la clé inconnue. Calcul des chirements de P par toutes les clés possibles. On garde celle(s) qui produisent C. On compare la complexité des attaques aux 2 k chirements de la recherche exhaustive.

Meet-in-the-middle classique sur un chirement itératif à r tours Principe : séparer les bits de clé en deux ensemble distincts, intervenant sur deux parties de l'algorithme. P k i k a k b sk 1 sk ra sk ra+1 sk r tour 1 tour r a tour r a + 1 tour r C La première fois en 1977, par Die et Hellmann, sur le DE appliqué en cascade avec 2 clés, puis en 1985 par Chaum et Evertse sur des versions réduites du DE. Variantes utilisées sur l'ae, KTANTAN, XTEA, etc. et sur des fonctions de hachage pour la recherche de préimage.

Meet-in-the-middle classique : complexité Complexité Temps : 2 k i (2 ka + 2 k b ) chirements partiels. Mémoire : k a 2 ka bits Rapport complexité en temps recherche exhaustive / MITM : 2 ka + k b 2 ka + 2 k b

Meet-in-the-middle avec correspondance partielle Calcul d'une partie v du chirement/déchirement au milieu. P ka sk 1 sk ra ki kb sk ra+1 sk r C Complexité On récupère la clé en : 2 k i (2 ka + 2 k b ) chirements partiels + 2 k v chirements de clés restantes, en moyenne.

Meet-in-the-middle à travers des boîtes Considérons un tour de chirement contenant des boîtes de taille m. sk i tour i Jusqu'ici : calcul d'une partie des bits au milieu Amélioration : calcul d'une partie de l'entrée et la sortie de

Meet-in-the-middle à travers des boîtes On calcule n in bits en entrée, n out bits en sortie d'une boîte. n in n out Recherche de transition possible Probabilité p qu'il existe une transition à travers avec les valeurs des bits calculés? Pour n in bits xés, il y a au plus 2 m n in valeurs distinctes des nout bits possibles. D'où : p 2m n in 1 = 2 nout 2 n in +nout m Pour éliminer des mauvaises clés, il sut d'avoir p < 1, c'est à dire : n in + n out > m

Meet-in-the-middle à travers des boîtes On fait le même raisonnement sur un sous-ensemble de l boîtes. Avec P, pour chaque valeur de (k a, k i ) on calcule N in bits en entrée parmi lm. Avec C, pour chaque valeur de (k b, k i ) on calcule N out bits en sortie. Probabilité du crible La probabilité qu'une transition soit possible au milieu est majorée par : 1 2 N in +Nout lm Pour éliminer des mauvaises clés, il sut d'avoir : N in + N out > lm

Meet-in-the-middle à travers des boîtes P sk1 k a sk ra k i k b sk ra+1 sk r C On applique le crible sur l boîtes d'un tour au milieu, à la place de la recherche de collisions. 2 On sélectionne en moyenne au plus k 2 N in +N out lm clés.

Meet-in-the-middle à travers des boîtes Complexité 2 k i (2 ka + 2 k b ) chirements partiels + en moyenne 2 k 2 N in +N out lm chirements (dans le pire cas de boîtes ) Ce qui change par rapport aux meet-in-the-middle précédents : 1 la "fusion" au milieu 2 1 1 sélection d'une fraction 2 N in +N out lm des clés au lieu de. 2 v Mais cela peut nous permettre de gagner un tour exemple d'application sur le chirement par blocs PREENT.

Le chirement par blocs PREENT : fonction de tour Chirement par blocs sur n = 64 bits, avec une clé de 80 ou 128 bits. Proposé par Bogdanov et al. en 2007. 64 bits sk i Figure: Représentation du tour i de PREENT-80 31 itérations d'un réseau de substitution-permutation, et un xor nal avec une sous-clé.

Le chirement par blocs PREENT : key scheduling 80 bits sk i >>> 19 i sk i+1 Figure: Représentation du tour i du key scheduling de PREENT-80 128 bits sk i sk i+1 <<< 61 i Figure: Représentation du tour i du key scheduling de PREENT-128

Le chirement par blocs PREENT : cryptanalyses tours taille de clé technique données auteurs 8 128 integral 2 24.3 [Reza Z'aba et al. 2008] 16 80 dierential 2 64 [Wang 2008] 17 128 related keys 2 63 [Özen et al. 2009] 18 80 multiple dierential 2 64 [Blondeau, Gérard 2011] 18 128 multiple dierential 2 64 [Blondeau, Gérard 2011] 19 128 algebraic dierential 2 62 [Albrecht, Cid 2009] 24 80 linear 2 63.5 [Ohkuma 2009] 24 80 statistical saturation 2 57 [Collard, tandaert 2010] 25 128 linear 2 64 [Nakahara et al. 2009] 26 80 multiple linear 2 64 [Cho 2010] Table: Complexité en données des cryptanalyses de versions réduites de PREENT ur PREENT-80, > 2 57 paires clair-chiré. ur PREENT-128, > 2 24.3 paires clair-chiré. Question Comme Bouillaguet, Derbez l'ont fait pour l'ae, on peut se demander : Avec peu de données, combien de tours de PREENT peut-on casser?

Correspondance à travers des boîtes de PREENT Appliquons l'amélioration du meet-in-the-middle sur PREENT. PREENT-80 et PREENT-128 comportent une couche de boîtes identiques de taille m = 4. x 0 1 2 3 4 5 6 7 8 9 A B C D E F [x] C 5 6 B 9 0 A D 3 E F 8 4 7 1 2 Table: Representation hexadécimale de la fonction non-linéaire de la boîte On va utiliser la probabilité d'une transition à travers entre : 3 bits de poids faibles en entrée 2 bits de poids faibles en sortie d'une boîte de PREENT. ur l boîtes on a N in + N out l m = 3l + 2l 4l = l, donc la probabilité qu'une transition soit possible est : p 1 2 l Le crible permet de sélectionner en moyenne p 2 k 2 80 l clés potentielles, dont la bonne.

Correspondance à travers des boîtes de PREENT x 3x 2x 1x 0 (x) 3(x) 2(x) 1(x) 0 0000 1100 0001 0101 0010 0110 0011 1011 0100 1001 0101 0000 0110 1010 0111 1101 1000 0011 1001 1110 1010 1111 1011 1000 1100 0100 1101 0111 1110 0001 1111 0010 x 2x 1x 0 y 1y 0 000 00 000 11 001 01 001 10 010 10 010 11 011 00 011 11 100 00 100 01 101 00 101 11 110 01 110 10 111 01 111 10 16 valeurs des bits x 2, x 1, x 0, y 1, y 0, parmi 32 au total, ont une transition possible par la boîte de PREENT

Correspondance à travers des boîtes de PREENT On calcule les mêmes 5 bits en entrée/sortie de l boîtes parmi les 16. 16 l transitions possibles tandis que l'espace des bits calculés est de taille (2 5 ) l. La probabilité qu'une transition soit possible au milieu est alors : p = 16l 2 5l = 1 2 l Pour ce choix de bits, la boîte de PREENT atteint la majoration générique donnée précédemment.

Application à PREENT-80 : description Calcul de 3 bits en sortie de 6 boîtes à partir du chiré de la paire donnée, et d'une partie des bits de clé testés. sbox perm 1 sk5 75 59 43 27 12 sbox 1 #5 perm 1 sk6 14 78 62 46 31 sbox 1 #6 perm 1 sk7 33 17 1 65 50 sbox 1 #7 perm 1 sk8 52 36 20 4 69 C

Application à PREENT-80 : description Calcul de 2 bits en entrée de 6 boîtes à partir du clair de la paire donnée, et d'une autre partie des bits de clé testés. sk1 P 63 47 31 15 79 63 47 31 0 16 sbox perm #1 sk2 18 2 66 50 35 sbox perm #2 sk3 37 21 6 69 54 sbox perm #3 sk4 56 40 24 8 73 #4 sbox

Application à PREENT : résultats Répartition des bits de clé : 65 bits communs, 6 bits pour la partie haute, 9 bits pour la partie basse. Complexité Mémoire : table de 2 9 valeurs de 6 2 = 12 bits < 2 13 bits. Temps : 2 65 (2 9 + 2 6 ) chirements partiels + en moyenne 2 74 chirements de 7 tours Au total : l'équivalent de moins de 2 75 chirements. Implémentation Implémentation de la partie essentielle de l'attaque en xant 48 bits communs et en retrouvant les 32 bits restants. On a obtenu autour de 2 75 48 = 2 27 chirements. Résultats cohérents avec les complexités données. Pour PREENT-128 Avec la même méthode, on a obtenu une attaque en 2 127 chirements sur 9 tours de PREENT-128, avec un crible sur la première boîte.

Application à PREENT : jusqu'où peut-on aller? nombre de tours longueur de clé paires chirements mémoire 7 80 2 2 75 2 9 9 128 2 2 127 2 3 Table: Complexité des attaques obtenues sur 7 et 9 tours Nombre de tours maximal? Il faut pouvoir partiellement chirer à partir de P / déchirer à partir de C jusqu'au milieu sans utiliser tous les bits de clé. 1 ans xer tous les bits de clé, pour combien de tours peut-on chirer/déchirer en choisissant tous les bits de toutes les sous-clés? 2 Une fois qu'il manque un bit de sous-clé, de combien de tours peut-on encore connaître des bits en sortie?

Application à PREENT : jusqu'où peut-on aller? Nombre de tours de chirements partiellement faisables malgré un bit de sous-clé inconnu : x a = 2 sk i 64 bits sk i+1

Application à PREENT : jusqu'où peut-on aller? Nombre de tours de déchirement partiellement faisables malgré un bit de sous-clé inconnu : x b = 2 sk i 64 bits sk i+1

Application à PREENT : jusqu'où peut-on aller? Une borne supérieure sur les sous-clé successives calculables sans tous les bits de clé : N 80 = 1. 80 bits sk i >>> 19 i sk i+1 On a donc une borne supérieure sur le nombre de tours sur PREENT-80 : 2N 80 + x a + x b + 1 = 2 + 2 + 2 + 1 = 7 On a atteint cette borne supérieure avec notre attaque.

Application à PREENT : jusqu'où peut-on aller? Une borne supérieure sur les sous-clé successives calculables sans tous les bits de clé : N 128 = 2. 128 bits sk i <<< 61 sk i+1 sk i+2 i <<< 61 i Borne supérieure sur le nombre de tours attaquable de PREENT-128 : 2N 128 + x a + x b + 1 = 2 2 + 2 + 2 + 1 = 9 On a atteint cette borne supérieure.

Application à PREENT : jusqu'où peut-on aller? On a atteint des bornes supérieures sur le nombre de tours de PREENT-80/128 attaquable avec un meet-in-the-middle, par notre amélioration. En la combinant avec la méthode des bicliques proposée par Khovratovitch, Rechberger, avelieva en 2011, on gagne encore encore un tour.

Bilan et perspectives Ce qu'on a fait Amélioration générique des meet-in-the-middle : "meet-through-an-box" Travail en cours, avec Anne Canteaut Que se passe-t-il lorsque le nombre de bits contrôlés est plus petit que la taille des entrées? Avec des boîtes non-bijectives? Autres exemples d'application?

Merci de votre attention!