66
Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR - Network security course Grenoble INP Ensimag Dominique VICARD

Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

  • Upload
    others

  • View
    7

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

Sécurité des Réseaux

Cryptographie

Rök stone, Suède, 800 ac

« The magic words are squeamish ossifrages »

Sécurité des Réseaux

4MMSR - Network security course

Grenoble INP Ensimag

Dominique VICARD

Page 2: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

Objectifs

o Présenter les techniques de base

de la cryptographie

o Faire un tour d ’horizon des

algorithmes et des protocoles les

plus utilisés

Page 3: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

Plan

o Généralités

o Propriétés souhaitables

o Opérations de base

o Crypto à clef secrète

o Crypto à clef publique

o Sécurité des algorithmes

o Cryptographie quantique

Page 4: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

Glossaire

o Cryptographie o L’art ou la science concernant les

principes, les moyens et les méthodes pour rendre un texte clair inintelligible (chiffré) et pour convertir un texte chiffré en une forme intelligible

o Crypto Analyse o les étapes et les opérations pour

convertir un texte chiffré en texte clair sans connaissance préalable de la clé utilisée pour le chiffrement

Page 5: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

Cryptographie

La science consistant à cacher des éléphants (les

données) derrière des souris (les clefs)

Page 6: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

Un système Cryptographique (1)

“Hello” E() D() “@#$%” “Hello”

P :Texte Clair C: Texte Chiffré P: Texte Clair

KE KD

o Chiffrement : C=E(P, KE)

o Déchiffrement : P=D(C, KD)

Notation anglaise : Plain Text, Cipher text, Encypherment, Decypherment, Keys

Page 7: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

Un système Cryptographique (2)

o Les fonctions E et D sont inverses l’une de l’autre

o Les fonctions E et D peuvent être

publiques ou secrètes

o Les clefs KE et KD sont

généralement secrètes (au

moins une)

Page 8: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

Propriétés souhaitables

o Le secret provient de la clé, pas de l ’algorithme o un algorithme secret est mal accepté

o Comment être sûr qu ’il reste secret

o L ’espace des clés est grand

o La distance d ’unicité est grande o il existe plusieurs textes clairs possibles pour un

cryptogramme donné

o Le cryptogramme C apparaît aléatoire

o Le système est résistant aux attaques connues

Si le système n’a pas toutes ces propriétés, il est faible Si le système a toutes ces propriétés, il n’est pas nécessairement fort

Page 9: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

La créativité n’ est pas toujours une bonne

idée

Page 10: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

Les opérations de base (1)

o La bande aléatoire (One-Time Pad)

o Seul algorithme a efficacité prouvée

o La clé K a la longueur du message P

o La clé K est aléatoire

o E=D=XOR

o Utilisé en Sécurité militaire

o Problème : transport de la clé

o Code de Vernam

Page 11: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

Les opérations de base (2)

o Substitution o peut-être mono ou poly-alphabétique

o La clé indique le décalage dans l ’alphabet

o Exemple : Code de César, ROR13

o Transposition o L ’ordre des caractères du texte clair est

modifié

o la clé détermine les nouvelles positions

o Exemple : les machines à rotor, Enigma

o Stéganographie o le message est caché dans un autre

message

o Exemple : Watermarking

Page 12: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

Les opérations de base (3)

o XOR : Exemple P= 0 1 0 0 1 0 1 1 1 0 0

K= 1 0 1 0 1 1 0 1 0 1 0

C= 1 1 1 0 0 1 1 0 1 1 0

K= 1 0 1 0 1 1 0 1 0 1 0

P= 0 1 0 1 1 0 1 1 1 0 0

o Substitution : Exemple P= S U B S T I T U T I O N

K= K K K K K K K K K K K K

C= C E L C D S D E D S Y X

o Transposition : Exemple P= | S I M P L E T R | A N S P O S I T

K= 3 8 5 4 1 7 2 6 3 8 5 4 1 7 2 6

C= | M R L P S T I E | S T O P A I N S...

XOR

XOR

Page 13: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

Les opérations de base (4)

o Les fonctions à un sens (One Way

Function)

o y=f(x) est facile à calculer - x= f-1(y) est

