Cours: Sécurité informatique

Cryptography, Authentication · course

Voir tous les documents en sécurité informatique

Ecole Nationale des Sciences de l’Informatique

Cours: Sécurité informatique

Outils de cryptographie et d’authentification

Préparé par: Laabidi Mounira

02/10/2014

II3-ING(ILSI, IF,IM)

LAABIDI Mounira

1

Chapitre 2: Cryptographie Plan du Chapitre

Outils de cryptographie et d’authentification

 Techniques d’authentification  Cryptage symétrique  Cryptage asymétrique  Intégrité d’un message  PKI

02/10/2014

LAABIDI Mounira

2

Chapitre 2: Cryptographie Authentification ???

 S'authentifier, c'est apporter la preuve de son identité. Mais sur quels

principes se base cette notion d'identification ?

 L'authentification vient après une phase d'identification qui consiste à

établir l'identité annoncée par l'utilisateur.

 On parle souvent de la phase d'identification – authentification ou I/A.

02/10/2014

LAABIDI Mounira

3

Chapitre 2: Cryptographie

Phases d’authentification

 Identification : Identité numérique  Personne

– Chaque personne ayant accès au système d’information doit se voir

attribuer un IDENTIFIANT UNIQUE

= 1 identifiant

 L’authentification = Challenge

– L’authentification repose toujours sur un challenge lancé par le système

de destination à l’intention du client afin que celui-ci prouve sont identité

Dupond

 Mot de passe, clef privée, empreinte digitale, …

Qui êtes vous ? Prouvez le.

 La réussite du challenge valide l’association client  Identifiant

Mon mot de passe est toto

OK, c'est DUPOND

02/10/2014

LAABIDI Mounira

4

Chapitre 2: Cryptographie

Bases de l’authentification

 Il existe plusieurs moyens pour s’authentifier :

Le secret (ex : mot de passe) L’objet (ex : jeton) Le caractère (ex : biométrie) Le savoir faire (ex : signature manuscrite)

La combinaison de plusieurs méthodes d’authentification permet de mettre en place des solutions d’authentification forte.

02/10/2014

LAABIDI Mounira

5

Chapitre 2: Cryptographie

Mots de passe(1/2)

 Le mot de passe reste le mécanisme de déverrouillage le plus répandu car

il ne nécessite pas d'ajout de dispositif technique.

 Les risques principaux liés à l'utilisation du mot de passe sont :

 La divulgation  La faiblesse.

 Quelques bonne pratiques:

– il faut que son domaine d'utilisation soit le plus restreint possible pour limiter le risque de divulgation (associer à chaque usage un mot de passe différent).

– un bon mot de passe doit être créé de manière à résister aux techniques de craquage connues (1 heure pour craquer un mot de passe de 8 caractères alphabétiques [A-Z] Vs 1 mois pour craquer un mot de passe de 10 caractères alphabétiques ou un mot de passe de 8 caractères alphanumériques [A-Za-z0- ) 9].

02/10/2014

LAABIDI Mounira

6

Chapitre 2: Cryptographie Mots de passe(2/2)

 Il existe des moyens techniques pour fabriquer et retenir

des mots de passe forts.

 La méthode phonétique : utiliser les sons de chaque syllabe pour fabriquer une phrase facile à retenir. Par exemple, la phrase « j'ai acheté huit cd pour cent euros cet après-midi » deviendra : ght8CD%E7am

 La méthode des premières lettres : Cette méthode consiste à garder les premières lettres d'une phrase (citation, paroles de chanson, ...) en veillant à ne pas utiliser que des minuscules. Par exemple, la citation « un tiens vaut mieux que deux tu l'auras » deviendra 1TvmQ2tl'@

02/10/2014

LAABIDI Mounira

7

Chapitre 2: Cryptographie

Problèmes liés aux mots de passe(1/3)

 L’utilisation de mots de passe requiert leurs gestion (création, Modification,

Déblocage, Suppression ) – Problème : stockage, transfert sur le réseau, rejeu (réutilisation frauduleuse),

mémorisation difficile pour les utilisateurs, gestion pour l’administrateur

 La plupart des systèmes sont configurés de manière à bloquer temporairement le compte d'un utilisateur après un certain nombre de tentatives de connexion infructueuses.

– Un pirate peut difficilement s'infiltrer sur un système de cette façon. – En contrepartie, un pirate peut se servir de ce mécanisme d'auto défense pour bloquer l'ensemble des comptes utilisateurs afin de provoquer un déni de service.

 La plupart mots de passe des systèmes sont stockés de manière chiffrée («

cryptée ») dans un fichier ou une base de données. – Lorsqu'un pirate obtient un accès au système et obtient ce fichier, il lui est possible de tenter de casser le mot de passe du l'utilisateur.

02/10/2014

LAABIDI Mounira

8

Chapitre 2: Cryptographie Problèmes liés aux mots de passe(2/3)

Craquage du mot de passe

 Craquage par force brute

 Il consiste à tester tous les mots de passe.  Plus il existe de combinaisons possibles pour former un mot de

