CH.3 CRYPTOSYSTÈMES. http://www.apprendre-en-ligne.net/crypto/index.html



Documents pareils
Cryptographie et fonctions à sens unique

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

Calculateur quantique: factorisation des entiers

TECHNIQUES DE CRYPTOGRAPHIE

MATHÉMATIQUES DISCRÈTES (4) CRYPTOGRAPHIE CLASSIQUE

ÉPREUVE COMMUNE DE TIPE Partie D

Cryptologie à clé publique

Sécurité de l'information

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 et Sécurité informatique

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

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

Aristote Groupe PIN. Utilisations pratiques de la cryptographie. Frédéric Pailler (CNES) 13 janvier 2009

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

Projet Matlab : un logiciel de cryptage

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

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

Cryptographie. Cours 3/8 - Chiffrement asymétrique

La cryptographie du futur

Aspects de la cryptologie au cours de l'histoire. Aspects de la cryptologie au cours de l'histoire

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

Des codes secrets dans la carte bleue. François Dubois 1

Vers l'ordinateur quantique

INF 4420: Sécurité Informatique Cryptographie II

Audit des risques informatiques. Introduction à la Cryptographie Pierre-François Bonnefoi

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

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

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

Modes opératoires pour le chiffrement symétrique

Fonction de hachage et signatures électroniques

Petite introduction aux protocoles cryptographiques. Master d informatique M2

Université d Aix-Marseille Master Réseaux & Télécoms Cryptographie

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

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

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

Cryptographie Quantique

LE PROBLEME DU PLUS COURT CHEMIN

Principes de cryptographie pour les RSSI

Table des matières. I Mise à niveau 11. Préface

Le protocole sécurisé SSL

Cryptographie appliquée

MEMOIRE DE MAGISTER EN ELECTRONIQUE. OPTION : Télédétection. Application des techniques de cryptage pour la transmission sécurisée d images MSG

Protocoles cryptographiques

Signatures électroniques dans les applications INTERNET

GPA435 SE et PS. Sécurité Informatique. Étude de cas: ios Version 2013

TEXT MINING von 7

PROBLEMES D'ORDONNANCEMENT AVEC RESSOURCES

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

Skype (v2.5) Protocol Data Structures (French) Author : Ouanilo MEDEGAN

I. Introduction aux fonctions : les fonctions standards

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

Raisonnement par récurrence Suites numériques

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

Authentification de messages et mots de passe

Représentation des Nombres

Crypter le courrier. Pourquoi crypter? Les clés de cryptage. Supplément au manuel Internet sécurité d'abord!


Théorie et Codage de l Information (IF01) exercices Paul Honeine Université de technologie de Troyes France

Correction de l examen de la première session

Travaux pratiques. Compression en codage de Huffman Organisation d un projet de programmation

Audit des risques informatiques

TABLE DES MATIÈRES CHAPITRE I. Les quanta s invitent

Leçon 5. Systèmes de gestion à recomplétement périodique et stock de sécurité

EXPLOITATIONS PEDAGOGIQUES DU TABLEUR EN STG

Panorama de la cryptographie des courbes elliptiques

Chaine de transmission

Exercices de dénombrement

Acer edatasecurity Management

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

Communications numériques

La cryptographie dans le système bancaire

Chapitre 13 Numérisation de l information

Vous revisiterez tous les nombres rencontrés au collège, en commençant par les nombres entiers pour finir par les nombres réels.

ETUDE DES MODELES DE CONFIANCE

Recherche dans un tableau

TD1 Signaux, énergie et puissance, signaux aléatoires

C f tracée ci- contre est la représentation graphique d une

LES SECURITES DE LA CARTE BANCAIRE

Cours d introduction à l informatique. Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions

Problème : Calcul d'échéanciers de prêt bancaire (15 pt)

Chaînes de Markov au lycée

La sécurité des réseaux

Virtual Private Network WAFA GHARBI (RT4) CYRINE MAATOUG (RT4) BOCHRA DARGHOUTH (RT4) SALAH KHEMIRI (RT4) MARWA CHAIEB (RT3) WIEM BADREDDINE (RT3)

Mieux comprendre les certificats SSL THAWTE EST L UN DES PRINCIPAUX FOURNISSEURS DE CERTIFICATS SSL DANS LE MONDE