très « difficile » à calculer

o « Difficile » veut dire :

connaissant f(x) et disposant de tous les

ordinateurs de la terre, il faut quelques (dizaines d ’, millions d ’)

années pour déterminer x.

o Exemple : logarithme en arithmétique

modulaire

o Utilisation : stockage de mots de passe

Page 14: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

Les opérations de base (5)

o Les fonctions à un sens à gâchette (Trap-door One Way Function) o y=f(x) est facile à calculer - x=f-1(y) est très

« difficile » à calculer MAIS la connaissance d ’un paramètre supplémentaire p rend le calcul de x=f-1(y,p) facile

o Exemple : algorithme RSA

o Utilisation : cryptographie à clé publique

Page 15: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

Les opérations de base (6)

o Les fonctions de Hash o Fonctions injectives produisant un

nombre de bits fixe quelle que soit la taille du message en entrée

o Produisent une « empreinte » du message original (Message Digest)

o Exemple : Checksum

o Les nombres aléatoires o Utilisés pour la génération de clés

o Souvent un élément faible (génération pseudo-aléatoire)

o Problème de l ’initialisation

o Exemple : bruit thermique échantillonné

Page 16: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

Algorithmes de chiffrement (1)

o Chiffrement de flux (stream cipher) o Registres à décalage

o Chiffrement de bloc (block cipher)

o Chaînage des blocs

o Algorithmes à clé symétrique o KE=KD

o Algorithmes à clé publique (asymétrique) o KE est secret et KD est publique (ou l’inverse)

o KE et KD sont différents

Page 17: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

Algorithmes de chiffrement (2)

o DES : Data Encryption Standard (1973)

o Algorithme bloc à clé symétrique

o 56 bits de clé

o 64 bits de bloc

o Existe en version chaînée (Triple-DES)

o Le plus utilisé

E()

P :Texte Clair 64bits C: Texte Chiffré 64bits

KE : Clé 56+8 bits

Page 18: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

Algorithmes de chiffrement (3)

o DES : Principe o Une permutation initiale

o 16 tours de permutation/transposition/XOR (S-Box)

o Une permutation finale

o Si un bit change dans P, chaque bit de C à 50% de chance de changer

o Des clé faibles et demi-faibles

o Créé pour une implémentation matérielle o Performance au delà de 1GB/s sur VLSI

dans les années 80

Page 19: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

Algorithmes de chiffrement (4)

DES

Page 20: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

Algorithmes de chiffrement (5)

o Triple-DES : o Double clé DES

o Force : 128 bits

o Chiffrement : EDE ; Déchiffrement : DED

E()

P :Texte Clair 64bits C: Texte Chiffré 64bits

KE1

D() E()

KE2 KE1

Page 21: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

Algorithmes de chiffrement (6)

o Chaînage des chiffrements par blocs o ECB : Electronique Code Book : pas de chaînage

E KE()

Pi-1

Ci-1

E KE()

Pi

Ci

E KE()

Pi+1

Ci+1

D KE()

Pi-1

Ci-1

D KE()

Pi

Ci

D KE()

Pi+1

Ci+1

chiffrement déchiffrement

Page 22: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

Algorithmes de chiffrement (7)

o Chaînage des chiffrements par blocs o CBC : Cipher Block Chaining

E KE()

Pi-1

Ci-1

E KE()

Pi

Ci

E KE()

Pi+1

Ci+1

D KE()

Pi-1

Ci-1

D KE()

Pi

Ci

D KE()

Pi+1

Ci+1

chiffrement déchiffrement

Page 23: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

Algorithmes de chiffrement (8)

o AES : Advanced

Encryption

Standard (2001)

o Algorithme

publique

o Libre de droits

o De type bloc-

cipher de 128

bits

o Clés de 128,192

et 256 bits

o Rijndael

ohttp://www.moserware.com/2009/09/stick-figure-guide-to-advanced.html

Page 24: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

AES

Page 25: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

AES : Pseudo code

Cipher(byte in[4 * Nb], byte out[4 * Nb], word w[Nb * (Nr + 1)])

begin

bytestate[4,Nb]

state =in

AddRoundKey(state, w) // See Sec. 5.1.4