passe, plus le temps moyen nécessaire pour retrouver ce mot de passe sera long.

 Rajouter un caractère à un mot de passe alphanumérique double le

temps nécessaire pour le retrouver.

 Craquage par dictionnaire

 L'attaque par dictionnaire consiste à tester une série de mots issus

d'un dictionnaire. (dictionnaire des noms/marques, …)

 Craquage hybride : combinant force brute et dictionnaire  Attaque par rejeu : réutilisation du mot de passe.

02/10/2014

LAABIDI Mounira

9

Chapitre 2: Cryptographie Problèmes liés aux mots de passe(3/3)

Moyens de craquages des mots de passe

 Les moyens permettant au pirate d'obtenir les mots de passe des utilisateurs :

Les key loggers : Ce sont des logiciels qui sont installés sur le poste de l'utilisateur , permettent d'enregistrer les frappes de claviers saisies par l'utilisateur.

L'ingénierie sociale: consiste à exploiter la naïveté des individus pour obtenir des informations. Un pirate peut obtenir le mot de passe d'un individu en se faisant passer par un administrateur du réseau ou bien à l'inverse appeler l'équipe de support en demandant de réinitialiser le mot de passe en prétextant un caractère d'urgence.

L'espionnage: observation de l’utilisateur.

02/10/2014

LAABIDI Mounira

10

Chapitre 2: Cryptographie

Mot de passe unique

 OTP (One Time Password) :le mot de passe est utilisable

une seule fois – Protection contre l’oubli du mot de passe – Protection contre le rejeu – Non prédictible si l’algorithme est gardé secret

 L’OTP peut être basé sur l’utilisation des jetons/authentifieurs/ Token

02/10/2014

LAABIDI Mounira

11

Chapitre 2: Cryptographie

Techniques de l’OTP

 Asynchrone (challenge/réponse):

 Envoi d’un challenge par le serveur, l’utilisateur possède une calculatrice qui transforme le challenge en un mot de passe qu’il saisit. Le serveur fait la même opération et compare.

 Synchrone dépendant du temps :

 Le mot de passe est fonction du temps et est

généré à intervalle régulier. Le challenge (utilisé dans le mode asynchrone) est en fait la date et l’heure.

 Synchrone indépendant du temps :

 Utilisation d’un compteur interne à la

calculatrice incrémenté à chaque utilisation. Le serveur est synchronisé sur ce compteur et n’accepte pas de code antérieur au compteur

02/10/2014

LAABIDI Mounira

12

Chapitre 2: Cryptographie

Exemples d’OTP /authentification par objet

 La liste à biffer ou TAN (Transaction Authentification Number). Il s'agit de rentrer un OTP provenant d'une liste de codes fournie (banque).

 Matrix card authentication ou authentification à carte matricielle. Il s'agit de rentrer un OTP provenant d'une carte matricielle fournie.

 Utilisation des SMS: l'utilisateur reçoit un OTP directement sur son

téléphone portable.

02/10/2014

LAABIDI Mounira

13

Chapitre 2: Cryptographie

Exemples d’OTP /authentification par objet

 Cartes d’identité (sans mot de passe)

– Code barre, Carte magnétique, puce, clé électronique – Problèmes : Copie, vol, liaison lecteur Serveur, rejet

 Cartes d’identité + mot de passe – Authentification double facteur – Problèmes :

• Liaison lecteur  Serveur, rejet • En cas copie ou de vol le pirate doit « simplement » résoudre un problème de

mot de passe

02/10/2014

LAABIDI Mounira

14

Chapitre 2: Cryptographie L’authentification par caractère : la biométrie(1/3)

 La biométrie est la technologie qui mesure les caractéristiques

physiques d'un individu, que ce soit ses empreintes digitales, la forme de son visage ou encore son ADN. Les attributs biométriques doivent posséder les caractéristiques suivantes :

L'unicité: chaque attribut biométrique doit varier énormément d'une

personne à l'autre au point que l'ensemble des variations rend cet attribut unique.

La robustesse: un attribut biométrique devrait être permanent tout au long

de la vie d'une personne.

La quantifiabilité : cet attribut doit être mesurable et quantifiable. L'acceptabilité par la population (les empreintes digitales sont souvent

associées à la criminalité).

L'universalité : quelle proportion de la population a cet attribut (certaines

personnes n'ont pas d'empreintes digitales).

02/10/2014

LAABIDI Mounira

15

Chapitre 2: Cryptographie

L’authentification par caractère : la biométrie(2/3)

 Toutes caractéristiques

humaines  Reconnaissance Iris  Empreintes digitales ou de la

mains

 Reconnaissance des lèvres  Cartographie des veines  Reconnaissance de visages  Reconnaissance d’oreille (et échos du conduit auditif)  Spectre d’absorption de la

peau  Voie  ADN

02/10/2014

LAABIDI Mounira

16

Chapitre 2: Cryptographie

L’authentification par caractère : la biométrie(3/3)

