Conception, preuves et analyse de fonctions de hachage cryptographiques

Introduction ร  la cryptologie

Un peu dโ€™histoire

La cryptologie est un domaine de recherche scientifique qui tire ses origines des techniques mises en ล“uvre pour protรฉger la confidentialitรฉ des communications militaires. Pour rendre un message inintelligible pour lโ€™ennemi, son รฉmetteur lui applique une transformation appelรฉe chiffrement. Lors de la rรฉception du message, le destinataire applique lโ€™opรฉration inverse, appelรฉe dรฉchiffrement. On parle de dรฉcryptement lorsquโ€™un attaquant parvient ร  retrouver le message clair (cโ€™est-ร -dire le message avant lโ€™opรฉration de chiffrement) ร  partir du chiffrรฉ. De telles techniques ont vu le jour dรจs lโ€™antiquitรฉ, comme par exemple la scytale utilisรฉe par les Spartiates dรจs le cinquiรจme siรจcle avant Jรฉsus-Christ, ou le chiffrement de Cรฉsar. Dโ€™abord trรจs rudimentaires, les mรฉcanismes cryptologiques se sont progressivement complexifiรฉs et rรฉpandus dans le domaine militaire. De ce fait, le caractรจre secret des mรฉcanismes employรฉs est devenu de plus en plus difficile ร  garantir. En 1883, Auguste Kerckhoffs รฉnonce un principe fondateur de la cryptologie moderne : les mรฉcanismes de chiffrement et de dรฉchiffrement doivent pouvoir รชtre rendus publics, la confidentialitรฉ des messages doit รชtre garantie uniquement par le secret dโ€™une clรฉ. Lors des deux guerres mondiales, la cryptographie a รฉtรฉ beaucoup utilisรฉe et la capacitรฉ ร  dรฉcrypter les communications ennemies a jouรฉ un grand rรดle dans lโ€™issue de ces conflits. Dans la deuxiรจme moitiรฉ du vingtiรจme siรจcle, avec lโ€™essor de lโ€™informatique et des tรฉlรฉcommunications, la cryptologie a trouvรฉ des applications dans le domaine civil et est devenue un domaine de recherche acadรฉmique ร  part entiรจre. Elle permet de protรฉger des transactions bancaires, des communications tรฉlรฉphoniques, de stocker des donnรฉes de maniรจre sรฉcurisรฉe, ou encore dโ€™authentifier les utilisateurs dโ€™un systรจme informatique. Si la signification รฉtymologique de cryptologie est science du secret, les problรฉmatiques traitรฉes par ce domaine vont aujourdโ€™hui bien au-delร  de la confidentialitรฉ des communications. Dans le domaine de la cryptologie, on distingue la cryptographie, qui correspond ร  la conception de mรฉcanismes cryptologiques, de la cryptanalyse, qui correspond ร  lโ€™analyse de leur sรฉcuritรฉ. Cette branche contient en particulier les attaques contre les mรฉcanismes cryptographiques. Une autre distinction sโ€™opรจre entre cryptographie symรฉtrique et cryptographie asymรฉtrique, que nous allons maintenant expliciter.

La cryptographie symรฉtrique

La cryptographie symรฉtrique, aussi appelรฉe cryptographie ร  clรฉ secrรจte, regroupe des mรฉcanismes reposant sur la connaissance dโ€™une clรฉ secrรจte par deux personnes ou entitรฉs. Il sโ€™agit de la branche la plus ancienne de la cryptographie. En effet, les systรจmes cryptographiques historiques mettent en ล“uvre une mรชme clรฉ pour les opรฉrations de chiffrement et de dรฉchiffrement. La cryptographie ร  clรฉ secrรจte remplit diffรฉrentes fonctionnalitรฉs, dont les suivantes.

Chiffrement symรฉtrique. Le chiffrement symรฉtrique permet de protรฉger la confidentialitรฉ dโ€™une donnรฉe en la chiffrant avec une clรฉ K. Un mรฉcanisme de dรฉchiffrement utilisant la mรชme clรฉ K permet ร  quiconque la possรจde de retrouver la donnรฉe ร  partir du chiffrรฉ.