for round = 1 step 1 to Nr – 1

SubBytes(state) // See Sec. 5.1.1

ShiftRows(state) // See Sec. 5.1.2

MixColumns(state) // See Sec. 5.1.3

AddRoundKey(state, w + round * Nb)

end for

SubBytes(state)

ShiftRows(state)

AddRoundKey(state, w + Nr * Nb)

out = state

end

Key Length

(Nk words)

Block Size

(Nb words)

Number of

Rounds

(Nr)

AES-128 4 4 10

AES-192 6 4 12

AES-256 8 4 14

Page 26: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

AES : Matrice d’état

input bytes State array output bytes

in0 in4 in8 in12 s0,0 s0,1 s0,2 s0,3 out0 out4 out8 out12

in1 in5 in9 in13 s1,0 s1,1 s1,2 s1,3 out1 out5 out9 out13

in2 in6 in10 in14 s2,0 s2,1 s2,2 s2,3 out2 out6 out10 out14

in3 in7 in11 in15

?

s3,0 s3,1 s3,2 s3,3

?

out3 out7 out11 out15

Input bit sequence 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 …

Byte number 0 1 2 …

Bit numbers in byte 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 …

s[r, c] = in[r + 4c] for 0 r < 4 and 0 c < Nb,

out[r + 4c] = s[r, c] for 0 r < 4 and 0 c < Nb.

Chaque octet représente les coefficients d’un polynôme et les opérations sont effectuées sur GF(28).

L’addition est un XOR; La multiplication est le multiplication polynomiale modulo m(x) avec