Sources: International Biometry Group, New York, NY; 1.212.809.9491 2010.

02/10/2014

LAABIDI Mounira

17

Chapitre 2: Cryptographie

Authentification par savoir faire

 Il s’agit du reconnaissance de ce que l’utilisateur sait faire. Par exemple

authentification par signature ou par geste

02/10/2014

LAABIDI Mounira

18

Chapitre 2: Cryptographie

Cryptographie

Outils de cryptographie et d’authentification

 Techniques d’authentification  Cryptage symétrique  Cryptage asymétrique  Intégrité d’un message  PKI

02/10/2014

LAABIDI Mounira

19

Chapitre 2: Cryptographie

Terminologie

 Chiffrement : transformation à l'aide d'une clé de chiffrement d'un message en clair en un message incompréhensible si on ne dispose pas d'une clé de déchiffrement (en anglais encryption) ;

 Chiffre : anciennement code secret, par extension l'algorithme utilisé pour le

Publicité

chiffrement ;

 Cryptogramme : message chiffré ;  Décrypter : retrouver le message clair correspondant à un message chiffré sans posséder la clé de déchiffrement (terme que ne possèdent pas les anglophones, qui eux « cassent » des codes secrets) ;

 Cryptographie : étymologiquement « écriture secrète », devenue par

extension l'étude de cet art (donc aujourd'hui la science visant à créer des cryptogrammes, c'est-à-dire à chiffrer) ;

 Cryptanalyse : science analysant les cryptogrammes en vue de les décrypter ;  Cryptologie : science regroupant la cryptographie et la cryptanalyse.

02/10/2014

LAABIDI Mounira

20

Chapitre 2: Cryptographie

Classification

Cryptologie

cryptographie

cryptanalyse

À clé symétrique

À clé publique

Protocoles

Cryptage par bloc

Cryptage par flux

02/10/2014

LAABIDI Mounira

21

Chapitre 2: Cryptographie

Définition de la cryptographie

 Science mathématique permettant d’effectuer des opérations sur un texte intelligible afin d’assurer une ou plusieurs propriétés de la sécurité de l’information.

Intégrité

Authentification

Non Répudiation

Confidentialité

02/10/2014

LAABIDI Mounira

22

Chapitre 2: Cryptographie

Définition d’un crypto-système

 Un crypto-système est décrit par cinq uplets (P,C,K,E,D) :

 «P» est un ensemble fini de textes clairs (Plain text)

 «C» est un ensemble fini de textes cryptés (Cypher text)

 « K » est l’espace de clés (key space); c’est un ensemble

fini de clés possibles.

 Pour chaque k  K, il existe une fonction cryptage ek  E, et une fonction de décryptage correspondante dk  D

 Les fonctions ek : P  C et dk : C  P doivent

satisfaire : dk(ek(x))=x pour chaque x  P

02/10/2014

LAABIDI Mounira

23

Chapitre 2: Cryptographie

Définition de la cryptanalyse

• Principes et méthodes permettant de trouver un message clair à partir d’un message crypté sans connaissance de la clé.

• Attaques classifiées selon le type de connaissance disponible

pour l’intrus (cryptanalyst).

• Connaissant C=E(P,K) mais pas K, l’objectif est de trouver P ou

K.

• Types d’attaques de cryptanalyse:

– Texte chiffré uniquement: uniquement C et E sont connus par l’intrus – Texte clair connu: Uniquement E, C, et quelques paires de messages

clairs/cryptés avec K, sont connus par l’intrus

– Texte clair choisi: E, C, sont connus, et P a été choisi par l’intrus. – …

02/10/2014

LAABIDI Mounira

24

Chapitre 2: Cryptographie

Les principes de Kerckhoffs

 Le linguiste hollandais Auguste Kerckhoffs Van Nieuwenhof dans son

traité La cryptographie militaire a énoncé les principes suivant qui sont les axiomes de la cryptographie

 Le système doit être matériellement, sinon mathématiquement, indéchiffrable;

 La clé doit pouvoir en être communiquée et retenue sans le secours de notes

écrites, et être changée ou modifiée au gré des correspondants;

 Il faut qu'il soit applicable à la correspondance télégraphique;

 Il faut qu'il soit portatif, et que son maniement ou son fonctionnement n'exige

pas le recours à plusieurs personnes;

 Enfin, il est nécessaire, vu les circonstances qui en commandent l'application, que le système soit d'un usage facile, ne demandant ni tension d'esprit, ni la connaissance d'une longue série de règles à observer.

02/10/2014

LAABIDI Mounira

25

Référence : Kerckhoffs Auguste, La cryptographie militaire, Journal des sciences militaires, vol. IX, pp. 538, Janvier 1883, pp161-191

Chapitre 2: Cryptographie

Un peu d’histoire

•

•

Le premier « document » chiffré connu remonte à l'Antiquité. Il s'agit d'une tablette d'argile, retrouvée en Irak, et datant du XVIe siècle av. J.-C. Un potier y avait gravé sa recette secrète en supprimant des consonnes et en modifiant l'orthographe des mots.