Intรฉgritรฉ dโ€™une donnรฉe. Pour certaines applications, lโ€™intรฉgritรฉ dโ€™une donnรฉe, cโ€™est-ร -dire le fait quโ€™elle nโ€™ait pas รฉtรฉ modifiรฉe aprรจs sa crรฉation, est au moins aussi importante que sa confidentialitรฉ. Par exemple, lors dโ€™une transaction bancaire, il est indispensable que la somme dโ€™argent mise en jeu ne soit pas modifiรฉe. Certains mรฉcanismes de la cryptographie ร  clรฉ secrรจte permettent de garantir cette propriรฉtรฉ. Ces mรฉcanismes consistent ร  adjoindre ร  la donnรฉe M ร  protรฉger un code dโ€™authentification de message ou MAC (pour Message Authentication Code), qui dรฉpend de M et dโ€™une clรฉ secrรจte K. La connaissance de M et K permet la vรฉrification du motif dโ€™intรฉgritรฉ. La validitรฉ dโ€™un MAC garantit ร  la fois lโ€™intรฉgritรฉ du message (il nโ€™a pas รฉtรฉ modifiรฉ aprรจs le calcul du MAC) et une forme dโ€™authenticitรฉ appelรฉe authenticitรฉ de message (leMAC a รฉtรฉ calculรฉ par un dรฉtenteur de K).

Authentification dโ€™une entitรฉ. Certains mรฉcanismes permettant ร  un utilisateur dโ€™un systรจme dโ€™information de sโ€™authentifier reposent sur la connaissance commune dโ€™une clรฉ secrรจte K et sur lโ€™emploi de primitives de la cryptographie symรฉtrique.

La cryptographie asymรฉtriqueย 

La cryptographie asymรฉtrique repose sur une idรฉe exposรฉe par Diffie et Hellman en 1976 dans [DH76] : le chiffrement et le dรฉchiffrement sont deux opรฉrations fonctionnellement diffรฉrentes. Il nโ€™y a donc aucune nรฉcessitรฉ pour que les clรฉs servant au chiffrement et au dรฉchiffrement soient les mรชmes. Dรจs lors que lโ€™on utilise deux clรฉs diffรฉrentes pour le chiffrement et pour le dรฉchiffrement et que la clรฉ de dรฉchiffrement ne peut pas รชtre dรฉduite de la clรฉ de chiffrement, cette derniรจre peut รชtre publique. De ce fait, la cryptographie asymรฉtrique est รฉgalement appelรฉe cryptographie ร  clรฉ publique. La clรฉ de dรฉchiffrement (ou clรฉ privรฉe) nโ€™est connue que du destinataire. Ce dernier est lโ€™unique dรฉtenteur de la clรฉ privรฉe. Diffรฉrentes fonctions de sรฉcuritรฉ peuvent รชtre obtenues en utilisant des outils asymรฉtriques.

ร‰change de clรฉs. Lโ€™application dรฉcouverte par Diffie et Hellman dans leur article รฉtait un mรฉcanisme dโ€™รฉchange de clรฉ secrรจte. En effet, un des problรจmes posรฉs par la cryptographie symรฉtrique rรฉside dans lโ€™รฉtablissement de clรฉs partagรฉes entre deux entitรฉs. Le protocole dโ€™รฉchange de clรฉs de Diffie et Hellman est encore le plus utilisรฉ aujourdโ€™hui.

Chiffrement asymรฉtrique et chiffrement hybride. La dรฉcouverte dโ€™outils mathรฉmatiques ouvrant la voie ร  des applications concrรจtes de lโ€™idรฉe de Diffie et Hellman est arrivรฉe un peu plus tard. En 1978, Rivest, Shamir et Adleman ont inventรฉ lโ€™algorithme RSA [RSA78]. Dโ€™autres algorithmes ont suivi, comme celui dโ€™ElGamal [Gam84]. Pour des raisons de dรฉbit, le chiffrement ร  clรฉ publique nโ€™est gรฉnรฉralement pas utilisรฉ pour chiffrer directement des donnรฉes. On utilise plutรดt de telles primitives pour chiffrer des clรฉs symรฉtriques tirรฉes alรฉatoirement. Ces clรฉs servent ensuite au chiffrement de donnรฉes ร  lโ€™aide dโ€™un algorithme de chiffrement symรฉtrique. On parle alors de chiffrement hybride.