1)( 348 xxxxxm

Page 27: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

AES : Subbytes

0,0s 1,0s 2,0s 3,0s '

0,0s '

1,0s '

2,0s '

3,0s

0,1s 1,1s 2,1s 3,1s '

0,1s '

1,1s '

2,1s '

3,1s

0,2s 1,2s 2,2s 3,2s '

0,2s '

1,2s '

2,2s '

3,2s

0,3s 1,3s 2,3s 3,3s '

0,3s '

1,3s '

2,3s '

3,3s

crs , '

,crs

S-Box

y

0 1 2 3 4 5 6 7 8 9 a b c d e f

0 63 7c 77 7b f2 6b 6f c5 30 01 67 2b fe d7 ab 76

1 ca 82 c9 7d fa 59 47 f0 ad d4 a2 af 9c a4 72 c0

2 b7 fd 93 26 36 3f f7 cc 34 a5 e5 f1 71 d8 31 15

3 04 c7 23 c3 18 96 05 9a 07 12 80 e2 eb 27 b2 75

4 09 83 2c 1a 1b 6e 5a a0 52 3b d6 b3 29 e3 2f 84

5 53 d1 00 ed 20 fc b1 5b 6a cb be 39 4a 4c 58 cf

6 d0 ef aa fb 43 4d 33 85 45 f9 02 7f 50 3c 9f a8

7 51 a3 40 8f 92 9d 38 f5 bc b6 da 21 10 ff f3 d2

8 cd 0c 13 ec 5f 97 44 17 c4 a7 7e 3d 64 5d 19 73

9 60 81 4f dc 22 2a 90 88 46 ee b8 14 de 5e 0b db

a e0 32 3a 0a 49 06 24 5c c2 d3 ac 62 91 95 e4 79

b e7 c8 37 6d 8d d5 4e a9 6c 56 f4 ea 65 7a ae 08

c ba 78 25 2e 1c a6 b4 c6 e8 dd 74 1f 4b bd 8b 8a

d 70 3e b5 66 48 03 f6 0e 61 35 57 b9 86 c1 1d 9e

e e1 f8 98 11 69 d9 8e 94 9b 1e 87 e9 ce 55 28 df

x

f 8c a1 89 0d bf e6 42 68 41 99 2d 0f b0 54 bb 16

La transformation est

composée d’une

inversion dans GF(28),

suivi d’une

transformation affine

inversible.

Page 28: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

AES : ShiftRows

S S ’

0,0s 1,0s 2,0s 3,0s 0,0s

1,0s 2,0s 3,0s

0,1s 1,1s 2,1s 3,1s 1,1s 2,1s 3,1s 0,1s

0,2s 1,2s 2,2s 3,2s 2,2s 3,2s 0,2s 1,2s

0,3s 1,3s 2,3s 3,3s 3,3s 0,3s 1,3s 2,3s

ShiftRows()

0,rs 1,rs 2,rs 3,rs '

0,rs

'

0,rs

'

2,rs '

3,rs '

1,rs

'

0,rs

Les lignes sont décalées cycliquement de 1 à 3 position selon leur rang

Page 29: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

AES : MixColumns

0,0s 1,0s 2,0s 3,0s '

0,0s '

1,0s '

2,0s '

3,0s

0,1s 1,1s 2,1s 3,1s '

0,1s '

1,1s '

2,1s '

3,1s

0,2s 1,2s 2,2s 3,2s '

0,2s '

1,2s '

2,2s '

3,2s

0,3s 1,3s 2,3s 3,3s '

0,3s '

1,3s '

2,3s '

3,3s

MixColumns()

cs ,0

cb ,0 cs ,1

cs ,2

cs ,2 cs ,3

cs ,2

'

,0 cs

'

,1 cs

'

,2 cs

'

,3 cs

Les colonnes sont considérées comme des polynômes à coefficients dans GF(28) et

multipliés modulo x4 + 1 par un polynôme fixe a(x), donné par :

a(x) = {03}x3 + {01}x2 + {01}x + {02} .

Page 30: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

AES : AddRoundKey

0,0s 1,0s 2,0s 3,0s '

0,0s '

1,0s '

2,0s '

3,0s

0,1s 1,1s 2,1s 3,1s '

0,1s '

1,1s '

2,1s '3,1s

0,2s 1,2s 2,2s 3,2s '

0,2s '

1,2s '

2,2s '

3,2s

0,3s 1,3s 2,3s 3,3s

lw 1lw 2lw 3lw

'

0,3s '

1,3s '

2,3s '

3,3s

cs ,0

cb ,0 cs ,1

cs ,2

cs ,2 cs ,3

cs ,2

'

,0 cs

'

,1 cs

'

,2 cs

'

,3 cs

wl+c

Nbroundl *

La clé est étendue (“expanded”) et l’on construit une clé de round adaptée. Elle est

utilisée dans AddRoundKey sous forme d’un XOR

Page 31: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

Algorithmes de chiffrement (9)

o RSA : Rivest/Shamir/Adleman (1978) o Algorithme bloc à clé publique

o Clé de longueur variable (>512 bits)

o Blocs de longueur variable

o Basée sur une fonction à un sens à gâchette

o E et D sont identiques; KE et KD sont différents

o Sécurité basée sur la difficulté de factoriser des grands nombres (>512 bits)

o Le plus utilisé (surtout en signature électronique)

o Lourd en calculs (arithmétique multi-précision)

Page 32: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

Algorithmes de chiffrement (10)

o RSA : Principe o L’émetteur chiffre avec la clé publique du récepteur

o Le récepteur déchiffre avec sa clé privée

o C = Pe modulo n

o P = Cd modulo n o Avec :

o n=p.q, p et q étant deux (grands) nombres premiers

o e un nombre premier avec le produit (p-1).(q-1)

o d un nombre tel que ((e.d)-1) soit divisible par (p-1).(q-1)

o n et e sont publics; p et q sont détruits; d est secret

o K Privée =(n,d) ;K Publique =(n,e)

Page 33: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

Algorithmes de chiffrement (11)

o Autres algorithmes à clé

publique :

o ElGamal

oArithmétique dans un corps fini

o Courbes elliptiques

oGéométrie dans un corps GF

Page 34: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

Courbes Elliptiques

o Une Courbe Elliptique est l’ensemble des solutions (x,y) à une équation de la forme:

o y2 = x3 + ax + b avec

4a3 + 27b2 <>0

o On définit une addition entre points sur ces courbes par :

Si P = (xP,yP) and Q = (xQ,yQ) non opposés l’un à l’autre (P<>-Q), alors P + Q = R avec s = (yP - yQ) / (xP - xQ) xR = s2 - xP - xQ yR = -yP + s(xP - xR) s est la pente de la droite PQ.

n Double de P si yP est non nul, alors 2P = R avec s = (3xP

2 + a) / (2yP ) xR = s2 - 2xP

yR = -yP + s(xP - xR)

Page 35: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

Courbes Elliptiques sur Fp

n Une Courbe Elliptique E(Zp), définie modulo un nombre premier p, est l’ensemble des solutions (x,y) à une équation de la forme:

n y2 = x3 + ax + b mod p avec

4a3 + 27b2 <>0 mob p

n Munie de l’addition précédemment définie et du point O appelé infini, forme un groupe. Notons que :

n P + O = O + P = P pour tout P E(Zp).

n Si P = (x, y) E(Zp), alors (x, y) + (x, -y) = O.

n Le point (x, -y) est noté –P.

Page 36: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

Courbes Elliptiques et Crypto

Groupe Zp* E(Zp)

Éléments du Groupe Entiers {1,2,..,p-1} Points (x,y) sur la courbe

E et le point O

Opération de Groupe Multiplication modulo p Addition de points

Notation Éléments : g,h

Multiplication : g*h

Inverse : g-1

Division : g/h

Exponentialisation : gh

Éléments : P,Q

Addition : P+Q

Inverse : -P

Soustraction : P-Q

Multiplication scalaire :

aP

Problème du logarithme

discret

Soit g Zp*

et h = ga mod p,

trouver a

Soit P E(Zp)

et Q = aP,

trouver a.

Page 37: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

Logarithme discret (Z17)

52

53

54 55

56

57

58

59

510

3

4 5

6

7

8

9

10

11

12 13 14

15

16

1

2

511

512

513

514

515

5n-1=516

Problème : trouver x tel que 5x=3 (mod17)

Page 38: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

Division Scalaire (CE/Fp)

Équation : y2=x3+x sur F23 (a=1,b=0) Points de la courbe : (0,0) (1,5) (1,18) (9,5) (9,18) (11,10) (11,13) (13,5) (13,18) (15,3) (15,20) (16,8) (16,15) (17,10) (17,13) (18,10) (18,13) (19,1) (19,22) (20,4) (20,19) (21,6) (21,17)

n nP n nP

1 (11,10) 13 (21,6)

2 (13,18) 14 (16,15)

3 (15,20) 15 (20,4)

4 (9,18) 16 (18,10)

5 (19,22) 17 (17,13)

6 (1,5) 18 (1,18)

7 (17,10) 19 (19,1)

8 (18,13) 20 (9,5)

9 (20,19) 21 (15,3)

10 (16,8) 22 (13,5)

11 (21,17) 23 (11,13)

12 (0,0) 24 O

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

Problème : trouver n tel que n(11,10)=(1,18)

Page 39: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

Algorithmes de Hash

o MD5 (Message Digest 5)

o Produit un Hash de 128 bits

o Traite des blocs de 512 bits

o SHA-1 (Secure Hash Algorithm 1)

o Produit un Hash de 160 bits

o Traite des blocs de 512 bits

o Autres algorithmes : N-Hash, MD2,

MD4 SNEFRU, etc.

Page 40: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

Crypto-Analyse

o Hypothèse : le crypto-analyste a une connaissance parfaite des algorithmes utilisés

o 3 principaux types d ’attaque: o Le crypto-analyste dispose uniquement du texte chiffré

o cryptogrammes de nombreux messages

o but : trouver les textes clairs, et éventuellement les clés

o Le crypto-analyste dispose du texte chiffré et du texte clair

o cryptogrammes de nombreux messages et textes clairs correspondants

o but : trouver les clés ou un algorithme pour déchiffrer

o Le crypto-analyste dispose du texte chiffré et du texte clair et peut choisir les textes clairs à chiffrer

o cryptogrammes de nombreux messages et textes clairs choisis correspondants

o but : trouver les clés ou un algorithme pour déchiffrer

Page 41: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

Sécurité des algorithmes (1)

o 4 façons de « casser » un algorithme

o Totale : un crypto-analyste découvre un

moyen de trouver la clé

o Déduction Globale : un crypto-analyste

découvre un algorithme pour déduire le

texte clair du texte chiffré sans connaître

la clé

o Déduction locale : un crypto-analyste découvre le texte clair d ’un texte chiffré

particulier sans connaître la clé

o Déduction d ’information : un crypto-

analyste découvre des informations

partielles sur la clé ou le texte clair

Page 42: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

Sécurité des algorithmes (2)

Un algorithme est inconditionnellement

sûr si, quelle que soit la quantité de

texte chiffré dont dispose le crypto-analyste, il n’y a pas assez

d’information pour découvrir le texte

clair.

o Seule la bande aléatoire répond à cette

condition

o Tous les autres algorithmes sont sensibles

à une attaque en force brute,i.e. en

essayant toutes les clés

Page 43: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

Sécurité des algorithmes (3)

Un algorithme est sûr au sens calculable (ou fort) si il ne peut

pas être cassé avec les ressources disponibles, soit

maintenant, soit dans le futur. o La quantité de données (chiffrée)

peut être trop importante

o La quantité de calcul nécessaire peut être trop importante

o Le stockage nécessaire peut être trop grand

Page 44: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

Sécurité des algorithmes (4)

o La force brute et l’espace des clés

o Si il faut 2 secondes pour casser 40 bits

o Il faut alors 35(*) heures pour casser 56 bits

o Et 1019 années pour casser 128 bits

o La taille de la clé est déterminée par

la durée souhaitée de la

confidentialité

o La technologie influe sur la taille des

clés

* Record 1999 : EFF DESCracker -56 bits -22h15mn

Page 45: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

Sécurité des algorithmes (5)

Si la complexité etait un liquide, le récipient pour

40 bits serait une cuillère

56 bits serait une petite piscine

128 bits serait la terre

Discours d’introduction de la Conférence RSA 1999 par Jim Bidzos

Page 46: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

Équivalence de résistance

Longueur de clé symétrique (DES)

Longueur de clé Asymétrique (RSA)

56 bits 384 bits

64 bits 512 bits

80 bits 768 bits

112 bits 1792 bits

128 bits 2304 bits

Page 47: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

Mais rassurez vous, vous n’êtes pas seuls…

WPA Cracker est un

cluster en ligne de

quatre-cents CPU qui va

permettre de tester une

phrase secrète

WPA/WPA2-PSK à travers

un dictionnaire de cent-

trente-cinq millions

d'entrées. Soit vingt à

quarante minutes qui

seront nécessaires, selon

l'offre choisie, pour réussir

à la casser, ou pas

Page 48: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

Echange de Secret

o Diffie-Hellman (1976)

A B Choisissent n , grand et premier, et g primitif modulo n

A B X=gx mod n

x aléatoire

A B Y=gy mod n

y aléatoire

A B Calcule k1=Yx mod n Calcule k2=Xy mod n

A B Utilisent K1=K2=gxy mod n comme secret partagé

Page 49: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

Signature électronique (1)

o RSA

A Calcule un Hash du message M destiné a Bob

A B M et X=RSA (Hash,K Privée Alice)

B Calcule Hash et calcule Y=RSA (X, K Publique Alice) ySi Y=Hash

yLe message est intègre yLe message provient de Alice

T Théo envoie K Publique Alice à Bob

Page 50: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

Signature électronique (2)

o Autres algorithmes

o DSA : Digital Signature Algorithm

o Hash chiffré par un algorithme à

clé symétrique

o ElGamal, Schnorr, ...

Page 51: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

Législation

Le matériel et le logiciel de

cryptographie font partis des

« Dual-Goods » régis par la

convention de Wassanar

o Assimilés à de l’armement

o Soumis à des

autorisations/restrictions d’importation, d’exportation et

d’usage

o En perpétuelle évolution

o Variable selon les pays

Page 52: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

Développements récents

o Cryptographie Quantique

Et vous trouvez

ça drôle?

Page 53: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

Cryptographie Quantique (1)

o Le seul chiffre absolument sur est

la bande aléatoire

o Le problème de la bande

aléatoire est son transport

o Comment s’assurer que la bande

n’a pas été copiée?

Page 54: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

Cryptographie Quantique (2)

o En mécanique quantique, l’observation perturbe

o Il est possible de détecter une

écoute

o En codant sur des états

quantiques, il est possible de

transmettre une clé aléatoire

o Expériences déjà réalisées sur

plusieurs kilomètres

o Bennet et Brossard, 84

Page 55: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

Cryptographie Quantique (3)

o Utiliser les propriété d’une

particule pour coder

o Eg: le photon et la polarisation

o Eg: une particule et son spin

Page 56: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

Cryptographie Quantique (4)

Repère Vertical « + » Repère Diagonal « x »

0 0 1 1

Codage par polarisation de photon (BB84)

Page 57: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

Cryptographie Quantique (5)

Génération

Page 58: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

Cryptographie Quantique (6)

Effet des filtres polarisants et des détecteurs

Filtre

« + » 0 1

50% 0

50% 1

50% 0

50% 1

Filtre

« x »

50% 0

50% 1

50% 0

50% 1 0 1

Détection : biréfringence (cristal de calcite) séparant les polarisations parallèle et orthogonales à l’axe du cristal ; Les photons de polarisation non parallèle ou orthogonale au cristal sont en

superposition quantique à la sortie.

Page 59: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

Cryptographie Quantique (7)

o Quantum key distribution: secret key

exchange

o Protocol

o Alice envoie a Bob une série de photon, et

Bob les détecte (utilisant x ou + au hasard)

o Alice indique à Bob la séquence de

schéma (+,x) utilisée: discussion publique (peut

être sur autre canal)

o Alice et Bob ne conservent que les

mesures valables

o Alice et Bob vérifient sur un échantillon la

validité de leur clef (échange de message chiffré)

Page 60: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

Cryptographie Quantique (8)

Sché

ma d’Alic

e

Bit d’Alice

Symbol

e émis

Détecte

ur de

Bob

Détecte

ur

Valide?

Bob

détecte

:

Bob

déduit

:

Bit

exact?

Clé

partagée

+

1

+ Oui 1 Oui 1

x Non

0 Non

1 Oui

0

+ Oui 0 Oui 0

x Non

0 Oui

1 Non

x

1

+ Non

1 Oui 1

0 Non

x Oui 1 Oui 1

0

+ Non

1 Non

0 Oui

x Oui 0 Oui 0

Ce q

ue B

ob r

eço

it:

Ech

ange p

ublic

de la b

ase

sur

un c

anal public

(e

g:

inte

rnet)

Page 61: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

Quantum key distribution – intercept & resend

Alice Josy Bob

Page 62: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

Cryptographie Quantique (8)

Schém

a d’Alice

Bit d’Alice Symbole

émis

Détecteur

de Josy

Josy

déduit:

Josy

emet:

Détecte

ur de

Bob :

Taux d’erreur

+

1

+ 1 + 0%

x

0 + 50%

1 + 50%

0

+ 0 + 0%

x

0 + 50%

1 + 50%

x

1

+

1 x 50%

0 x 50%

x 1 x 0%

0

+

1 x 50%

0 x 50%

x 0 x 0% Ce q

ue J

osy

inte

rcepte

et

re-é

met:

Page 63: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

Quantum key distribution

o How many bits do we need to detect an

observer?

o 2 basis. Alice chooses randomly, so does Josy o Each bit has a probability of (2x2-1)/(2x2)=3/4 to be wrongly

received

o Pd: probability of a successful transmission

o n=number of transmitted bits

o In order to be sure with a certainty Pd=0.999999999 that

there is no eavesdropper, only 72 bits are needed!

Page 64: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

Quantum cryptography attacks

o Man-In-the-middle

o Photon number splitting attack

o Hacking attack: random number

generator,…

o Denial of Service

Page 65: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

Conclusion

o La cryptographie permet d’implémenter des mécanismes de:

o Confidentialité (chiffrement)

o Intégrité et Authentification (Signature)

o La cryptographie évolue

o AES, Courbes elliptiques, Quantique

o Législation (pays, données autorisées)

o Technologie

Page 66: Sécurité des Réseaux - Ensimag...Sécurité des Réseaux Cryptographie Rök stone, Suède, 800 ac « The magic words are squeamish ossifrages » Sécurité des Réseaux 4MMSR -

Références

o Applied Cryptography

o Bruce Schneier - Wiley