La technique grecque: Entre le Xe et VIIe siècle av. J.-C. Technique de chiffrement par transposition, c'est-à-dire reposant sur le changement de position des lettres dans le message, en utilisant un bâton de diamètre déterminé appelée scytale. On enroulait en hélice une bande de cuir autour de la scytale avant d'y inscrire un message. Une fois déroulé, le message était envoyé au destinataire qui possédait un bâton identique, nécessaire au déchiffrement.

02/10/2014

LAABIDI Mounira

26

Chapitre 2: Cryptographie

Un peu d’histoire

•

La technique des Hébreux: À partir du Ve siècle av. J.-C., l'une des premières techniques de chiffrement est utilisée dans les textes religieux par les Hébreux qui connaissent plusieurs procédés. Le plus connu appelé Atbash est une méthode de substitution alphabétique inversée. Elle consiste à remplacer chaque lettre du texte en clair par une autre lettre de l'alphabet choisie de la manière suivante : A devient Z, B devient Y, etc.

• Nabuchodonosor: Aux alentours de -600, Nabuchodonosor, roi de

Babylone, employait une méthode originale : il écrivait sur le crâne rasé de ses esclaves, attendait que leurs cheveux aient repoussé, et il les envoyait à ses généraux. Il suffisait ensuite de raser à nouveau le messager pour lire le texte. Il s'agit toutefois de stéganographie à proprement parler et non pas de cryptographie : l'information est cachée et non pas codée.

On remarque dans ce procédé une certaine fiabilité : en effet l'interception

du message par un tiers est tout de suite remarquée.

02/10/2014

LAABIDI Mounira

27

Chapitre 2: Cryptographie

Un peu d’histoire

•

Les premiers « vrais » systèmes de cryptographie: Il faut attendre -200 pour voir apparaître les premiers « vrais » systèmes de cryptographie. Ce sont essentiellement des chiffrements par substitution. Il existe différents types de substitutions : – mono-alphabétique : remplace chaque lettre du message par une

autre lettre de l'alphabet

– poly-alphabétique : utilise une suite de chiffres mono-alphabétiques (la

clé) réutilisée périodiquement

– polygrammes : substitue un groupe de caractères dans le message par

un autre groupe de caractères

02/10/2014

LAABIDI Mounira

28

Chapitre 2: Cryptographie

Un peu d’histoire

•

•

Le code de César: Le code de César est la méthode cryptographique, par substitution mono-alphabétique, la plus ancienne (Ier siècle av. J.-C.). Cette méthode est utilisée par l'armée romaine et bien qu'elle soit beaucoup moins robuste que la technique Atbash, la faible alphabétisation de la population la rend suffisamment efficace.

• Méthode de chiffrement Son système est simple, il consiste à décaler les lettres de l'alphabet d'un nombre n. Par exemple, si on remplace A par D (n=3), on remplace B par E, C par F... Le texte que nous souhaitons coder étant le suivant : « décaler les lettres de l'alphabet » Le texte codé est alors : « ghfdohu ohv ohwwuhv gh o'doskdehw »

•

•

02/10/2014

LAABIDI Mounira

29

Chapitre 2: Cryptographie

Un peu d’histoire

Le code de César:

• • Malheureusement, on comprendra que ce système est très peu sûr,

puisqu'il n'y a que 26 lettres dans l'alphabet donc seulement 25 façons de chiffrer un message avec le code de César(on ne peut substituer une lettre par elle-meme). Pourtant sa simplicité conduisit les officiers sudistes à le réemployer durant la guerre de Sécession. L'armée russe en fit de même en 1915.

• Un système connu et pourtant Le code de César a été utilisé sur des forums