Signature รฉlectronique. Comme la signature manuscrite, la signature รฉlectronique permet de lier un document ร  un signataire. Dans les deux cas, les signatures peuvent รชtre vรฉrifiรฉes publiquement. Les schรฉmas de signature รฉlectronique sont donc fondamentalement asymรฉtriques : la clรฉ privรฉe du signataire intervient dans lโ€™algorithme de signature, et la clรฉ publique correspondante sert ร  la vรฉrification. La primitive RSA peut รฉgalement รชtre utilisรฉe pour des applications de signatures, notamment en utilisant le format RSA-PSS [RSA02]. Dโ€™autres normes telles que DSA [NIS09] ou sa variante utilisant des courbes elliptiques ECDSA, dรฉcrite dans le mรชme document, sont aussi frรฉquemment rencontrรฉes.

Sรฉcuritรฉ. Les mรฉcanismes de la cryptographie ร  clรฉ publique utilisent des outils mathรฉmatiques utilisant des fonctions fondamentalement asymรฉtriques. Ces fonctions sont faciles ร  calculer et considรฉrรฉes comme difficiles ร  inverser. Leur sรฉcuritรฉ est liรฉe ร  celle de problรจmes mathรฉmatiques conjecturรฉs difficiles. Citons par exemple la factorisation de grands entiers pour RSA, ou le calcul de logarithmes discrets dans des groupes multiplicatifs pour DSA, ElGamal ou encore lโ€™รฉchange de clรฉs Diffie-Hellman. La rรฉsolution de tels problรจmes permet de retrouver la clรฉ privรฉe ร  partir de la clรฉ publique. Les meilleures algorithmes permettant de rรฉsoudre ces problรจmes sont plus efficaces quโ€™une recherche exhaustive sur la clรฉ privรฉe. A tailles de clรฉs รฉgales, la sรฉcuritรฉ potentiellement offerte par les algorithmes symรฉtriques est donc meilleure que la sรฉcuritรฉ des algorithmes asymรฉtriques. Rรฉciproquement, pour un niveau de sรฉcuritรฉ รฉquivalent, les clรฉs asymรฉtriques sont donc plus longues que les clรฉs symรฉtriques.

Le rapport de stage ou le pfe est un document dโ€™analyse, de synthรจse et dโ€™รฉvaluation de votre apprentissage, cโ€™est pour cela chatpfe.com propose le tรฉlรฉchargement des modรจles complet de projet de fin dโ€™รฉtude, rapport de stage, mรฉmoire, pfe, thรจse, pour connaรฎtre la mรฉthodologie ร  avoir et savoir comment construire les parties dโ€™un projet de fin dโ€™รฉtude.

Table des matiรจres