Chapitre 1 I:\ Soyez courageux!

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

Arithmétique binaire. Chapitre. 5.1 Notions Bit Mot

Les différents types de données et leurs opérations de base

Université de Reims Champagne Ardenne. HTTPS, SSL, SSH, IPSEC et SOCKS. Présenté par : BOUAMAMA Mohamed Nadjib AZIZ Xerin

Le mot du président. Ce que nous offre la presse technique et scientifique. Sorties et activités pour cette année.

L authentification de NTX Research au service des Banques

COMMUNICATEUR BLISS COMMANDE PAR UN SENSEUR DE POSITION DE L'OEIL

Sauvegarder automatiquement ses documents

LES TECHNIQUES DE CRYPTOGRAPHIE

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

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

Introduction. I Étude rapide du réseau - Apprentissage. II Application à la reconnaissance des notes.

Machines virtuelles Cours 1 : Introduction

Réseaux Mobiles et Haut Débit

Transcription:

CH.3 CRYPTOSYSTÈMES 3.1 L'environnement des cryptosystèmes 3.2 Les cryptosystèmes historiques 3.3 Le cryptosystème parfait 3.4 Les registres à décalage Codage ch 3 1 3.1 L'environnement des cryptosystèmes Une excellente source bibliographique se trouve sur le site de Didier Müller (Lycée cantonal de Porrentruy) : http://www.apprendre-en-ligne.net/crypto/index.html Ce site contient une introduction historique et des développements sur l'état des techniques cryptographiques, illustrés de nombreuses applets java et de sources mathematica. Cryptologie : science des messages secrets. Contient la cryptographie, art de rendre inintelligible un message, et la cryptanalyse, art de trouver le message clair caché. Codage ch 3 2

La cryptographie utilise un chiffre pour coder un message. Le déchiffrement est l'opération inverse, par une personne autorisée à retrouver le message clair. La cryptanalyse est l'ensemble des techniques permettant à une personne non autorisée de trouver le contenu d'un message. L'histoire de la cryptologie est très ancienne. En fait, l'écriture même est une façon de coder des données qui est inintelligible aux illettrés... On trouve des exemples de chiffres chez les Hébreux et les Grecs. Un code célèbre était utilisé par Jules César. Al-Kindi, au 9e siècle, rédige le premier manuel de décryptage contenant la technique d'analyse des fréquences. Codage ch 3 3 Au 15e siècle, Alberti propose un dispositif de codage polyalphabétique permettant d'éviter l'analyse des fréquences. Au 16e siècle, on trouve les noms de Trithème, Cardan, Della Porta et surtout Vigenère, qui perfectionne la technique de Trithème. On peut aussi mentionner le Grand Chiffre de Louis XIV, dû à Rossignol, qui ne fut décrypté qu'à la fin du 19e siècle par Bazeries. Aux Temps Modernes, Jefferson invente un dispositif mécanique de chiffrement, réinventé par Bazeries. De l'après-première Guerre mondiale date l'invention d'un autre dispositif mécanique célèbre, la machine Enigma, qui sera perfectionnée et adoptée pendant la 2e Guerre mondiale par les Allemands. Elles sera cassée par le Polonais Marian Rejewski, mais le décryptage nécessitait néanmoins des efforts de calculs Codage ch 3 4

considérables, où s'illustrent Alan Turing et l'équipe du centre de Blechley Park, notamment par la conception d'ordinateurs dédiés à ce travail. A l'époque contemporaine, la cryptologie devient de plus en plus dépendante des progrès de l'algorithmique et des performances des ordinateurs. Diffie et Hellman introduisent le concept de clé publique en 1976. Parallèlement, le système de cryptage DES est développé et est largement utilisé. Rivest, Shamir et Adleman en 1977 inventent le système RSA, le plus utilisé actuellement des systèmes à clé publique. Plus récemment, des systèmes ont été imaginés utilisant les ressources de la physique quantique... Codage ch 3 5 Les systèmes cryptographiques vont évidemment de pair avec les "ennemis" qui essaient de décrypter les messages chiffrés. On suppose toujours que les ennemis connaissent les algorithmes de chiffrement ; il est illusoire de penser conserver cet algorithme secret. Par contre, on doit penser à trois niveaux possibles de sécurité : - l'ennemi dispose de messages chiffrés en quantité appréciable ; - l'ennemi dispose en plus d'échantillons de texte en clair avec leur version chiffrée ; - l'ennemi dispose de la faculté d'obtenir la version chiffrée de textes qu'il a fournis lui-même. Le troisième niveau correspond à la sécurité maximum possible. Codage ch 3 6

