Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf ·...
Transcript of Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf ·...
![Page 1: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/1.jpg)
Introduction aux protocoles cryptographiques
Thomas Genet
http://www.irisa.fr/celtique/genet/Crypt/
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 1 / 83
![Page 2: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/2.jpg)
Plan
Bibliographie
Partie I : protocoles crypto, mecanismes et proprietesI Trois mots de cryptographieI Proprietes de securite
F associees aux fonctions cryptographiquesF associees aux protocoles
I Principes de base des protocolesI Protocoles d’echange de clesI Protocoles d’authentificationI Protocole d’accord non-repudiableI Paiement electronique
F SET/CSET de VISA et MasterCardF � Monnaie electronique � : Bitcoin
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 2 / 83
![Page 3: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/3.jpg)
Plan (suite)
Partie II : protocoles crypto, attaques et verificationI Mises en garde
I Le paiement avec une carte bancaire a puce
I Les failles
I Construction des hypotheses de verification des protocolescryptographiques
I Le modele de Dolev-Yao
I Deux mots de verification
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 3 / 83
![Page 4: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/4.jpg)
Bibliographie
S. Goldwasser and M. Bellare. Lecture Notes on Cryptography.http://www.cs.ucsd.edu/users/mihir/papers/gb.html
J. Clark and J. Jacob. A survey of Authentication ProtocolLitterature. 1997.
http://www.cs.york.ac.uk/%7Ejac/PublishedPapers/reviewV1_1997.pdf
Jean-Paul Delahaye. Bitcoin, la cryptomonnaie.http://www.lifl.fr/~delahaye/pls/2013/241.pdf. 2013.
Veronique Cortier. Verification automatique des protocolescryptographiques. These de doctorat de l’Ecole Normale Superieurede Cachan 2003.http://www.loria.fr/~cortier/Papiers/Cortier-these.pdf
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 4 / 83
![Page 5: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/5.jpg)
Trois mots de cryptographie
Soient :
m,m1,m2 des messages
K une cle
A et B des agents
On note :
m1,m2 le message constitue de m1 et m2
{m}K le message m chiffre avec K .
A ↪→ B : m l’envoi par A d’un message m a B.
I (A) ↪→ B : m l’envoi d’un message m par I se faisant passer pour A
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 5 / 83
![Page 6: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/6.jpg)
Trois mots de cryptographie
Soient :
m,m1,m2 des messages
K une cle
A et B des agents
On note :
m1,m2 le message constitue de m1 et m2
{m}K le message m chiffre avec K .
A ↪→ B : m l’envoi par A d’un message m a B.
I (A) ↪→ B : m l’envoi d’un message m par I se faisant passer pour A
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 5 / 83
![Page 7: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/7.jpg)
Trois mots de cryptographie
Soient :
m,m1,m2 des messages
K une cle
A et B des agents
On note :
m1,m2 le message constitue de m1 et m2
{m}K le message m chiffre avec K .
A ↪→ B : m l’envoi par A d’un message m a B.
I (A) ↪→ B : m l’envoi d’un message m par I se faisant passer pour A
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 5 / 83
![Page 8: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/8.jpg)
Trois mots de cryptographie
Soient :
m,m1,m2 des messages
K une cle
A et B des agents
On note :
m1,m2 le message constitue de m1 et m2
{m}K le message m chiffre avec K .
A ↪→ B : m l’envoi par A d’un message m a B.
I (A) ↪→ B : m l’envoi d’un message m par I se faisant passer pour A
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 5 / 83
![Page 9: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/9.jpg)
Trois mots de cryptographie
Soient :
m,m1,m2 des messages
K une cle
A et B des agents
On note :
m1,m2 le message constitue de m1 et m2
{m}K le message m chiffre avec K .
A ↪→ B : m l’envoi par A d’un message m a B.
I (A) ↪→ B : m l’envoi d’un message m par I se faisant passer pour A
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 5 / 83
![Page 10: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/10.jpg)
Trois mots de cryptographie
Chiffrement a cle asymetrique (Ex. RSA, PGP, . . . ) :
I la cle publique (KA) donnee a tous les acteursI la cle privee (K−1
A ) connue de A seulI {{m}KA
}K−1A
= m = {{m}K−1A}KA
I inutilisable pour chiffrer de gros volumes de donneesI deux cles par acteur
Chiffrement a cle symetrique (Ex. DES) :
I KAB ≡ K−1AB
I bon rapport volume de donnees a chiffrertemps de chiffrement
I une cle par couple d’acteurs (C 2n cles)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 6 / 83
![Page 11: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/11.jpg)
Trois mots de cryptographie
Chiffrement a cle asymetrique (Ex. RSA, PGP, . . . ) :
I la cle publique (KA) donnee a tous les acteursI la cle privee (K−1
A ) connue de A seulI {{m}KA
}K−1A
= m = {{m}K−1A}KA
I inutilisable pour chiffrer de gros volumes de donneesI deux cles par acteur
Chiffrement a cle symetrique (Ex. DES) :
I KAB ≡ K−1AB
I bon rapport volume de donnees a chiffrertemps de chiffrement
I une cle par couple d’acteurs (C 2n cles)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 6 / 83
![Page 12: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/12.jpg)
Trois mots de cryptographie
Chiffrement a cle asymetrique (Ex. RSA, PGP, . . . ) :
I la cle publique (KA) donnee a tous les acteurs
I la cle privee (K−1A ) connue de A seul
I {{m}KA}K−1
A= m = {{m}K−1
A}KA
I inutilisable pour chiffrer de gros volumes de donneesI deux cles par acteur
Chiffrement a cle symetrique (Ex. DES) :
I KAB ≡ K−1AB
I bon rapport volume de donnees a chiffrertemps de chiffrement
I une cle par couple d’acteurs (C 2n cles)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 6 / 83
![Page 13: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/13.jpg)
Trois mots de cryptographie
Chiffrement a cle asymetrique (Ex. RSA, PGP, . . . ) :
I la cle publique (KA) donnee a tous les acteursI la cle privee (K−1
A ) connue de A seul
I {{m}KA}K−1
A= m = {{m}K−1
A}KA
I inutilisable pour chiffrer de gros volumes de donneesI deux cles par acteur
Chiffrement a cle symetrique (Ex. DES) :
I KAB ≡ K−1AB
I bon rapport volume de donnees a chiffrertemps de chiffrement
I une cle par couple d’acteurs (C 2n cles)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 6 / 83
![Page 14: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/14.jpg)
Trois mots de cryptographie
Chiffrement a cle asymetrique (Ex. RSA, PGP, . . . ) :
I la cle publique (KA) donnee a tous les acteursI la cle privee (K−1
A ) connue de A seulI {{m}KA
}K−1A
= m = {{m}K−1A}KA
I inutilisable pour chiffrer de gros volumes de donneesI deux cles par acteur
Chiffrement a cle symetrique (Ex. DES) :
I KAB ≡ K−1AB
I bon rapport volume de donnees a chiffrertemps de chiffrement
I une cle par couple d’acteurs (C 2n cles)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 6 / 83
![Page 15: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/15.jpg)
Trois mots de cryptographie
Chiffrement a cle asymetrique (Ex. RSA, PGP, . . . ) :
I la cle publique (KA) donnee a tous les acteursI la cle privee (K−1
A ) connue de A seulI {{m}KA
}K−1A
= m = {{m}K−1A}KA
I inutilisable pour chiffrer de gros volumes de donnees
I deux cles par acteur
Chiffrement a cle symetrique (Ex. DES) :
I KAB ≡ K−1AB
I bon rapport volume de donnees a chiffrertemps de chiffrement
I une cle par couple d’acteurs (C 2n cles)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 6 / 83
![Page 16: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/16.jpg)
Trois mots de cryptographie
Chiffrement a cle asymetrique (Ex. RSA, PGP, . . . ) :
I la cle publique (KA) donnee a tous les acteursI la cle privee (K−1
A ) connue de A seulI {{m}KA
}K−1A
= m = {{m}K−1A}KA
I inutilisable pour chiffrer de gros volumes de donneesI deux cles par acteur
Chiffrement a cle symetrique (Ex. DES) :
I KAB ≡ K−1AB
I bon rapport volume de donnees a chiffrertemps de chiffrement
I une cle par couple d’acteurs (C 2n cles)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 6 / 83
![Page 17: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/17.jpg)
Trois mots de cryptographie
Chiffrement a cle asymetrique (Ex. RSA, PGP, . . . ) :
I la cle publique (KA) donnee a tous les acteursI la cle privee (K−1
A ) connue de A seulI {{m}KA
}K−1A
= m = {{m}K−1A}KA
I inutilisable pour chiffrer de gros volumes de donneesI deux cles par acteur
Chiffrement a cle symetrique (Ex. DES) :
I KAB ≡ K−1AB
I bon rapport volume de donnees a chiffrertemps de chiffrement
I une cle par couple d’acteurs (C 2n cles)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 6 / 83
![Page 18: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/18.jpg)
Trois mots de cryptographie
Chiffrement a cle asymetrique (Ex. RSA, PGP, . . . ) :
I la cle publique (KA) donnee a tous les acteursI la cle privee (K−1
A ) connue de A seulI {{m}KA
}K−1A
= m = {{m}K−1A}KA
I inutilisable pour chiffrer de gros volumes de donneesI deux cles par acteur
Chiffrement a cle symetrique (Ex. DES) :
I KAB ≡ K−1AB
I bon rapport volume de donnees a chiffrertemps de chiffrement
I une cle par couple d’acteurs (C 2n cles)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 6 / 83
![Page 19: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/19.jpg)
Trois mots de cryptographie
Chiffrement a cle asymetrique (Ex. RSA, PGP, . . . ) :
I la cle publique (KA) donnee a tous les acteursI la cle privee (K−1
A ) connue de A seulI {{m}KA
}K−1A
= m = {{m}K−1A}KA
I inutilisable pour chiffrer de gros volumes de donneesI deux cles par acteur
Chiffrement a cle symetrique (Ex. DES) :
I KAB ≡ K−1AB
I bon rapport volume de donnees a chiffrertemps de chiffrement
I une cle par couple d’acteurs (C 2n cles)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 6 / 83
![Page 20: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/20.jpg)
Trois mots de cryptographie
Chiffrement a cle asymetrique (Ex. RSA, PGP, . . . ) :
I la cle publique (KA) donnee a tous les acteursI la cle privee (K−1
A ) connue de A seulI {{m}KA
}K−1A
= m = {{m}K−1A}KA
I inutilisable pour chiffrer de gros volumes de donneesI deux cles par acteur
Chiffrement a cle symetrique (Ex. DES) :
I KAB ≡ K−1AB
I bon rapport volume de donnees a chiffrertemps de chiffrement
I une cle par couple d’acteurs (C 2n cles)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 6 / 83
![Page 21: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/21.jpg)
Trois mots de cryptographie
Fonctions de hachage (Ex. SHA, MD4, MD5, . . . )
I | hash(d) | << | d |
et statistiquement :
I ∀d1, d2 : hash(d1) 6= hash(d2) si d1 6= d2
I non inversible : hash−1 difficile a calculer
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 7 / 83
![Page 22: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/22.jpg)
Trois mots de cryptographie
Fonctions de hachage (Ex. SHA, MD4, MD5, . . . )
I | hash(d) | << | d |
et statistiquement :
I ∀d1, d2 : hash(d1) 6= hash(d2) si d1 6= d2
I non inversible : hash−1 difficile a calculer
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 7 / 83
![Page 23: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/23.jpg)
Trois mots de cryptographie
Fonctions de hachage (Ex. SHA, MD4, MD5, . . . )
I | hash(d) | << | d |
et statistiquement :
I ∀d1, d2 : hash(d1) 6= hash(d2) si d1 6= d2
I non inversible : hash−1 difficile a calculer
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 7 / 83
![Page 24: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/24.jpg)
Trois mots de cryptographie
Fonctions de hachage (Ex. SHA, MD4, MD5, . . . )
I | hash(d) | << | d |
et statistiquement :
I ∀d1, d2 : hash(d1) 6= hash(d2) si d1 6= d2
I non inversible : hash−1 difficile a calculer
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 7 / 83
![Page 25: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/25.jpg)
Trois mots de cryptographie
Fonctions de hachage (Ex. SHA, MD4, MD5, . . . )
I | hash(d) | << | d |
et statistiquement :
I ∀d1, d2 : hash(d1) 6= hash(d2) si d1 6= d2
I non inversible : hash−1 difficile a calculer
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 7 / 83
![Page 26: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/26.jpg)
Interlude : RSA pour les nuls
KB = (e = 1367, n = 8633)
K−1B = (e−1 = 5735)
m = 8000
Chiffrement{m}KB
= me mod n= 80001367 mod 8633= 7633
Dechiffrement
{{m}KB}K−1
B= (me)e
−1mod n
= 76335735 mod 8633= 8000
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 8 / 83
![Page 27: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/27.jpg)
Interlude : RSA pour les nuls
KB = (e = 1367, n = 8633)
K−1B = (e−1 = 5735)
m = 8000
Chiffrement{m}KB
= me mod n= 80001367 mod 8633= 7633
Dechiffrement
{{m}KB}K−1
B= (me)e
−1mod n
= 76335735 mod 8633= 8000
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 8 / 83
![Page 28: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/28.jpg)
Interlude : RSA pour les nuls
KB = (e = 1367, n = 8633)
K−1B = (e−1 = 5735)
m = 8000
Chiffrement{m}KB
= me mod n= 80001367 mod 8633= 7633
Dechiffrement
{{m}KB}K−1
B= (me)e
−1mod n
= 76335735 mod 8633= 8000
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 8 / 83
![Page 29: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/29.jpg)
Proprietes associees a la cryptographie
ConfidentialiteI {“4976 0974 2373 7788”}KB
I {recette teurgoule.ps}KAB
Authentification de message (Signature electronique)
I “[email protected]”, { “[email protected]” }K−1genet
I toto.gif, { hash(toto.gif) }K−1genet
IntegriteI Le contenu m d’un message chiffre {m}K ne peut etre modifie sans K
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 9 / 83
![Page 30: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/30.jpg)
Proprietes associees a la cryptographie
ConfidentialiteI {“4976 0974 2373 7788”}KB
I {recette teurgoule.ps}KAB
Authentification de message (Signature electronique)
I “[email protected]”, { “[email protected]” }K−1genet
I toto.gif, { hash(toto.gif) }K−1genet
IntegriteI Le contenu m d’un message chiffre {m}K ne peut etre modifie sans K
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 9 / 83
![Page 31: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/31.jpg)
Proprietes associees a la cryptographie
ConfidentialiteI {“4976 0974 2373 7788”}KB
I {recette teurgoule.ps}KAB
Authentification de message (Signature electronique)
I “[email protected]”, { “[email protected]” }K−1genet
I toto.gif, { hash(toto.gif) }K−1genet
IntegriteI Le contenu m d’un message chiffre {m}K ne peut etre modifie sans K
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 9 / 83
![Page 32: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/32.jpg)
Proprietes associees a la cryptographie
ConfidentialiteI {“4976 0974 2373 7788”}KB
I {recette teurgoule.ps}KAB
Authentification de message (Signature electronique)
I “[email protected]”, { “[email protected]” }K−1genet
I toto.gif, { hash(toto.gif) }K−1genet
IntegriteI Le contenu m d’un message chiffre {m}K ne peut etre modifie sans K
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 9 / 83
![Page 33: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/33.jpg)
Proprietes des protocoles crypto
Les principales proprietes sont
Secret
Authentification d’un message (ou d’une entite)
Fraıcheur/anti-rejeu
Accord non repudiable
Equite
Anonymat
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 10 / 83
![Page 34: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/34.jpg)
Applications des protocoles crypto
Quelques applications :
Communication secrete (Ex : SSL de https, SSH, GSM)
Authentification d’agents (Ex : login, CAS/SSO, GSM)
Signature de contrats electroniques
Paiement bancaire par carte a puce
Paiement bancaire en ligne (transactions electroniques)
Paiement bancaire hors ligne (monnaie electronique)
Chaınes de television payantes
Vote electronique
. . .
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 11 / 83
![Page 35: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/35.jpg)
Applications des protocoles crypto
Quelques applications :
Communication secrete (Ex : SSL de https, SSH, GSM)
Authentification d’agents (Ex : login, CAS/SSO, GSM)
Signature de contrats electroniques
Paiement bancaire par carte a puce
Paiement bancaire en ligne (transactions electroniques)
Paiement bancaire hors ligne (monnaie electronique)
Chaınes de television payantes
Vote electronique
. . .
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 11 / 83
![Page 36: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/36.jpg)
Applications des protocoles crypto
Quelques applications :
Communication secrete (Ex : SSL de https, SSH, GSM)
Authentification d’agents (Ex : login, CAS/SSO, GSM)
Signature de contrats electroniques
Paiement bancaire par carte a puce
Paiement bancaire en ligne (transactions electroniques)
Paiement bancaire hors ligne (monnaie electronique)
Chaınes de television payantes
Vote electronique
. . .
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 11 / 83
![Page 37: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/37.jpg)
Applications des protocoles crypto
Quelques applications :
Communication secrete (Ex : SSL de https, SSH, GSM)
Authentification d’agents (Ex : login, CAS/SSO, GSM)
Signature de contrats electroniques
Paiement bancaire par carte a puce
Paiement bancaire en ligne (transactions electroniques)
Paiement bancaire hors ligne (monnaie electronique)
Chaınes de television payantes
Vote electronique
. . .
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 11 / 83
![Page 38: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/38.jpg)
Applications des protocoles crypto
Quelques applications :
Communication secrete (Ex : SSL de https, SSH, GSM)
Authentification d’agents (Ex : login, CAS/SSO, GSM)
Signature de contrats electroniques
Paiement bancaire par carte a puce
Paiement bancaire en ligne (transactions electroniques)
Paiement bancaire hors ligne (monnaie electronique)
Chaınes de television payantes
Vote electronique
. . .
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 11 / 83
![Page 39: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/39.jpg)
Applications des protocoles crypto
Quelques applications :
Communication secrete (Ex : SSL de https, SSH, GSM)
Authentification d’agents (Ex : login, CAS/SSO, GSM)
Signature de contrats electroniques
Paiement bancaire par carte a puce
Paiement bancaire en ligne (transactions electroniques)
Paiement bancaire hors ligne (monnaie electronique)
Chaınes de television payantes
Vote electronique
. . .
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 11 / 83
![Page 40: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/40.jpg)
Applications des protocoles crypto
Quelques applications :
Communication secrete (Ex : SSL de https, SSH, GSM)
Authentification d’agents (Ex : login, CAS/SSO, GSM)
Signature de contrats electroniques
Paiement bancaire par carte a puce
Paiement bancaire en ligne (transactions electroniques)
Paiement bancaire hors ligne (monnaie electronique)
Chaınes de television payantes
Vote electronique
. . .
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 11 / 83
![Page 41: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/41.jpg)
Applications des protocoles crypto
Quelques applications :
Communication secrete (Ex : SSL de https, SSH, GSM)
Authentification d’agents (Ex : login, CAS/SSO, GSM)
Signature de contrats electroniques
Paiement bancaire par carte a puce
Paiement bancaire en ligne (transactions electroniques)
Paiement bancaire hors ligne (monnaie electronique)
Chaınes de television payantes
Vote electronique
. . .
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 11 / 83
![Page 42: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/42.jpg)
Definitions
Definition (Secret) Un protocole assure le secret d’une donnee s si unintrus ne peut pas deduire s.
(s’il peut choisir s ca n’est pas une attaque sur le secret)
Definition (Authentification de message) Un protocole permet a un agentA d’authentifier un message m si A peut connaıtre de facon surel’emetteur de m.
Definition (Authentification d’entite) Un protocole permet a un agent Ad’authentifier un agent B si a la fin d’une session reussie, A a la garantiequ’il a bien realise le protocole avec B.
Definition (Fraıcheur) Pendant une session de protocole, une donnee estfraıche si l’on peut garantir qu’elle a ete emise specifiquement pour cettesession par un des acteurs.
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 12 / 83
![Page 43: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/43.jpg)
Definitions
Definition (Secret) Un protocole assure le secret d’une donnee s si unintrus ne peut pas deduire s.
(s’il peut choisir s ca n’est pas une attaque sur le secret)
Definition (Authentification de message) Un protocole permet a un agentA d’authentifier un message m si A peut connaıtre de facon surel’emetteur de m.
Definition (Authentification d’entite) Un protocole permet a un agent Ad’authentifier un agent B si a la fin d’une session reussie, A a la garantiequ’il a bien realise le protocole avec B.
Definition (Fraıcheur) Pendant une session de protocole, une donnee estfraıche si l’on peut garantir qu’elle a ete emise specifiquement pour cettesession par un des acteurs.
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 12 / 83
![Page 44: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/44.jpg)
Definitions
Definition (Secret) Un protocole assure le secret d’une donnee s si unintrus ne peut pas deduire s.
(s’il peut choisir s ca n’est pas une attaque sur le secret)
Definition (Authentification de message) Un protocole permet a un agentA d’authentifier un message m si A peut connaıtre de facon surel’emetteur de m.
Definition (Authentification d’entite) Un protocole permet a un agent Ad’authentifier un agent B si a la fin d’une session reussie, A a la garantiequ’il a bien realise le protocole avec B.
Definition (Fraıcheur) Pendant une session de protocole, une donnee estfraıche si l’on peut garantir qu’elle a ete emise specifiquement pour cettesession par un des acteurs.
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 12 / 83
![Page 45: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/45.jpg)
Definitions
Definition (Secret) Un protocole assure le secret d’une donnee s si unintrus ne peut pas deduire s.
(s’il peut choisir s ca n’est pas une attaque sur le secret)
Definition (Authentification de message) Un protocole permet a un agentA d’authentifier un message m si A peut connaıtre de facon surel’emetteur de m.
Definition (Authentification d’entite) Un protocole permet a un agent Ad’authentifier un agent B si a la fin d’une session reussie, A a la garantiequ’il a bien realise le protocole avec B.
Definition (Fraıcheur) Pendant une session de protocole, une donnee estfraıche si l’on peut garantir qu’elle a ete emise specifiquement pour cettesession par un des acteurs.
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 12 / 83
![Page 46: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/46.jpg)
Definitions
Definition (Secret) Un protocole assure le secret d’une donnee s si unintrus ne peut pas deduire s.
(s’il peut choisir s ca n’est pas une attaque sur le secret)
Definition (Authentification de message) Un protocole permet a un agentA d’authentifier un message m si A peut connaıtre de facon surel’emetteur de m.
Definition (Authentification d’entite) Un protocole permet a un agent Ad’authentifier un agent B si a la fin d’une session reussie, A a la garantiequ’il a bien realise le protocole avec B.
Definition (Fraıcheur) Pendant une session de protocole, une donnee estfraıche si l’on peut garantir qu’elle a ete emise specifiquement pour cettesession par un des acteurs.
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 12 / 83
![Page 47: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/47.jpg)
Principes de base des protocoles
Envoi d’un secret de B a A
Premier essai
1. B ↪→ A : {s}KA
si la cle KA et {}KAsont robustes, seul A peut lire s.
Mais de qui vient le secret s ?
Deuxieme essai (avec tentative d’authentification)1. B ↪→ A : {B, s}KA
Facile a detourner par un intrus :1. I (B) ↪→ A : {B, sI}KA
sI est connu de I et accepte par A comme venant de B !
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 13 / 83
![Page 48: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/48.jpg)
Principes de base des protocoles
Envoi d’un secret de B a A
Premier essai
1. B ↪→ A : {s}KA
si la cle KA et {}KAsont robustes, seul A peut lire s.
Mais de qui vient le secret s ?
Deuxieme essai (avec tentative d’authentification)1. B ↪→ A : {B, s}KA
Facile a detourner par un intrus :1. I (B) ↪→ A : {B, sI}KA
sI est connu de I et accepte par A comme venant de B !
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 13 / 83
![Page 49: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/49.jpg)
Principes de base des protocoles
Envoi d’un secret de B a A
Premier essai
1. B ↪→ A : {s}KA
si la cle KA et {}KAsont robustes, seul A peut lire s.
Mais de qui vient le secret s ?
Deuxieme essai (avec tentative d’authentification)1. B ↪→ A : {B, s}KA
Facile a detourner par un intrus :1. I (B) ↪→ A : {B, sI}KA
sI est connu de I et accepte par A comme venant de B !
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 13 / 83
![Page 50: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/50.jpg)
Principes de base des protocoles
Envoi d’un secret de B a A
Premier essai
1. B ↪→ A : {s}KA
si la cle KA et {}KAsont robustes, seul A peut lire s.
Mais de qui vient le secret s ?
Deuxieme essai (avec tentative d’authentification)1. B ↪→ A : {B, s}KA
Facile a detourner par un intrus :1. I (B) ↪→ A : {B, sI}KA
sI est connu de I et accepte par A comme venant de B !
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 13 / 83
![Page 51: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/51.jpg)
Principes de base des protocoles
Envoi d’un secret de B a A
Premier essai
1. B ↪→ A : {s}KA
si la cle KA et {}KAsont robustes, seul A peut lire s.
Mais de qui vient le secret s ?
Deuxieme essai (avec tentative d’authentification)1. B ↪→ A : {B, s}KA
Facile a detourner par un intrus :1. I (B) ↪→ A : {B, sI}KA
sI est connu de I et accepte par A comme venant de B !
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 13 / 83
![Page 52: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/52.jpg)
Principes de base des protocoles
Envoi d’un secret de B a A
Troisieme essai (authentification par signature)
1. B ↪→ A : {B, s, {s}K−1B}KA
Rmq : solution avec des cles symetriques (canal chiffre)1. B ↪→ A : {B, s}KAB
si KAB partagee par A et BProprietes attendues :
s secret
A authentifie s comme etant emis par B
Mais I peut faire accepter de nouveau s (par rejeu) :
Cles asymetriques Cles symetriques1. B ↪→ A : {B, s, {s}K−1
B}KA
2. I (B) ↪→ A : {B, s, {s}K−1B}KA
1. B ↪→ A : {B, s}KAB
2. I (B) ↪→ A : {B, s}KAB
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 14 / 83
![Page 53: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/53.jpg)
Principes de base des protocoles
Envoi d’un secret de B a A
Troisieme essai (authentification par signature)1. B ↪→ A : {B, s, {s}K−1
B}KA
Rmq : solution avec des cles symetriques (canal chiffre)1. B ↪→ A : {B, s}KAB
si KAB partagee par A et BProprietes attendues :
s secret
A authentifie s comme etant emis par B
Mais I peut faire accepter de nouveau s (par rejeu) :
Cles asymetriques Cles symetriques1. B ↪→ A : {B, s, {s}K−1
B}KA
2. I (B) ↪→ A : {B, s, {s}K−1B}KA
1. B ↪→ A : {B, s}KAB
2. I (B) ↪→ A : {B, s}KAB
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 14 / 83
![Page 54: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/54.jpg)
Principes de base des protocoles
Envoi d’un secret de B a A
Troisieme essai (authentification par signature)1. B ↪→ A : {B, s, {s}K−1
B}KA
Rmq : solution avec des cles symetriques (canal chiffre)1. B ↪→ A : {B, s}KAB
si KAB partagee par A et B
Proprietes attendues :
s secret
A authentifie s comme etant emis par B
Mais I peut faire accepter de nouveau s (par rejeu) :
Cles asymetriques Cles symetriques1. B ↪→ A : {B, s, {s}K−1
B}KA
2. I (B) ↪→ A : {B, s, {s}K−1B}KA
1. B ↪→ A : {B, s}KAB
2. I (B) ↪→ A : {B, s}KAB
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 14 / 83
![Page 55: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/55.jpg)
Principes de base des protocoles
Envoi d’un secret de B a A
Troisieme essai (authentification par signature)1. B ↪→ A : {B, s, {s}K−1
B}KA
Rmq : solution avec des cles symetriques (canal chiffre)1. B ↪→ A : {B, s}KAB
si KAB partagee par A et BProprietes attendues :
s secret
A authentifie s comme etant emis par B
Mais I peut faire accepter de nouveau s (par rejeu) :
Cles asymetriques Cles symetriques1. B ↪→ A : {B, s, {s}K−1
B}KA
2. I (B) ↪→ A : {B, s, {s}K−1B}KA
1. B ↪→ A : {B, s}KAB
2. I (B) ↪→ A : {B, s}KAB
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 14 / 83
![Page 56: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/56.jpg)
Principes de base des protocoles
Envoi d’un secret de B a A
Troisieme essai (authentification par signature)1. B ↪→ A : {B, s, {s}K−1
B}KA
Rmq : solution avec des cles symetriques (canal chiffre)1. B ↪→ A : {B, s}KAB
si KAB partagee par A et BProprietes attendues :
s secret
A authentifie s comme etant emis par B
Mais I peut faire accepter de nouveau s (par rejeu) :
Cles asymetriques Cles symetriques1. B ↪→ A : {B, s, {s}K−1
B}KA
2. I (B) ↪→ A : {B, s, {s}K−1B}KA
1. B ↪→ A : {B, s}KAB
2. I (B) ↪→ A : {B, s}KAB
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 14 / 83
![Page 57: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/57.jpg)
Principes de base des protocoles
Envoi d’un secret de B a A
Quatrieme essai (secret, authentification et fraıcheur) :
On utilise un nombre aleatoire frais : un nonce NA
1. A ↪→ B : {A,B,NA}KB“Challenge” de A pour B
2. B ↪→ A : {A,B,NA, s}KAReponse de B au challenge
Proprietes attendues :
s secret
NA frais et donc {A,B,NA, s}KAfrais
A authentifie s comme etant emis par B
A authentifie B lors de la session.
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 15 / 83
![Page 58: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/58.jpg)
Principes de base des protocoles
Envoi d’un secret de B a A
Quatrieme essai (secret, authentification et fraıcheur) :
On utilise un nombre aleatoire frais : un nonce NA
1. A ↪→ B : {A,B,NA}KB“Challenge” de A pour B
2. B ↪→ A : {A,B,NA, s}KAReponse de B au challenge
Proprietes attendues :
s secret
NA frais et donc {A,B,NA, s}KAfrais
A authentifie s comme etant emis par B
A authentifie B lors de la session.
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 15 / 83
![Page 59: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/59.jpg)
Principes de base des protocoles
Envoi d’un secret de B a A
Quatrieme essai (secret, authentification et fraıcheur) :
On utilise un nombre aleatoire frais : un nonce NA
1. A ↪→ B : {A,B,NA}KB“Challenge” de A pour B
2. B ↪→ A : {A,B,NA, s}KAReponse de B au challenge
Proprietes attendues :
s secret
NA frais et donc {A,B,NA, s}KAfrais
A authentifie s comme etant emis par B
A authentifie B lors de la session.
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 15 / 83
![Page 60: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/60.jpg)
Principes de base des protocoles
Envoi d’un secret de B a A
Quatrieme essai (secret, authentification et fraıcheur) :
On utilise un nombre aleatoire frais : un nonce NA
1. A ↪→ B : {A,B,NA}KB“Challenge” de A pour B
2. B ↪→ A : {A,B,NA, s}KAReponse de B au challenge
Proprietes attendues :
s secret
NA frais et donc {A,B,NA, s}KAfrais
A authentifie s comme etant emis par B
A authentifie B lors de la session.
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 15 / 83
![Page 61: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/61.jpg)
Principes de base des protocoles
Envoi d’un secret de B a A
Quatrieme essai (secret, authentification et fraıcheur) :
On utilise un nombre aleatoire frais : un nonce NA
1. A ↪→ B : {A,B,NA}KB“Challenge” de A pour B
2. B ↪→ A : {A,B,NA, s}KAReponse de B au challenge
Proprietes attendues :
s secret
NA frais et donc {A,B,NA, s}KAfrais
A authentifie s comme etant emis par B
A authentifie B lors de la session.
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 15 / 83
![Page 62: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/62.jpg)
Principes de base des protocoles
Envoi d’un secret de B a A
Quatrieme essai (secret, authentification et fraıcheur) :
On utilise un nombre aleatoire frais : un nonce NA
1. A ↪→ B : {A,B,NA}KB“Challenge” de A pour B
2. B ↪→ A : {A,B,NA, s}KAReponse de B au challenge
Proprietes attendues :
s secret
NA frais et donc {A,B,NA, s}KAfrais
A authentifie s comme etant emis par B
A authentifie B lors de la session.
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 15 / 83
![Page 63: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/63.jpg)
Principes de base des protocoles
Envoi d’un secret de B a A
Quatrieme essai (secret, authentification et fraıcheur) :
On utilise un nombre aleatoire frais : un nonce NA
1. A ↪→ B : {A,B,NA}KB“Challenge” de A pour B
2. B ↪→ A : {A,B,NA, s}KAReponse de B au challenge
Proprietes attendues :
s secret
NA frais et donc {A,B,NA, s}KAfrais
A authentifie s comme etant emis par B
A authentifie B lors de la session.
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 15 / 83
![Page 64: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/64.jpg)
Principes de base des protocoles
Envoi d’un secret de B a A
Quatrieme essai (secret, authentification et fraıcheur) :
On utilise un nombre aleatoire frais : un nonce NA
1. A ↪→ B : {A,B,NA}KB“Challenge” de A pour B
2. B ↪→ A : {A,B,NA, s}KAReponse de B au challenge
Proprietes attendues :
s secret
NA frais et donc {A,B,NA, s}KAfrais
A authentifie s comme etant emis par B
A authentifie B lors de la session.
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 15 / 83
![Page 65: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/65.jpg)
Principes de base des protocoles
Envoi d’un secret de B a A
Quatrieme essai (secret, authentification et fraıcheur) :
On utilise un nombre aleatoire frais : un nonce NA
1. A ↪→ B : {A,B,NA}KB“Challenge” de A pour B
2. B ↪→ A : {A,B,NA, s}KAReponse de B au challenge
Proprietes attendues :
s secret
NA frais et donc {A,B,NA, s}KAfrais
A authentifie s comme etant emis par B
A authentifie B lors de la session.
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 15 / 83
![Page 66: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/66.jpg)
Principes de base des protocoles
Envoi d’un secret de B a A
Solution similaire avec des cles symetriques :
1. A ↪→ B : {A,B,NA}KAB“Challenge” de A pour B
2. B ↪→ A : {A,B,NA, s}KABReponse de B au challenge
Qu’il s’agisse de cles symetriques (KAB) ou asymetriques (KA,KB) :
un echange de cles prealable est necessaire !
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 16 / 83
![Page 67: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/67.jpg)
Principes de base des protocoles
Envoi d’un secret de B a A
Solution similaire avec des cles symetriques :
1. A ↪→ B : {A,B,NA}KAB“Challenge” de A pour B
2. B ↪→ A : {A,B,NA, s}KABReponse de B au challenge
Qu’il s’agisse de cles symetriques (KAB) ou asymetriques (KA,KB) :
un echange de cles prealable est necessaire !
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 16 / 83
![Page 68: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/68.jpg)
Protocoles d’echange de cles
Echange d’une cle symetrique avec un tiers de confiance S
(Extrait de Needham-Schroeder Symmetric Key Protocol)
1. A ↪→ S : A,B,NA
2. S ↪→ A : {NA,B,KAB , {KAB ,A}KBS}KAS
3. A ↪→ B : {KAB ,A}KBS
Proprietes attendues :
secret de KAB , partage entre S , A et B
fraıcheur de KAB (pour A mais pas pour B)
authentification des messages emis par S pour A et B
A authentifie S
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 17 / 83
![Page 69: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/69.jpg)
Protocoles d’echange de cles
Echange d’une cle symetrique avec un tiers de confiance S
(Extrait de Needham-Schroeder Symmetric Key Protocol)
1. A ↪→ S : A,B,NA
2. S ↪→ A : {NA,B,KAB , {KAB ,A}KBS}KAS
3. A ↪→ B : {KAB ,A}KBS
Proprietes attendues :
secret de KAB , partage entre S , A et B
fraıcheur de KAB (pour A mais pas pour B)
authentification des messages emis par S pour A et B
A authentifie S
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 17 / 83
![Page 70: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/70.jpg)
Protocoles d’echange de cles
Echange d’une cle symetrique avec un tiers de confiance S
(Extrait de Needham-Schroeder Symmetric Key Protocol)
1. A ↪→ S : A,B,NA
2. S ↪→ A : {NA,B,KAB , {KAB ,A}KBS}KAS
3. A ↪→ B : {KAB ,A}KBS
Proprietes attendues :
secret de KAB , partage entre S , A et B
fraıcheur de KAB (pour A mais pas pour B)
authentification des messages emis par S pour A et B
A authentifie S
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 17 / 83
![Page 71: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/71.jpg)
Protocoles d’echange de cles
Echange d’une cle symetrique avec un tiers de confiance S
(Extrait de Needham-Schroeder Symmetric Key Protocol)
1. A ↪→ S : A,B,NA
2. S ↪→ A : {NA,B,KAB , {KAB ,A}KBS}KAS
3. A ↪→ B : {KAB ,A}KBS
Proprietes attendues :
secret de KAB , partage entre S , A et B
fraıcheur de KAB (pour A mais pas pour B)
authentification des messages emis par S pour A et B
A authentifie S
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 17 / 83
![Page 72: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/72.jpg)
Protocoles d’echange de cles
Echange d’une cle symetrique avec un tiers de confiance S
(Extrait de Needham-Schroeder Symmetric Key Protocol)
1. A ↪→ S : A,B,NA
2. S ↪→ A : {NA,B,KAB , {KAB ,A}KBS}KAS
3. A ↪→ B : {KAB ,A}KBS
Proprietes attendues :
secret de KAB , partage entre S , A et B
fraıcheur de KAB (pour A mais pas pour B)
authentification des messages emis par S pour A et B
A authentifie S
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 17 / 83
![Page 73: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/73.jpg)
Protocoles d’echange de cles
Echange d’une cle symetrique avec un tiers de confiance S
(Extrait de Needham-Schroeder Symmetric Key Protocol)
1. A ↪→ S : A,B,NA
2. S ↪→ A : {NA,B,KAB , {KAB ,A}KBS}KAS
3. A ↪→ B : {KAB ,A}KBS
Proprietes attendues :
secret de KAB , partage entre S , A et B
fraıcheur de KAB (pour A mais pas pour B)
authentification des messages emis par S pour A et B
A authentifie S
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 17 / 83
![Page 74: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/74.jpg)
Protocoles d’echange de cles
Echange d’une cle symetrique avec un tiers de confiance S
(Extrait de Needham-Schroeder Symmetric Key Protocol)
1. A ↪→ S : A,B,NA
2. S ↪→ A : {NA,B,KAB , {KAB ,A}KBS}KAS
3. A ↪→ B : {KAB ,A}KBS
Proprietes attendues :
secret de KAB , partage entre S , A et B
fraıcheur de KAB (pour A mais pas pour B)
authentification des messages emis par S pour A et B
A authentifie S
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 17 / 83
![Page 75: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/75.jpg)
Protocoles d’echange de cles
Echange d’une cle symetrique avec un tiers de confiance S
(Extrait de Needham-Schroeder Symmetric Key Protocol)
1. A ↪→ S : A,B,NA
2. S ↪→ A : {NA,B,KAB , {KAB ,A}KBS}KAS
3. A ↪→ B : {KAB ,A}KBS
Proprietes attendues :
secret de KAB , partage entre S , A et B
fraıcheur de KAB (pour A mais pas pour B)
authentification des messages emis par S pour A et B
A authentifie S
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 17 / 83
![Page 76: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/76.jpg)
Protocoles d’echange de cles
Echange de cles assymmetriques avec un tiers de confiance S
(Extrait de Needham-Schroeder Public Key Protocol)
1. A ↪→ S : A,B2. S ↪→ A : {KB ,B}K−1
S
3. S ↪→ B : {KA,A}K−1S
Proprietes attendues :
authentification des cles publiques KA et KB
Mais
pas de secret (pas necessaire)
pas de fraıcheur (pas necessaire ( ?))
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 18 / 83
![Page 77: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/77.jpg)
Protocoles d’echange de cles
Echange de cles assymmetriques avec un tiers de confiance S
(Extrait de Needham-Schroeder Public Key Protocol)
1. A ↪→ S : A,B
2. S ↪→ A : {KB ,B}K−1S
3. S ↪→ B : {KA,A}K−1S
Proprietes attendues :
authentification des cles publiques KA et KB
Mais
pas de secret (pas necessaire)
pas de fraıcheur (pas necessaire ( ?))
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 18 / 83
![Page 78: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/78.jpg)
Protocoles d’echange de cles
Echange de cles assymmetriques avec un tiers de confiance S
(Extrait de Needham-Schroeder Public Key Protocol)
1. A ↪→ S : A,B2. S ↪→ A : {KB ,B}K−1
S
3. S ↪→ B : {KA,A}K−1S
Proprietes attendues :
authentification des cles publiques KA et KB
Mais
pas de secret (pas necessaire)
pas de fraıcheur (pas necessaire ( ?))
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 18 / 83
![Page 79: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/79.jpg)
Protocoles d’echange de cles
Echange de cles assymmetriques avec un tiers de confiance S
(Extrait de Needham-Schroeder Public Key Protocol)
1. A ↪→ S : A,B2. S ↪→ A : {KB ,B}K−1
S
3. S ↪→ B : {KA,A}K−1S
Proprietes attendues :
authentification des cles publiques KA et KB
Mais
pas de secret (pas necessaire)
pas de fraıcheur (pas necessaire ( ?))
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 18 / 83
![Page 80: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/80.jpg)
Protocoles d’echange de cles
Echange de cles assymmetriques avec un tiers de confiance S
(Extrait de Needham-Schroeder Public Key Protocol)
1. A ↪→ S : A,B2. S ↪→ A : {KB ,B}K−1
S
3. S ↪→ B : {KA,A}K−1S
Proprietes attendues :
authentification des cles publiques KA et KB
Mais
pas de secret (pas necessaire)
pas de fraıcheur (pas necessaire ( ?))
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 18 / 83
![Page 81: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/81.jpg)
Protocoles d’echange de cles
Echange de cles assymmetriques avec un tiers de confiance S
(Extrait de Needham-Schroeder Public Key Protocol)
1. A ↪→ S : A,B2. S ↪→ A : {KB ,B}K−1
S
3. S ↪→ B : {KA,A}K−1S
Proprietes attendues :
authentification des cles publiques KA et KB
Mais
pas de secret (pas necessaire)
pas de fraıcheur (pas necessaire ( ?))
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 18 / 83
![Page 82: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/82.jpg)
Protocoles d’echange de cles
Echange de cles assymmetriques avec un tiers de confiance S
(Extrait de Needham-Schroeder Public Key Protocol)
1. A ↪→ S : A,B2. S ↪→ A : {KB ,B}K−1
S
3. S ↪→ B : {KA,A}K−1S
Proprietes attendues :
authentification des cles publiques KA et KB
Mais
pas de secret (pas necessaire)
pas de fraıcheur (pas necessaire ( ?))
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 18 / 83
![Page 83: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/83.jpg)
Protocoles d’echange de cles
Negociation d’une cle symetrique sans tiers de confiance
Protocole Diffie-Hellman : utilise dans SSH mode degrade
Entiers p et g publics et g generateur de Z ∗p
A choisit un secret x ∈ Z et B choisit un secret y ∈ Z
1. A ↪→ B : X = g x mod p2. B ↪→ A : Y = g y mod p
A construit Y x mod p et B construit X y mod pet l’on a KAB = X y mod p = Y x mod p
car (g y )x mod p = (g x)y mod p = g (xy) mod p
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 19 / 83
![Page 84: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/84.jpg)
Protocoles d’echange de cles
Negociation d’une cle symetrique sans tiers de confiance
Protocole Diffie-Hellman : utilise dans SSH mode degrade
Entiers p et g publics et g generateur de Z ∗p
A choisit un secret x ∈ Z et B choisit un secret y ∈ Z
1. A ↪→ B : X = g x mod p2. B ↪→ A : Y = g y mod p
A construit Y x mod p et B construit X y mod pet l’on a KAB = X y mod p = Y x mod p
car (g y )x mod p = (g x)y mod p = g (xy) mod p
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 19 / 83
![Page 85: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/85.jpg)
Protocoles d’echange de cles
Negociation d’une cle symetrique sans tiers de confiance
Protocole Diffie-Hellman : utilise dans SSH mode degrade
Entiers p et g publics et g generateur de Z ∗p
A choisit un secret x ∈ Z et B choisit un secret y ∈ Z
1. A ↪→ B : X = g x mod p2. B ↪→ A : Y = g y mod p
A construit Y x mod p et B construit X y mod pet l’on a KAB = X y mod p = Y x mod p
car (g y )x mod p = (g x)y mod p = g (xy) mod p
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 19 / 83
![Page 86: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/86.jpg)
Protocoles d’echange de cles
Negociation d’une cle symetrique sans tiers de confiance
Protocole Diffie-Hellman : utilise dans SSH mode degrade
Entiers p et g publics et g generateur de Z ∗p
A choisit un secret x ∈ Z et B choisit un secret y ∈ Z
1. A ↪→ B : X = g x mod p2. B ↪→ A : Y = g y mod p
A construit Y x mod p et B construit X y mod pet l’on a KAB = X y mod p = Y x mod p
car (g y )x mod p = (g x)y mod p = g (xy) mod p
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 19 / 83
![Page 87: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/87.jpg)
Protocoles d’echange de cles
Negociation d’une cle symetrique sans tiers de confiance
Protocole Diffie-Hellman : utilise dans SSH mode degrade
Entiers p et g publics et g generateur de Z ∗p
A choisit un secret x ∈ Z et B choisit un secret y ∈ Z
1. A ↪→ B : X = g x mod p2. B ↪→ A : Y = g y mod p
A construit Y x mod p et B construit X y mod pet l’on a KAB = X y mod p = Y x mod p
car (g y )x mod p = (g x)y mod p = g (xy) mod p
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 19 / 83
![Page 88: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/88.jpg)
Protocoles d’echange de cles
Negociation d’une cle symetrique sans tiers de confiance
Protocole Diffie-Hellman : utilise dans SSH mode degrade
Entiers p et g publics et g generateur de Z ∗p
A choisit un secret x ∈ Z et B choisit un secret y ∈ Z
1. A ↪→ B : X = g x mod p2. B ↪→ A : Y = g y mod p
A construit Y x mod p et B construit X y mod p
et l’on a KAB = X y mod p = Y x mod p
car (g y )x mod p = (g x)y mod p = g (xy) mod p
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 19 / 83
![Page 89: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/89.jpg)
Protocoles d’echange de cles
Negociation d’une cle symetrique sans tiers de confiance
Protocole Diffie-Hellman : utilise dans SSH mode degrade
Entiers p et g publics et g generateur de Z ∗p
A choisit un secret x ∈ Z et B choisit un secret y ∈ Z
1. A ↪→ B : X = g x mod p2. B ↪→ A : Y = g y mod p
A construit Y x mod p et B construit X y mod pet l’on a KAB = X y mod p = Y x mod p
car (g y )x mod p = (g x)y mod p = g (xy) mod p
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 19 / 83
![Page 90: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/90.jpg)
Protocoles d’echange de cles
Negociation d’une cle symetrique sans tiers de confiance
Protocole Diffie-Hellman : utilise dans SSH mode degrade
Entiers p et g publics et g generateur de Z ∗p
A choisit un secret x ∈ Z et B choisit un secret y ∈ Z
1. A ↪→ B : X = g x mod p2. B ↪→ A : Y = g y mod p
A construit Y x mod p et B construit X y mod pet l’on a KAB = X y mod p = Y x mod p
car (g y )x mod p = (g x)y mod p = g (xy) mod p
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 19 / 83
![Page 91: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/91.jpg)
Protocoles d’echange de cles
Protocole Diffie-Hellman (suite)
1. A ↪→ B : X = g x mod p2. B ↪→ A : Y = g y mod p
KAB = X y mod p = Y x mod p
Proprietes attendues :
secret de KAB , partage entre A et B
fraıcheur de KAB
Mais
pas d’authentification des entites !
⇒ pas de reelle authentification de KAB par A et B !
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 20 / 83
![Page 92: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/92.jpg)
Protocoles d’echange de cles
Protocole Diffie-Hellman (suite)
1. A ↪→ B : X = g x mod p2. B ↪→ A : Y = g y mod p
KAB = X y mod p = Y x mod p
Proprietes attendues :
secret de KAB , partage entre A et B
fraıcheur de KAB
Mais
pas d’authentification des entites !
⇒ pas de reelle authentification de KAB par A et B !
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 20 / 83
![Page 93: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/93.jpg)
Protocoles d’echange de cles
Protocole Diffie-Hellman (suite)
1. A ↪→ B : X = g x mod p2. B ↪→ A : Y = g y mod p
KAB = X y mod p = Y x mod p
Proprietes attendues :
secret de KAB , partage entre A et B
fraıcheur de KAB
Mais
pas d’authentification des entites !
⇒ pas de reelle authentification de KAB par A et B !
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 20 / 83
![Page 94: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/94.jpg)
Protocoles d’echange de cles
Protocole Diffie-Hellman (suite)
1. A ↪→ B : X = g x mod p2. B ↪→ A : Y = g y mod p
KAB = X y mod p = Y x mod p
Proprietes attendues :
secret de KAB , partage entre A et B
fraıcheur de KAB
Mais
pas d’authentification des entites !
⇒ pas de reelle authentification de KAB par A et B !
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 20 / 83
![Page 95: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/95.jpg)
Protocoles d’echange de cles
Protocole Diffie-Hellman (suite)
1. A ↪→ B : X = g x mod p2. B ↪→ A : Y = g y mod p
KAB = X y mod p = Y x mod p
Proprietes attendues :
secret de KAB , partage entre A et B
fraıcheur de KAB
Mais
pas d’authentification des entites !
⇒ pas de reelle authentification de KAB par A et B !
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 20 / 83
![Page 96: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/96.jpg)
Protocoles d’echange de cles
Protocole Diffie-Hellman (suite)
1. A ↪→ B : X = g x mod p2. B ↪→ A : Y = g y mod p
KAB = X y mod p = Y x mod p
Proprietes attendues :
secret de KAB , partage entre A et B
fraıcheur de KAB
Mais
pas d’authentification des entites !
⇒ pas de reelle authentification de KAB par A et B !
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 20 / 83
![Page 97: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/97.jpg)
Protocoles d’echange de cles
Protocole Diffie-Hellman (suite)
1. A ↪→ B : X = g x mod p2. B ↪→ A : Y = g y mod p
KAB = X y mod p = Y x mod p
Proprietes attendues :
secret de KAB , partage entre A et B
fraıcheur de KAB
Mais
pas d’authentification des entites !
⇒ pas de reelle authentification de KAB par A et B !
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 20 / 83
![Page 98: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/98.jpg)
Protocoles d’authentification : Login UNIX
Hypotheses :
A connait P (son mot de passe)
M connait A et hash(P) (dans /etc/passwd)
1. M ↪→ A : ‘‘login:’’2. A ↪→ M : A3. M ↪→ A : ‘‘passwd:’’4. A ↪→ M : P
Puis M calcule hash(P) et compare dans /etc/passwd
⇒ suppose que la communication de A vers M est sure
Sinon, proprietes attendues (telnet) : aucune !
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 21 / 83
![Page 99: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/99.jpg)
Protocoles d’authentification : Login UNIX
Hypotheses :
A connait P (son mot de passe)
M connait A et hash(P) (dans /etc/passwd)
1. M ↪→ A : ‘‘login:’’2. A ↪→ M : A3. M ↪→ A : ‘‘passwd:’’4. A ↪→ M : P
Puis M calcule hash(P) et compare dans /etc/passwd
⇒ suppose que la communication de A vers M est sure
Sinon, proprietes attendues (telnet) : aucune !
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 21 / 83
![Page 100: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/100.jpg)
Protocoles d’authentification : Login UNIX
Hypotheses :
A connait P (son mot de passe)
M connait A et hash(P) (dans /etc/passwd)
1. M ↪→ A : ‘‘login:’’2. A ↪→ M : A3. M ↪→ A : ‘‘passwd:’’4. A ↪→ M : P
Puis M calcule hash(P) et compare dans /etc/passwd
⇒ suppose que la communication de A vers M est sure
Sinon, proprietes attendues (telnet) : aucune !
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 21 / 83
![Page 101: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/101.jpg)
Protocoles d’authentification : Login UNIX
Hypotheses :
A connait P (son mot de passe)
M connait A et hash(P) (dans /etc/passwd)
1. M ↪→ A : ‘‘login:’’2. A ↪→ M : A3. M ↪→ A : ‘‘passwd:’’4. A ↪→ M : P
Puis M calcule hash(P) et compare dans /etc/passwd
⇒ suppose que la communication de A vers M est sure
Sinon, proprietes attendues (telnet) : aucune !
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 21 / 83
![Page 102: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/102.jpg)
Protocoles d’authentification : Login UNIX
Hypotheses :
A connait P (son mot de passe)
M connait A et hash(P) (dans /etc/passwd)
1. M ↪→ A : ‘‘login:’’2. A ↪→ M : A3. M ↪→ A : ‘‘passwd:’’4. A ↪→ M : P
Puis M calcule hash(P) et compare dans /etc/passwd
⇒ suppose que la communication de A vers M est sure
Sinon, proprietes attendues (telnet) :
aucune !
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 21 / 83
![Page 103: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/103.jpg)
Protocoles d’authentification : Login UNIX
Hypotheses :
A connait P (son mot de passe)
M connait A et hash(P) (dans /etc/passwd)
1. M ↪→ A : ‘‘login:’’2. A ↪→ M : A3. M ↪→ A : ‘‘passwd:’’4. A ↪→ M : P
Puis M calcule hash(P) et compare dans /etc/passwd
⇒ suppose que la communication de A vers M est sure
Sinon, proprietes attendues (telnet) : aucune !
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 21 / 83
![Page 104: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/104.jpg)
Protocoles d’authentification : Login SSH (1)
Hypotheses :
A connait P (son mot de passe)
M connait A et hash(P) (dans /etc/passwd)
1. M ↪→ A : KM
2. A ↪→ M : {KAM}KM
3. M ↪→ A : {‘‘login:’’}KAM
4. A ↪→ M : {A}KAM
5. M ↪→ A : {‘‘passwd:’’}KAM
6. A ↪→ M : {P}KAM
Proprietes attendues :
KAM , A, P secrets partages entre A et M
M authentifie A, mais A n’authentifie pas M
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 22 / 83
![Page 105: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/105.jpg)
Protocoles d’authentification : Login SSH (1)
Hypotheses :
A connait P (son mot de passe)
M connait A et hash(P) (dans /etc/passwd)
1. M ↪→ A : KM
2. A ↪→ M : {KAM}KM
3. M ↪→ A : {‘‘login:’’}KAM
4. A ↪→ M : {A}KAM
5. M ↪→ A : {‘‘passwd:’’}KAM
6. A ↪→ M : {P}KAM
Proprietes attendues :
KAM , A, P secrets partages entre A et M
M authentifie A, mais A n’authentifie pas M
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 22 / 83
![Page 106: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/106.jpg)
Protocoles d’authentification : Login SSH (1)
Hypotheses :
A connait P (son mot de passe)
M connait A et hash(P) (dans /etc/passwd)
1. M ↪→ A : KM
2. A ↪→ M : {KAM}KM
3. M ↪→ A : {‘‘login:’’}KAM
4. A ↪→ M : {A}KAM
5. M ↪→ A : {‘‘passwd:’’}KAM
6. A ↪→ M : {P}KAM
Proprietes attendues :
KAM , A, P secrets partages entre A et M
M authentifie A, mais A n’authentifie pas M
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 22 / 83
![Page 107: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/107.jpg)
Protocoles d’authentification : Login SSH (1)
Hypotheses :
A connait P (son mot de passe)
M connait A et hash(P) (dans /etc/passwd)
1. M ↪→ A : KM
2. A ↪→ M : {KAM}KM
3. M ↪→ A : {‘‘login:’’}KAM
4. A ↪→ M : {A}KAM
5. M ↪→ A : {‘‘passwd:’’}KAM
6. A ↪→ M : {P}KAM
Proprietes attendues :
KAM , A, P secrets partages entre A et M
M authentifie A, mais A n’authentifie pas M
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 22 / 83
![Page 108: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/108.jpg)
Protocoles d’authentification : Login SSH (2)
Hypotheses :
A a depose (au prealable) sa cle publique KA sur M
1. M ↪→ A : KM
2. A ↪→ M : {KAM}KM
3. M ↪→ A : {{NM}KA}KAM
4. A ↪→ M : {NM}KAM
Proprietes attendues :
KAM secret partage entre A et M
M authentifie A, mais A n’authentifie pas M
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 23 / 83
![Page 109: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/109.jpg)
Protocoles d’authentification : Login SSH (2)
Hypotheses :
A a depose (au prealable) sa cle publique KA sur M
1. M ↪→ A : KM
2. A ↪→ M : {KAM}KM
3. M ↪→ A : {{NM}KA}KAM
4. A ↪→ M : {NM}KAM
Proprietes attendues :
KAM secret partage entre A et M
M authentifie A, mais A n’authentifie pas M
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 23 / 83
![Page 110: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/110.jpg)
Protocoles d’authentification : Login SSH (2)
Hypotheses :
A a depose (au prealable) sa cle publique KA sur M
1. M ↪→ A : KM
2. A ↪→ M : {KAM}KM
3. M ↪→ A : {{NM}KA}KAM
4. A ↪→ M : {NM}KAM
Proprietes attendues :
KAM secret partage entre A et M
M authentifie A, mais A n’authentifie pas M
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 23 / 83
![Page 111: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/111.jpg)
Protocoles d’authentification : Login SSH (2)
Hypotheses :
A a depose (au prealable) sa cle publique KA sur M
1. M ↪→ A : KM
2. A ↪→ M : {KAM}KM
3. M ↪→ A : {{NM}KA}KAM
4. A ↪→ M : {NM}KAM
Proprietes attendues :
KAM secret partage entre A et M
M authentifie A, mais A n’authentifie pas M
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 23 / 83
![Page 112: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/112.jpg)
Protocoles d’authentification : SSL/TLS (https)
Hypotheses :
B(rowser) connait A et P (ou A les saisit dans B)
B connait KS , ou S est un tiers de confianceOn parle aussi de “Certification Authority” (CA), e.g. VeriSign, . . .
V (endor) connait {V ,KV }K−1S
“certificat” achete a S par V
et renouvele tous les ans !
V connait A et P
1. V ↪→ B : {V ,KV }K−1S
2. B ↪→ V : {KBV }KV
3. V ↪→ B : {‘‘login:’’}KBV
4. B ↪→ V : {A}KBV
5. V ↪→ B : {‘‘passwd:’’}KBV
6. B ↪→ V : {P}KBV
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 24 / 83
![Page 113: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/113.jpg)
Protocoles d’authentification : SSL/TLS (https)
Hypotheses :
B(rowser) connait A et P (ou A les saisit dans B)
B connait KS , ou S est un tiers de confianceOn parle aussi de “Certification Authority” (CA), e.g. VeriSign, . . .
V (endor) connait {V ,KV }K−1S
“certificat” achete a S par V
et renouvele tous les ans !
V connait A et P
1. V ↪→ B : {V ,KV }K−1S
2. B ↪→ V : {KBV }KV
3. V ↪→ B : {‘‘login:’’}KBV
4. B ↪→ V : {A}KBV
5. V ↪→ B : {‘‘passwd:’’}KBV
6. B ↪→ V : {P}KBV
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 24 / 83
![Page 114: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/114.jpg)
Protocoles d’authentification : SSL/TLS (https)
Hypotheses :
B(rowser) connait A et P (ou A les saisit dans B)
B connait KS , ou S est un tiers de confianceOn parle aussi de “Certification Authority” (CA), e.g. VeriSign, . . .
V (endor) connait {V ,KV }K−1S
“certificat” achete a S par V
et renouvele tous les ans !
V connait A et P
1. V ↪→ B : {V ,KV }K−1S
2. B ↪→ V : {KBV }KV
3. V ↪→ B : {‘‘login:’’}KBV
4. B ↪→ V : {A}KBV
5. V ↪→ B : {‘‘passwd:’’}KBV
6. B ↪→ V : {P}KBV
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 24 / 83
![Page 115: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/115.jpg)
Protocoles d’authentification : SSL/TLS (https)
Hypotheses :
B(rowser) connait A et P (ou A les saisit dans B)
B connait KS , ou S est un tiers de confianceOn parle aussi de “Certification Authority” (CA), e.g. VeriSign, . . .
V (endor) connait {V ,KV }K−1S
“certificat” achete a S par V
et renouvele tous les ans !
V connait A et P
1. V ↪→ B : {V ,KV }K−1S
2. B ↪→ V : {KBV }KV
3. V ↪→ B : {‘‘login:’’}KBV
4. B ↪→ V : {A}KBV
5. V ↪→ B : {‘‘passwd:’’}KBV
6. B ↪→ V : {P}KBV
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 24 / 83
![Page 116: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/116.jpg)
Protocoles d’authentification : SSL/TLS (https)
Hypotheses :
B(rowser) connait A et P (ou A les saisit dans B)
B connait KS , ou S est un tiers de confianceOn parle aussi de “Certification Authority” (CA), e.g. VeriSign, . . .
V (endor) connait {V ,KV }K−1S
“certificat” achete a S par V
et renouvele tous les ans !
V connait A et P
1. V ↪→ B : {V ,KV }K−1S
2. B ↪→ V : {KBV }KV
3. V ↪→ B : {‘‘login:’’}KBV
4. B ↪→ V : {A}KBV
5. V ↪→ B : {‘‘passwd:’’}KBV
6. B ↪→ V : {P}KBV
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 24 / 83
![Page 117: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/117.jpg)
Protocoles d’authentification : SSL/TLS (https)
1. V ↪→ B : {V ,KV }K−1S
2. B ↪→ V : {KBV }KV
3. V ↪→ B : {‘‘login:’’}KBV
4. B ↪→ V : {A}KBV
5. V ↪→ B : {‘‘passwd:’’}KBV
6. B ↪→ V : {P}KBV
Proprietes attendues :
KBV , A, P secrets partages entre B et V
B authentifie {V ,KV }K−1S
comme construit par S
V authentifie A, B authentifie V (en faisant confiance a S)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 25 / 83
![Page 118: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/118.jpg)
Protocoles d’authentification : SSL/TLS (https)
1. V ↪→ B : {V ,KV }K−1S
2. B ↪→ V : {KBV }KV
3. V ↪→ B : {‘‘login:’’}KBV
4. B ↪→ V : {A}KBV
5. V ↪→ B : {‘‘passwd:’’}KBV
6. B ↪→ V : {P}KBV
Proprietes attendues :
KBV , A, P secrets partages entre B et V
B authentifie {V ,KV }K−1S
comme construit par S
V authentifie A, B authentifie V (en faisant confiance a S)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 25 / 83
![Page 119: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/119.jpg)
Protocoles d’authentification : SSL/TLS (https)
1. V ↪→ B : {V ,KV }K−1S
2. B ↪→ V : {KBV }KV
3. V ↪→ B : {‘‘login:’’}KBV
4. B ↪→ V : {A}KBV
5. V ↪→ B : {‘‘passwd:’’}KBV
6. B ↪→ V : {P}KBV
Proprietes attendues :
KBV , A, P secrets partages entre B et V
B authentifie {V ,KV }K−1S
comme construit par S
V authentifie A, B authentifie V (en faisant confiance a S)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 25 / 83
![Page 120: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/120.jpg)
Protocoles d’authentification : SSL/TLS (https)
1. V ↪→ B : {V ,KV }K−1S
2. B ↪→ V : {KBV }KV
3. V ↪→ B : {‘‘login:’’}KBV
4. B ↪→ V : {A}KBV
5. V ↪→ B : {‘‘passwd:’’}KBV
6. B ↪→ V : {P}KBV
Proprietes attendues :
KBV , A, P secrets partages entre B et V
B authentifie {V ,KV }K−1S
comme construit par S
V authentifie A, B authentifie V (en faisant confiance a S)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 25 / 83
![Page 121: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/121.jpg)
Protocoles d’authentification : SSL/TLS (https)
1. V ↪→ B : {V ,KV }K−1S
2. B ↪→ V : {KBV }KV
3. V ↪→ B : {‘‘login:’’}KBV
4. B ↪→ V : {A}KBV
5. V ↪→ B : {‘‘passwd:’’}KBV
6. B ↪→ V : {P}KBV
Proprietes attendues :
KBV , A, P secrets partages entre B et V
B authentifie {V ,KV }K−1S
comme construit par S
V authentifie A, B authentifie V (en faisant confiance a S)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 25 / 83
![Page 122: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/122.jpg)
Proprietes des protocoles crypto
Definition (Accord non repudiable) Un protocole etablit un accord nonrepudiable entre deux agents si chaque agent peut fournir la preuve quel’autre a accepte les termes de l’accord.
Definition (Equite) Un protocole d’accord non repudiable entre deuxagents A est B est equitable si aucun agent ne peut obtenir d’avantage surl’autre : A n’obtient pas la preuve de l’accord de B avant que B n’ait unepreuve de l’accord de A (et vice-versa).
Definition (Anonymat) Un protocole preserve l’anonymat d’un agent As’il est impossible d’identifier A a partir des messages echanges.
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 26 / 83
![Page 123: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/123.jpg)
Proprietes des protocoles crypto
Definition (Accord non repudiable) Un protocole etablit un accord nonrepudiable entre deux agents si chaque agent peut fournir la preuve quel’autre a accepte les termes de l’accord.
Definition (Equite) Un protocole d’accord non repudiable entre deuxagents A est B est equitable si aucun agent ne peut obtenir d’avantage surl’autre : A n’obtient pas la preuve de l’accord de B avant que B n’ait unepreuve de l’accord de A (et vice-versa).
Definition (Anonymat) Un protocole preserve l’anonymat d’un agent As’il est impossible d’identifier A a partir des messages echanges.
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 26 / 83
![Page 124: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/124.jpg)
Proprietes des protocoles crypto
Definition (Accord non repudiable) Un protocole etablit un accord nonrepudiable entre deux agents si chaque agent peut fournir la preuve quel’autre a accepte les termes de l’accord.
Definition (Equite) Un protocole d’accord non repudiable entre deuxagents A est B est equitable si aucun agent ne peut obtenir d’avantage surl’autre : A n’obtient pas la preuve de l’accord de B avant que B n’ait unepreuve de l’accord de A (et vice-versa).
Definition (Anonymat) Un protocole preserve l’anonymat d’un agent As’il est impossible d’identifier A a partir des messages echanges.
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 26 / 83
![Page 125: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/125.jpg)
Proprietes des protocoles crypto
Definition (Accord non repudiable) Un protocole etablit un accord nonrepudiable entre deux agents si chaque agent peut fournir la preuve quel’autre a accepte les termes de l’accord.
Definition (Equite) Un protocole d’accord non repudiable entre deuxagents A est B est equitable si aucun agent ne peut obtenir d’avantage surl’autre : A n’obtient pas la preuve de l’accord de B avant que B n’ait unepreuve de l’accord de A (et vice-versa).
Definition (Anonymat) Un protocole preserve l’anonymat d’un agent As’il est impossible d’identifier A a partir des messages echanges.
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 26 / 83
![Page 126: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/126.jpg)
Protocoles d’accord non-repudiable
Exemple rudimentaire :1. A ↪→ B : {A,B,Contrat}K−1
A
2. B ↪→ A : {A,B,Contrat}K−1B
Proprietes attendues :
accord non-repudiable entre A et B sur Contrat
Mais
non equitable car B obtient la signature avant A !
Pour se rapprocher de l’equite, en pratique, ca sera plutot :1. A ↪→ B : {A,B,Cont}K−1
A
2. B ↪→ A : {A,B,Cont}K−1B
3. A ↪→ B : {A,B, rat}K−1A
4. B ↪→ A : {A,B, rat}K−1B
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 27 / 83
![Page 127: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/127.jpg)
Protocoles d’accord non-repudiable
Exemple rudimentaire :1. A ↪→ B : {A,B,Contrat}K−1
A
2. B ↪→ A : {A,B,Contrat}K−1B
Proprietes attendues :
accord non-repudiable entre A et B sur Contrat
Mais
non equitable car B obtient la signature avant A !
Pour se rapprocher de l’equite, en pratique, ca sera plutot :1. A ↪→ B : {A,B,Cont}K−1
A
2. B ↪→ A : {A,B,Cont}K−1B
3. A ↪→ B : {A,B, rat}K−1A
4. B ↪→ A : {A,B, rat}K−1B
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 27 / 83
![Page 128: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/128.jpg)
Protocoles d’accord non-repudiable
Exemple rudimentaire :1. A ↪→ B : {A,B,Contrat}K−1
A
2. B ↪→ A : {A,B,Contrat}K−1B
Proprietes attendues :
accord non-repudiable entre A et B sur Contrat
Mais
non equitable car B obtient la signature avant A !
Pour se rapprocher de l’equite, en pratique, ca sera plutot :1. A ↪→ B : {A,B,Cont}K−1
A
2. B ↪→ A : {A,B,Cont}K−1B
3. A ↪→ B : {A,B, rat}K−1A
4. B ↪→ A : {A,B, rat}K−1B
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 27 / 83
![Page 129: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/129.jpg)
Protocoles d’accord non-repudiable
Exemple rudimentaire :1. A ↪→ B : {A,B,Contrat}K−1
A
2. B ↪→ A : {A,B,Contrat}K−1B
Proprietes attendues :
accord non-repudiable entre A et B sur Contrat
Mais
non equitable car B obtient la signature avant A !
Pour se rapprocher de l’equite, en pratique, ca sera plutot :1. A ↪→ B : {A,B,Cont}K−1
A
2. B ↪→ A : {A,B,Cont}K−1B
3. A ↪→ B : {A,B, rat}K−1A
4. B ↪→ A : {A,B, rat}K−1B
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 27 / 83
![Page 130: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/130.jpg)
Protocoles d’accord non-repudiable
Exemple rudimentaire :1. A ↪→ B : {A,B,Contrat}K−1
A
2. B ↪→ A : {A,B,Contrat}K−1B
Proprietes attendues :
accord non-repudiable entre A et B sur Contrat
Mais
non equitable car B obtient la signature avant A !
Pour se rapprocher de l’equite, en pratique, ca sera plutot :1. A ↪→ B : {A,B,Cont}K−1
A
2. B ↪→ A : {A,B,Cont}K−1B
3. A ↪→ B : {A,B, rat}K−1A
4. B ↪→ A : {A,B, rat}K−1B
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 27 / 83
![Page 131: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/131.jpg)
Protocoles d’accord non-repudiable
Exemple rudimentaire :1. A ↪→ B : {A,B,Contrat}K−1
A
2. B ↪→ A : {A,B,Contrat}K−1B
Proprietes attendues :
accord non-repudiable entre A et B sur Contrat
Mais
non equitable car B obtient la signature avant A !
Pour se rapprocher de l’equite, en pratique, ca sera plutot :1. A ↪→ B : {A,B,Cont}K−1
A
2. B ↪→ A : {A,B,Cont}K−1B
3. A ↪→ B : {A,B, rat}K−1A
4. B ↪→ A : {A,B, rat}K−1B
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 27 / 83
![Page 132: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/132.jpg)
Protocoles d’accord non-repudiable
Accuse reception equitable avec un tiers de confiance S[Zhou-Gollmann 96]
1. A ↪→ B : {propose,B,NA, {M}K}K−1A
2. B ↪→ A : {ack ,A,NA, {M}K}K−1B
3. A ↪→ S : {submit,B,NA,K}K−1A
4. S ↪→ A,B : {confirm,A,B,NA,K}K−1S
Proprietes attendues :
M secret pour tous (excepte A) jusqu’en 3.
Les 4 messages sont authentifiables (signatures K−1X )
A et B ont en meme temps (en 4.) la preuve que :
I pour A : que le message a ete recu par BI pour B : que A a bien envoye le message
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 28 / 83
![Page 133: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/133.jpg)
Protocoles d’accord non-repudiable
Accuse reception equitable avec un tiers de confiance S[Zhou-Gollmann 96]
1. A ↪→ B : {propose,B,NA, {M}K}K−1A
2. B ↪→ A : {ack ,A,NA, {M}K}K−1B
3. A ↪→ S : {submit,B,NA,K}K−1A
4. S ↪→ A,B : {confirm,A,B,NA,K}K−1S
Proprietes attendues :
M secret pour tous (excepte A) jusqu’en 3.
Les 4 messages sont authentifiables (signatures K−1X )
A et B ont en meme temps (en 4.) la preuve que :
I pour A : que le message a ete recu par BI pour B : que A a bien envoye le message
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 28 / 83
![Page 134: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/134.jpg)
Protocoles d’accord non-repudiable
Accuse reception equitable avec un tiers de confiance S[Zhou-Gollmann 96]
1. A ↪→ B : {propose,B,NA, {M}K}K−1A
2. B ↪→ A : {ack ,A,NA, {M}K}K−1B
3. A ↪→ S : {submit,B,NA,K}K−1A
4. S ↪→ A,B : {confirm,A,B,NA,K}K−1S
Proprietes attendues :
M secret pour tous (excepte A) jusqu’en 3.
Les 4 messages sont authentifiables (signatures K−1X )
A et B ont en meme temps (en 4.) la preuve que :
I pour A : que le message a ete recu par BI pour B : que A a bien envoye le message
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 28 / 83
![Page 135: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/135.jpg)
Protocoles d’accord non-repudiable
Accuse reception equitable avec un tiers de confiance S[Zhou-Gollmann 96]
1. A ↪→ B : {propose,B,NA, {M}K}K−1A
2. B ↪→ A : {ack ,A,NA, {M}K}K−1B
3. A ↪→ S : {submit,B,NA,K}K−1A
4. S ↪→ A,B : {confirm,A,B,NA,K}K−1S
Proprietes attendues :
M secret pour tous (excepte A) jusqu’en 3.
Les 4 messages sont authentifiables (signatures K−1X )
A et B ont en meme temps (en 4.) la preuve que :
I pour A : que le message a ete recu par BI pour B : que A a bien envoye le message
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 28 / 83
![Page 136: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/136.jpg)
Protocoles d’accord non-repudiable
Accuse reception equitable avec un tiers de confiance S[Zhou-Gollmann 96]
1. A ↪→ B : {propose,B,NA, {M}K}K−1A
2. B ↪→ A : {ack ,A,NA, {M}K}K−1B
3. A ↪→ S : {submit,B,NA,K}K−1A
4. S ↪→ A,B : {confirm,A,B,NA,K}K−1S
Proprietes attendues :
M secret pour tous (excepte A) jusqu’en 3.
Les 4 messages sont authentifiables (signatures K−1X )
A et B ont en meme temps (en 4.) la preuve que :
I pour A : que le message a ete recu par BI pour B : que A a bien envoye le message
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 28 / 83
![Page 137: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/137.jpg)
Protocoles d’accord non-repudiable
Accuse reception equitable avec un tiers de confiance S[Zhou-Gollmann 96]
1. A ↪→ B : {propose,B,NA, {M}K}K−1A
2. B ↪→ A : {ack ,A,NA, {M}K}K−1B
3. A ↪→ S : {submit,B,NA,K}K−1A
4. S ↪→ A,B : {confirm,A,B,NA,K}K−1S
Proprietes attendues :
M secret pour tous (excepte A) jusqu’en 3.
Les 4 messages sont authentifiables (signatures K−1X )
A et B ont en meme temps (en 4.) la preuve que :
I pour A : que le message a ete recu par BI pour B : que A a bien envoye le message
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 28 / 83
![Page 138: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/138.jpg)
Protocoles d’accord non-repudiable
Accuse reception equitable avec un tiers de confiance S[Zhou-Gollmann 96]
1. A ↪→ B : {propose,B,NA, {M}K}K−1A
2. B ↪→ A : {ack ,A,NA, {M}K}K−1B
3. A ↪→ S : {submit,B,NA,K}K−1A
4. S ↪→ A,B : {confirm,A,B,NA,K}K−1S
Proprietes attendues :
M secret pour tous (excepte A) jusqu’en 3.
Les 4 messages sont authentifiables (signatures K−1X )
A et B ont en meme temps (en 4.) la preuve que :
I pour A : que le message a ete recu par BI pour B : que A a bien envoye le message
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 28 / 83
![Page 139: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/139.jpg)
Protocoles d’accord non-repudiable
Accuse reception equitable avec un tiers de confiance S[Zhou-Gollmann 96]
1. A ↪→ B : {propose,B,NA, {M}K}K−1A
2. B ↪→ A : {ack ,A,NA, {M}K}K−1B
3. A ↪→ S : {submit,B,NA,K}K−1A
4. S ↪→ A,B : {confirm,A,B,NA,K}K−1S
Proprietes attendues :
M secret pour tous (excepte A) jusqu’en 3.
Les 4 messages sont authentifiables (signatures K−1X )
A et B ont en meme temps (en 4.) la preuve que :
I pour A : que le message a ete recu par BI pour B : que A a bien envoye le message
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 28 / 83
![Page 140: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/140.jpg)
Exemples de protocoles de paiement electronique
Paiement sur internetI Verification en ligne : SET/CSET)I Verification hors ligne (et distribuee) : Bitcoin
Paiement sur terminal protegeI Verification en ligne : carte BancaireI Verification hors ligne : carte Bancaire a puce
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 29 / 83
![Page 141: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/141.jpg)
Exemples de protocoles de paiement electronique
Paiement sur internetI Verification en ligne : SET/CSET)I Verification hors ligne (et distribuee) : Bitcoin
Paiement sur terminal protegeI Verification en ligne : carte BancaireI Verification hors ligne : carte Bancaire a puce
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 29 / 83
![Page 142: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/142.jpg)
SET/CSET
Protocole propose par Visa et MasterCard en 1997
Specification totalement ouverte ( !)
Paiement en ligne entre 3 agents connectes :I (C)lientI (M)archandI (B)anque (en fait un portail bancaire)
NM et NC nonces
Purchamt = montant de la transaction
Od = “Order details” = details de la commande
Pd = “Payment details” = details du reglement
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 30 / 83
![Page 143: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/143.jpg)
SET/CSET
Protocole propose par Visa et MasterCard en 1997
Specification totalement ouverte ( !)
Paiement en ligne entre 3 agents connectes :I (C)lientI (M)archandI (B)anque (en fait un portail bancaire)
NM et NC nonces
Purchamt = montant de la transaction
Od = “Order details” = details de la commande
Pd = “Payment details” = details du reglement
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 30 / 83
![Page 144: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/144.jpg)
SET/CSET
Protocole propose par Visa et MasterCard en 1997
Specification totalement ouverte ( !)
Paiement en ligne entre 3 agents connectes :I (C)lientI (M)archandI (B)anque (en fait un portail bancaire)
NM et NC nonces
Purchamt = montant de la transaction
Od = “Order details” = details de la commande
Pd = “Payment details” = details du reglement
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 30 / 83
![Page 145: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/145.jpg)
SET/CSET
Protocole propose par Visa et MasterCard en 1997
Specification totalement ouverte ( !)
Paiement en ligne entre 3 agents connectes :I (C)lientI (M)archandI (B)anque (en fait un portail bancaire)
NM et NC nonces
Purchamt = montant de la transaction
Od = “Order details” = details de la commande
Pd = “Payment details” = details du reglement
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 30 / 83
![Page 146: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/146.jpg)
SET/CSET
Protocole propose par Visa et MasterCard en 1997
Specification totalement ouverte ( !)
Paiement en ligne entre 3 agents connectes :I (C)lientI (M)archandI (B)anque (en fait un portail bancaire)
NM et NC nonces
Purchamt = montant de la transaction
Od = “Order details” = details de la commande
Pd = “Payment details” = details du reglement
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 30 / 83
![Page 147: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/147.jpg)
SET/CSET
Protocole propose par Visa et MasterCard en 1997
Specification totalement ouverte ( !)
Paiement en ligne entre 3 agents connectes :I (C)lientI (M)archandI (B)anque (en fait un portail bancaire)
NM et NC nonces
Purchamt = montant de la transaction
Od = “Order details” = details de la commande
Pd = “Payment details” = details du reglement
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 30 / 83
![Page 148: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/148.jpg)
SET/CSET
Protocole propose par Visa et MasterCard en 1997
Specification totalement ouverte ( !)
Paiement en ligne entre 3 agents connectes :I (C)lientI (M)archandI (B)anque (en fait un portail bancaire)
NM et NC nonces
Purchamt = montant de la transaction
Od = “Order details” = details de la commande
Pd = “Payment details” = details du reglement
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 30 / 83
![Page 149: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/149.jpg)
SET/CSET
(PInitReq) C ↪→ M : C ,M
(PInitRes) M ↪→ C : NM
(PReq) C ↪→ M : {Trans}K−1C, {Od}KM
, {Pd}KB
(AuthReq) M ↪→ B : {Trans}K−1C, {Trans}K−1
M, {Pd}KB
(AuthRes) B ↪→ M : {Results, hash(Trans)}K−1B
(PRes) M ↪→ C : {Results, hash(Trans)}K−1B
Trans = (C , M, (NC ,NM), Purchamt, hash(Od), hash(Pd))
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 31 / 83
![Page 150: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/150.jpg)
SET/CSET
(PInitReq) C ↪→ M : C ,M(PInitRes) M ↪→ C : NM
(PReq) C ↪→ M : {Trans}K−1C, {Od}KM
, {Pd}KB
(AuthReq) M ↪→ B : {Trans}K−1C, {Trans}K−1
M, {Pd}KB
(AuthRes) B ↪→ M : {Results, hash(Trans)}K−1B
(PRes) M ↪→ C : {Results, hash(Trans)}K−1B
Trans = (C , M, (NC ,NM), Purchamt, hash(Od), hash(Pd))
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 31 / 83
![Page 151: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/151.jpg)
SET/CSET
(PInitReq) C ↪→ M : C ,M(PInitRes) M ↪→ C : NM
(PReq) C ↪→ M : {Trans}K−1C, {Od}KM
, {Pd}KB
(AuthReq) M ↪→ B : {Trans}K−1C, {Trans}K−1
M, {Pd}KB
(AuthRes) B ↪→ M : {Results, hash(Trans)}K−1B
(PRes) M ↪→ C : {Results, hash(Trans)}K−1B
Trans = (C , M, (NC ,NM), Purchamt, hash(Od), hash(Pd))
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 31 / 83
![Page 152: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/152.jpg)
SET/CSET
(PInitReq) C ↪→ M : C ,M(PInitRes) M ↪→ C : NM
(PReq) C ↪→ M : {Trans}K−1C, {Od}KM
, {Pd}KB
(AuthReq) M ↪→ B : {Trans}K−1C, {Trans}K−1
M, {Pd}KB
(AuthRes) B ↪→ M : {Results, hash(Trans)}K−1B
(PRes) M ↪→ C : {Results, hash(Trans)}K−1B
Trans = (C , M, (NC ,NM), Purchamt, hash(Od), hash(Pd))
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 31 / 83
![Page 153: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/153.jpg)
SET/CSET
(PInitReq) C ↪→ M : C ,M(PInitRes) M ↪→ C : NM
(PReq) C ↪→ M : {Trans}K−1C, {Od}KM
, {Pd}KB
(AuthReq) M ↪→ B : {Trans}K−1C, {Trans}K−1
M, {Pd}KB
(AuthRes) B ↪→ M : {Results, hash(Trans)}K−1B
(PRes) M ↪→ C : {Results, hash(Trans)}K−1B
Trans = (C , M, (NC ,NM), Purchamt, hash(Od), hash(Pd))
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 31 / 83
![Page 154: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/154.jpg)
SET/CSET
(PInitReq) C ↪→ M : C ,M(PInitRes) M ↪→ C : NM
(PReq) C ↪→ M : {Trans}K−1C, {Od}KM
, {Pd}KB
(AuthReq) M ↪→ B : {Trans}K−1C, {Trans}K−1
M, {Pd}KB
(AuthRes) B ↪→ M : {Results, hash(Trans)}K−1B
(PRes) M ↪→ C : {Results, hash(Trans)}K−1B
Trans = (C , M, (NC ,NM), Purchamt, hash(Od), hash(Pd))
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 31 / 83
![Page 155: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/155.jpg)
SET/CSET
(PInitReq) C ↪→ M : C ,M(PInitRes) M ↪→ C : NM
(PReq) C ↪→ M : {Trans}K−1C, {Od}KM
, {Pd}KB
(AuthReq) M ↪→ B : {Trans}K−1C, {Trans}K−1
M, {Pd}KB
(AuthRes) B ↪→ M : {Results, hash(Trans)}K−1B
(PRes) M ↪→ C : {Results, hash(Trans)}K−1B
Trans = (C , M, (NC ,NM), Purchamt, hash(Od), hash(Pd))
Proprietes attendues :
Od secret partage entre C et M et inconnu a tout autre agent(y compris B)
Pd secret partage entre C et B et inconnu a tout autre agent(y compris M)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 32 / 83
![Page 156: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/156.jpg)
SET/CSET
(PInitReq) C ↪→ M : C ,M(PInitRes) M ↪→ C : NM
(PReq) C ↪→ M : {Trans}K−1C, {Od}KM
, {Pd}KB
(AuthReq) M ↪→ B : {Trans}K−1C, {Trans}K−1
M, {Pd}KB
(AuthRes) B ↪→ M : {Results, hash(Trans)}K−1B
(PRes) M ↪→ C : {Results, hash(Trans)}K−1B
Trans = (C , M, (NC ,NM), Purchamt, hash(Od), hash(Pd))
Proprietes attendues :
Od secret partage entre C et M et inconnu a tout autre agent(y compris B)
Pd secret partage entre C et B et inconnu a tout autre agent(y compris M)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 32 / 83
![Page 157: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/157.jpg)
SET/CSET
(PInitReq) C ↪→ M : C ,M(PInitRes) M ↪→ C : NM
(PReq) C ↪→ M : {Trans}K−1C, {Od}KM
, {Pd}KB
(AuthReq) M ↪→ B : {Trans}K−1C, {Trans}K−1
M, {Pd}KB
(AuthRes) B ↪→ M : {Results, hash(Trans)}K−1B
(PRes) M ↪→ C : {Results, hash(Trans)}K−1B
Trans = (C , M, (NC ,NM), Purchamt, hash(Od), hash(Pd))
Authentification mutuelle des entites C et M grace a{. . .NM . . .}K−1
Cet {. . .NC . . .}K−1
M
Authentification de l’entite B par C et M grace a{. . . hash(. . .NC ,NM . . .) . . .}K−1
B
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 33 / 83
![Page 158: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/158.jpg)
SET/CSET
(PInitReq) C ↪→ M : C ,M(PInitRes) M ↪→ C : NM
(PReq) C ↪→ M : {Trans}K−1C, {Od}KM
, {Pd}KB
(AuthReq) M ↪→ B : {Trans}K−1C, {Trans}K−1
M, {Pd}KB
(AuthRes) B ↪→ M : {Results, hash(Trans)}K−1B
(PRes) M ↪→ C : {Results, hash(Trans)}K−1B
Trans = (C , M, (NC ,NM), Purchamt, hash(Od), hash(Pd))
Authentification mutuelle des entites C et M grace a{. . .NM . . .}K−1
Cet {. . .NC . . .}K−1
M
Authentification de l’entite B par C et M grace a{. . . hash(. . .NC ,NM . . .) . . .}K−1
B
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 33 / 83
![Page 159: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/159.jpg)
SET/CSET
(PInitReq) C ↪→ M : C ,M(PInitRes) M ↪→ C : NM
(PReq) C ↪→ M : {Trans}K−1C, {Od}KM
, {Pd}KB
(AuthReq) M ↪→ B : {Trans}K−1C, {Trans}K−1
M, {Pd}KB
(AuthRes) B ↪→ M : {Results, hash(Trans)}K−1B
(PRes) M ↪→ C : {Results, hash(Trans)}K−1B
Trans = (C , M, (NC ,NM), Purchamt, hash(Od), hash(Pd))
Authentification par tous les agents des 3 messages {Trans}K−1C
,
{Trans}K−1M
et {Results, hash(Trans)}K−1B
Accord tripartite C ,M,B non repudiable grace a {Trans}K−1C
,
{Trans}K−1M
et {Results, hash(Trans)}K−1B
Fraıcheur transaction verifiee par B avec NC et NM
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 34 / 83
![Page 160: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/160.jpg)
SET/CSET
(PInitReq) C ↪→ M : C ,M(PInitRes) M ↪→ C : NM
(PReq) C ↪→ M : {Trans}K−1C, {Od}KM
, {Pd}KB
(AuthReq) M ↪→ B : {Trans}K−1C, {Trans}K−1
M, {Pd}KB
(AuthRes) B ↪→ M : {Results, hash(Trans)}K−1B
(PRes) M ↪→ C : {Results, hash(Trans)}K−1B
Trans = (C , M, (NC ,NM), Purchamt, hash(Od), hash(Pd))
Authentification par tous les agents des 3 messages {Trans}K−1C
,
{Trans}K−1M
et {Results, hash(Trans)}K−1B
Accord tripartite C ,M,B non repudiable grace a {Trans}K−1C
,
{Trans}K−1M
et {Results, hash(Trans)}K−1B
Fraıcheur transaction verifiee par B avec NC et NM
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 34 / 83
![Page 161: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/161.jpg)
SET/CSET
(PInitReq) C ↪→ M : C ,M(PInitRes) M ↪→ C : NM
(PReq) C ↪→ M : {Trans}K−1C, {Od}KM
, {Pd}KB
(AuthReq) M ↪→ B : {Trans}K−1C, {Trans}K−1
M, {Pd}KB
(AuthRes) B ↪→ M : {Results, hash(Trans)}K−1B
(PRes) M ↪→ C : {Results, hash(Trans)}K−1B
Trans = (C , M, (NC ,NM), Purchamt, hash(Od), hash(Pd))
Authentification par tous les agents des 3 messages {Trans}K−1C
,
{Trans}K−1M
et {Results, hash(Trans)}K−1B
Accord tripartite C ,M,B non repudiable grace a {Trans}K−1C
,
{Trans}K−1M
et {Results, hash(Trans)}K−1B
Fraıcheur transaction verifiee par B avec NC et NM
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 34 / 83
![Page 162: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/162.jpg)
SET/CSET
(PInitReq) C ↪→ M : C ,M(PInitRes) M ↪→ C : NM
(PReq) C ↪→ M : {Trans}K−1C, {Od}KM
, {Pd}KB
(AuthReq) M ↪→ B : {Trans}K−1C, {Trans}K−1
M, {Pd}KB
(AuthRes) B ↪→ M : {Results, hash(Trans)}K−1B
(PRes) M ↪→ C : {Results, hash(Trans)}K−1B
Trans = (C , M, (NC ,NM), Purchamt, hash(Od), hash(Pd))
Mais
pas d’anonymat : B sait que C a achete chez M !
pas d’equite : C signe avant M
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 35 / 83
![Page 163: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/163.jpg)
Monnaie electronique : Le protocole Bitcoin
Protocole public propose par � Satoshi Nakamoto � 1 en 2008
Le protocole est sans tiers de confiance et decentralise :
Les transactions sont validees par un reseau pair-a-pair d’utilisateurs
Transaction= transfert de Bitcoins (B) entre comptesI Un compte est represente par un couple (cle publique, cle privee)I Le numero de compte est la cle publiqueI Seul le titulaire du compte connait la cle privee du compte
Transaction hors ligne entre 2 comptes de numeros KA et KB
I On suppose que Alice detient le compte KA (elle connait K−1A )
I On suppose que Bob detient le compte KB (il connait K−1B )
I Pour donner 20B a Bob, Alice envoie {20, i ,KB}K−1A
sur le reseau P2P
ou i sera un � numero de transaction � (pour simplifier)
1. A l’heure actuelle, on ne sait pas s’il s’agit d’une personne reelle ou d’un groupe.T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 36 / 83
![Page 164: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/164.jpg)
Monnaie electronique : Le protocole Bitcoin
Protocole public propose par � Satoshi Nakamoto � 1 en 2008
Le protocole est sans tiers de confiance et decentralise
:
Les transactions sont validees par un reseau pair-a-pair d’utilisateurs
Transaction= transfert de Bitcoins (B) entre comptesI Un compte est represente par un couple (cle publique, cle privee)I Le numero de compte est la cle publiqueI Seul le titulaire du compte connait la cle privee du compte
Transaction hors ligne entre 2 comptes de numeros KA et KB
I On suppose que Alice detient le compte KA (elle connait K−1A )
I On suppose que Bob detient le compte KB (il connait K−1B )
I Pour donner 20B a Bob, Alice envoie {20, i ,KB}K−1A
sur le reseau P2P
ou i sera un � numero de transaction � (pour simplifier)
1. A l’heure actuelle, on ne sait pas s’il s’agit d’une personne reelle ou d’un groupe.T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 36 / 83
![Page 165: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/165.jpg)
Monnaie electronique : Le protocole Bitcoin
Protocole public propose par � Satoshi Nakamoto � 1 en 2008
Le protocole est sans tiers de confiance et decentralise :
Les transactions sont validees par un reseau pair-a-pair d’utilisateurs
Transaction= transfert de Bitcoins (B) entre comptesI Un compte est represente par un couple (cle publique, cle privee)I Le numero de compte est la cle publiqueI Seul le titulaire du compte connait la cle privee du compte
Transaction hors ligne entre 2 comptes de numeros KA et KB
I On suppose que Alice detient le compte KA (elle connait K−1A )
I On suppose que Bob detient le compte KB (il connait K−1B )
I Pour donner 20B a Bob, Alice envoie {20, i ,KB}K−1A
sur le reseau P2P
ou i sera un � numero de transaction � (pour simplifier)
1. A l’heure actuelle, on ne sait pas s’il s’agit d’une personne reelle ou d’un groupe.T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 36 / 83
![Page 166: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/166.jpg)
Monnaie electronique : Le protocole Bitcoin
Protocole public propose par � Satoshi Nakamoto � 1 en 2008
Le protocole est sans tiers de confiance et decentralise :
Les transactions sont validees par un reseau pair-a-pair d’utilisateurs
Transaction= transfert de Bitcoins (B) entre comptes
I Un compte est represente par un couple (cle publique, cle privee)I Le numero de compte est la cle publiqueI Seul le titulaire du compte connait la cle privee du compte
Transaction hors ligne entre 2 comptes de numeros KA et KB
I On suppose que Alice detient le compte KA (elle connait K−1A )
I On suppose que Bob detient le compte KB (il connait K−1B )
I Pour donner 20B a Bob, Alice envoie {20, i ,KB}K−1A
sur le reseau P2P
ou i sera un � numero de transaction � (pour simplifier)
1. A l’heure actuelle, on ne sait pas s’il s’agit d’une personne reelle ou d’un groupe.T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 36 / 83
![Page 167: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/167.jpg)
Monnaie electronique : Le protocole Bitcoin
Protocole public propose par � Satoshi Nakamoto � 1 en 2008
Le protocole est sans tiers de confiance et decentralise :
Les transactions sont validees par un reseau pair-a-pair d’utilisateurs
Transaction= transfert de Bitcoins (B) entre comptesI Un compte est represente par un couple (cle publique, cle privee)
I Le numero de compte est la cle publiqueI Seul le titulaire du compte connait la cle privee du compte
Transaction hors ligne entre 2 comptes de numeros KA et KB
I On suppose que Alice detient le compte KA (elle connait K−1A )
I On suppose que Bob detient le compte KB (il connait K−1B )
I Pour donner 20B a Bob, Alice envoie {20, i ,KB}K−1A
sur le reseau P2P
ou i sera un � numero de transaction � (pour simplifier)
1. A l’heure actuelle, on ne sait pas s’il s’agit d’une personne reelle ou d’un groupe.T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 36 / 83
![Page 168: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/168.jpg)
Monnaie electronique : Le protocole Bitcoin
Protocole public propose par � Satoshi Nakamoto � 1 en 2008
Le protocole est sans tiers de confiance et decentralise :
Les transactions sont validees par un reseau pair-a-pair d’utilisateurs
Transaction= transfert de Bitcoins (B) entre comptesI Un compte est represente par un couple (cle publique, cle privee)I Le numero de compte est la cle publique
I Seul le titulaire du compte connait la cle privee du compte
Transaction hors ligne entre 2 comptes de numeros KA et KB
I On suppose que Alice detient le compte KA (elle connait K−1A )
I On suppose que Bob detient le compte KB (il connait K−1B )
I Pour donner 20B a Bob, Alice envoie {20, i ,KB}K−1A
sur le reseau P2P
ou i sera un � numero de transaction � (pour simplifier)
1. A l’heure actuelle, on ne sait pas s’il s’agit d’une personne reelle ou d’un groupe.T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 36 / 83
![Page 169: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/169.jpg)
Monnaie electronique : Le protocole Bitcoin
Protocole public propose par � Satoshi Nakamoto � 1 en 2008
Le protocole est sans tiers de confiance et decentralise :
Les transactions sont validees par un reseau pair-a-pair d’utilisateurs
Transaction= transfert de Bitcoins (B) entre comptesI Un compte est represente par un couple (cle publique, cle privee)I Le numero de compte est la cle publiqueI Seul le titulaire du compte connait la cle privee du compte
Transaction hors ligne entre 2 comptes de numeros KA et KB
I On suppose que Alice detient le compte KA (elle connait K−1A )
I On suppose que Bob detient le compte KB (il connait K−1B )
I Pour donner 20B a Bob, Alice envoie {20, i ,KB}K−1A
sur le reseau P2P
ou i sera un � numero de transaction � (pour simplifier)
1. A l’heure actuelle, on ne sait pas s’il s’agit d’une personne reelle ou d’un groupe.T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 36 / 83
![Page 170: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/170.jpg)
Monnaie electronique : Le protocole Bitcoin
Protocole public propose par � Satoshi Nakamoto � 1 en 2008
Le protocole est sans tiers de confiance et decentralise :
Les transactions sont validees par un reseau pair-a-pair d’utilisateurs
Transaction= transfert de Bitcoins (B) entre comptesI Un compte est represente par un couple (cle publique, cle privee)I Le numero de compte est la cle publiqueI Seul le titulaire du compte connait la cle privee du compte
Transaction hors ligne entre 2 comptes de numeros KA et KB
I On suppose que Alice detient le compte KA (elle connait K−1A )
I On suppose que Bob detient le compte KB (il connait K−1B )
I Pour donner 20B a Bob, Alice envoie {20, i ,KB}K−1A
sur le reseau P2P
ou i sera un � numero de transaction � (pour simplifier)
1. A l’heure actuelle, on ne sait pas s’il s’agit d’une personne reelle ou d’un groupe.T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 36 / 83
![Page 171: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/171.jpg)
Monnaie electronique : Le protocole Bitcoin
Protocole public propose par � Satoshi Nakamoto � 1 en 2008
Le protocole est sans tiers de confiance et decentralise :
Les transactions sont validees par un reseau pair-a-pair d’utilisateurs
Transaction= transfert de Bitcoins (B) entre comptesI Un compte est represente par un couple (cle publique, cle privee)I Le numero de compte est la cle publiqueI Seul le titulaire du compte connait la cle privee du compte
Transaction hors ligne entre 2 comptes de numeros KA et KB
I On suppose que Alice detient le compte KA (elle connait K−1A )
I On suppose que Bob detient le compte KB (il connait K−1B )
I Pour donner 20B a Bob, Alice envoie {20, i ,KB}K−1A
sur le reseau P2P
ou i sera un � numero de transaction � (pour simplifier)
1. A l’heure actuelle, on ne sait pas s’il s’agit d’une personne reelle ou d’un groupe.T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 36 / 83
![Page 172: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/172.jpg)
Protocole Bitcoin (II)
Toutes les 10 minutes, chaque noeud du P2P declenche la verification
Les nouvelles transactions sont verifiees par rapport a la BlockChain
BlockChain=historique des transactions depuis le demarrage (2009)
Dans la BlockChain, on verifie que KA est credite d’au moins 20B
Une fois validees les nouvelles transactions sont ajoutees a BlockChain
Block Bi = nouvelles transactions + hash(Bi−1) + Ni (a trouver)
La BlockChain completee est partagee sur le reseau P2P
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 37 / 83
![Page 173: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/173.jpg)
Protocole Bitcoin (II)
Toutes les 10 minutes, chaque noeud du P2P declenche la verification
Les nouvelles transactions sont verifiees par rapport a la BlockChain
BlockChain=historique des transactions depuis le demarrage (2009)
Dans la BlockChain, on verifie que KA est credite d’au moins 20B
Une fois validees les nouvelles transactions sont ajoutees a BlockChain
Block Bi = nouvelles transactions + hash(Bi−1) + Ni (a trouver)
La BlockChain completee est partagee sur le reseau P2P
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 37 / 83
![Page 174: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/174.jpg)
Protocole Bitcoin (II)
Toutes les 10 minutes, chaque noeud du P2P declenche la verification
Les nouvelles transactions sont verifiees par rapport a la BlockChain
BlockChain=historique des transactions depuis le demarrage (2009)
Bi−2 Bi−1{116, i− 2,KA}K−1
C
{13, i− 2,KB}K−1D
{258, i− 2,KM}K−1H
. . .
hash(Bi−3)
Ni−2
{100, i− 1,KF }K−1G
{755, i− 1,KA}K−1C
. . .
hash(Bi−2)
Ni−1
{20, i,KB}K−1A
{5, i,KC}K−1D
{1000, i,KE}K−1B
. . .
hash(Bi−1)
Ni a determiner
Dans la BlockChain, on verifie que KA est credite d’au moins 20B
Une fois validees les nouvelles transactions sont ajoutees a BlockChain
Block Bi = nouvelles transactions + hash(Bi−1) + Ni (a trouver)
La BlockChain completee est partagee sur le reseau P2P
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 37 / 83
![Page 175: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/175.jpg)
Protocole Bitcoin (II)
Toutes les 10 minutes, chaque noeud du P2P declenche la verification
Les nouvelles transactions sont verifiees par rapport a la BlockChain
BlockChain=historique des transactions depuis le demarrage (2009)
Bi−2 Bi−1{116, i− 2,KA}K−1
C
{13, i− 2,KB}K−1D
{258, i− 2,KM}K−1H
. . .
hash(Bi−3)
Ni−2
{100, i− 1,KF }K−1G
{755, i− 1,KA}K−1C
. . .
hash(Bi−2)
Ni−1
{20, i,KB}K−1A
{5, i,KC}K−1D
{1000, i,KE}K−1B
. . .
hash(Bi−1)
Ni a determiner
Dans la BlockChain, on verifie que KA est credite d’au moins 20B
Une fois validees les nouvelles transactions sont ajoutees a BlockChain
Block Bi = nouvelles transactions + hash(Bi−1) + Ni (a trouver)
La BlockChain completee est partagee sur le reseau P2P
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 37 / 83
![Page 176: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/176.jpg)
Protocole Bitcoin (II)
Toutes les 10 minutes, chaque noeud du P2P declenche la verification
Les nouvelles transactions sont verifiees par rapport a la BlockChain
BlockChain=historique des transactions depuis le demarrage (2009)
Bi−2 Bi−1{116, i− 2,KA}K−1
C
{13, i− 2,KB}K−1D
{258, i− 2,KM}K−1H
. . .
hash(Bi−3)
Ni−2
{100, i− 1,KF }K−1G
{755, i− 1,KA}K−1C
. . .
hash(Bi−2)
Ni−1
{20, i,KB}K−1A
{5, i,KC}K−1D
{1000, i,KE}K−1B
. . .
hash(Bi−1)
Ni a determiner
Dans la BlockChain, on verifie que KA est credite d’au moins 20B
Une fois validees les nouvelles transactions sont ajoutees a BlockChain
Block Bi = nouvelles transactions + hash(Bi−1) + Ni (a trouver)
La BlockChain completee est partagee sur le reseau P2P
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 37 / 83
![Page 177: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/177.jpg)
Protocole Bitcoin (II)
Toutes les 10 minutes, chaque noeud du P2P declenche la verification
Les nouvelles transactions sont verifiees par rapport a la BlockChain
BlockChain=historique des transactions depuis le demarrage (2009)
Bi−2 Bi−1{116, i− 2,KA}K−1
C
{13, i− 2,KB}K−1D
{258, i− 2,KM}K−1H
. . .
hash(Bi−3)
Ni−2
{100, i− 1,KF }K−1G
{755, i− 1,KA}K−1C
. . .
hash(Bi−2)
Ni−1
{20, i,KB}K−1A
{5, i,KC}K−1D
{1000, i,KE}K−1B
. . .
hash(Bi−1)
Ni a determiner
Bi
Dans la BlockChain, on verifie que KA est credite d’au moins 20B
Une fois validees les nouvelles transactions sont ajoutees a BlockChain
Block Bi = nouvelles transactions + hash(Bi−1) + Ni (a trouver)
La BlockChain completee est partagee sur le reseau P2P
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 37 / 83
![Page 178: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/178.jpg)
Protocole Bitcoin (II)
Toutes les 10 minutes, chaque noeud du P2P declenche la verification
Les nouvelles transactions sont verifiees par rapport a la BlockChain
BlockChain=historique des transactions depuis le demarrage (2009)
Bi−2 Bi−1{116, i− 2,KA}K−1
C
{13, i− 2,KB}K−1D
{258, i− 2,KM}K−1H
. . .
hash(Bi−3)
Ni−2
{100, i− 1,KF }K−1G
{755, i− 1,KA}K−1C
. . .
hash(Bi−2)
Ni−1
{20, i,KB}K−1A
{5, i,KC}K−1D
{1000, i,KE}K−1B
. . .
hash(Bi−1)
Ni a determiner
Bi
Dans la BlockChain, on verifie que KA est credite d’au moins 20B
Une fois validees les nouvelles transactions sont ajoutees a BlockChain
Block Bi = nouvelles transactions + hash(Bi−1) + Ni (a trouver)
La BlockChain completee est partagee sur le reseau P2P
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 37 / 83
![Page 179: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/179.jpg)
Protocole Bitcoin : � securite par le consensus massif �
Pour eviter la tricherie (e.g. double depense) la securite repose sur Ni
Pour pouvoir valider un bloc, les pairs doivent determiner Ni tel que :
I hash(Bi ) a une valeur binaire commencant par quatre 0 (par ex.)
I hash(nouvelles transactions + hash(Bi−1)︸ ︷︷ ︸C
+Ni ) = 0000 . . .
Comment trouver Ni t.q. hash(C + Ni ) = 0000 . . . ?
I Probleme calculatoire difficile ! !
I Impossible a resoudre en 10 minutes avec 1, 10, 100 machines
I Possible uniquement si resolution distribuee entre de nombreux pairs
hash( ) = 0000 . . .
C +Ni possibles
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 38 / 83
![Page 180: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/180.jpg)
Protocole Bitcoin : � securite par le consensus massif �
Pour eviter la tricherie (e.g. double depense) la securite repose sur Ni
Pour pouvoir valider un bloc, les pairs doivent determiner Ni tel que :
I hash(Bi ) a une valeur binaire commencant par quatre 0 (par ex.)
I hash(nouvelles transactions + hash(Bi−1)︸ ︷︷ ︸C
+Ni ) = 0000 . . .
Comment trouver Ni t.q. hash(C + Ni ) = 0000 . . . ?
I Probleme calculatoire difficile ! !
I Impossible a resoudre en 10 minutes avec 1, 10, 100 machines
I Possible uniquement si resolution distribuee entre de nombreux pairs
hash( ) = 0000 . . .
C +Ni possibles
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 38 / 83
![Page 181: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/181.jpg)
Protocole Bitcoin : � securite par le consensus massif �
Pour eviter la tricherie (e.g. double depense) la securite repose sur Ni
Pour pouvoir valider un bloc, les pairs doivent determiner Ni tel que :
I hash(Bi ) a une valeur binaire commencant par quatre 0 (par ex.)
I hash(nouvelles transactions + hash(Bi−1)︸ ︷︷ ︸C
+Ni ) = 0000 . . .
Comment trouver Ni t.q. hash(C + Ni ) = 0000 . . . ?
I Probleme calculatoire difficile ! !
I Impossible a resoudre en 10 minutes avec 1, 10, 100 machines
I Possible uniquement si resolution distribuee entre de nombreux pairs
hash( ) = 0000 . . .
C +Ni possibles
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 38 / 83
![Page 182: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/182.jpg)
Protocole Bitcoin : � securite par le consensus massif �
Pour eviter la tricherie (e.g. double depense) la securite repose sur Ni
Pour pouvoir valider un bloc, les pairs doivent determiner Ni tel que :
I hash(Bi ) a une valeur binaire commencant par quatre 0 (par ex.)
I hash(nouvelles transactions + hash(Bi−1)︸ ︷︷ ︸C
+Ni ) = 0000 . . .
Comment trouver Ni t.q. hash(C + Ni ) = 0000 . . . ?
I Probleme calculatoire difficile ! !
I Impossible a resoudre en 10 minutes avec 1, 10, 100 machines
I Possible uniquement si resolution distribuee entre de nombreux pairs
hash( ) = 0000 . . .
C +Ni possibles
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 38 / 83
![Page 183: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/183.jpg)
Protocole Bitcoin : � securite par le consensus massif �
Pour eviter la tricherie (e.g. double depense) la securite repose sur Ni
Pour pouvoir valider un bloc, les pairs doivent determiner Ni tel que :
I hash(Bi ) a une valeur binaire commencant par quatre 0 (par ex.)
I hash(nouvelles transactions + hash(Bi−1)︸ ︷︷ ︸C
+Ni ) = 0000 . . .
Comment trouver Ni t.q. hash(C + Ni ) = 0000 . . . ?I Probleme calculatoire difficile ! !
I Impossible a resoudre en 10 minutes avec 1, 10, 100 machines
I Possible uniquement si resolution distribuee entre de nombreux pairs
hash( ) = 0000 . . .
C +Ni possibles
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 38 / 83
![Page 184: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/184.jpg)
Protocole Bitcoin : � securite par le consensus massif �
Pour eviter la tricherie (e.g. double depense) la securite repose sur Ni
Pour pouvoir valider un bloc, les pairs doivent determiner Ni tel que :
I hash(Bi ) a une valeur binaire commencant par quatre 0 (par ex.)
I hash(nouvelles transactions + hash(Bi−1)︸ ︷︷ ︸C
+Ni ) = 0000 . . .
Comment trouver Ni t.q. hash(C + Ni ) = 0000 . . . ?I Probleme calculatoire difficile ! !
I Impossible a resoudre en 10 minutes avec 1, 10, 100 machines
I Possible uniquement si resolution distribuee entre de nombreux pairs
hash( ) = 0000 . . .
C +Ni possibles
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 38 / 83
![Page 185: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/185.jpg)
Protocole Bitcoin : � securite par le consensus massif �
Pour eviter la tricherie (e.g. double depense) la securite repose sur Ni
Pour pouvoir valider un bloc, les pairs doivent determiner Ni tel que :
I hash(Bi ) a une valeur binaire commencant par quatre 0 (par ex.)
I hash(nouvelles transactions + hash(Bi−1)︸ ︷︷ ︸C
+Ni ) = 0000 . . .
Comment trouver Ni t.q. hash(C + Ni ) = 0000 . . . ?I Probleme calculatoire difficile ! !
I Impossible a resoudre en 10 minutes avec 1, 10, 100 machines
I Possible uniquement si resolution distribuee entre de nombreux pairs
hash( ) = 0000 . . .
C +Ni possibles
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 38 / 83
![Page 186: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/186.jpg)
Protocole Bitcoin : � securite par le consensus massif �
Pour eviter la tricherie (e.g. double depense) la securite repose sur Ni
Pour pouvoir valider un bloc, les pairs doivent determiner Ni tel que :I hash(Bi ) a une valeur binaire commencant par quatre 0 (par ex.)I hash(nouvelles transactions + hash(Bi−1)︸ ︷︷ ︸
C
+Ni ) = 0000 . . .
Comment trouver Ni t.q. hash(C + Ni ) = 0000 . . . ?I Probleme calculatoire difficile ! !I Impossible a resoudre en 10 minutes avec 1, 10, 100 machinesI Possible uniquement si resolution distribuee entre de nombreux pairs
hash( ) = 0000 . . .
C +Ni possibles
hash( ) = 0000 . . .
C +Ni possibles
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 38 / 83
![Page 187: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/187.jpg)
Protocole Bitcoin : � securite par le consensus massif �
Pour eviter la tricherie (e.g. double depense) la securite repose sur Ni
Pour pouvoir valider un bloc, les pairs doivent determiner Ni tel que :I hash(Bi ) a une valeur binaire commencant par quatre 0 (par ex.)I hash(nouvelles transactions + hash(Bi−1)︸ ︷︷ ︸
C
+Ni ) = 0000 . . .
Comment trouver Ni t.q. hash(C + Ni ) = 0000 . . . ?I Probleme calculatoire difficile ! !I Impossible a resoudre en 10 minutes avec 1, 10, 100 machinesI Possible uniquement si resolution distribuee entre de nombreux pairs
hash( ) = 0000 . . .
hash( ) = 0000 . . .
hash( ) = 0000 . . .
hash( ) = 0000 . . .
hash( ) = 0000 . . .
hash( ) = 0000 . . .
hash( ) = 0000 . . .
C +Ni possibles
hash( ) = 0000 . . .
C +Ni possibles
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 38 / 83
![Page 188: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/188.jpg)
Protocole Bitcoin : � securite par le consensus massif �
Pour eviter la tricherie (e.g. double depense) la securite repose sur Ni
Pour pouvoir valider un bloc, les pairs doivent determiner Ni tel que :I hash(Bi ) a une valeur binaire commencant par quatre 0 (par ex.)I hash(nouvelles transactions + hash(Bi−1)︸ ︷︷ ︸
C
+Ni ) = 0000 . . .
Comment trouver Ni t.q. hash(C + Ni ) = 0000 . . . ?I Probleme calculatoire difficile ! !I Impossible a resoudre en 10 minutes avec 1, 10, 100 machinesI Possible uniquement si resolution distribuee entre de nombreux pairs
hash( ) = 0000 . . .
C +Ni possibles
hash(C +Ni) = 0000 . . .
hash( ) = 0000 . . .
C +Ni possibles
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 38 / 83
![Page 189: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/189.jpg)
Protocole Bitcoin : � securite par le consensus massif �
Pour eviter la tricherie (e.g. double depense) la securite repose sur Ni
Pour pouvoir valider un bloc, les pairs doivent determiner Ni tel que :I hash(Bi ) a une valeur binaire commencant par quatre 0 (par ex.)I hash(nouvelles transactions + hash(Bi−1)︸ ︷︷ ︸
C
+Ni ) = 0000 . . .
Comment trouver Ni t.q. hash(C + Ni ) = 0000 . . . ?I Probleme calculatoire difficile ! !I Impossible a resoudre en 10 minutes avec 1, 10, 100 machinesI Possible uniquement si resolution distribuee entre de nombreux pairs
hash( ) = 0000 . . .
C +Ni possibles
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash( ) = 0000 . . .
C +Ni possibles
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 38 / 83
![Page 190: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/190.jpg)
Protocole Bitcoin : � securite par le consensus massif �
Pour eviter la tricherie (e.g. double depense) la securite repose sur Ni
Pour pouvoir valider un bloc, les pairs doivent determiner Ni tel que :
I hash(Bi ) a une valeur binaire commencant par quatre 0 (par ex.)
I hash(nouvelles transactions + hash(Bi−1)︸ ︷︷ ︸C
+Ni ) = 0000 . . .
Comment trouver Ni t.q. hash(C + Ni ) = 0000 . . . ?I Probleme calculatoire difficile ! !
I Impossible a resoudre en 10 minutes avec 1, 10, 100 machines
I Possible uniquement si resolution distribuee entre de nombreux pairs
hash( ) = 0000 . . .
C +Ni possibles
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 38 / 83
![Page 191: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/191.jpg)
Protocole Bitcoin : � securite par le consensus massif �(II)
hash( ) = 0000 . . .
C +Ni possibles
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
Consensus des pairs sur C + Ni (C contient les nouvelles transactions)
D’ou consensus des pairs sur les nouvelles transactions !
Il est impossible pour un agent isole de tricher :
I double depenseI depenser plus que le credit d’un compte
Pour tricher, il faut detenir plus de 51% de la puissance de calcul !
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 39 / 83
![Page 192: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/192.jpg)
Protocole Bitcoin : � securite par le consensus massif �(II)
hash( ) = 0000 . . .
C +Ni possibles
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
Consensus des pairs sur C + Ni (C contient les nouvelles transactions)
D’ou consensus des pairs sur les nouvelles transactions !
Il est impossible pour un agent isole de tricher :
I double depenseI depenser plus que le credit d’un compte
Pour tricher, il faut detenir plus de 51% de la puissance de calcul !
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 39 / 83
![Page 193: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/193.jpg)
Protocole Bitcoin : � securite par le consensus massif �(II)
hash( ) = 0000 . . .
C +Ni possibles
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
Consensus des pairs sur C + Ni (C contient les nouvelles transactions)
D’ou consensus des pairs sur les nouvelles transactions !
Il est impossible pour un agent isole de tricher :
I double depenseI depenser plus que le credit d’un compte
Pour tricher, il faut detenir plus de 51% de la puissance de calcul !
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 39 / 83
![Page 194: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/194.jpg)
Protocole Bitcoin : � securite par le consensus massif �(II)
hash( ) = 0000 . . .
C +Ni possibles
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
hash(C +Ni) = 0000 . . .
Consensus des pairs sur C + Ni (C contient les nouvelles transactions)
D’ou consensus des pairs sur les nouvelles transactions !
Il est impossible pour un agent isole de tricher :
I double depenseI depenser plus que le credit d’un compte
Pour tricher, il faut detenir plus de 51% de la puissance de calcul !
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 39 / 83
![Page 195: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/195.jpg)
Protocole Bitcoin : proprietes attenduesBi−2 Bi−1
{116, i− 2,KA}K−1C
{13, i− 2,KB}K−1D
{258, i− 2,KM}K−1H
. . .
hash(Bi−3)
Ni−2
{100, i− 1,KF }K−1G
{755, i− 1,KA}K−1C
. . .
hash(Bi−2)
Ni−1
{20, i,KB}K−1A
{5, i,KC}K−1D
{1000, i,KE}K−1B
. . .
hash(Bi−1)
Ni a determiner
Bi
Secrets :
aucun (tous les transferts de compte a compte sont publics)
Messages authentifies : toutes les transactions
Fraıcheur : toutes les transactions, tous les Ni , tous les hash
Agents authentifies : les emetteurs de transaction sont authentifiespar tous les participants au reseau P2P
Anonymat : s’il n’est pas possible de savoir qui emet une transactionsur le P2P, les agents associes aux comptes restent anonymes
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 40 / 83
![Page 196: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/196.jpg)
Protocole Bitcoin : proprietes attenduesBi−2 Bi−1
{116, i− 2,KA}K−1C
{13, i− 2,KB}K−1D
{258, i− 2,KM}K−1H
. . .
hash(Bi−3)
Ni−2
{100, i− 1,KF }K−1G
{755, i− 1,KA}K−1C
. . .
hash(Bi−2)
Ni−1
{20, i,KB}K−1A
{5, i,KC}K−1D
{1000, i,KE}K−1B
. . .
hash(Bi−1)
Ni a determiner
Bi
Secrets : aucun (tous les transferts de compte a compte sont publics)
Messages authentifies :
toutes les transactions
Fraıcheur : toutes les transactions, tous les Ni , tous les hash
Agents authentifies : les emetteurs de transaction sont authentifiespar tous les participants au reseau P2P
Anonymat : s’il n’est pas possible de savoir qui emet une transactionsur le P2P, les agents associes aux comptes restent anonymes
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 40 / 83
![Page 197: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/197.jpg)
Protocole Bitcoin : proprietes attenduesBi−2 Bi−1
{116, i− 2,KA}K−1C
{13, i− 2,KB}K−1D
{258, i− 2,KM}K−1H
. . .
hash(Bi−3)
Ni−2
{100, i− 1,KF }K−1G
{755, i− 1,KA}K−1C
. . .
hash(Bi−2)
Ni−1
{20, i,KB}K−1A
{5, i,KC}K−1D
{1000, i,KE}K−1B
. . .
hash(Bi−1)
Ni a determiner
Bi
Secrets : aucun (tous les transferts de compte a compte sont publics)
Messages authentifies : toutes les transactions
Fraıcheur :
toutes les transactions, tous les Ni , tous les hash
Agents authentifies : les emetteurs de transaction sont authentifiespar tous les participants au reseau P2P
Anonymat : s’il n’est pas possible de savoir qui emet une transactionsur le P2P, les agents associes aux comptes restent anonymes
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 40 / 83
![Page 198: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/198.jpg)
Protocole Bitcoin : proprietes attenduesBi−2 Bi−1
{116, i− 2,KA}K−1C
{13, i− 2,KB}K−1D
{258, i− 2,KM}K−1H
. . .
hash(Bi−3)
Ni−2
{100, i− 1,KF }K−1G
{755, i− 1,KA}K−1C
. . .
hash(Bi−2)
Ni−1
{20, i,KB}K−1A
{5, i,KC}K−1D
{1000, i,KE}K−1B
. . .
hash(Bi−1)
Ni a determiner
Bi
Secrets : aucun (tous les transferts de compte a compte sont publics)
Messages authentifies : toutes les transactions
Fraıcheur : toutes les transactions, tous les Ni , tous les hash
Agents authentifies :
les emetteurs de transaction sont authentifiespar tous les participants au reseau P2P
Anonymat : s’il n’est pas possible de savoir qui emet une transactionsur le P2P, les agents associes aux comptes restent anonymes
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 40 / 83
![Page 199: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/199.jpg)
Protocole Bitcoin : proprietes attenduesBi−2 Bi−1
{116, i− 2,KA}K−1C
{13, i− 2,KB}K−1D
{258, i− 2,KM}K−1H
. . .
hash(Bi−3)
Ni−2
{100, i− 1,KF }K−1G
{755, i− 1,KA}K−1C
. . .
hash(Bi−2)
Ni−1
{20, i,KB}K−1A
{5, i,KC}K−1D
{1000, i,KE}K−1B
. . .
hash(Bi−1)
Ni a determiner
Bi
Secrets : aucun (tous les transferts de compte a compte sont publics)
Messages authentifies : toutes les transactions
Fraıcheur : toutes les transactions, tous les Ni , tous les hash
Agents authentifies : les emetteurs de transaction sont authentifiespar tous les participants au reseau P2P
Anonymat :
s’il n’est pas possible de savoir qui emet une transactionsur le P2P, les agents associes aux comptes restent anonymes
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 40 / 83
![Page 200: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/200.jpg)
Protocole Bitcoin : proprietes attenduesBi−2 Bi−1
{116, i− 2,KA}K−1C
{13, i− 2,KB}K−1D
{258, i− 2,KM}K−1H
. . .
hash(Bi−3)
Ni−2
{100, i− 1,KF }K−1G
{755, i− 1,KA}K−1C
. . .
hash(Bi−2)
Ni−1
{20, i,KB}K−1A
{5, i,KC}K−1D
{1000, i,KE}K−1B
. . .
hash(Bi−1)
Ni a determiner
Bi
Secrets : aucun (tous les transferts de compte a compte sont publics)
Messages authentifies : toutes les transactions
Fraıcheur : toutes les transactions, tous les Ni , tous les hash
Agents authentifies : les emetteurs de transaction sont authentifiespar tous les participants au reseau P2P
Anonymat : s’il n’est pas possible de savoir qui emet une transactionsur le P2P, les agents associes aux comptes restent anonymes
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 40 / 83
![Page 201: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/201.jpg)
Securite de Bitcoin : ce que tout utilisateur doit verifier
l’homogeinite du reseau P2P : moins de 51% de la puissance de calculdoit etre aux mains d’une entite malveillante
que son numero de compte et sa cle privee restent secrets
par ex., le numero : 1CfvVCqnXwVEdxXaSETP7Yx8PvFCKs66a2 et lacle : 5JHS5prvTHw7V4pX9hAiMu9tUNFJDRoURTuzn6V8wctsxb9TtJT
I Stockees sur un disque externe, cle USB, etc.
I Stockees sur du papier :
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 41 / 83
![Page 202: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/202.jpg)
Securite de Bitcoin : ce que tout utilisateur doit verifier
l’homogeinite du reseau P2P : moins de 51% de la puissance de calculdoit etre aux mains d’une entite malveillante
que son numero de compte et sa cle privee restent secrets
par ex., le numero : 1CfvVCqnXwVEdxXaSETP7Yx8PvFCKs66a2 et lacle : 5JHS5prvTHw7V4pX9hAiMu9tUNFJDRoURTuzn6V8wctsxb9TtJT
I Stockees sur un disque externe, cle USB, etc.
I Stockees sur du papier :
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 41 / 83
![Page 203: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/203.jpg)
Securite de Bitcoin : ce que tout utilisateur doit verifier
l’homogeinite du reseau P2P : moins de 51% de la puissance de calculdoit etre aux mains d’une entite malveillante
que son numero de compte et sa cle privee restent secrets
par ex., le numero : 1CfvVCqnXwVEdxXaSETP7Yx8PvFCKs66a2 et lacle : 5JHS5prvTHw7V4pX9hAiMu9tUNFJDRoURTuzn6V8wctsxb9TtJT
I Stockees sur un disque externe, cle USB, etc.
I Stockees sur du papier :
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 41 / 83
![Page 204: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/204.jpg)
Securite de Bitcoin : ce que tout utilisateur doit verifier
l’homogeinite du reseau P2P : moins de 51% de la puissance de calculdoit etre aux mains d’une entite malveillante
que son numero de compte et sa cle privee restent secrets
par ex., le numero : 1CfvVCqnXwVEdxXaSETP7Yx8PvFCKs66a2 et lacle : 5JHS5prvTHw7V4pX9hAiMu9tUNFJDRoURTuzn6V8wctsxb9TtJT
I Stockees sur un disque externe, cle USB, etc.
I Stockees sur du papier :
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 41 / 83
![Page 205: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/205.jpg)
Partie II :
Protocoles crypto, attaques et verification
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 42 / 83
![Page 206: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/206.jpg)
Protocoles crypto, attaques et verification
Plan
Bibliographie
Mises en garde
Le paiement avec une carte bancaire a puce
Les failles
Verification des protocoles cryptographiquesI Definition des Capacites de l’intrusI Le modele de Dolev-YaoI Verification “logique” des protocoles
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 43 / 83
![Page 207: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/207.jpg)
Bibliographie
Jacques Patarin. La Cryptographie des cartes bancaires. Pour lascience. Hors serie. Juillet-Octobre 2002.
L. Paulson. The inductive approach to verifying cryptographicprotocols. Journal of Computer Security. 1998.
http://www.cl.cam.ac.uk/~lp15/papers/Auth/jcs.pdf
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 44 / 83
![Page 208: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/208.jpg)
Mises en garde
Art. 67-1. (L. n 91-1382 du 30 dec. 1991)
Seront punis d’un emprisonnement d’un an a sept ans et d’une amende de3.600 F a 5.000.000 F ou de l’une de ces deux peines seulement :
1 Ceux qui auront contrefait ou falsifie une carte de paiement ou deretrait ;
2 Ceux qui, en connaissance de cause, auront fait usage d’une carte depaiement ou de retrait contrefaite ou falsifiee ;
3 . . .
[Bruce Schneier]“Il est certainement plus simple d’implementer de la mauvaise securite etde rendre hors la loi tous ceux qui le font remarquer que d’implementer dela bonne securite.”
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 45 / 83
![Page 209: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/209.jpg)
Exemple de la Carte bancaire
Acteurs (ou agents) :
(A)lice
(C)arte bancaire (detenue par A)
(T)erminal du commercant
(B)anque (banque emettrice de la carte)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 46 / 83
![Page 210: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/210.jpg)
Exemple de la Carte bancaire
Protocole de transaction :
A introduit sa carte C
le commercant saisit le montant m sur T
T authentifie C
A donne son code (3456) a C
Si m depasse 100 euros (et dans 20% des cas)
T demande l’autorisation a B pour C
B donne l’autorisation
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 47 / 83
![Page 211: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/211.jpg)
Exemple de la Carte bancaire
Protocole de transaction :
A introduit sa carte C
le commercant saisit le montant m sur T
T authentifie C
A donne son code (3456) a C
Si m depasse 100 euros (et dans 20% des cas)
T demande l’autorisation a B pour C
B donne l’autorisation
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 47 / 83
![Page 212: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/212.jpg)
Exemple de la Carte bancaire
Protocole de transaction :
A introduit sa carte C
le commercant saisit le montant m sur T
T authentifie C
A donne son code (3456) a C
Si m depasse 100 euros (et dans 20% des cas)
T demande l’autorisation a B pour C
B donne l’autorisation
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 47 / 83
![Page 213: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/213.jpg)
Exemple de la Carte bancaire
Protocole de transaction :
A introduit sa carte C
le commercant saisit le montant m sur T
T authentifie C
A donne son code (3456) a C
Si m depasse 100 euros (et dans 20% des cas)
T demande l’autorisation a B pour C
B donne l’autorisation
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 47 / 83
![Page 214: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/214.jpg)
Exemple de la Carte bancaire
Protocole de transaction :
A introduit sa carte C
le commercant saisit le montant m sur T
T authentifie C
A donne son code (3456) a C
Si m depasse 100 euros (et dans 20% des cas)
T demande l’autorisation a B pour C
B donne l’autorisation
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 47 / 83
![Page 215: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/215.jpg)
Exemple de la Carte bancaire
Protocole de transaction :
A introduit sa carte C
le commercant saisit le montant m sur T
T authentifie C
A donne son code (3456) a C
Si m depasse 100 euros (et dans 20% des cas)
T demande l’autorisation a B pour C
B donne l’autorisation
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 47 / 83
![Page 216: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/216.jpg)
Exemple de la Carte bancaire
Protocole de transaction :
A introduit sa carte C
le commercant saisit le montant m sur T
T authentifie C
A donne son code (3456) a C
Si m depasse 100 euros (et dans 20% des cas)
T demande l’autorisation a B pour C
B donne l’autorisation
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 47 / 83
![Page 217: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/217.jpg)
Exemple de la Carte bancaire
Protocole de transaction :
A introduit sa carte C
le commercant saisit le montant m sur T
T authentifie C
A donne son code (3456) a C
Si m depasse 100 euros (et dans 20% des cas)
T demande l’autorisation a B pour C
B donne l’autorisation
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 47 / 83
![Page 218: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/218.jpg)
Exemple de la Carte bancaire (Protocole B0, 1987-2005)
(A)lice possede un code secret : 3456
(B)anque possedeI une cle “publique” KB
I des cles secretes K−1B , KCB
(C)arte possede des informations “publiques”I Data= nom, prenom, numero carte, date de validiteI Valeur de Signature VS = {hash(Data)}K−1
B
et une cle “secrete” : KCB (DES)
(T)erminal possedeI hashI une cle “publique” KB (RSA)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 48 / 83
![Page 219: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/219.jpg)
Exemple de la Carte bancaire (Protocole B0, 1987-2005)
(A)lice possede un code secret : 3456
(B)anque possedeI une cle “publique” KB
I des cles secretes K−1B , KCB
(C)arte possede des informations “publiques”I Data= nom, prenom, numero carte, date de validiteI Valeur de Signature VS = {hash(Data)}K−1
B
et une cle “secrete” : KCB (DES)
(T)erminal possedeI hashI une cle “publique” KB (RSA)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 48 / 83
![Page 220: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/220.jpg)
Exemple de la Carte bancaire (Protocole B0, 1987-2005)
(A)lice possede un code secret : 3456
(B)anque possedeI une cle “publique” KB
I des cles secretes K−1B , KCB
(C)arte possede des informations “publiques”I Data= nom, prenom, numero carte, date de validiteI Valeur de Signature VS = {hash(Data)}K−1
B
et une cle “secrete” : KCB (DES)
(T)erminal possedeI hashI une cle “publique” KB (RSA)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 48 / 83
![Page 221: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/221.jpg)
Exemple de la Carte bancaire (Protocole B0, 1987-2005)
(A)lice possede un code secret : 3456
(B)anque possedeI une cle “publique” KB
I des cles secretes K−1B , KCB
(C)arte possede des informations “publiques”
I Data= nom, prenom, numero carte, date de validiteI Valeur de Signature VS = {hash(Data)}K−1
B
et une cle “secrete” : KCB (DES)
(T)erminal possedeI hashI une cle “publique” KB (RSA)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 48 / 83
![Page 222: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/222.jpg)
Exemple de la Carte bancaire (Protocole B0, 1987-2005)
(A)lice possede un code secret : 3456
(B)anque possedeI une cle “publique” KB
I des cles secretes K−1B , KCB
(C)arte possede des informations “publiques”I Data= nom, prenom, numero carte, date de validite
I Valeur de Signature VS = {hash(Data)}K−1B
et une cle “secrete” : KCB (DES)
(T)erminal possedeI hashI une cle “publique” KB (RSA)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 48 / 83
![Page 223: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/223.jpg)
Exemple de la Carte bancaire (Protocole B0, 1987-2005)
(A)lice possede un code secret : 3456
(B)anque possedeI une cle “publique” KB
I des cles secretes K−1B , KCB
(C)arte possede des informations “publiques”I Data= nom, prenom, numero carte, date de validiteI Valeur de Signature VS = {hash(Data)}K−1
B
et une cle “secrete” : KCB (DES)
(T)erminal possedeI hashI une cle “publique” KB (RSA)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 48 / 83
![Page 224: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/224.jpg)
Exemple de la Carte bancaire (Protocole B0, 1987-2005)
(A)lice possede un code secret : 3456
(B)anque possedeI une cle “publique” KB
I des cles secretes K−1B , KCB
(C)arte possede des informations “publiques”I Data= nom, prenom, numero carte, date de validiteI Valeur de Signature VS = {hash(Data)}K−1
B
et une cle “secrete” : KCB (DES)
(T)erminal possedeI hashI une cle “publique” KB (RSA)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 48 / 83
![Page 225: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/225.jpg)
Exemple de la Carte bancaire (Protocole B0, 1987-2005)
(A)lice possede un code secret : 3456
(B)anque possedeI une cle “publique” KB
I des cles secretes K−1B , KCB
(C)arte possede des informations “publiques”I Data= nom, prenom, numero carte, date de validiteI Valeur de Signature VS = {hash(Data)}K−1
B
et une cle “secrete” : KCB (DES)
(T)erminal possedeI hashI une cle “publique” KB (RSA)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 48 / 83
![Page 226: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/226.jpg)
Exemple de la Carte bancaire (Protocole B0, 1987-2005)
(A)lice possede son code : 3456
(C)arte possede Data et {hash(Data)}K−1B
(T)erminal possede hash et la cle “publique” KB
Phase hors ligne de la transaction (estimation) :
T authentifie C
1. C ↪→ T : Data, {hash(Data)}K−1B
A donne son code a C (C authentifie A)
2. T ↪→ A : code ?3. A ↪→ C : 34564. C ↪→ T : ok
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 49 / 83
![Page 227: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/227.jpg)
Exemple de la Carte bancaire (Protocole B0, 1987-2005)
(A)lice possede son code : 3456
(C)arte possede Data et {hash(Data)}K−1B
(T)erminal possede hash et la cle “publique” KB
Phase hors ligne de la transaction (estimation) :
T authentifie C
1. C ↪→ T : Data, {hash(Data)}K−1B
A donne son code a C (C authentifie A)
2. T ↪→ A : code ?3. A ↪→ C : 34564. C ↪→ T : ok
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 49 / 83
![Page 228: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/228.jpg)
Exemple de la Carte bancaire (Protocole B0, 1987-2005)
(A)lice possede son code : 3456
(C)arte possede Data et {hash(Data)}K−1B
(T)erminal possede hash et la cle “publique” KB
Phase hors ligne de la transaction (estimation) :
T authentifie C
1. C ↪→ T : Data, {hash(Data)}K−1B
A donne son code a C (C authentifie A)
2. T ↪→ A : code ?3. A ↪→ C : 34564. C ↪→ T : ok
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 49 / 83
![Page 229: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/229.jpg)
Exemple de la Carte bancaire (Protocole B0, 1987-2005)
Si le montant est superieur a 100 euros
T demande l’autorisation a B pour C
5. T ↪→ B : Demande d’authentification
B realise l’authentification en ligne de C
6. B ↪→ T : NB
7. T ↪→ C : NB
8. C ↪→ T : A, {NB}KCB
9. T ↪→ B : A, {NB}KCB
B donne l’autorisation
10. B ↪→ T : ok
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 50 / 83
![Page 230: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/230.jpg)
Exemple de la Carte bancaire (Protocole B0, 1987-2005)
Si le montant est superieur a 100 euros
T demande l’autorisation a B pour C
5. T ↪→ B : Demande d’authentification
B realise l’authentification en ligne de C
6. B ↪→ T : NB
7. T ↪→ C : NB
8. C ↪→ T : A, {NB}KCB
9. T ↪→ B : A, {NB}KCB
B donne l’autorisation
10. B ↪→ T : ok
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 50 / 83
![Page 231: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/231.jpg)
Exemple de la Carte bancaire (Protocole B0, 1987-2005)
Si le montant est superieur a 100 euros
T demande l’autorisation a B pour C
5. T ↪→ B : Demande d’authentification
B realise l’authentification en ligne de C
6. B ↪→ T : NB
7. T ↪→ C : NB
8. C ↪→ T : A, {NB}KCB
9. T ↪→ B : A, {NB}KCB
B donne l’autorisation
10. B ↪→ T : ok
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 50 / 83
![Page 232: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/232.jpg)
Quelques failles de la carte bancaire (Protocole B0,1987-2005)
Initialement la securite de la carte reposait beaucoup sur :
la non replicabilite de la carte
le secret autour des cles employees, du protocole, . . .
Mais
Faille cryptographique :
cles RSA 320 bits ne sont plus sures (1988)
Faille logique du protocole :
pas de lien “code a 4 chiffres” et authentification !
Faille physique :
replicabilite ⇒ Yescard ! (Humpich 1998)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 51 / 83
![Page 233: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/233.jpg)
Quelques failles de la carte bancaire (Protocole B0,1987-2005)
Initialement la securite de la carte reposait beaucoup sur :
la non replicabilite de la carte
le secret autour des cles employees, du protocole, . . .
Mais
Faille cryptographique :
cles RSA 320 bits ne sont plus sures (1988)
Faille logique du protocole :
pas de lien “code a 4 chiffres” et authentification !
Faille physique :
replicabilite ⇒ Yescard ! (Humpich 1998)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 51 / 83
![Page 234: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/234.jpg)
Quelques failles de la carte bancaire (Protocole B0,1987-2005)
Initialement la securite de la carte reposait beaucoup sur :
la non replicabilite de la carte
le secret autour des cles employees, du protocole, . . .
Mais
Faille cryptographique :
cles RSA 320 bits ne sont plus sures (1988)
Faille logique du protocole :
pas de lien “code a 4 chiffres” et authentification !
Faille physique :
replicabilite ⇒ Yescard ! (Humpich 1998)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 51 / 83
![Page 235: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/235.jpg)
Quelques failles de la carte bancaire (Protocole B0,1987-2005)
Initialement la securite de la carte reposait beaucoup sur :
la non replicabilite de la carte
le secret autour des cles employees, du protocole, . . .
Mais
Faille cryptographique :
cles RSA 320 bits ne sont plus sures (1988)
Faille logique du protocole :
pas de lien “code a 4 chiffres” et authentification !
Faille physique :
replicabilite ⇒ Yescard ! (Humpich 1998)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 51 / 83
![Page 236: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/236.jpg)
Quelques failles de la carte bancaire (Protocole B0,1987-2005)
Initialement la securite de la carte reposait beaucoup sur :
la non replicabilite de la carte
le secret autour des cles employees, du protocole, . . .
Mais
Faille cryptographique :
cles RSA 320 bits ne sont plus sures (1988)
Faille logique du protocole :
pas de lien “code a 4 chiffres” et authentification !
Faille physique :
replicabilite ⇒ Yescard ! (Humpich 1998)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 51 / 83
![Page 237: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/237.jpg)
Quelques failles (Protocole B0, 1987-2005)
Faille logique du protocole :
1. C ↪→ T : Data, {hash(Data)}K−1B
2. T ↪→ A : code ?3. A ↪→ C : 3456
A ↪→ C ′ : 7575
4. C ↪→ T : ok
C ′ ↪→ T : ok
Implantee dans une Yescard :
1. C ↪→ T : Data, {hash(Data)}K−1B
2. T ↪→ A : code ?3. A ↪→ C : 00004. C ↪→ T : ok
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 52 / 83
![Page 238: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/238.jpg)
Quelques failles (Protocole B0, 1987-2005)
Faille logique du protocole :
1. C ↪→ T : Data, {hash(Data)}K−1B
2. T ↪→ A : code ?3. A ↪→ C : 3456
A ↪→ C ′ : 7575
A ↪→ C ′ : 75754. C ↪→ T : ok
C ′ ↪→ T : ok
C ′ ↪→ T : ok
Implantee dans une Yescard :
1. C ↪→ T : Data, {hash(Data)}K−1B
2. T ↪→ A : code ?3. A ↪→ C : 00004. C ↪→ T : ok
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 52 / 83
![Page 239: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/239.jpg)
Quelques failles (Protocole B0, 1987-2005)
Faille logique du protocole :
1. C ↪→ T : Data, {hash(Data)}K−1B
2. T ↪→ A : code ?3. A ↪→ C ′ : 75754. C ′ ↪→ T : ok
Implantee dans une Yescard :
1. C ↪→ T : Data, {hash(Data)}K−1B
2. T ↪→ A : code ?3. A ↪→ C : 00004. C ↪→ T : ok
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 52 / 83
![Page 240: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/240.jpg)
Quelques failles (Protocole B0, 1987-2005)
Faille logique du protocole :
1. C ↪→ T : Data, {hash(Data)}K−1B
2. T ↪→ A : code ?3. A ↪→ C ′ : 75754. C ′ ↪→ T : ok
Implantee dans une Yescard :
1. C ↪→ T : Data, {hash(Data)}K−1B
2. T ↪→ A : code ?3. A ↪→ C : 00004. C ↪→ T : ok
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 52 / 83
![Page 241: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/241.jpg)
Quelques failles (Protocole B0, 1987-2005)
Faille logique du protocole :
1. C ↪→ T : Data, {hash(Data)}K−1B
2. T ↪→ A : code ?3. A ↪→ C ′ : 75754. C ′ ↪→ T : ok
Implantee dans une Yescard (et fausse signature RSA)
1. C ↪→ T : ZZZ , {hash(ZZZ )}K−1B
2. T ↪→ A : code ?3. A ↪→ C : 00004. C ↪→ T : ok
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 52 / 83
![Page 242: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/242.jpg)
Corrections appliquees sur le protocole B0
1999 : le GIE Cartes Bancaires alonge la taille des cles RSA
2003 : Europay, MasterCard et Visa remplacent B0 par EMV
I non pas un mais 3 protocoles : SDA, DDA, CDA
I concu en 2003 et (officiellement) largement deploye depuis 2006
I specifications disponibles sur le web !
I multi-applications
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 53 / 83
![Page 243: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/243.jpg)
Corrections appliquees sur le protocole B0
1999 : le GIE Cartes Bancaires alonge la taille des cles RSA
2003 : Europay, MasterCard et Visa remplacent B0 par EMV
I non pas un mais 3 protocoles : SDA, DDA, CDA
I concu en 2003 et (officiellement) largement deploye depuis 2006
I specifications disponibles sur le web !
I multi-applications
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 53 / 83
![Page 244: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/244.jpg)
Corrections appliquees sur le protocole B0
1999 : le GIE Cartes Bancaires alonge la taille des cles RSA
2003 : Europay, MasterCard et Visa remplacent B0 par EMV
I non pas un mais 3 protocoles : SDA, DDA, CDA
I concu en 2003 et (officiellement) largement deploye depuis 2006
I specifications disponibles sur le web !
I multi-applications
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 53 / 83
![Page 245: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/245.jpg)
Corrections appliquees sur le protocole B0
1999 : le GIE Cartes Bancaires alonge la taille des cles RSA
2003 : Europay, MasterCard et Visa remplacent B0 par EMV
I non pas un mais 3 protocoles : SDA, DDA, CDA
I concu en 2003 et (officiellement) largement deploye depuis 2006
I specifications disponibles sur le web !
I multi-applications
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 53 / 83
![Page 246: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/246.jpg)
Corrections appliquees sur le protocole B0
1999 : le GIE Cartes Bancaires alonge la taille des cles RSA
2003 : Europay, MasterCard et Visa remplacent B0 par EMV
I non pas un mais 3 protocoles : SDA, DDA, CDA
I concu en 2003 et (officiellement) largement deploye depuis 2006
I specifications disponibles sur le web !
I multi-applications
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 53 / 83
![Page 247: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/247.jpg)
Corrections appliquees sur le protocole B0
1999 : le GIE Cartes Bancaires alonge la taille des cles RSA
2003 : Europay, MasterCard et Visa remplacent B0 par EMV
I non pas un mais 3 protocoles : SDA, DDA, CDA
I concu en 2003 et (officiellement) largement deploye depuis 2006
I specifications disponibles sur le web !
I multi-applications
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 53 / 83
![Page 248: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/248.jpg)
Verification des protocoles crypto
Beaucoup de protocoles de la litterature ont des failles !
Il s’agit de failles logiques :
liees a l’enchaınement des messages
pas liees a l’implantation
pas de cryptanalyse
protocoles crypto.= cas d’etude ideal pour les methodes formelles
relativement abstraits
de taille reduite
difficiles a verifier manuellement
Il faut formaliser les capacites de l’intrus
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 54 / 83
![Page 249: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/249.jpg)
Les capacites de l’intrus
À L’intrus ne fait pas de cryptanalyse ⇒ suppose les cles incassables
En pratique, il faut utiliser des cles de longueurs suffisantes
En pratique, ⇒ suivre les resultats de cassage de cles
Ex : RSA record a 768 bits (2010)
Carte bancaires doivent etre au moins a RSA 1024 bits...
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 55 / 83
![Page 250: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/250.jpg)
Competition de factorisation RSA
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 56 / 83
![Page 251: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/251.jpg)
Competition de factorisation RSA
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 57 / 83
![Page 252: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/252.jpg)
Exemple de faille et capacites de l’intrus
Version simplifiee de SSH en mode degrade
1. A ↪→ B : g x
2. B ↪→ A : g y K = (g x)y = (g y )x
3. B ↪→ A : {login :}K4. A ↪→ B : {A}K5. B ↪→ A : {passwd :}K6. A ↪→ B : {P}K
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 58 / 83
![Page 253: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/253.jpg)
Exemple de failles et capacites de l’intrus
A I B
gNA gNI
gNBgNI
K1 = (gNA)NI K2 = (gNB )NI
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 59 / 83
![Page 254: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/254.jpg)
Exemple de failles et capacites de l’intrus
A I B
gNA
gNI
gNBgNI
K1 = (gNA)NI K2 = (gNB )NI
Á L’intrus peut intercepter/bloquer tous les messages
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 59 / 83
![Page 255: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/255.jpg)
Exemple de failles et capacites de l’intrus
A I B
gNA gNI
gNBgNI
K1 = (gNA)NI K2 = (gNB )NI
 L’intrus connaıt les donnees publiques (g)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 59 / 83