I Introduction Gรฉnรฉrale
1 Introduction
1.1 Introduction ร  la cryptologie
1.1.1 Un peu dโ€™histoire
1.1.2 La cryptographie symรฉtrique
1.1.3 La cryptographie asymรฉtrique
1.2 Les fonctions de hachage en cryptographie
1.2.1 Dรฉfinition et origines
1.2.2 Sรฉcuritรฉ des fonctions de hachage cryptographiques
1.2.3 Utilisations en cryptographie
2 Extension de domaine
2.1 Autour de la construction de Merkle-Damgรฅrd
2.1.1 Algorithme de Merkle-Damgรฅrd
2.1.2 Extension de messages
2.1.3 Multicollisions
2.1.4 Recherche de secondes prรฉimages
2.2 Algorithmes dโ€™extension de domaine rรฉcents
2.2.1 La construction wide pipe
2.2.2 Fonctions รฉponges
2.2.3 Encodage sans prรฉfixe
2.3 Arguments de sรฉcuritรฉ
2.3.1 Conservation de propriรฉtรฉs de sรฉcuritรฉ de la fonction de compression
2.3.2 Indiffรฉrenciabilitรฉ dโ€™un oracle alรฉatoire
3 La famille MD-SHA
3.1 Constructions classiques de fonctions de compression
3.2 La famille MD-SHA
3.2.1 Les premiรจres fonctions
3.2.2 SHA-1
3.2.3 La famille SHA-2
3.3 La cryptanalyse diffรฉrentielle
3.3.1 Idรฉe de la cryptanalyse diffรฉrentielle
3.3.2 Application ร  SHA-1
3.3.3 Amรฉliorations possibles
3.3.4 Consรฉquences sur la famille SHA
3.4 La compรฉtition SHA-3
3.4.1 Dรฉroulement de la compรฉtition
3.4.2 Le deuxiรจme tour
3.4.3 Les cinq finalistes
II Conception et preuves de sรฉcuritรฉ
4 Description et analyse de Shabal
4.1 Description de la fonction
4.1.1 Conventions et notations
4.1.2 Algorithme dโ€™extension de domaine
4.1.3 Permutation paramรฉtrรฉe P
4.2 Performances et implรฉmentations
4.3 Principes de conception de Shabal
4.3.1 Principes de conception de lโ€™algorithme dโ€™extension de domaine
4.3.2 Principes de conception de P
4.4 ร‰valuation de la sรฉcuritรฉ de P
4.4.1 Diffusion imparfaite par Pโˆ’1
4.4.2 Distingueurs diffรฉrentiels
4.4.3 Points fixes
4.4.4 Distingueurs rotationnels
4.5 Conclusion
5 Extension de domaine et indiffรฉrenciabilitรฉ dโ€™un oracle alรฉatoire
5.1 Reprรฉsentation gรฉnรฉrique dโ€™algorithmes dโ€™extension de domaine
5.2 Techniques de preuve dโ€™indiffรฉrenciabilitรฉ
5.2.1 Le modรจle dโ€™indiffรฉrenciabilitรฉ
5.2.2 ร‰lements de construction du simulateur
5.2.3 Preuves par sรฉquence de jeux
5.2.4 Lemme de diffรฉrence
5.2.5 Simulation dโ€™une fonction alรฉatoire
5.2.6 Identification dโ€™รฉvรจnements dโ€™รฉchec
5.2.7 Simulation de F et dรฉtection dโ€™รฉvรจnements dโ€™รฉchec
5.3 Preuve dโ€™indiffรฉrenciabilitรฉ lorsque F est une fonction
5.3.1 Borne sur lโ€™avantage du distingueur
5.3.2 Esquisse de la sรฉquence de jeux
5.3.3 Sรฉquence de jeux
5.3.4 Majoration de lโ€™avantage de lโ€™attaquant
5.3.5 ร‰valuation de lโ€™avantage de lโ€™attaquant en fonction du nombre de requรชtes
5.3.6 Application ร  Chop-MD
5.3.7 Borne dโ€™indiffรฉrenciabilitรฉ lorsque lโ€™encodage est sans prรฉfixe
5.4 Preuve dโ€™indiffรฉrenciabilitรฉ lorsque F est une permutation
5.4.1 Modรฉlisation dโ€™une permutation paramรฉtrรฉe
5.4.2 Description de la sรฉquence de jeux
5.4.3 Majoration de lโ€™avantage de lโ€™attaquant
5.4.4 ร‰valuation de lโ€™avantage de lโ€™attaquant en fonction du nombre de requรชtes
5.5 Borne dโ€™indiffรฉrenciabilitรฉ avec des tours ร  blanc et un compteur
6 Le modรจle dโ€™indiffรฉrenciabilitรฉ gรฉnรฉralisรฉ
6.1 Preuves dโ€™indiffรฉrenciabitรฉ et attaques par distingueur
6.2 Modรฉlisation de primitives imparfaites
6.2.1 Adaptation immรฉdiate de la preuve
6.2.2 Reprรฉsentation algorithmique dโ€™une fonction biaisรฉe
6.3 Indiffรฉrenciabilitรฉ dโ€™un oracle alรฉatoire public de la construction Chop-MD avec une fonction de compression biaisรฉe
6.3.1 Principes de conception du simulateur
6.3.2 Description du simulateur
6.3.3 Esquisse de la preuve par sรฉquence de jeux
6.3.4 Construction de la sรฉquence de jeux
6.3.5 Majoration de lโ€™avantage de lโ€™attaquant
6.4 Indiffรฉrenciabilitรฉ forte de Chop-MD dans le cas biaisรฉ
6.4.1 Insuffisance de la caractรฉrisation du biais par ฮต et ฯ„
6.4.2 Limitation sur le biais de F
6.4.3 Indiffรฉrenciabilitรฉ forte pour un biais limitรฉ
6.4.4 Preuve par sรฉquence de jeux
6.4.5 Majoration de lโ€™avantage de lโ€™attaquant
6.4.6 Application
6.5 Majoration des probabilitรฉs dโ€™รฉchec des simulateurs
6.5.1 Probabilitรฉ dโ€™occurrence de Echec[5]
6.5.2 Probabilitรฉ dโ€™occurrence de Echece[6]
III Conclusion Gรฉnรฉrale

Rapport PFE, mรฉmoire et thรจse PDFTรฉlรฉcharger le rapport complet

Tรฉlรฉcharger aussi :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiรฉe. Les champs obligatoires sont indiquรฉs avec *