3.2 Les cryptosystèmes historiques Jusqu'aux systèmes contemporains, tous les systèmes cryptographiques étaient basés sur des techniques de substitutions et de décalages. Le chiffre le plus simple consiste à remplacer chaque lettre du texte clair par un autre symbole (substitution simple). Ce symbole peut être une lettre du même alphabet, d'un autre alphabet ou un dessin... La fonction de substitution (table) représente la clé de chiffrement et sert aussi au déchiffrement. Ce chiffre est facile à décrypter par analyse des fréquences des lettres. Par ailleurs, la connaissance d'un fragment de texte clair avec son chiffrement suffit à le casser. Enfin, la connaissance de tout ou partie de la clé suffit aussi. Un perfectionnement consiste à chiffrer des digrammes, trigrammes, voire des mots entiers. Cela rend la clé encore plus vulnérable. Codage ch 3 7 Pour mémoire, indiquons que diverses permutations de groupes de lettres peuvent être utilisées comme surchiffrement. Le chiffre de César est un système de substitution dont la clé est une simple lettre. Son rang moins 1 dans l'alphabet indique la quantité dont on décale circulairement les lettres du texte en clair. Si la clé est E, cinquième lettre, le A est codé E, le B est codé F,..., le Z est codé D. Ce chiffre ne résiste pas à une analyse des fréquences. Le chiffre de Vigenère perfectionne le chiffre de César en ce qu'il est polyalphabétique. Le décalage des lettres dans l'alphabet n'est pas constant, mais déterminé par la clé qui est un mot. Par exemple, si la clé est BACHELIER, le chiffrement se passe ainsi : Codage ch 3 8

texte clair : clé : texte crypté : CODEPOLYALPHABETIQUEDEVIGENERE BACHELIERBACHELIERBACHELIERBAC DOFLTZTCRMPJHFPBMHVEFLZTOIEFRG Ce chiffre est très sûr et a été longtemps réputé indécryptable. Un décrypteur qui connaît la longueur de la clé peut effectuer des analyses de fréquence. Avec les moyens informatiques, si on sait dans quelle langue est le message et si on a un texte crypté assez long, on peut essayer diverses longueurs de clé et garder celle qui donne une analyse des fréquences qui se rapproche de la norme ("Indices de coïncidence")... Ce code peut en fait être cassé facilement. Babbage utilise des répétitions de suites de caractères pour faire des hypothèses sur la longueur de la clé. Bazeries attaque le chiffre en faisant une hypothèse sur la présence d'un mot connu dans le message en clair. Codage ch 3 9 Le perfectionnement ultime du code de Vigenère est d'utiliser une clé aussi longue que le texte à coder et de ne jamais utiliser la même clé. On utilise alors un masque jetable. On peut par exemple utiliser un texte de référence comme clé (la Bible...) Le décryptage de Babbage devient inopérant, mais pas nécessairement celui de Bazeries... Le problème de la communication de la clé peut être résolu par une double communication : A fait à B une demande ce clé. Il envoie un texte aléatoire t sans signification. B choisit une clé c. Il renvoie u = t + c à A. Le texte u est indistingable d'un texte aléatoire. En faisant la différence u t,le premier interlocuteur A calcule c, qu'il peut alors utiliser pour chiffrer son message. Quel est le point faible de ce protocole? Codage ch 3 10