![Page 256: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/256.jpg)
Exemple de failles et capacites de l’intrus
A I B
gNA gNI
gNBgNI
K1 = (gNA)NI K2 = (gNB )NI
à Il peut generer des valeurs aleatoires (NI )
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 59 / 83
![Page 257: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/257.jpg)
Exemple de failles et capacites de l’intrus
A I B
gNA gNI
gNBgNI
K1 = (gNA)NI K2 = (gNB )NI
Ä Il peut calculer des exponentielles (gNI )
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 59 / 83
![Page 258: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/258.jpg)
Exemple de failles et capacites de l’intrus
A I B
gNA gNI
gNBgNI
K1 = (gNA)NI K2 = (gNB )NI
Å Il peut envoyer n’importe quel message construit a partir desconnaissances qu’il a accumule
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 59 / 83
![Page 259: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/259.jpg)
Exemple de failles et capacites de l’intrus
A I B
gNA gNI
gNB
gNI
K1 = (gNA)NI K2 = (gNB )NI
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 59 / 83
![Page 260: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/260.jpg)
Exemple de failles et capacites de l’intrus
A I B
gNA gNI
gNBgNI
K1 = (gNA)NI K2 = (gNB )NI
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 59 / 83
![Page 261: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/261.jpg)
Exemple de failles et capacites de l’intrus
A I B
gNA gNI
gNBgNI
K1 = (gNA)NI
K2 = (gNB )NI
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 59 / 83
![Page 262: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/262.jpg)
Exemple de failles et capacites de l’intrus
A I B
gNA gNI
gNBgNI
K1 = (gNA)NI K2 = (gNB )NI
Æ L’intrus peut executer plusieurs sessions entrelacees d’unmeme protocole
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 59 / 83
![Page 263: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/263.jpg)
Exemple de faille et capacites de l’intrus
A ←→ I ←→ BK1 = (gNA)NI K2 = (gNB )NI
A I B
{login :}K2{login :}K1
{A}K1 {A}K2
{passwd :}K2{passwd :}K1
{P}K1 {P}K2
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 60 / 83
![Page 264: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/264.jpg)
Exemple de faille et capacites de l’intrus
A ←→ I ←→ BK1 = (gNA)NI K2 = (gNB )NI
A I B
{login :}K2{login :}K1
{A}K1 {A}K2
{passwd :}K2{passwd :}K1
{P}K1 {P}K2
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 60 / 83
![Page 265: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/265.jpg)
Exemple de faille et capacites de l’intrus
A ←→ I ←→ BK1 = (gNA)NI K2 = (gNB )NI
A I B
{login :}K2{login :}K1
{A}K1 {A}K2
{passwd :}K2{passwd :}K1
{P}K1 {P}K2
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 60 / 83
![Page 266: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/266.jpg)
Exemple de faille et capacites de l’intrus
A ←→ I ←→ BK1 = (gNA)NI K2 = (gNB )NI
A I B
{login :}K2
{login :}K1
{A}K1 {A}K2
{passwd :}K2{passwd :}K1
{P}K1 {P}K2
Ç L’intrus peut dechiffrer un message chiffre s’il a la cle inverse
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 60 / 83
![Page 267: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/267.jpg)
Exemple de faille et capacites de l’intrus
A ←→ I ←→ BK1 = (gNA)NI K2 = (gNB )NI
A I B
{login :}K2{login :}K1
{A}K1 {A}K2
{passwd :}K2{passwd :}K1
{P}K1 {P}K2
È L’intrus peut chiffrer s’il a la cle
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 60 / 83
![Page 268: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/268.jpg)
Exemple de faille et capacites de l’intrus
A ←→ I ←→ BK1 = (gNA)NI K2 = (gNB )NI
A I B
{login :}K2{login :}K1
{A}K1
{A}K2
{passwd :}K2{passwd :}K1
{P}K1 {P}K2
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 60 / 83
![Page 269: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/269.jpg)
Exemple de faille et capacites de l’intrus
A ←→ I ←→ BK1 = (gNA)NI K2 = (gNB )NI
A I B
{login :}K2{login :}K1
{A}K1 {A}K2
{passwd :}K2{passwd :}K1
{P}K1 {P}K2
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 60 / 83
![Page 270: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/270.jpg)
Exemple de faille et capacites de l’intrus
A ←→ I ←→ BK1 = (gNA)NI K2 = (gNB )NI
A I B
{login :}K2{login :}K1
{A}K1 {A}K2
{passwd :}K2{passwd :}K1
{P}K1 {P}K2
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 60 / 83
![Page 271: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/271.jpg)
Exemple de faille et capacites de l’intrus
A ←→ I ←→ BK1 = (gNA)NI K2 = (gNB )NI
A I B
{login :}K2{login :}K1
{A}K1 {A}K2
{passwd :}K2{passwd :}K1
{P}K1
{P}K2
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 60 / 83
![Page 272: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/272.jpg)
Exemple de faille et capacites de l’intrus
A ←→ I ←→ BK1 = (gNA)NI K2 = (gNB )NI
A I B
{login :}K2{login :}K1
{A}K1 {A}K2
{passwd :}K2{passwd :}K1
{P}K1 {P}K2
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 60 / 83
![Page 273: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/273.jpg)
Les capacites de l’intrus
À L’intrus ne fait pas de cryptanalyse
Á L’intrus peut intercepter/bloquer tous les messages
 L’intrus connaıt les donnees publiques (g)