internet sous le nom de ROT13 (rot-ation de 13 lettres ou A→N...). Le ROT13 n'a pas pour but de rendre du texte confidentiel, mais plutôt d'empêcher la lecture involontaire (d'une réponse à une devinette, ou de l'intrigue d'un film, etc.). Son utilisation est simple : il suffit de re-chiffrer un texte, codé en ROT13, une deuxième fois pour obtenir le texte en clair.

02/10/2014

LAABIDI Mounira

30

Chapitre 2: Cryptographie

Un peu d’histoire

•

•

•

Le chiffre de Vigenère est un système de chiffrement, élaboré par Blaise de Vigenère (1523-1596), diplomate français du XVIe siècle. C'est un système de substitution poly-alphabétique ou de chiffrement polyalphabétique. Cela signifie qu'il permet de remplacer une lettre par une autre qui n'est pas toujours la même, contrairement au chiffre de César ou à ROT13 qui se contentaient d'utiliser la même lettre de substitution. C'est donc un système relativement plus « solide » que ces deux systèmes. Principe: Ce chiffrement introduit la notion de clé. Une clé se présente généralement sous la forme d'un mot ou d'une phrase. Pour pouvoir chiffrer notre texte, à chaque caractère nous utilisons une lettre de la clé pour effectuer la substitution. Évidemment, plus la clé sera longue et variée et mieux le texte sera chiffré. Il faut savoir qu'il y a eu une période où des passages entiers d'œuvres littéraires étaient utilisés pour chiffrer les plus grands secrets. Les deux correspondants n'avaient plus qu'à avoir en leurs mains un exemplaire du même livre pour s'assurer de la bonne compréhension des messages.

02/10/2014

LAABIDI Mounira

31

Chapitre 2: Cryptographie

Un peu d’histoire

• Table de Vigenère:

02/10/2014

LAABIDI Mounira

32

Chapitre 2: Cryptographie

Un peu d’histoire

•

Le chiffre de Vigenère: Pour chaque lettre en clair, on sélectionne la colonne correspondante et pour une lettre de la clé on sélectionne la ligne adéquate, puis au croisement de la ligne et de la colonne on trouve la lettre chiffrée. La lettre de la clé est à prendre dans l'ordre dans laquelle elle se présente et on répète la clé en boucle autant que nécessaire. – clé : MUSIQUE – texte : j'adore ecouter la radio toute la journee

– j'adore ecouter la radio toute la journee – M USIQU EMUSIQU EM USIQU EMUSI QU EMUSIQU

| ||| | || Colonne O, ligne I : on obtient la lettre W. | | Colonne D, ligne S : on obtient la lettre V. | Colonne A, ligne U : on obtient la lettre U.

Colonne J, ligne M : on obtient la lettre V.

02/10/2014

LAABIDI Mounira

33

Chapitre 2: Cryptographie

Un peu d’histoire

•

•

Le texte chiffré est alors :

V'UVWHY IOIMBUL PM LSLYI XAOLM BU NAOJVUY.

Si on veut déchiffrer ce texte, on regarde pour chaque lettre de la clé répétée la ligne correspondante, et on y cherche la lettre chiffrée. La première lettre de la colonne que l'on trouve ainsi est la lettre déchiffrée. – V'UVWHY IOIMBUL PM LSLYI XAOLM BU NAOJVUY – M USIQU EMUSIQU EM USIQU EMUSI QU EMUSIQU | |||

| || Ligne I, on cherche W: on trouve la colonne O. | | Ligne S, on cherche V: on trouve la colonne D. | Ligne U, on cherche U: on trouve la colonne A. Ligne M, on cherche V: on trouve la colonne J.

02/10/2014

LAABIDI Mounira

34

Chapitre 2: Cryptographie

Un peu d’histoire

•

•

Enigma est une machine électromécanique portable d'origine allemande, faisant appel à des rotors montés sur cylindres pour le chiffrement et le déchiffrement de l'information. Plus précisément, Enigma est une famille de machines, car il en a existé de nombreuses et subtiles variantes. Enigma fut commercialisée en Europe et dans le reste du monde dès le début des années 1920. Elle fut aussi adaptée pour une utilisation par les services militaires et diplomatiques de nombreuses nations. Son utilisation la plus fameuse fut celle de l'Allemagne nazie et de ses alliés, avant et pendant la Seconde Guerre mondiale.

02/10/2014

LAABIDI Mounira

35

Chapitre 2: Cryptographie

Un peu d’histoire

• Bien qu'elle fût considérée avant la Seconde Guerre mondiale comme sûre

par ses utilisateurs, les cryptologues britanniques furent, à plusieurs reprises et sur de longues durées, capables de décrypter les messages protégés par ces machines. Les informations obtenues grâce à cette source leur donnèrent un net avantage dans la poursuite de la guerre. Enigma chiffre les informations en réalisant le passage d'un courant électrique à travers une série de composants. Le courant est transmis en pressant une lettre sur le clavier. Après sa traversée dans un réseau complexe de fils, une lampe indique la lettre chiffrée.

•

02/10/2014

LAABIDI Mounira

36

Chapitre 2: Cryptographie

Les Critères de sécurité

•

•

Alice

Bob

Confidentialité (confidentiality): garantie que seules les personnes autorisées ont accès aux éléments considérés.

Intégrité des données (data integrity): garantie que les éléments considérés sont exacts et complets.

• Authentification (authentication): possibilité de vérifier l'identité d'une entité

(personne, ordinateur...), afin d'autoriser l'accès de cette entité à des ressources (systèmes, réseaux, applications...).

• Non-répudiation (non-repudiation): la possibilité de vérifier que l'envoyeur et le

destinataire sont bien les parties qui disent avoir respectivement envoyé ou reçu le message.

02/10/2014

LAABIDI Mounira

Publicité

37

Chapitre 2: Cryptographie

Les Critères de sécurité

• Autres aspects importants

– Disponibilité (availability): garantie que ces éléments considérés sont

accessibles au moment voulu par les personnes autorisées.

– Anonymat (privacy): garantie que l’identité et/ou la localisation de l’entité

reste(nt) confidentielle(s).

 Un outil fondamental pour assurer la sécurité est la cryptographie

•

La cryptographie et la cryptanalyse sont des outils importants pour assurer la confidentialité d'une information (stockée ou transitée), son intégrité (toute modification est détectable), et l'identification de son origine (l'émetteur peut être identifié).

02/10/2014

LAABIDI Mounira

38

Chapitre 2: Cryptographie

Types d’attaques

e v i s s a P

e v i t c A

Alice

Bob

Ecoute

Eve

Alice

Bob

Modification

Trudy

Alice

Bob

Fabrication

Trudy

Alice

Bob

Re-jeux

Trudy

02/10/2014

LAABIDI Mounira

39

Chapitre 2: Cryptographie

Primitives Cryptographiques

Primitives sans clés

Primitives de sécurité

Primitives à clé symétrique

Primitives à clé publique

02/10/2014

Arbitrary length hash functions

One-way permutations

Séquences aléatoires

Chiffrement à clé symétrique

Arbitrary length hash functions (MACs)

Signatures

Séquences Pseudo- aléatoires

Primitives d’identification

Chiffrement à clé publique

Signatures

Primitives d’identification

LAABIDI Mounira

Stream ciphers

Block ciphers

40

Chapitre 1: Introduction

Principe du chiffrement symétrique

chiffrement symétrique

 Aussi nommé cryptage à clé secrète, le cryptage symétrique utilise la même clé, tenue secrète, pour le chiffrement et le déchiffrement. – Le chiffrement s’effectue en additionnant (fonction XOR) la clé au message coupé en blocs et en effectuant plusieurs permutations, tout en itérant plusieurs fois.

 Le cryptage symétrique utilise des canaux sécurisés pour échanger la

clé secrète (IPSec).

 Algorithmes

– DES (Data Encryption Standard), Triple-DES, AES (Advanced Encryption

Standard),

– IDEA (Internationale Data Encryption Algorithm), Blowfish

 Simples à mettre en œuvre, l’exécution peut être très rapide

02/10/2014

LAABIDI Mounira

41

Chapitre 2: Cryptographie

Principe du chiffrement symétrique

Clé 01010000111

Transmission par canal sécurisé Transmission par canal sécurisé

Clé 01010000111

Texte clair

Cryptage

Voici le numéro de ma carte de crédit 111111,

Emetteur

Cryptanalyst

Internet

☺☼♀☻ ♠♣▼╫◊ ♫◙◘€£ ¥₪Ω٭ Texte crypté

Décryptage

Texte clair

Voici le numéro de ma carte de crédit 111111,

Récepteur

02/10/2014

LAABIDI Mounira

42

Chapitre 2: Cryptographie Principe du chiffrement symétrique

Deux catégories de chiffrement symétrique

 Chiffrement par flux

 Principe: Traite les éléments d’entrée de façon continue,

produisant à la fois un élément de sortie (crypté).  La clé est aussi longue que le Stream de données.  Mode adapté pour la communication en temps réel: Pas besoin

d’attendre l’arrivé du block entier.

 Implémenté en général sur des supports hardware

02/10/2014

LAABIDI Mounira

43

Chapitre 2: Cryptographie

Chiffrement par flux

•

•

Le texte en clair est combiné avec un keystream (un flot de clés de chiffrement pseudo-aléatoire), généralement en utilisant l’opération exclusive-or (xor). 1 time pad:

02/10/2014

LAABIDI Mounira

44

Chapitre 2: Cryptographie

Chiffrement par flux

• Un synchronous stream cipher est un schéma de chiffrement dans lequel le keystream est généré indépendament du text en clair (plaintext) et du texte chiffré (ciphertext). – 0 : état initial (initial state) – f : Next-state function – G : The function which produces the keystream zi – H : Output function.

02/10/2014

LAABIDI Mounira

45

Chapitre 2: Cryptographie

Chiffrement par flux

•

La plupart des schémas de chiffrement à flot proposés dans la littérature sont additifs

• Definition: Un binary additive stream cipher est un synchronous stream

cipher dans lequel le keystream, le texte en clair et le texte chiffré sont des données binaires, et le résultat de la fonction h est une fonction XOR.

02/10/2014

LAABIDI Mounira

46

Chapitre 2: Cryptographie Principe du chiffrement symétrique

 Chiffrement par bloc

 Principe: Le texte est divisé en différents blocks de taille fixe. Un

block est traité à la fois, produisant un block de données cryptées.

 le block doit être entièrement disponible avant le traitement  La même fonction et la même clé sont utilisées pour crypter les

blocks successifs.

 Implémentation d’une manière logicielle en générale.

02/10/2014

LAABIDI Mounira

47

Chapitre 2: Cryptographie

Chiffrement par bloc

•

•

•

•

Le chiffrement par bloc (en anglais block cipher) est une méthode de chiffrements symétrique qui découpe le texte à chiffrer en blocs de taille généralement fixe. La taille de bloc est comprise entre 32 et 512 bits – Dans le milieu des années 1990 le standard était de 64 bits – Depuis 2000 le standard est de 128 bits Les blocs sont ensuite chiffrés les uns après les autres.

Il est possible de transformer un chiffrement de bloc en un chiffrement par flot en utilisant un mode d'opération – ECB (chaque bloc chiffré indépendamment des autres) – CFB (on chaîne le chiffrement en effectuant un XOR entre les résultats

successifs).

02/10/2014

LAABIDI Mounira

48

Chapitre 2: Cryptographie

Chiffrement par bloc

Electronic Code Book mode (ECB):

+ : implementation simple - : un attaquant peut aisément remplacer un block

x1

eK

y1

x2

x3

eK

y2

eK

y3

Cipher FeedBack mode (CFB):

IV

eK

x1

y1

eK

x2

y2

...

IV: Initial Vector IV: Initial Vector • But: chaque message codé devient unique • But: chaque message codé devient unique • Génération: timestamp ou nombre aléatoire (random number) • Génération: timestamp ou nombre aléatoire (random number)

02/10/2014

LAABIDI Mounira

49

Chapitre 2: Cryptographie

Chiffrement par bloc

Cipher Block Chaining mode (CBC):

x1

x2

IV= y0

...

eK

y1

eK

y2

Output FeedBack mode (OFB):

IV= z0

eK

x1

z1

y1

eK

z2

Publicité

...

x2

y2

02/10/2014

LAABIDI Mounira

50

Chapitre 2: Cryptographie

Problème de distribution de la clé

• Pour N utilisateurs, il faut clés. Soit alors

Utilisateurs

100

1000

Clés

5,000

500,000

02/10/2014

LAABIDI Mounira

51

(1)2NN

Chapitre 2: Cryptographie

Diffie-Hellman: Principe

02/10/2014

LAABIDI Mounira

52

Chapitre 2: Cryptographie

Diffie-Hellman: Exemple

• • • • • • •

Alice et Bob choisissent un nombre premier p=23 et une base g=3 Alice choisit un nombre secret a=6 Elle envoie à Bob la valeur ga [mod p] = 36 [23] = 16 Bob choisit à son tour un nombre secret b=15 Bob envoie à Alice la valeur gb [mod p] = 315 [23] = 12 Alice calcule la clé secrète : (gb [mod p])a [mod p] = 126 [23] = 9 Bob obtient la même clé qu'Alice : (ga [mod p])b [mod p] = 1615 [23] = 9

02/10/2014

LAABIDI Mounira

53

Chapitre 2: Cryptographie

Histoire du DES

 Jusqu’aux années 1970, seuls les militaires possédaient des algorithmes à

clé secrète fiables.

 Devant l'émergence de besoins civils, le NBS (National Bureau of Standards) lança le 15 mai 1973 un appel d'offres dans le Federal Register (l'équivalent du Journal Officiel américain) pour la création d'un système cryptographique dont :  l'algorithme repose sur une clé relativement petite, qui sert à la fois au

chiffrement et au déchiffrement ;

 l'algorithme doit être facile à implémenter, en logiciel et en matériel, et doit être

très rapide ;

 le chiffrement doit avoir un haut niveau de sûreté, uniquement lié à la clé, et

non à la confidentialité de l'algorithme .

Les efforts conjoints d'IBM, qui propose Lucifer fin 1974, et de la NSA (National Security Agency) conduisent à l'élaboration du DES (Data Encryption Standard) en 1975, l'algorithme de chiffrement le plus utilisé au monde durant le dernier quart du XXième siècle.

02/10/2014

LAABIDI Mounira

54

Chapitre 2: Cryptographie

Histoire du DES

 DES (Data Encryption Standard) IBM 1977

 L’algorithme de cryptage (Block cipher) à clés symétriques le plus utilisé.

 Crypte des blocks de 64 bits en utilisant des clés relativement courtes

(taille effective 56-bit).

 Produit de transpositions et de substitutions.

 Implémentation facile en matériel.  Boites transposition P-Box  Boites de substitution S-Box

02/10/2014

LAABIDI Mounira

55

Chapitre 2: Cryptographie

Data Encryption Standard (DES)

C’est LE schéma de chiffrement symétrique par bloc

• • Developpé dans les années 70 par IBM, standard ANSI en 1981 (ANSI

X3.92) • Largement utilisé dans les transactions bancaires • N’est plus considéré comme suffisament robuste •

Principe:

Plaintext: 64 bits

Key: 56 bits

DES

Ciphertext: 64 bits

02/10/2014

LAABIDI Mounira

56

Chapitre 2: Cryptographie

Histoire du DES

Les étapes des cette élaboration sont restés secrets, (la conception des S Boxes).

Les S Boxes sont des tables qui définissent des permutation.

Le message est découpé en blocs de 64 bits.

Initialisation : permutation de tous les bits formant ce bloc.

 On le coupe en deux parties : L0 et R0.

02/10/2014

LAABIDI Mounira

57

Chapitre 2: Cryptographie

Principe du DES

 Les grandes lignes de l'algorithme sont :

 Phase 1 : Préparation - Diversification de la clé

Le texte est découpé en blocs de 64 bits. On diversifie aussi la clé K, c'est- à-dire qu'on fabrique à partir de K, 16 sous-clés K1,...,K16 à 48 bits. Les Ki sont composés de 48 bits de K, pris dans un certain ordre

 Phase 2 : Permutation initiale Pour chaque bloc de 64 bits x du texte, on calcule une permutation finie

y=P(x). y est représenté sous la forme y=G0D0, G0 étant les 32 bits à gauche de y, D0 les 32 bits à droite.

 Phase 3 : Itération On applique 16 itération d'une même fonction. A partir de Gi-1Di-1 (pour i

de 1 à 16), on calcule GiDi en posant :

Gi=Di-1. Di-1=Gi-1 XOR f(Di-1,Ki).  Phase 4 : Permutation finale. On applique à G16 D16 l'inverse de la permutation initiale. Z=P-1(G16D16) est

le bloc de 64 bits chiffré à partir de x.

02/10/2014

LAABIDI Mounira

58

Chapitre 2: Cryptographie

Histoire du DES

48 bits

2

1

3

4

02/10/2014

LAABIDI Mounira

59

Chapitre 2: Cryptographie

DES (étape 1):Permutation initiale

Permutation initiale Permutation finale

 Le bit numéro 1 deviendra à la position 58  Implémentation simple en matériel

02/10/2014

LAABIDI Mounira

60

Chapitre 2: Cryptographie

DES (étape 2)

 Les sous-clés (Round keys) sont générées à partir de la clé principale de 56

bits:  Division de la clé de 56 bits en deux segments.  Rotation de chaque segment par un ou deux bits à gauche.  Sélection de 24 bits de chaque segment.

02/10/2014

LAABIDI Mounira

61

Chapitre 2: Cryptographie

DES (étape 2)

 La clé secrète est transformée en 16 parties Ki de 48 bits.

 Puis, on permute les deux parties en introduisant une fonction de la clé.

 L1 = R0.  R1 = L0 + f (K1, R0).  Cette opération se répète 16 fois. A chaque étape i, on a :  Li = Ri-1.  Ri = Li-1 + f (Ki, Ri-1).

02/10/2014

LAABIDI Mounira

62

Chapitre 2: Cryptographie

DES (étape 2)

 Ki représente la sous clé numéro i obtenu à partir de la clé secrète.

 Le calcul de f se fait de la manière suivante :

 les 32 bits de la partie R sont étendue à 48 bits grâce à une table

appelée E (Expansion).

 Ce nouveau R, E(R) pour être plus précis, est additionné à Ki.

 Le résultat est découpé en huit suites Bi de six bits : Grâce à la table S-Box, les données de ces huit suites donne un résultat de 32bits.

02/10/2014

LAABIDI Mounira

63

Chapitre 2: Cryptographie

DES (étape 3) Un tour DES (One DES round)

Cryptage

Décryptage

Block de 64 bits en entrée Block de 64 bits en entrée

Block de 64 bits en entrée Block de 64 bits en entrée

32 bits Li 32 bits Li

32 bits Ri 32 bits Ri

Sous-clé Sous-clé de 48 bits de 48 bits

Sous-clé Sous-clé de 48 bits de 48 bits

32 bits Li+1 32 bits Li+1

32 bits Ri+1 32 bits Ri+1

Fonction de cryptage Fonction de cryptage

Fonction de cryptage Fonction de cryptage

+ +

+ +

32 bits Li+1 32 bits Li+1

32 bits Ri+1 32 bits Ri+1

32 bits Li 32 bits Li

32 bits Ri 32 bits Ri

Block de 64 bits en sortie Block de 64 bits en sortie

Block de 64 bits en sortie Block de 64 bits en sortie

02/10/2014

LAABIDI Mounira

64

Chapitre 2: Cryptographie

La fonction de cryptage

02/10/2014

LAABIDI Mounira

65

Chapitre 2: Cryptographie

La fonction d’expansion

 Etendre les blocks d’entré Ri de 32 bits à un block Ri’ de 48 bits.

 Diviser les 32 bits en des segments de 4 bits

 Élargir chaque segment de 4 bits avec les bits de ses voisins pour

attendre 6 bits.

 XOR des 48 bits en sortie avec la clé.

1 2 3 4 5 6 7 8 9 …

32 1 2 3 4 5

4 5 6 7 8 9

02/10/2014

LAABIDI Mounira

66

Chapitre 2: Cryptographie

Fonction de substitution

 Il y a 8 S-Box, une pour chacun Bi.

 Chaque S-Box à 16 colonnes et 4 lignes.

 Bi = b1b2b3b4b5b6. On calcule

 r = b1b6  c = b2b3b4b5.

 On regarde le nombre qui figure à la ligne r et à la colonne c. Il est

codé sur 4 bits est correspond à la sortie Si(Bi).

Publicité

 Ensuite on effectue une permutation représentée par une table appelée P et le résultat de cette permutation est retourné par la fo