Les chiffres de type Vigenère sont encore utilisés à cause de la grande facilité de chiffrement et de déchiffrement à la volée. Le point faible est celui de la transmission des clés. Pour la transmission de celles-ci, on peut alors utiliser une communication faisant appel à un chiffrement plus sûr mais plus gourmand en temps, de type RSA, pour des clés de taille plus petite que les messages à chiffrer. Ceci permet d'utiliser des clés aléatoires. Une variante est le procédé autoclave, qui utilise le texte lui-même comme clé de chiffrement après un initialisation avec une clé. texte clair : EXEMPLEDUPROCEDEAUTOCLAVE clé : CLEEXEMPLEDUPROCEDEAUTOCL texte crypté : GIIQMPQSFTUIRVRGEXXOWEOXP Codage ch 3 11 3.3 Le cryptosystème parfait Un cryptosystème parfait est tel que, même si le décrypteur connaît l'algorithme de cryptage et une quantité arbitraire d'exemples de texte clair et du même texte crypté, il est incapable de décrypter un échantillon crypté. On montre que c'est possible. Il existe donc un chiffre indécryptable. Bien plus, on sait le décrire... Il s'agit du masque jetable aléatoire. On a déjà vu la technique du masque jetable. Mais le masque jetable classique est vulnérable à l'attaque si un décrypteur dispose d'échantillons de texte clair et crypté, en reconnaissant le texte utilisé comme clé. La solution consiste donc à utiliser un masque jetable aléatoire, c'est-àdire que la clé est une suite aléatoire de symboles équiprobables. Codage ch 3 12

On peut montrer que ce code est effectivement indécryptable. Les problèmes sont les suivants : - on utilise en général des suites pseudo-aléatoire ; - il faut transmettre la clé. Mais cette technique est effectivement utilisée dans certains cas, lorsqu'on peut transmettre une clé par un moyen absolument sûr. Cette clé est alors gardée en réserve jusqu'au jour où on doit effectivement transmettre un message. Dans ce cas, on a en général le moyen de fabriquer des suites "vraiment" aléatoires. A noter que les casinos publient les listes des numéros sortis sur leurs roulettes, de façon que chacun puisse vérifier leur régularité. Ces listes constituent d'excellentes suites "aléatoires"... Codage ch 3 13 3.4 Les registres à décalage On peut utiliser des registres à décalage pour produire des suites pseudo-aléatoires de bits. On va illustrer cet exemple par le registre suivant (correspondant au polynôme primitif x 4 + x + 1). 0 0 0 0 En partant du contenu 1000 pour ce registre, on trouve successivement 1000 0100 0010 0001 1100 0110 0011 1101 1010 0101 1110 0111 1111 1011 1001 1000... et la suite est périodique de période 15, période maximale avec un registre de taille 4. On peut considérer la suite des bits de poids le plus fort : 0 0 0 1 0 0 1 1 0 1 0 1 1 1 1 0 0 0 1 0 0 1 1 0 1 0 1 1 1 1 0... Elle possède des propriétés a priori intéressantes pour une suite pseudoaléatoire. Codage ch 3 14

Parmi toutes les suites engnedrées par un registre à décalage, elle a la période la plus longue. En plus, on peut montrer facilement que toute suite consécutive de 15 bits contient 8 fois le bit 1 et 7 fois le bit 0. (En fait, les registres utilisés ont comme longueur quelques centaines.) Néanmoins, si on appelle a n, b n, c n, et d n les bits contenus dans le registre au temps n, on constate qu'ils sont donnés par les récurrences : d n = c n 1 c n = b n 1 b n = a n 1 + d n 1 a n = d n 1 En éliminant, on trouve une récurrence d'ordre 4 portant sur d : d n + d n 3 + d n 4 = 0 (mod 2) On retrouve en fait les coefficients du polynôme de départ. Codage ch 3 15 En conséquence, si on connaît n et un échantillon de texte clair et son chiffrement de longueur 2n, on en déduit la valeur de 2n éléments de la suite pseudo-aléatoire d n. On écrit les récurrences donnant les n derniers en fonction des n premiers, ce qui fournit n relations permettant de retrouver les coefficients et donc de casser le chiffre. Ici, supposons qu'on connaisse... 1 0 0 1 1 0 1 0... comme partie de la suite d n. Si on cherche d n = xd n 1 + yd n 2 + zd n 3 + td n 4, où les coefficients cherchés sont x, y, z et t, on obtient : x + t = 1 x + y = 0 y + z = 1 x + z + t = 0 On trouve facilement comme solution unique x = y = 0, z = t = 1. La suite utilisée comme clé est alors complètement connue. Codage ch 3 16

Les suites pseudo-aléatoires sont en général obtenues par des relations linéaires de ce type (car elles donnent une bonne approximation d'équirépartition). Mais la période de la suite n'est pas le bon paramètre pour trouver comment elle est engendrée. Les générateurs pseudo-aléatoires sont en général très peu sûrs pour une utilisation cryptographique... Codage ch 3 17