à Il peut generer des valeurs aleatoires (NI )
Ä Il peut calculer des exponentielles (gNI )
Å Il peut envoyer n’importe quel message construit a partir desconnaissances qu’il a accumule
Æ L’intrus peut executer plusieurs sessions entrelacees
Ç L’intrus peut dechiffrer s’il a la cle inverse
È L’intrus peut chiffrer s’il a la cle
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 61 / 83
![Page 274: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/274.jpg)
Exemple de faille et capacites de l’intrus
1. A ↪→ S : A,B,NA
2. S ↪→ A : S , {S ,A,NA,KB}K−1S
Z peut convaincre A que la cle publique de B est KZ !
1. A ↪→ S : A,B,NA
1Z . Z (A) ↪→ S : A,Z ,NA
2. S ↪→ A : S , {S ,A,NA,KZ}K−1S
A attribue KZ a B !
Authentification invalide de KZ par A
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 62 / 83
![Page 275: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/275.jpg)
Exemple de faille et capacites de l’intrus
1. A ↪→ S : A,B,NA
2. S ↪→ A : S , {S ,A,NA,KB}K−1S
Z peut convaincre A que la cle publique de B est KZ !
1. A ↪→ S : A,B,NA
1Z . Z (A) ↪→ S : A,Z ,NA
2. S ↪→ A : S , {S ,A,NA,KZ}K−1S
A attribue KZ a B !
Authentification invalide de KZ par A
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 62 / 83
![Page 276: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/276.jpg)
Exemple de faille et capacites de l’intrus
1. A ↪→ S : A,B,NA
2. S ↪→ A : S , {S ,A,NA,KB}K−1S
Z peut convaincre A que la cle publique de B est KZ !
1. A ↪→ S : A,B,NA
1Z . Z (A) ↪→ S : A,Z ,NA
2. S ↪→ A : S , {S ,A,NA,KZ}K−1S
A attribue KZ a B !
Authentification invalide de KZ par A
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 62 / 83
![Page 277: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/277.jpg)
Exemple de faille et capacites de l’intrus
1. A ↪→ S : A,B,NA
2. S ↪→ A : S , {S ,A,NA,KB}K−1S
Z peut convaincre A que la cle publique de B est KZ !
1. A ↪→ S : A,B,NA
1Z . Z (A) ↪→ S : A,Z ,NA
2. S ↪→ A : S , {S ,A,NA,KZ}K−1S
A attribue KZ a B !
Authentification invalide de KZ par A
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 62 / 83
![Page 278: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/278.jpg)
Exemple de faille et capacites de l’intrus
1. A ↪→ S : A,B,NA
2. S ↪→ A : S , {S ,A,NA,KB}K−1S
Z peut convaincre A que la cle publique de B est KZ !
1. A ↪→ S : A,B,NA
1Z . Z (A) ↪→ S : A,Z ,NA
2. S ↪→ A : S , {S ,A,NA,KZ}K−1S
A attribue KZ a B !
Authentification invalide de KZ par A
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 62 / 83
![Page 279: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/279.jpg)
Exemple de faille et capacites de l’intrus
1. A ↪→ S : A,B,NA
1Z . Z (A) ↪→ S : A,Z ,NA
2. S ↪→ A : S , {S ,A,NA,KZ}K−1S
Manipulations de Z necessaires pour cette attaque :
lire, effacer, stocker tous les messages
Z peut jouer le role d’un autre acteur
demonter les messages
stocker les donnees obtenues
construire des messages a partir des donnees obtenues
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 63 / 83
![Page 280: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/280.jpg)
Exemple de faille et capacites de l’intrus
1. A ↪→ S : A,B,NA
1Z . Z (A) ↪→ S : A,Z ,NA
2. S ↪→ A : S , {S ,A,NA,KZ}K−1S
Manipulations de Z necessaires pour cette attaque :
lire, effacer, stocker tous les messages
Z peut jouer le role d’un autre acteur
demonter les messages
stocker les donnees obtenues
construire des messages a partir des donnees obtenues
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 63 / 83
![Page 281: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/281.jpg)
Exemple de faille et capacites de l’intrus
1. A ↪→ S : A,B,NA
1Z . Z (A) ↪→ S : A,Z ,NA
2. S ↪→ A : S , {S ,A,NA,KZ}K−1S
Manipulations de Z necessaires pour cette attaque :
lire, effacer, stocker tous les messages
Z peut jouer le role d’un autre acteur
demonter les messages
stocker les donnees obtenues
construire des messages a partir des donnees obtenues
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 63 / 83
![Page 282: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/282.jpg)
Exemple de faille et capacites de l’intrus
1. A ↪→ S : A,B,NA
1Z . Z (A) ↪→ S : A,Z ,NA
2. S ↪→ A : S , {S ,A,NA,KZ}K−1S
Manipulations de Z necessaires pour cette attaque :
lire, effacer, stocker tous les messages
Z peut jouer le role d’un autre acteur
demonter les messages
stocker les donnees obtenues
construire des messages a partir des donnees obtenues
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 63 / 83
![Page 283: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/283.jpg)
Exemple de faille et capacites de l’intrus
1. A ↪→ S : A,B,NA
1Z . Z (A) ↪→ S : A,Z ,NA
2. S ↪→ A : S , {S ,A,NA,KZ}K−1S
Manipulations de Z necessaires pour cette attaque :
lire, effacer, stocker tous les messages
Z peut jouer le role d’un autre acteur
demonter les messages
stocker les donnees obtenues
construire des messages a partir des donnees obtenues
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 63 / 83
![Page 284: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/284.jpg)
Exemple de faille et capacites de l’intrus
1. A ↪→ S : A,B,NA
1Z . Z (A) ↪→ S : A,Z ,NA
2. S ↪→ A : S , {S ,A,NA,KZ}K−1S
Manipulations de Z necessaires pour cette attaque :
lire, effacer, stocker tous les messages
Z peut jouer le role d’un autre acteur
demonter les messages
stocker les donnees obtenues
construire des messages a partir des donnees obtenues
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 63 / 83
![Page 285: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/285.jpg)
Exemple de faille et capacites de l’intrus
Needham-Schroeder 1978 (Authentification protocol)
1. A ↪→ B : {NA,A}KB
2. B ↪→ A : {NA,NB}KANB attribue a B
3. A ↪→ B : {NB}KBNA attribue a ANA et NB connus de A et B seuls
Protocole prouve correct (preuves manuelles)
Faille trouvee par Lowe en 1995 avec des methodes formelles(model-checking)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 64 / 83
![Page 286: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/286.jpg)
Exemple de faille et capacites de l’intrus
Needham-Schroeder 1978 (Authentification protocol)
1. A ↪→ B : {NA,A}KB
2. B ↪→ A : {NA,NB}KANB attribue a B
3. A ↪→ B : {NB}KBNA attribue a ANA et NB connus de A et B seuls
Protocole prouve correct (preuves manuelles)
Faille trouvee par Lowe en 1995 avec des methodes formelles(model-checking)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 64 / 83
![Page 287: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/287.jpg)
Exemple de faille et capacites de l’intrus
Needham-Schroeder 1978 (Authentification protocol)
1. A ↪→ B : {NA,A}KB
2. B ↪→ A : {NA,NB}KA
NB attribue a B3. A ↪→ B : {NB}KB
NA attribue a ANA et NB connus de A et B seuls
Protocole prouve correct (preuves manuelles)
Faille trouvee par Lowe en 1995 avec des methodes formelles(model-checking)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 64 / 83
![Page 288: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/288.jpg)
Exemple de faille et capacites de l’intrus
Needham-Schroeder 1978 (Authentification protocol)
1. A ↪→ B : {NA,A}KB
2. B ↪→ A : {NA,NB}KA
NB attribue a B
3. A ↪→ B : {NB}KB
NA attribue a ANA et NB connus de A et B seuls
Protocole prouve correct (preuves manuelles)
Faille trouvee par Lowe en 1995 avec des methodes formelles(model-checking)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 64 / 83
![Page 289: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/289.jpg)
Exemple de faille et capacites de l’intrus
Needham-Schroeder 1978 (Authentification protocol)
1. A ↪→ B : {NA,A}KB
2. B ↪→ A : {NA,NB}KANB attribue a B
3. A ↪→ B : {NB}KB
NA attribue a ANA et NB connus de A et B seuls
Protocole prouve correct (preuves manuelles)
Faille trouvee par Lowe en 1995 avec des methodes formelles(model-checking)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 64 / 83
![Page 290: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/290.jpg)
Exemple de faille et capacites de l’intrus
Needham-Schroeder 1978 (Authentification protocol)
1. A ↪→ B : {NA,A}KB
2. B ↪→ A : {NA,NB}KANB attribue a B
3. A ↪→ B : {NB}KBNA attribue a A
NA et NB connus de A et B seuls
Protocole prouve correct (preuves manuelles)
Faille trouvee par Lowe en 1995 avec des methodes formelles(model-checking)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 64 / 83
![Page 291: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/291.jpg)
Exemple de faille et capacites de l’intrus
Needham-Schroeder 1978 (Authentification protocol)
1. A ↪→ B : {NA,A}KB
2. B ↪→ A : {NA,NB}KANB attribue a B
3. A ↪→ B : {NB}KBNA attribue a ANA et NB connus de A et B seuls
Protocole prouve correct (preuves manuelles)
Faille trouvee par Lowe en 1995 avec des methodes formelles(model-checking)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 64 / 83
![Page 292: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/292.jpg)
Exemple de faille et capacites de l’intrus
Needham-Schroeder 1978 (Authentification protocol)
1. A ↪→ B : {NA,A}KB
2. B ↪→ A : {NA,NB}KANB attribue a B
3. A ↪→ B : {NB}KBNA attribue a ANA et NB connus de A et B seuls
Protocole prouve correct (preuves manuelles)
Faille trouvee par Lowe en 1995 avec des methodes formelles(model-checking)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 64 / 83
![Page 293: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/293.jpg)
Exemple de faille et capacites de l’intrus
Needham-Schroeder 1978 (Authentification protocol)
1. A ↪→ B : {NA,A}KB
2. B ↪→ A : {NA,NB}KANB attribue a B
3. A ↪→ B : {NB}KBNA attribue a ANA et NB connus de A et B seuls
Protocole prouve correct (preuves manuelles)
Faille trouvee par Lowe en 1995 avec des methodes formelles(model-checking)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 64 / 83
![Page 294: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/294.jpg)
Exemple de faille et capacites de l’intrus
1. A ↪→ B : {NA,A}KB
2. B ↪→ A : {NA,NB}KANB attribue a B
3. A ↪→ B : {NB}KBNA attribue a ANA et NB connus de A et B seuls
1. A ↪→ Z : {NA,A}KZZ obtient NA
1Z . Z (A) ↪→ B : {NA,A}KB
2. B ↪→ A : {NA,NB}KANB attribue a Z
3. A ↪→ Z : {NB}KZZ obtient NB
3Z . Z (A) ↪→ B : {NB}KBNA attribue a A
Invalide secret de (NA,NB) et authentification A↔ Z ↔ B
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 65 / 83
![Page 295: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/295.jpg)
Exemple de faille et capacites de l’intrus
1. A ↪→ B : {NA,A}KB
2. B ↪→ A : {NA,NB}KANB attribue a B
3. A ↪→ B : {NB}KBNA attribue a ANA et NB connus de A et B seuls
1. A ↪→ Z : {NA,A}KZ
Z obtient NA
1Z . Z (A) ↪→ B : {NA,A}KB
2. B ↪→ A : {NA,NB}KANB attribue a Z
3. A ↪→ Z : {NB}KZZ obtient NB
3Z . Z (A) ↪→ B : {NB}KBNA attribue a A
Invalide secret de (NA,NB) et authentification A↔ Z ↔ B
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 65 / 83
![Page 296: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/296.jpg)
Exemple de faille et capacites de l’intrus
1. A ↪→ B : {NA,A}KB
2. B ↪→ A : {NA,NB}KANB attribue a B
3. A ↪→ B : {NB}KBNA attribue a ANA et NB connus de A et B seuls
1. A ↪→ Z : {NA,A}KZ
Z obtient NA
1Z . Z (A) ↪→ B : {NA,A}KB
2. B ↪→ A : {NA,NB}KANB attribue a Z
3. A ↪→ Z : {NB}KZZ obtient NB
3Z . Z (A) ↪→ B : {NB}KBNA attribue a A
Invalide secret de (NA,NB) et authentification A↔ Z ↔ B
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 65 / 83
![Page 297: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/297.jpg)
Exemple de faille et capacites de l’intrus
1. A ↪→ B : {NA,A}KB
2. B ↪→ A : {NA,NB}KANB attribue a B
3. A ↪→ B : {NB}KBNA attribue a ANA et NB connus de A et B seuls
1. A ↪→ Z : {NA,A}KZ
Z obtient NA
1Z . Z (A) ↪→ B : {NA,A}KB
2. B ↪→ A : {NA,NB}KA
NB attribue a Z3. A ↪→ Z : {NB}KZ
Z obtient NB
3Z . Z (A) ↪→ B : {NB}KBNA attribue a A
Invalide secret de (NA,NB) et authentification A↔ Z ↔ B
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 65 / 83
![Page 298: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/298.jpg)
Exemple de faille et capacites de l’intrus
1. A ↪→ B : {NA,A}KB
2. B ↪→ A : {NA,NB}KANB attribue a B
3. A ↪→ B : {NB}KBNA attribue a ANA et NB connus de A et B seuls
1. A ↪→ Z : {NA,A}KZ
Z obtient NA
1Z . Z (A) ↪→ B : {NA,A}KB
2. B ↪→ A : {NA,NB}KA
NB attribue a Z
3. A ↪→ Z : {NB}KZ
Z obtient NB
3Z . Z (A) ↪→ B : {NB}KBNA attribue a A
Invalide secret de (NA,NB) et authentification A↔ Z ↔ B
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 65 / 83
![Page 299: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/299.jpg)
Exemple de faille et capacites de l’intrus
1. A ↪→ B : {NA,A}KB
2. B ↪→ A : {NA,NB}KANB attribue a B
3. A ↪→ B : {NB}KBNA attribue a ANA et NB connus de A et B seuls
1. A ↪→ Z : {NA,A}KZ
Z obtient NA
1Z . Z (A) ↪→ B : {NA,A}KB
2. B ↪→ A : {NA,NB}KA
NB attribue a Z
3. A ↪→ Z : {NB}KZ
Z obtient NB
3Z . Z (A) ↪→ B : {NB}KB
NA attribue a A
Invalide secret de (NA,NB) et authentification A↔ Z ↔ B
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 65 / 83
![Page 300: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/300.jpg)
Exemple de faille et capacites de l’intrus
1. A ↪→ B : {NA,A}KB
2. B ↪→ A : {NA,NB}KANB attribue a B
3. A ↪→ B : {NB}KBNA attribue a ANA et NB connus de A et B seuls
1. A ↪→ Z : {NA,A}KZZ obtient NA
1Z . Z (A) ↪→ B : {NA,A}KB
2. B ↪→ A : {NA,NB}KA
NB attribue a Z
3. A ↪→ Z : {NB}KZ
Z obtient NB
3Z . Z (A) ↪→ B : {NB}KB
NA attribue a A
Invalide secret de (NA,NB) et authentification A↔ Z ↔ B
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 65 / 83
![Page 301: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/301.jpg)
Exemple de faille et capacites de l’intrus
1. A ↪→ B : {NA,A}KB
2. B ↪→ A : {NA,NB}KANB attribue a B
3. A ↪→ B : {NB}KBNA attribue a ANA et NB connus de A et B seuls
1. A ↪→ Z : {NA,A}KZZ obtient NA
1Z . Z (A) ↪→ B : {NA,A}KB
2. B ↪→ A : {NA,NB}KANB attribue a Z
3. A ↪→ Z : {NB}KZ
Z obtient NB
3Z . Z (A) ↪→ B : {NB}KB
NA attribue a A
Invalide secret de (NA,NB) et authentification A↔ Z ↔ B
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 65 / 83
![Page 302: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/302.jpg)
Exemple de faille et capacites de l’intrus
1. A ↪→ B : {NA,A}KB
2. B ↪→ A : {NA,NB}KANB attribue a B
3. A ↪→ B : {NB}KBNA attribue a ANA et NB connus de A et B seuls
1. A ↪→ Z : {NA,A}KZZ obtient NA
1Z . Z (A) ↪→ B : {NA,A}KB
2. B ↪→ A : {NA,NB}KANB attribue a Z
3. A ↪→ Z : {NB}KZZ obtient NB
3Z . Z (A) ↪→ B : {NB}KB
NA attribue a A
Invalide secret de (NA,NB) et authentification A↔ Z ↔ B
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 65 / 83
![Page 303: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/303.jpg)
Exemple de faille et capacites de l’intrus
1. A ↪→ B : {NA,A}KB
2. B ↪→ A : {NA,NB}KANB attribue a B
3. A ↪→ B : {NB}KBNA attribue a ANA et NB connus de A et B seuls
1. A ↪→ Z : {NA,A}KZZ obtient NA
1Z . Z (A) ↪→ B : {NA,A}KB
2. B ↪→ A : {NA,NB}KANB attribue a Z
3. A ↪→ Z : {NB}KZZ obtient NB
3Z . Z (A) ↪→ B : {NB}KBNA attribue a A
Invalide secret de (NA,NB) et authentification A↔ Z ↔ B
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 65 / 83
![Page 304: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/304.jpg)
Exemple de faille et capacites de l’intrus
1. A ↪→ B : {NA,A}KB
2. B ↪→ A : {NA,NB}KANB attribue a B
3. A ↪→ B : {NB}KBNA attribue a ANA et NB connus de A et B seuls
1. A ↪→ Z : {NA,A}KZZ obtient NA
1Z . Z (A) ↪→ B : {NA,A}KB
2. B ↪→ A : {NA,NB}KANB attribue a Z
3. A ↪→ Z : {NB}KZZ obtient NB
3Z . Z (A) ↪→ B : {NB}KBNA attribue a A
Invalide secret de (NA,NB) et authentification A↔ Z ↔ B
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 65 / 83
![Page 305: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/305.jpg)
Exemple de faille et capacites de l’intrus
1. A ↪→ Z : {NA,A}KZ
1Z . Z (A) ↪→ B : {NA,A}KB
2. B ↪→ A : {NA,NB}KA
3. A ↪→ Z : {NB}KZ
3Z . Z (A) ↪→ B : {NB}KB
Manipulations de Z necessaires a cette attaque :
lancer des sessions du protocole en parallele
dechiffrer les messages s’il a la cle : K−1Z
chiffrer les messages avec ses cles : KB
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 66 / 83
![Page 306: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/306.jpg)
Exemple de faille et capacites de l’intrus
1. A ↪→ Z : {NA,A}KZ
1Z . Z (A) ↪→ B : {NA,A}KB
Manipulations de Z necessaires a cette attaque :
lancer des sessions du protocole en parallele
dechiffrer les messages s’il a la cle : K−1Z
chiffrer les messages avec ses cles : KB
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 66 / 83
![Page 307: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/307.jpg)
Exemple de faille et capacites de l’intrus
3. A ↪→ Z : {NB}KZ
3Z . Z (A) ↪→ B : {NB}KB
Manipulations de Z necessaires a cette attaque :
lancer des sessions du protocole en parallele
dechiffrer les messages s’il a la cle : K−1Z
chiffrer les messages avec ses cles : KB
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 66 / 83
![Page 308: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/308.jpg)
Exemple de faille et capacites de l’intrus
3Z . Z (A) ↪→ B : {NB}KB
Manipulations de Z necessaires a cette attaque :
lancer des sessions du protocole en parallele
dechiffrer les messages s’il a la cle : K−1Z
chiffrer les messages avec ses cles : KB
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 66 / 83
![Page 309: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/309.jpg)
Exemple de faille et capacites de l’intrus
1. A ↪→ Z : {NA,A}KZ
1Z . Z (A) ↪→ B : {NA,A}KB
2. B ↪→ A : {NA,NB}KA
3. A ↪→ Z : {NB}KZ
3Z . Z (A) ↪→ B : {NB}KB
Manipulations de Z necessaires a cette attaque :
lancer des sessions du protocole en parallele
dechiffrer les messages s’il a la cle : K−1Z
chiffrer les messages avec ses cles : KB
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 66 / 83
![Page 310: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/310.jpg)
Verification logique : hypotheses (I)
Par defaut nos hypotheses de verification seront :
la cryptographie est sureI impossible de dechiffrer un texte chiffre sans la cleI impossible de deviner une cle ou un nonce
nb d’acteurs honnetes/malhonnetes, non borne
nombre de sessions du protocole, non borne
le protocole peut etre utilise dans des sessions //
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 67 / 83
![Page 311: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/311.jpg)
Verification logique : hypotheses (II)
L’intrus a le controle total du reseau
il connait toutes les donnees publiques des agents
il peut disposer des privileges/cles des agents malhonnetes
il peut lire, memoriser, effacer tous les messages
il peut construire et envoyer des messages
il peut composer/decomposer un message
il peut chiffrer/dechiffrer un message s’il a la cle
⇒ Modele de Dolev-Yao : reseau = intrus
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 68 / 83
![Page 312: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/312.jpg)
Exemples de recherche d’attaques
Soient les 3 protocoles suivants :1. A ↪→ B : {A,NA}KB
1. A ↪→ B : {A,NA}KAB
1. A ↪→ B : {A,NA}K−1A
Sous les hypotheses de verification logique (p67/68)
pour chaque protocole, dites s’il satisfait la propriete ou donnez uneattaque.
NA est secret ?
B peut authentifier NA ?
B peut authentifier A ?
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 69 / 83
![Page 313: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/313.jpg)
Exemple de recherche d’attaques (II)
1. A ↪→ S : B, {KAS}KS
2. S ↪→ B : A3. B ↪→ S : A, {KAB}KS
4. S ↪→ A : B, {KAB}KAS
5. A ↪→ B : {m}KAB
(TMN)
A-t-on les proprietes attendues suivantes :
KAS , KAB , m sont secrets ?
S peut authentifier KAS et KAB ?
Donnez les 2 attaques permettant respectivement de :
se faire passer pour B et de reccuperer m
se faire passer pour A et de reccuperer KAB et m
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 70 / 83
![Page 314: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/314.jpg)
Exemple de recherche d’attaques (II)
1. A ↪→ S : B, {KAS}KS
2. S ↪→ B : A3. B ↪→ S : A, {KAB}KS
4. S ↪→ A : B, {KAB}KAS
5. A ↪→ B : {m}KAB
(TMN)
A-t-on les proprietes attendues suivantes :
KAS , KAB , m sont secrets ?
S peut authentifier KAS et KAB ?
Donnez les 2 attaques permettant respectivement de :
se faire passer pour B et de reccuperer m
se faire passer pour A et de reccuperer KAB et m
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 70 / 83
![Page 315: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/315.jpg)
Exemple de recherche d’attaques (II)
1. A ↪→ S : B, {KAS}KS
2. S ↪→ B : A3. B ↪→ S : A, {KAB}KS
4. S ↪→ A : B, {KAB}KAS
5. A ↪→ B : {m}KAB
(TMN)
A-t-on les proprietes attendues suivantes :
KAS , KAB , m sont secrets ?
S peut authentifier KAS et KAB ?
Donnez les 2 attaques permettant respectivement de :
se faire passer pour B et de reccuperer m
se faire passer pour A et de reccuperer KAB et m
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 70 / 83
![Page 316: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/316.jpg)
Exemple de recherche d’attaques (III)
1. A ↪→ B : {NA}KAB
2. B ↪→ A : {NB}KAB
3. A ↪→ B : {NA,NB}KAB
4. B ↪→ A : {NB ,NA}KAB
Les nonces NA et NB sont secrets ?
A peut authentifier NB ?
B peut authentifier NA ?
A peut authentifier B ?
B peut authentifier A ?
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 71 / 83
![Page 317: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/317.jpg)
Formalisation logique de Dolev-Yao
I = connaissance initiale de l’intrus
I les identites de tous les acteursI toutes les cles publiquesI des cles privees corrompues
Manipulations de l’intrusExecution du protocole
= deductions sur I
Manipulations de l’intrus
I ,M ` MI ` {M}K I ` K−1
I ` M
I ` M I ` K
I ` {M}K
I ` X ,Y
I ` X
I ` X ,Y
I ` Y
I ` X I ` Y
I ` X ,Y
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 72 / 83
![Page 318: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/318.jpg)
Formalisation logique de Dolev-Yao
I = connaissance initiale de l’intrus
I les identites de tous les acteursI toutes les cles publiquesI des cles privees corrompues
Manipulations de l’intrusExecution du protocole
= deductions sur I
Manipulations de l’intrus
I ,M ` MI ` {M}K I ` K−1
I ` M
I ` M I ` K
I ` {M}K
I ` X ,Y
I ` X
I ` X ,Y
I ` Y
I ` X I ` Y
I ` X ,Y
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 72 / 83
![Page 319: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/319.jpg)
Formalisation logique de Dolev-Yao
I = connaissance initiale de l’intrusI les identites de tous les acteursI toutes les cles publiquesI des cles privees corrompues
Manipulations de l’intrusExecution du protocole
= deductions sur I
Manipulations de l’intrus
I ,M ` MI ` {M}K I ` K−1
I ` M
I ` M I ` K
I ` {M}K
I ` X ,Y
I ` X
I ` X ,Y
I ` Y
I ` X I ` Y
I ` X ,Y
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 72 / 83
![Page 320: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/320.jpg)
Formalisation logique de Dolev-Yao
I = connaissance initiale de l’intrusI les identites de tous les acteursI toutes les cles publiquesI des cles privees corrompues
Manipulations de l’intrusExecution du protocole
= deductions sur I
Manipulations de l’intrus
I ,M ` MI ` {M}K I ` K−1
I ` M
I ` M I ` K
I ` {M}K
I ` X ,Y
I ` X
I ` X ,Y
I ` Y
I ` X I ` Y
I ` X ,Y
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 72 / 83
![Page 321: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/321.jpg)
Formalisation logique de Dolev-Yao
I = connaissance initiale de l’intrusI les identites de tous les acteursI toutes les cles publiquesI des cles privees corrompues
Manipulations de l’intrusExecution du protocole
= deductions sur I
Manipulations de l’intrus
I ,M ` MI ` {M}K I ` K−1
I ` M
I ` M I ` K
I ` {M}K
I ` X ,Y
I ` X
I ` X ,Y
I ` Y
I ` X I ` Y
I ` X ,Y
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 72 / 83
![Page 322: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/322.jpg)
Formalisation logique de Dolev-Yao
I = connaissance initiale de l’intrusI les identites de tous les acteursI toutes les cles publiquesI des cles privees corrompues
Manipulations de l’intrusExecution du protocole
= deductions sur I
Manipulations de l’intrus
I ,M ` M
I ` {M}K I ` K−1
I ` M
I ` M I ` K
I ` {M}K
I ` X ,Y
I ` X
I ` X ,Y
I ` Y
I ` X I ` Y
I ` X ,Y
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 72 / 83
![Page 323: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/323.jpg)
Formalisation logique de Dolev-Yao
I = connaissance initiale de l’intrusI les identites de tous les acteursI toutes les cles publiquesI des cles privees corrompues
Manipulations de l’intrusExecution du protocole
= deductions sur I
Manipulations de l’intrus
I ,M ` MI ` {M}K I ` K−1
I ` M
I ` M I ` K
I ` {M}K
I ` X ,Y
I ` X
I ` X ,Y
I ` Y
I ` X I ` Y
I ` X ,Y
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 72 / 83
![Page 324: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/324.jpg)
Formalisation logique de Dolev-Yao
I = connaissance initiale de l’intrusI les identites de tous les acteursI toutes les cles publiquesI des cles privees corrompues
Manipulations de l’intrusExecution du protocole
= deductions sur I
Manipulations de l’intrus
I ,M ` MI ` {M}K I ` K−1
I ` M
I ` M I ` K
I ` {M}K
I ` X ,Y
I ` X
I ` X ,Y
I ` Y
I ` X I ` Y
I ` X ,Y
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 72 / 83
![Page 325: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/325.jpg)
Formalisation logique de Dolev-Yao
I = connaissance initiale de l’intrusI les identites de tous les acteursI toutes les cles publiquesI des cles privees corrompues
Manipulations de l’intrusExecution du protocole
= deductions sur I
Manipulations de l’intrus
I ,M ` MI ` {M}K I ` K−1
I ` M
I ` M I ` K
I ` {M}K
I ` X ,Y
I ` X
I ` X ,Y
I ` Y
I ` X I ` Y
I ` X ,Y
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 72 / 83
![Page 326: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/326.jpg)
Formalisation logique de Dolev-Yao
I = connaissance initiale de l’intrusI les identites de tous les acteursI toutes les cles publiquesI des cles privees corrompues
Manipulations de l’intrusExecution du protocole
= deductions sur I
Manipulations de l’intrus
I ,M ` MI ` {M}K I ` K−1
I ` M
I ` M I ` K
I ` {M}K
I ` X ,Y
I ` X
I ` X ,Y
I ` Y
I ` X I ` Y
I ` X ,Y
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 72 / 83
![Page 327: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/327.jpg)
Formalisation logique de Dolev-Yao
Execution du protocole = regles supplementaires
Exemple :
1. A ↪→ B : gNA
2. B ↪→ A : gNB
3. A ↪→ B : {s}K ou K = (gNB )NA
1.I ` a I ` g
I ` gNa
2.I ` b I ` X
I ` gNb
3.I ` a I ` Y
I ` {s}Y Na
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 73 / 83
![Page 328: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/328.jpg)
Formalisation logique de Dolev-Yao
Execution du protocole = regles supplementaires
Exemple :
1. A ↪→ B : gNA
2. B ↪→ A : gNB
3. A ↪→ B : {s}K ou K = (gNB )NA
1.I ` a I ` g
I ` gNa
2.I ` b I ` X
I ` gNb
3.I ` a I ` Y
I ` {s}Y Na
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 73 / 83
![Page 329: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/329.jpg)
Formalisation logique de Dolev-Yao
Execution du protocole = regles supplementaires
Exemple :
1. A ↪→ B : gNA
2. B ↪→ A : gNB
3. A ↪→ B : {s}K ou K = (gNB )NA
1.I ` a I ` g
I ` gNa
2.I ` b I ` X
I ` gNb
3.I ` a I ` Y
I ` {s}Y Na
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 73 / 83
![Page 330: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/330.jpg)
Formalisation logique de Dolev-Yao
Execution du protocole = regles supplementaires
Exemple :
1. A ↪→ B : gNA
2. B ↪→ A : gNB
3. A ↪→ B : {s}K ou K = (gNB )NA
1.I ` a I ` g
I ` gNa2.
I ` b I ` X
I ` gNb
3.I ` a I ` Y
I ` {s}Y Na
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 73 / 83
![Page 331: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/331.jpg)
Formalisation logique de Dolev-Yao
Execution du protocole = regles supplementaires
Exemple :
1. A ↪→ B : gNA
2. B ↪→ A : gNB
3. A ↪→ B : {s}K ou K = (gNB )NA
1.I ` a I ` g
I ` gNa2.
I ` b I ` X
I ` gNb3.
I ` a I ` Y
I ` {s}Y Na
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 73 / 83
![Page 332: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/332.jpg)
Formalisation logique de Dolev-Yao
1.I ` a I ` g
I ` gNa2.
I ` b I ` X
I ` gNb3.
I ` a I ` Y
I ` {s}Y Na
I ,M ` MI ` {M}K I ` K−1
I ` M
I ` M I ` K
I ` {M}K
I ` X ,Y
I ` X
I ` X ,Y
I ` Y
I ` X I ` Y
I ` X ,Y
a, b, g ` a a, b, g ` g
a, b, g ` {s}gNa a, b, g ` g
a, b, g ` {{s}gNa}g
Abrege en a, b, g `2 {{s}gNa}g
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 74 / 83
![Page 333: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/333.jpg)
Formalisation logique de Dolev-Yao
1.I ` a I ` g
I ` gNa2.
I ` b I ` X
I ` gNb3.
I ` a I ` Y
I ` {s}Y Na
I ,M ` MI ` {M}K I ` K−1
I ` M
I ` M I ` K
I ` {M}K
I ` X ,Y
I ` X
I ` X ,Y
I ` Y
I ` X I ` Y
I ` X ,Y
a, b, g ` a a, b, g ` g
a, b, g ` {s}gNa a, b, g ` g
a, b, g ` {{s}gNa}g
Abrege en a, b, g `2 {{s}gNa}g
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 74 / 83
![Page 334: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/334.jpg)
Formalisation logique de Dolev-Yao
1.I ` a I ` g
I ` gNa2.
I ` b I ` X
I ` gNb3.
I ` a I ` Y
I ` {s}Y Na
I ,M ` MI ` {M}K I ` K−1
I ` M
I ` M I ` K
I ` {M}K
I ` X ,Y
I ` X
I ` X ,Y
I ` Y
I ` X I ` Y
I ` X ,Y
a, b, g ` a a, b, g ` g
a, b, g ` {s}gNa a, b, g ` g
a, b, g ` {{s}gNa}g
Abrege en a, b, g `2 {{s}gNa}g
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 74 / 83
![Page 335: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/335.jpg)
Formalisation logique de Dolev-Yao
1.I ` a I ` g
I ` gNa2.
I ` b I ` X
I ` gNb3.
I ` a I ` Y
I ` {s}Y Na
I ,M ` MI ` {M}K I ` K−1
I ` M
I ` M I ` K
I ` {M}K
I ` X ,Y
I ` X
I ` X ,Y
I ` Y
I ` X I ` Y
I ` X ,Y
a, b, g ` a a, b, g ` g
a, b, g ` {s}gNa a, b, g ` g
a, b, g ` {{s}gNa}g
Abrege en a, b, g `2 {{s}gNa}g
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 74 / 83
![Page 336: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/336.jpg)
Formalisation logique de Dolev-Yao
1.I ` a I ` g
I ` gNa2.
I ` b I ` X
I ` gNb3.
I ` a I ` Y
I ` {s}Y Na
I ,M ` MI ` {M}K I ` K−1
I ` M
I ` M I ` K
I ` {M}K
I ` X ,Y
I ` X
I ` X ,Y
I ` Y
I ` X I ` Y
I ` X ,Y
a, b, g ` a a, b, g ` g
a, b, g ` {s}gNa a, b, g ` g
a, b, g ` {{s}gNa}g
Abrege en a, b, g `2 {{s}gNa}g
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 74 / 83
![Page 337: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/337.jpg)
Formalisation logique de Dolev-Yao
1.I ` a I ` g
I ` gNa2.
I ` b I ` X
I ` gNb3.
I ` a I ` Y
I ` {s}Y Na
I ,M ` MI ` {M}K I ` K−1
I ` M
I ` M I ` K
I ` {M}K
I ` X ,Y
I ` X
I ` X ,Y
I ` Y
I ` X I ` Y
I ` X ,Y
a, b, g ` a a, b, g ` g
a, b, g ` {s}gNa a, b, g ` g
a, b, g ` {{s}gNa}g
Abrege en a, b, g `2 {{s}gNa}g
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 74 / 83
![Page 338: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/338.jpg)
Formalisation logique de Dolev-Yao
1.I ` a I ` g
I ` gNa2.
I ` b I ` X
I ` gNb3.
I ` a I ` Y
I ` {s}Y Na
I ,M ` MI ` {M}K I ` K−1
I ` M
I ` M I ` K
I ` {M}K
I ` X ,Y
I ` X
I ` X ,Y
I ` Y
I ` X I ` Y
I ` X ,Y
a, b, g ` a a, b, g ` g
a, b, g ` {s}gNa a, b, g ` g
a, b, g ` {{s}gNa}g
Abrege en a, b, g `2 {{s}gNa}gT. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 74 / 83
![Page 339: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/339.jpg)
Verification logique sur Dolev-Yao
Preuve que s est secret = ∀n : I 6`n s
Verification complexe : 3 dimensions non bornees
I Nombre d’agents executant le protocole en //
I Nombre de sessions pour chaque agent
I Deductions et constructions de l’intrus sur sa connaissance
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 75 / 83
![Page 340: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/340.jpg)
Verification logique sur Dolev-Yao
Preuve que s est secret = ∀n : I 6`n s
Verification complexe : 3 dimensions non bornees
I Nombre d’agents executant le protocole en //
I Nombre de sessions pour chaque agent
I Deductions et constructions de l’intrus sur sa connaissance
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 75 / 83
![Page 341: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/341.jpg)
Verification logique sur Dolev-Yao
Preuve que s est secret = ∀n : I 6`n s
Verification complexe : 3 dimensions non bornees
I Nombre d’agents executant le protocole en //
I Nombre de sessions pour chaque agent
I Deductions et constructions de l’intrus sur sa connaissance
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 75 / 83
![Page 342: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/342.jpg)
Verification logique sur Dolev-Yao
Preuve que s est secret = ∀n : I 6`n s
Verification complexe : 3 dimensions non bornees
I Nombre d’agents executant le protocole en //
I Nombre de sessions pour chaque agent
I Deductions et constructions de l’intrus sur sa connaissance
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 75 / 83
![Page 343: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/343.jpg)
Verification logique sur Dolev-Yao
Preuve que s est secret = ∀n : I 6`n s
Verification complexe : 3 dimensions non bornees
I Nombre d’agents executant le protocole en //
I Nombre de sessions pour chaque agent
I Deductions et constructions de l’intrus sur sa connaissance
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 75 / 83
![Page 344: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/344.jpg)
Verification logique sur Dolev-Yao
Trois grandes categories de travaux et d’outils :
I Verification finie automatique (model-checking)
Pour nb d’agents fixe et k fixe : ∀n ≤ k : I 6`n s
Detection d’attaques : ∃k : I `k s
I Verification semi-automatique (preuve assistee)
Par induction sur nb d’agents et n : ∀n : I 6`n s
I Verification automatique par approximation
I ] ⊇ I et `] ⊇` telles que ∀n : I ] 6`]n s
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 76 / 83
![Page 345: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/345.jpg)
Verification logique sur Dolev-Yao
Trois grandes categories de travaux et d’outils :
I Verification finie automatique (model-checking)
Pour nb d’agents fixe et k fixe : ∀n ≤ k : I 6`n s
Detection d’attaques : ∃k : I `k s
I Verification semi-automatique (preuve assistee)
Par induction sur nb d’agents et n : ∀n : I 6`n s
I Verification automatique par approximation
I ] ⊇ I et `] ⊇` telles que ∀n : I ] 6`]n s
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 76 / 83
![Page 346: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/346.jpg)
Verification logique sur Dolev-Yao
Trois grandes categories de travaux et d’outils :
I Verification finie automatique (model-checking)
Pour nb d’agents fixe et k fixe : ∀n ≤ k : I 6`n s
Detection d’attaques : ∃k : I `k s
I Verification semi-automatique (preuve assistee)
Par induction sur nb d’agents et n : ∀n : I 6`n s
I Verification automatique par approximation
I ] ⊇ I et `] ⊇` telles que ∀n : I ] 6`]n s
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 76 / 83
![Page 347: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/347.jpg)
Verification logique sur Dolev-Yao
Trois grandes categories de travaux et d’outils :
I Verification finie automatique (model-checking)
Pour nb d’agents fixe et k fixe : ∀n ≤ k : I 6`n s
Detection d’attaques : ∃k : I `k s
I Verification semi-automatique (preuve assistee)
Par induction sur nb d’agents et n : ∀n : I 6`n s
I Verification automatique par approximation
I ] ⊇ I et `] ⊇` telles que ∀n : I ] 6`]n s
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 76 / 83
![Page 348: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/348.jpg)
Verification logique sur Dolev-Yao
Trois grandes categories de travaux et d’outils :
I Verification finie automatique (model-checking)
Pour nb d’agents fixe et k fixe : ∀n ≤ k : I 6`n s
Detection d’attaques : ∃k : I `k s
I Verification semi-automatique (preuve assistee)
Par induction sur nb d’agents et n : ∀n : I 6`n s
I Verification automatique par approximation
I ] ⊇ I et `] ⊇` telles que ∀n : I ] 6`]n s
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 76 / 83
![Page 349: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/349.jpg)
Verification par approximation
Idee= construire le langage des termes deductibles =Store
M,K ` M M,K ` K
M,K ` {M}K M,K ` K
M,K ` {{M}K}K
Store = {M,K , {M}K , {{M}K}K , . . .} = {T | ∀n : I `n T}
Construction automate approximation A t.q. L(A) ⊇Store
Secret de s ≡ s 6∈ L(A) ⇒ s 6∈ Store ⇒ ∀n : I 6`n s
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 77 / 83
![Page 350: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/350.jpg)
Verification par approximation
Idee= construire le langage des termes deductibles =Store
M,K ` M M,K ` K
M,K ` {M}K M,K ` K
M,K ` {{M}K}K
Store = {M,K , {M}K , {{M}K}K , . . .} = {T | ∀n : I `n T}
Construction automate approximation A t.q. L(A) ⊇Store
Secret de s ≡ s 6∈ L(A) ⇒ s 6∈ Store ⇒ ∀n : I 6`n s
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 77 / 83
![Page 351: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/351.jpg)
Verification par approximation
Idee= construire le langage des termes deductibles =Store
M,K ` M M,K ` K
M,K ` {M}K M,K ` K
M,K ` {{M}K}K
Store = {M,K , {M}K , {{M}K}K , . . .} = {T | ∀n : I `n T}
Construction automate approximation A t.q. L(A) ⊇Store
Secret de s ≡ s 6∈ L(A) ⇒ s 6∈ Store ⇒ ∀n : I 6`n s
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 77 / 83
![Page 352: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/352.jpg)
Verification par approximation
Idee= construire le langage des termes deductibles =Store
M,K ` M M,K ` K
M,K ` {M}K M,K ` K
M,K ` {{M}K}K
Store = {M,K , {M}K , {{M}K}K , . . .} = {T | ∀n : I `n T}
Construction automate approximation A
t.q. L(A) ⊇Store
Secret de s ≡ s 6∈ L(A) ⇒ s 6∈ Store ⇒ ∀n : I 6`n s
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 77 / 83
![Page 353: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/353.jpg)
Verification par approximation
Idee= construire le langage des termes deductibles =Store
M,K ` M M,K ` K
M,K ` {M}K M,K ` K
M,K ` {{M}K}K
Store = {M,K , {M}K , {{M}K}K , . . .} = {T | ∀n : I `n T}
Construction automate approximation A t.q. L(A) ⊇Store
Secret de s ≡ s 6∈ L(A) ⇒ s 6∈ Store ⇒ ∀n : I 6`n s
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 77 / 83
![Page 354: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/354.jpg)
Verification par approximation
Idee= construire le langage des termes deductibles =Store
M,K ` M M,K ` K
M,K ` {M}K M,K ` K
M,K ` {{M}K}K
Store = {M,K , {M}K , {{M}K}K , . . .} = {T | ∀n : I `n T}
Construction automate approximation A t.q. L(A) ⊇Store
Secret de s ≡ s 6∈ L(A)
⇒ s 6∈ Store ⇒ ∀n : I 6`n s
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 77 / 83
![Page 355: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/355.jpg)
Verification par approximation
Idee= construire le langage des termes deductibles =Store
M,K ` M M,K ` K
M,K ` {M}K M,K ` K
M,K ` {{M}K}K
Store = {M,K , {M}K , {{M}K}K , . . .} = {T | ∀n : I `n T}
Construction automate approximation A t.q. L(A) ⊇Store
Secret de s ≡ s 6∈ L(A) ⇒ s 6∈ Store
⇒ ∀n : I 6`n s
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 77 / 83
![Page 356: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/356.jpg)
Verification par approximation
Idee= construire le langage des termes deductibles =Store
M,K ` M M,K ` K
M,K ` {M}K M,K ` K
M,K ` {{M}K}K
Store = {M,K , {M}K , {{M}K}K , . . .} = {T | ∀n : I `n T}
Construction automate approximation A t.q. L(A) ⊇Store
Secret de s ≡ s 6∈ L(A) ⇒ s 6∈ Store ⇒ ∀n : I 6`n s
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 77 / 83
![Page 357: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/357.jpg)
Langages de specification de protocolesFormats proches des notations standards
Casper [Lowe]
Capsl [Mitchell]
Eva, etc. [Jacquemard, Le Metayer]
Casper Capsl Eva
0. ->A: B
1. A->B: {na, A}{PK(B)}
2. B->A: {na, nb}{PK(A)}
3. A->B: {nb}{PK(B)}
A->B: {A,Na}pk(B);
B->A: {Na,Nb}pk(A);
A->B: {Nb}pk(B);
1. A->B: {Na, A}KPb
2. B->A: {Na, Nb}KPa
3. A->B: {Nb}KPb
Secret(A, na, [B])
Secret(B, nb, [A])
Agreement(A,B,[na,nb])
Agreement(B,A,[na,nb])
SECRET Na;
SECRET Nb;
PRECEDES A: B | Na;
PRECEDES B: A | Nb;
Claim
Agreement(A,B,Na,Na)
Agreement(A,B,Nb,Nb)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 78 / 83
![Page 358: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/358.jpg)
Les langages de specification de protocolesFormats inspires des langages de processus
ProVerif [Blanchet]
Prouve [Kremer, Laknech, Treinen]
AVISPA (HLPSL) [Armando, et col.]
Alice Bobrole alice (A,B: agent, ...)
local State: nat, Na,Nb: text
init State:= 0
transition
0. State=0 /\ RCV(start) =|>
State’:= 2 /\ Na’ := new()
/\ SND({Na’.A}_Kb)
/\ secret(Na’,na,{A,B})
2. State=2 /\ RCV({Na.Nb’}_Ka) =|>
State’:= 4 /\ SND({Nb’}_Kb)
end role
role bob(A, B: agent, ...)
local State : nat, Na,Nb: text
init State:= 1
transition
1. State= 1 /\ RCV({Na’.A}_Kb) =|>
State’:= 3 /\ Nb’ := new()
/\ SND({Na’.Nb’}_Ka)
/\ secret(Nb’,nb,{A,B})
3. State= 3 /\ RCV({Nb’}_Kb) =|>
State’:= 5 /\
end role
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 79 / 83
![Page 359: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/359.jpg)
AVISPA+SPAN
Model-checkers Approximation Simulation
Rechercheinteractived’attaque
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 80 / 83
![Page 360: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/360.jpg)
Demo AVISPA+SPAN
Specification et verification des protocoles1. B ↪→ A : {B,Secret}K−1
B
1. B ↪→ A : {B,Secret}KA
1. A ↪→ B : {A,NA}KB
2. B ↪→ A : {A,B,NA}KA
1. B ↪→ A : {B,Secret}KAB
Diffie-Hellman
A vous : http://www.irisa.fr/celtique/genet/span
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 81 / 83
![Page 361: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/361.jpg)
Conclusion
L’utilisation de la cryptographie et des protocoles cryptographiques segeneralise dans notre societe
La cryptographie est relativement solide meme si les garanties qu’elleoffre sont generalement empiriques
Les protocoles cryptographiques sont sujets a des failles logiquesredoutables
La verification formelle des protocoles cryptographiques est en pleinessor depuis 15 ans (depuis la faille trouvee par G. Lowe)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 82 / 83
![Page 362: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/362.jpg)
Conclusion
L’utilisation de la cryptographie et des protocoles cryptographiques segeneralise dans notre societe
La cryptographie est relativement solide meme si les garanties qu’elleoffre sont generalement empiriques
Les protocoles cryptographiques sont sujets a des failles logiquesredoutables
La verification formelle des protocoles cryptographiques est en pleinessor depuis 15 ans (depuis la faille trouvee par G. Lowe)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 82 / 83
![Page 363: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/363.jpg)
Conclusion
L’utilisation de la cryptographie et des protocoles cryptographiques segeneralise dans notre societe
La cryptographie est relativement solide meme si les garanties qu’elleoffre sont generalement empiriques
Les protocoles cryptographiques sont sujets a des failles logiquesredoutables
La verification formelle des protocoles cryptographiques est en pleinessor depuis 15 ans (depuis la faille trouvee par G. Lowe)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 82 / 83
![Page 364: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/364.jpg)
Conclusion
L’utilisation de la cryptographie et des protocoles cryptographiques segeneralise dans notre societe
La cryptographie est relativement solide meme si les garanties qu’elleoffre sont generalement empiriques
Les protocoles cryptographiques sont sujets a des failles logiquesredoutables
La verification formelle des protocoles cryptographiques est en pleinessor depuis 15 ans (depuis la faille trouvee par G. Lowe)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 82 / 83
![Page 365: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/365.jpg)
Conclusion
L’utilisation de la cryptographie et des protocoles cryptographiques segeneralise dans notre societe
La cryptographie est relativement solide meme si les garanties qu’elleoffre sont generalement empiriques
Les protocoles cryptographiques sont sujets a des failles logiquesredoutables
La verification formelle des protocoles cryptographiques est en pleinessor depuis 15 ans (depuis la faille trouvee par G. Lowe)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 82 / 83
![Page 366: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/366.jpg)
Verification des protocoles crypto
Actuellement
Nombreux modeles (Processus, Reecriture, Clauses,...)
Nombreuses techniques de verification
I Enumeration pour des cas d’etudes finisI Procedures de decision pour des sous-classesI Interpretation abstraite et approximationI Demonstration assistee
Perspectives
Obstacles a depasser pour des protocoles industriels :I Preuve de proprietes exotiquesI Verification efficace : combinaison de protocolesI Affaiblissement de Dolev-Yao (Crypto bas-cout)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 83 / 83
![Page 367: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/367.jpg)
Verification des protocoles crypto
Actuellement
Nombreux modeles (Processus, Reecriture, Clauses,...)
Nombreuses techniques de verification
I Enumeration pour des cas d’etudes finisI Procedures de decision pour des sous-classesI Interpretation abstraite et approximationI Demonstration assistee
Perspectives
Obstacles a depasser pour des protocoles industriels :I Preuve de proprietes exotiquesI Verification efficace : combinaison de protocolesI Affaiblissement de Dolev-Yao (Crypto bas-cout)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 83 / 83
![Page 368: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/368.jpg)
Verification des protocoles crypto
Actuellement
Nombreux modeles (Processus, Reecriture, Clauses,...)
Nombreuses techniques de verification
I Enumeration pour des cas d’etudes finisI Procedures de decision pour des sous-classesI Interpretation abstraite et approximationI Demonstration assistee
Perspectives
Obstacles a depasser pour des protocoles industriels :I Preuve de proprietes exotiquesI Verification efficace : combinaison de protocolesI Affaiblissement de Dolev-Yao (Crypto bas-cout)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 83 / 83
![Page 369: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/369.jpg)
Verification des protocoles crypto
Actuellement
Nombreux modeles (Processus, Reecriture, Clauses,...)
Nombreuses techniques de verificationI Enumeration pour des cas d’etudes finis
I Procedures de decision pour des sous-classesI Interpretation abstraite et approximationI Demonstration assistee
Perspectives
Obstacles a depasser pour des protocoles industriels :I Preuve de proprietes exotiquesI Verification efficace : combinaison de protocolesI Affaiblissement de Dolev-Yao (Crypto bas-cout)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 83 / 83
![Page 370: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/370.jpg)
Verification des protocoles crypto
Actuellement
Nombreux modeles (Processus, Reecriture, Clauses,...)
Nombreuses techniques de verificationI Enumeration pour des cas d’etudes finisI Procedures de decision pour des sous-classes
I Interpretation abstraite et approximationI Demonstration assistee
Perspectives
Obstacles a depasser pour des protocoles industriels :I Preuve de proprietes exotiquesI Verification efficace : combinaison de protocolesI Affaiblissement de Dolev-Yao (Crypto bas-cout)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 83 / 83
![Page 371: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/371.jpg)
Verification des protocoles crypto
Actuellement
Nombreux modeles (Processus, Reecriture, Clauses,...)
Nombreuses techniques de verificationI Enumeration pour des cas d’etudes finisI Procedures de decision pour des sous-classesI Interpretation abstraite et approximation
I Demonstration assistee
Perspectives
Obstacles a depasser pour des protocoles industriels :I Preuve de proprietes exotiquesI Verification efficace : combinaison de protocolesI Affaiblissement de Dolev-Yao (Crypto bas-cout)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 83 / 83
![Page 372: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/372.jpg)
Verification des protocoles crypto
Actuellement
Nombreux modeles (Processus, Reecriture, Clauses,...)
Nombreuses techniques de verificationI Enumeration pour des cas d’etudes finisI Procedures de decision pour des sous-classesI Interpretation abstraite et approximationI Demonstration assistee
Perspectives
Obstacles a depasser pour des protocoles industriels :I Preuve de proprietes exotiquesI Verification efficace : combinaison de protocolesI Affaiblissement de Dolev-Yao (Crypto bas-cout)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 83 / 83
![Page 373: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/373.jpg)
Verification des protocoles crypto
Actuellement
Nombreux modeles (Processus, Reecriture, Clauses,...)
Nombreuses techniques de verificationI Enumeration pour des cas d’etudes finisI Procedures de decision pour des sous-classesI Interpretation abstraite et approximationI Demonstration assistee
Perspectives
Obstacles a depasser pour des protocoles industriels :
I Preuve de proprietes exotiquesI Verification efficace : combinaison de protocolesI Affaiblissement de Dolev-Yao (Crypto bas-cout)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 83 / 83
![Page 374: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/374.jpg)
Verification des protocoles crypto
Actuellement
Nombreux modeles (Processus, Reecriture, Clauses,...)
Nombreuses techniques de verificationI Enumeration pour des cas d’etudes finisI Procedures de decision pour des sous-classesI Interpretation abstraite et approximationI Demonstration assistee
Perspectives
Obstacles a depasser pour des protocoles industriels :I Preuve de proprietes exotiques
I Verification efficace : combinaison de protocolesI Affaiblissement de Dolev-Yao (Crypto bas-cout)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 83 / 83
![Page 375: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/375.jpg)
Verification des protocoles crypto
Actuellement
Nombreux modeles (Processus, Reecriture, Clauses,...)
Nombreuses techniques de verificationI Enumeration pour des cas d’etudes finisI Procedures de decision pour des sous-classesI Interpretation abstraite et approximationI Demonstration assistee
Perspectives
Obstacles a depasser pour des protocoles industriels :I Preuve de proprietes exotiquesI Verification efficace : combinaison de protocoles
I Affaiblissement de Dolev-Yao (Crypto bas-cout)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 83 / 83
![Page 376: Introduction aux protocoles cryptographiques - …people.irisa.fr/Thomas.Genet/Crypt/cours.pdf · Plan Bibliographie Partie I : protocoles crypto, m ecanismes et propri et es I Trois](https://reader031.fdocuments.net/reader031/viewer/2022022613/5b9cbd1309d3f2df1f8b6a92/html5/thumbnails/376.jpg)
Verification des protocoles crypto
Actuellement
Nombreux modeles (Processus, Reecriture, Clauses,...)
Nombreuses techniques de verificationI Enumeration pour des cas d’etudes finisI Procedures de decision pour des sous-classesI Interpretation abstraite et approximationI Demonstration assistee
Perspectives
Obstacles a depasser pour des protocoles industriels :I Preuve de proprietes exotiquesI Verification efficace : combinaison de protocolesI Affaiblissement de Dolev-Yao (Crypto bas-cout)
T. Genet (ISTIC/IRISA) Introduction aux protocoles cryptographiques 83 / 83