Académique Documents
Professionnel Documents
Culture Documents
vendredi 24 janvier 14
vendredi 24 janvier 14
vendredi 24 janvier 14
vendredi 24 janvier 14
vendredi 24 janvier 14
NO
N!
vendredi 24 janvier 14
vendredi 24 janvier 14
vendredi 24 janvier 14
vendredi 24 janvier 14
vendredi 24 janvier 14
M M
vendredi 24 janvier 14
M M
vendredi 24 janvier 14
M M
vendredi 24 janvier 14
M M
vendredi 24 janvier 14
M M
vendredi 24 janvier 14
M M
vendredi 24 janvier 14
M s SK(M)
M M
K
vendredi 24 janvier 14
M s SK(M)
(M,s) M M
K
vendredi 24 janvier 14
M s SK(M)
(M,s) M M
K
vendredi 24 janvier 14
M s SK(M)
(M,s) M M (M,s)
K
vendredi 24 janvier 14
M s SK(M)
(M,s) M M
(M,s)
K
vendredi 24 janvier 14
M s SK(M)
(M,s) M M
(M,s)
K
vendredi 24 janvier 14
M s SK(M)
(M,s) M M
(M,s) oui/non
VK(M,s)
K
vendredi 24 janvier 14
vendredi 24 janvier 14
vendredi 24 janvier 14
vendredi 24 janvier 14
vendredi 24 janvier 14
vendredi 24 janvier 14
vendredi 24 janvier 14
vendredi 24 janvier 14
vendredi 24 janvier 14
vendredi 24 janvier 14
vendredi 24 janvier 14
vendredi 24 janvier 14
vendredi 24 janvier 14
vendredi 24 janvier 14
(Nattaquons pas!, s)
vendredi 24 janvier 14
vendredi 24 janvier 14
OK
(Nattaquons pas!, s)
vendredi 24 janvier 14
OK
(Nattaquons pas!, s)
vendredi 24 janvier 14
OK
(Nattaquons pas!, s)
s) , s!
qu a t at N (
pa s on
vendredi 24 janvier 14
OK
OK
(Nattaquons pas!, s)
s) , s!
qu a t at N (
pa s on
vendredi 24 janvier 14
vendredi 24 janvier 14
vendredi 24 janvier 14
Une faon dviter les redites est dajouter au message un indice i : m-> (i,m) -> ((i,m), Sk((i,m))), o i est un nouvel indice.
vendredi 24 janvier 14
Une faon dviter les redites est dajouter au message un indice i : m-> (i,m) -> ((i,m), Sk((i,m))), o i est un nouvel indice. Le destinataire vrie quaucun message avec le mme index i na t reu prcdemment...
vendredi 24 janvier 14
Une faon dviter les redites est dajouter au message un indice i : m-> (i,m) -> ((i,m), Sk((i,m))), o i est un nouvel indice. Le destinataire vrie quaucun message avec le mme index i na t reu prcdemment... Demande de ranger les indices reus.
vendredi 24 janvier 14
Une faon dviter les redites est dajouter au message un indice i : m-> (i,m) -> ((i,m), Sk((i,m))), o i est un nouvel indice. Le destinataire vrie quaucun message avec le mme index i na t reu prcdemment... Demande de ranger les indices reus. Une autre faon consiste ajouter le moment o le message est envoy :
vendredi 24 janvier 14
Une faon dviter les redites est dajouter au message un indice i : m-> (i,m) -> ((i,m), Sk((i,m))), o i est un nouvel indice. Le destinataire vrie quaucun message avec le mme index i na t reu prcdemment... Demande de ranger les indices reus. Une autre faon consiste ajouter le moment o le message est envoy : m -> (28/01/09:17, m) -> ((28/01/09:17,m), Sk((28/01/09:17,m)))
vendredi 24 janvier 14
Une faon dviter les redites est dajouter au message un indice i : m-> (i,m) -> ((i,m), Sk((i,m))), o i est un nouvel indice. Le destinataire vrie quaucun message avec le mme index i na t reu prcdemment... Demande de ranger les indices reus. Une autre faon consiste ajouter le moment o le message est envoy : m -> (28/01/09:17, m) -> ((28/01/09:17,m), Sk((28/01/09:17,m))) Accepte si le temps coul nest pas trop grand. Permet seulement les redites rapides!!!!
vendredi 24 janvier 14
Intgrit inconditionnelle
vendredi 24 janvier 14
Intgrit inconditionnelle
Comme pour le chiffrement, il y a des CAM qui sont inconditionnellement srs.
vendredi 24 janvier 14
Intgrit inconditionnelle
Comme pour le chiffrement, il y a des CAM qui sont inconditionnellement srs. Comme pour le chiffrement, ces solutions sont plutt inutiles dans la pratique.
vendredi 24 janvier 14
Intgrit inconditionnelle
Comme pour le chiffrement, il y a des CAM qui sont inconditionnellement srs. Comme pour le chiffrement, ces solutions sont plutt inutiles dans la pratique. Nous allons voir comment y parvenir avec une solution particulirement inefcace...
vendredi 24 janvier 14
Intgrit inconditionnelle
Comme pour le chiffrement, il y a des CAM qui sont inconditionnellement srs. Comme pour le chiffrement, ces solutions sont plutt inutiles dans la pratique. Nous allons voir comment y parvenir avec une solution particulirement inefcace... Supposons que lexpditeur, Oblix, veut transmettre un message M parmi lensemble {M1,M2,...,ML} et rien de plus.
vendredi 24 janvier 14
CAM inconditionnelle
vendredi 24 janvier 14
CAM inconditionnelle
vendredi 24 janvier 14
CAM inconditionnelle
M1 M2 s1 s2
k=
...
Mi
...
si
...
ML
...
sL
vendredi 24 janvier 14
CAM inconditionnelle
s1 s2
M1 M2
k=
...
Mi
...
si
...
ML
...
sL
vendredi 24 janvier 14
CAM inconditionnelle
s1 s2
M1 M2
k=
...
Mi
...
si
...
ML
...
sL
Mi
vendredi 24 janvier 14
CAM inconditionnelle
s1 s2
M1 M2
k=
...
Mi
...
si
...
ML
...
sL
Mi
vendredi 24 janvier 14
CAM inconditionnelle
s1 s2
M1 M2
M1 M2
s1 s2
k=
...
Mi
...
si
...
Mi
...
si
=k
...
ML
...
sL
...
ML
...
sL
Mi
vendredi 24 janvier 14
CAM inconditionnelle
s1 s2
M1 M2
M1 M2
s1 s2
k=
...
Mi
...
si
...
Mi
...
si
=k
...
ML
...
sL
...
ML
...
sL
Mi
vendredi 24 janvier 14
CAM inconditionnelle
s1 s2
M1 M2
M1 M2
s1 s2
k=
...
Mi
...
si
...
Mi
...
si
=k
...
ML
...
sL
...
ML
...
sL
Mi
(Mi,si)
vendredi 24 janvier 14
CAM inconditionnelle
s1 s2
M1 M2
M1 M2
s1 s2
k=
...
Mi
...
si
...
Mi
...
si
=k
...
ML
...
sL
...
ML
...
sL
Mi
(Mi,si)
(Mi,si)
vendredi 24 janvier 14
CAM inconditionnelle
s1 s2
M1 M2
M1 M2
s1 s2
k=
...
Mi
...
si
...
Mi
...
si
=k
...
ML
...
sL
...
ML
...
sL
Mi
(Mi,si)
(Mi,si)
vendredi 24 janvier 14
CAM inconditionnelle
s1 s2
M1 M2
M1 M2
s1 s2
k=
...
Mi
...
si
...
Mi
...
si
=k OK!
...
ML
...
sL
...
ML
...
sL
Mi
(Mi,si)
(Mi,si)
vendredi 24 janvier 14
CAM inconditionnelle
s1 s2
M1 M2
M1 M2
s1 s2
k=
...
Mi
...
si
...
Mi
...
si
=k OK!
...
ML
...
sL
...
ML
...
sL
Mi
(Mi,si)
(Mi,si)
vendredi 24 janvier 14
CAM inconditionnelle
s1 s2
M1 M2
M1 M2
s1 s2
k=
...
Mi
...
si
...
Mi
...
si
=k OK!
...
ML
...
sL
...
ML
...
sL
Mi
(Mi,si) (M,s)
(Mi,si)
vendredi 24 janvier 14
CAM inconditionnelle
s1 s2
M1 M2
M1 M2
s1 s2
k=
...
Mi
...
si
...
Mi
...
si
=k OK!
...
ML
...
sL
...
ML
...
sL
Mi
(Mi,si) (M,s)
(M,s) (M i,si)
vendredi 24 janvier 14
CAM inconditionnelle
s1 s2
M1 M2
M1 M2
s1 s2
k=
...
Mi
...
si
...
Mi
...
si
=k OK!
...
ML
...
sL
La probabilit que Csar russisse faire accepter (M,s) par Astrix est 2-t.
...
ML
...
sL
Mi
(Mi,si) (M,s)
(M,s) (M i,si)
vendredi 24 janvier 14
CAM inconditionnelle
s1 s2
M1 M2
M1 M2
s1 s2
k=
...
Mi
...
si
...
Mi
...
si
=k NON! OK!
...
ML
...
sL
La probabilit que Csar russisse faire accepter (M,s) par Astrix est 2-t.
...
ML
...
sL
Mi
(Mi,si) (M,s)
(M,s) (M i,si)
vendredi 24 janvier 14
vendredi 24 janvier 14
vendredi 24 janvier 14
vendredi 24 janvier 14
vendredi 24 janvier 14
vendredi 24 janvier 14
vendredi 24 janvier 14
vendredi 24 janvier 14
vendredi 24 janvier 14
vendredi 24 janvier 14
vendredi 24 janvier 14
Ceci implique quaprs avoir vu quelques messages avec leur CAM, la cl est trs probablement uniquement dtermine. Une seule cl est compatible avec tous les CAM observs.
vendredi 24 janvier 14
Ceci implique quaprs avoir vu quelques messages avec leur CAM, la cl est trs probablement uniquement dtermine. Une seule cl est compatible avec tous les CAM observs. Ladversaire peut donc essayer de produire les CAM pour les messages vus, et ce, pour toutes les cls jusqu ce que ceux observs soient produits.
vendredi 24 janvier 14
Ceci implique quaprs avoir vu quelques messages avec leur CAM, la cl est trs probablement uniquement dtermine. Une seule cl est compatible avec tous les CAM observs. Ladversaire peut donc essayer de produire les CAM pour les messages vus, et ce, pour toutes les cls jusqu ce que ceux observs soient produits. Pour sassurer que cette attaque nest pas raliste pour ladversaire le plus patient, une cl de longueur sufsante doit tre utilise ("128 bits comme pour AES) pour exclure la fouille exhaustive de cls.
vendredi 24 janvier 14
Ceci implique quaprs avoir vu quelques messages avec leur CAM, la cl est trs probablement uniquement dtermine. Une seule cl est compatible avec tous les CAM observs. Ladversaire peut donc essayer de produire les CAM pour les messages vus, et ce, pour toutes les cls jusqu ce que ceux observs soient produits. Pour sassurer que cette attaque nest pas raliste pour ladversaire le plus patient, une cl de longueur sufsante doit tre utilise ("128 bits comme pour AES) pour exclure la fouille exhaustive de cls. De plus, le CAM doit tre de longueur sufsante pour se prmunir contre les adversaires chanceux ("64 bits).
vendredi 24 janvier 14
vendredi 24 janvier 14
AES, DES, ou nimporte quel autre systme de chiffrement peut tre utilis cette n.
vendredi 24 janvier 14
AES, DES, ou nimporte quel autre systme de chiffrement peut tre utilis cette n. Lefcacit de la gnration et vrication de CAM sont les mmes que pour le chiffrement et le dchiffrement. Puisque ces oprations sont efcaces pour bien des systmes de chiffrement (p.ex. AES, DES), les oprations pour garantir lintgrit le seront aussi.
vendredi 24 janvier 14
AES, DES, ou nimporte quel autre systme de chiffrement peut tre utilis cette n. Lefcacit de la gnration et vrication de CAM sont les mmes que pour le chiffrement et le dchiffrement. Puisque ces oprations sont efcaces pour bien des systmes de chiffrement (p.ex. AES, DES), les oprations pour garantir lintgrit le seront aussi. Puisque des chiffrements cls courtes sont connus, lintgrit pourra tre garantie avec des cls courtes pouvant authentier un trs grand nombre de messages.
vendredi 24 janvier 14
AES, DES, ou nimporte quel autre systme de chiffrement peut tre utilis cette n. Lefcacit de la gnration et vrication de CAM sont les mmes que pour le chiffrement et le dchiffrement. Puisque ces oprations sont efcaces pour bien des systmes de chiffrement (p.ex. AES, DES), les oprations pour garantir lintgrit le seront aussi. Puisque des chiffrements cls courtes sont connus, lintgrit pourra tre garantie avec des cls courtes pouvant authentier un trs grand nombre de messages. Lintgrit est obtenue en utilisant le mode de fonctionnement CBC des systmes de chiffrement.
vendredi 24 janvier 14
CBC-MAC
vendredi 24 janvier 14
CBC-MAC
Le message M est spar en blocs de la taille ncessaire pour le chiffrement par blocs :
vendredi 24 janvier 14
CBC-MAC
Le message M est spar en blocs de la taille ncessaire pour le chiffrement par blocs : M=M1,M2,...,ML
vendredi 24 janvier 14
CBC-MAC
Le message M est spar en blocs de la taille ncessaire pour le chiffrement par blocs : M=M1,M2,...,ML M1
C0=
M2
ML
K C1
vendredi 24 janvier 14
K C2
K CL
CBC-MAC
Le message M est spar en blocs de la taille ncessaire pour le chiffrement par blocs : M=M1,M2,...,ML M1
C0=
M2
ML
K C1
vendredi 24 janvier 14
K C2
K CL
CBC-MAC
Le message M est spar en blocs de la taille ncessaire pour le chiffrement par blocs : M=M1,M2,...,ML M1
C0=
M2
ML
K C1
vendredi 24 janvier 14
K C2
K CAM= CL
CBC-MAC
Le message M est spar en blocs de la taille ncessaire pour le chiffrement par blocs : M=M1,M2,...,ML M1
C0=
(M,CL) ML
M2
K C1
vendredi 24 janvier 14
K C2
K CAM= CL
CBC-MAC
Le message M est spar en blocs de la taille Une variante est le standard utilis par le ncessaire pour le chiffrement par blocs : monde bancaire. Nous y M=M1,M2,...,ML M1
C0=
reviendrons...
(M,CL) ML
M2
K C1
vendredi 24 janvier 14
K C2
K CAM= CL
CBC-MAC (II)
vendredi 24 janvier 14
M1
CBC-MAC (II)
M2
ML
vendredi 24 janvier 14
M1
CBC-MAC (II)
M2
ML
CL
vendredi 24 janvier 14
M1
CBC-MAC (II)
M2
ML
n bits
n bits
n bits
CL
vendredi 24 janvier 14
M1
CBC-MAC (II)
M2
ML
n bits
n bits
n bits
CL
m bits
vendredi 24 janvier 14
M1
CBC-MAC (II)
M2
ML
n bits
n bits
n bits
CBC-MAC a certaines faiblesses qui peuvent tre vites laide de fonctions optionnelles (nous y reviendrons). Diffrentes fonctions optionnelles donnent diffrentes saveurs de CBC-MAC. Il y a 6 standards ISO pour CBC-MAC.
vendredi 24 janvier 14
CL
m bits
Remplissage
M=
10001110 10011001
...
10011001 1001
vendredi 24 janvier 14
Remplissage
M=
10001110 10011001
...
10011001 1001
vendredi 24 janvier 14
Remplissage
M=
10001110 10011001
...
10011001 1001
Il y a 3 manires habituelles de faire le remplissage : 1. Lajout au message du nombre minimum de 0 an que sa longueur soit un multiple de la longueur dun bloc.
vendredi 24 janvier 14
Remplissage
M=
10001110 10011001
...
10011001 1001
Il y a 3 manires habituelles de faire le remplissage : 1. Lajout au message du nombre minimum de 0 an que sa longueur soit un multiple de la longueur dun bloc. 2.Lajout dun 1 suivi de sufsamment de 0 comme dans le cas prcdent.
vendredi 24 janvier 14
Remplissage
M=
10001110 10011001
...
10011001 1001
Il y a 3 manires habituelles de faire le remplissage : 1. Lajout au message du nombre minimum de 0 an que sa longueur soit un multiple de la longueur dun bloc. 2.Lajout dun 1 suivi de sufsamment de 0 comme dans le cas prcdent. 3.Lajout de 0 comme dans le cas 1). De plus, un bloc est ajout au dbut du message indiquant sa longueur.
vendredi 24 janvier 14
Remplissage
M=
10001110 10011001
...
10011001 1001
Il y a 3 manires habituelles de faire le remplissage : 1. Lajout au message du nombre minimum de 0 an que sa longueur soit un multiple de la longueur dun bloc. 2.Lajout dun 1 suivi de sufsamment de 0 comme dans le cas prcdent. 3.Lajout de 0 comme dans le cas 1). De plus, un bloc est ajout au dbut du message indiquant sa longueur.
vendredi 24 janvier 14
Remplissage
M=
10001110 10011001
...
10011001 1001
0000
Il y a 3 manires habituelles de faire le remplissage : 1. Lajout au message du nombre minimum de 0 an que sa longueur soit un multiple de la longueur dun bloc. 2.Lajout dun 1 suivi de sufsamment de 0 comme dans le cas prcdent. 3.Lajout de 0 comme dans le cas 1). De plus, un bloc est ajout au dbut du message indiquant sa longueur.
vendredi 24 janvier 14
Remplissage
M=
10001110 10011001
...
10011001 1001
0000
Il y a 3 manires habituelles de faire le remplissage : 1. Lajout au message du nombre minimum de 0 an que sa longueur soit un multiple de la longueur dun Permet des contrefaons (ajouter/retirer des 0 la n) bloc. 2.Lajout dun 1 suivi de sufsamment de 0 comme dans le cas prcdent. 3.Lajout de 0 comme dans le cas 1). De plus, un bloc est ajout au dbut du message indiquant sa longueur.
vendredi 24 janvier 14
Remplissage
M=
10001110 10011001
...
10011001 1001
0000 1000
Il y a 3 manires habituelles de faire le remplissage : 1. Lajout au message du nombre minimum de 0 an que sa longueur soit un multiple de la longueur dun Permet des contrefaons (ajouter/retirer des 0 la n) bloc. 2.Lajout dun 1 suivi de sufsamment de 0 comme dans le cas prcdent. 3.Lajout de 0 comme dans le cas 1). De plus, un bloc est ajout au dbut du message indiquant sa longueur.
vendredi 24 janvier 14
Remplissage
M=
10001110 10011001
...
10011001 1001
0000 1000
Il y a 3 manires habituelles de faire le remplissage : 1. Lajout au message du nombre minimum de 0 an que sa longueur soit un multiple de la longueur dun Permet des contrefaons (ajouter/retirer des 0 la n) bloc. 2.Lajout dun 1 suivi de sufsamment de 0 comme dans le cas prcdent. vite les attaques prcdentes. En
permet dautres... nous y reviendrons
3.Lajout de 0 comme dans le cas 1). De plus, un bloc est ajout au dbut du message indiquant sa longueur.
vendredi 24 janvier 14
Remplissage
M=
10001110 10011001
...
10011001 1001
0000
Il y a 3 manires habituelles de faire le remplissage : 1. Lajout au message du nombre minimum de 0 an que sa longueur soit un multiple de la longueur dun Permet des contrefaons (ajouter/retirer des 0 la n) bloc. 2.Lajout dun 1 suivi de sufsamment de 0 comme dans le cas prcdent. vite les attaques prcdentes. En
permet dautres... nous y reviendrons
3.Lajout de 0 comme dans le cas 1). De plus, un bloc est ajout au dbut du message indiquant sa longueur.
vendredi 24 janvier 14
Remplissage
M=
|M|
10001110
10011001
...
10011001 1001
0000
Il y a 3 manires habituelles de faire le remplissage : 1. Lajout au message du nombre minimum de 0 an que sa longueur soit un multiple de la longueur dun Permet des contrefaons (ajouter/retirer des 0 la n) bloc. 2.Lajout dun 1 suivi de sufsamment de 0 comme dans le cas prcdent. vite les attaques prcdentes. En
permet dautres... nous y reviendrons
3.Lajout de 0 comme dans le cas 1). De plus, un bloc est ajout au dbut du message indiquant sa longueur.
vendredi 24 janvier 14
Remplissage
M=
|M|
10001110
10011001
...
10011001 1001
0000
Il y a 3 manires habituelles de faire le remplissage : 1. Lajout au message du nombre minimum de 0 an que sa longueur soit un multiple de la longueur dun Permet des contrefaons (ajouter/retirer des 0 la n) bloc. 2.Lajout dun 1 suivi de sufsamment de 0 comme dans le cas prcdent. vite les attaques prcdentes. En
permet dautres... nous y reviendrons
3.Lajout de 0 comme dans le cas 1). De plus, un bloc est ajout au dbut du message indiquant sa longueur.
Ceci correspond lajout dun processus optionnel en mode CBC.
vendredi 24 janvier 14
Hachage cryptographique
vendredi 24 janvier 14
Hachage cryptographique
Nous allons voir une autre faon de construire des CAM base sur un outil cryptographique appel fonction de hachage cryptographique.
vendredi 24 janvier 14
Hachage cryptographique
Nous allons voir une autre faon de construire des CAM base sur un outil cryptographique appel fonction de hachage cryptographique. La fonction h(.) est une fonction de hachage cryptographique si :
vendredi 24 janvier 14
Hachage cryptographique
Nous allons voir une autre faon de construire des CAM base sur un outil cryptographique appel fonction de hachage cryptographique. La fonction h(.) est une fonction de hachage cryptographique si : 1. h(.) accepte des messages de nimporte quelle longueur;
vendredi 24 janvier 14
Hachage cryptographique
Nous allons voir une autre faon de construire des CAM base sur un outil cryptographique appel fonction de hachage cryptographique. La fonction h(.) est une fonction de hachage cryptographique si : 1. h(.) accepte des messages de nimporte quelle longueur; 2.h(.) produit en sortie une chane de longueur constante (des bits la plupart du temps);
vendredi 24 janvier 14
Hachage cryptographique
Nous allons voir une autre faon de construire des CAM base sur un outil cryptographique appel fonction de hachage cryptographique. La fonction h(.) est une fonction de hachage cryptographique si : 1. h(.) accepte des messages de nimporte quelle longueur; 2.h(.) produit en sortie une chane de longueur constante (des bits la plupart du temps); 3.h(.) peut tre value efcacement;
vendredi 24 janvier 14
Hachage cryptographique
Nous allons voir une autre faon de construire des CAM base sur un outil cryptographique appel fonction de hachage cryptographique. La fonction h(.) est une fonction de hachage cryptographique si : 1. h(.) accepte des messages de nimporte quelle longueur; 2.h(.) produit en sortie une chane de longueur constante (des bits la plupart du temps); 3.h(.) peut tre value efcacement; 4.Il est difcile de produire x!y, tels que h(x)=h(y).
vendredi 24 janvier 14
vendredi 24 janvier 14
3. h(.) peut tre value efcacement, 4. Il est difcile de produire x!y, tels que
h(x)=h(y).
vendredi 24 janvier 14
3. h(.) peut tre value efcacement, 4. Il est difcile de produire x!y, tels que
h(x)=h(y).
Noter que 1. et 2. impliquent que des collisions existent. Il suft que celles-ci soient difciles trouver! Lexistence de telles fonctions nest que conjecture.
vendredi 24 janvier 14
3. h(.) peut tre value efcacement, 4. Il est difcile de produire x!y, tels que
h(x)=h(y).
Noter que 1. et 2. impliquent que des collisions existent. Il suft que celles-ci soient difciles trouver! Lexistence de telles fonctions nest que conjecture.
Noter que pour satisfaire 4., il est ncessaire que la taille de la sortie soit sufsamment grande. Mais de quelle taille???
vendredi 24 janvier 14
3. h(.) peut tre value efcacement, 4. Il est difcile de produire x!y, tels que
h(x)=h(y).
Noter que 1. et 2. impliquent que des collisions existent. Il suft que celles-ci soient difciles trouver! Lexistence de telles fonctions nest que conjecture.
Les fonctions de hachage cryptographiques fonctionnent habituellement en divisant le message hacher en blocs dune certaine taille (512 pour MD5 et SHA-1) Elles rptent ensuite une fonction de compression de longueur xe (de 512 bits 128 et 160 bits pour MD5 et SHA-1 respectivement). La taille de la sortie est la mme que la taille de la sortie de la fonction de compression.
vendredi 24 janvier 14
Noter que pour satisfaire 4., il est ncessaire que la taille de la sortie soit sufsamment grande. Mais de quelle taille???
HMAC
vendredi 24 janvier 14
HMAC
Voici un standard pour la gnration de CAM partir dune fonction de hachage cryptographique h(.) :
vendredi 24 janvier 14
HMAC
Voici un standard pour la gnration de CAM partir dune fonction de hachage cryptographique h(.) : SK(M) = h( K!opad || h(K!ipad || M) ),
vendredi 24 janvier 14
HMAC
Voici un standard pour la gnration de CAM partir dune fonction de hachage cryptographique h(.) : SK(M) = h( K!opad || h(K!ipad || M) ), VK(M,s) := [h(K!opad || h(K!ipad || M))==s].
vendredi 24 janvier 14
HMAC
Voici un standard pour la gnration de CAM partir dune fonction de hachage cryptographique h(.) : SK(M) = h( K!opad || h(K!ipad || M) ), VK(M,s) := [h(K!opad || h(K!ipad || M))==s]. opad= 0x5c5c5c...5c5c
vendredi 24 janvier 14
HMAC
Voici un standard pour la gnration de CAM partir dune fonction de hachage cryptographique h(.) : SK(M) = h( K!opad || h(K!ipad || M) ), VK(M,s) := [h(K!opad || h(K!ipad || M))==s]. opad= 0x5c5c5c...5c5c ipad = 0x363636...3636
vendredi 24 janvier 14
HMAC
Voici un standard pour la gnration de CAM partir dune fonction de hachage cryptographique h(.) : SK(M) = h( K!opad || h(K!ipad || M) ), VK(M,s) := [h(K!opad || h(K!ipad || M))==s]. opad= 0x5c5c5c...5c5c ipad = 0x363636...3636 opad et ipad ont t choisis pour que les deux valeurs associes la cl K soient sufsamment diffrentes.
vendredi 24 janvier 14
HMAC
Voici un standard pour la gnration de CAM partir dune fonction de hachage cryptographique h(.) : SK(M) = h( K!opad || h(K!ipad || M) ), VK(M,s) := [h(K!opad || h(K!ipad || M))==s]. opad= 0x5c5c5c...5c5c ipad = 0x363636...3636 opad et ipad ont t choisis pour que les deux valeurs associes la cl K soient sufsamment diffrentes. Rappel : la taille du CAM est de 128 et 160 bits pour MD5 et SHA-1 respectivement.
vendredi 24 janvier 14
HMAC
Voici un standard pour la gnration de CAM partir dune fonction de hachage cryptographique h(.) :
concatnation
SK(M) = h( K!opad || h(K!ipad || M) ), VK(M,s) := [h(K!opad || h(K!ipad || M))==s]. opad= 0x5c5c5c...5c5c ipad = 0x363636...3636 opad et ipad ont t choisis pour que les deux valeurs associes la cl K soient sufsamment diffrentes. Rappel : la taille du CAM est de 128 et 160 bits pour MD5 et SHA-1 respectivement.
vendredi 24 janvier 14
HMAC
Voici un standard pour la gnration de CAM partir K doit tre remplie dune fonction de hachage avec des 0 cryptographique droite h(.) : SK(M) = h( K!opad || h(K!ipad || M) ), VK(M,s) := [h(K!opad || h(K!ipad || M))==s]. opad= 0x5c5c5c...5c5c ipad = 0x363636...3636 opad et ipad ont t choisis pour que les deux valeurs associes la cl K soient sufsamment diffrentes. Rappel : la taille du CAM est de 128 et 160 bits pour MD5 et SHA-1 respectivement.
vendredi 24 janvier 14
concatnation
HMAC
Voici un standard pour la gnration de CAM partir K doit tre remplie dune fonction de hachage avec des 0 cryptographique droite h(.) : SK(M) = h( K!opad || h(K!ipad || M) ), VK(M,s) := [h(K!opad || h(K!ipad || M))==s].
de la taille des blocs de h(.) opad= 0x5c5c5c...5c5c ipad = 0x363636...3636 opad et ipad ont t choisis pour que les deux valeurs associes la cl K soient sufsamment diffrentes. Rappel : la taille du CAM est de 128 et 160 bits pour MD5 et SHA-1 respectivement.
concatnation
vendredi 24 janvier 14
HMAC
jusqu la taille des blocs de h(.)
Voici un standard pour la gnration de CAM partir K doit tre remplie dune fonction de hachage avec des 0 cryptographique droite h(.) :
concatnation
ns da SL S s ili & U t se c IP
vendredi 24 janvier 14
vendredi 24 janvier 14
vendredi 24 janvier 14
vendredi 24 janvier 14
vendredi 24 janvier 14
vendredi 24 janvier 14
vendredi 24 janvier 14
vendredi 24 janvier 14
vendredi 24 janvier 14
vendredi 24 janvier 14
Si le MAC a t bits de long, alors aprs combien ditrations lalgorithme retournera-til une collision?
Digression
vendredi 24 janvier 14
Digression
Pensez-vous que dans une classe de 30 tudiants les chances sont bonnes pour que 2 tudiants soient ns le mme jour?
vendredi 24 janvier 14
Digression
Pensez-vous que dans une classe de 30 tudiants les chances sont bonnes pour que 2 tudiants soient ns le mme jour?
vendredi 24 janvier 14
Digression
Pensez-vous que dans une classe de 30 tudiants les chances sont bonnes pour que 2 tudiants soient ns le mme jour?
vendredi 24 janvier 14
Digression
Pensez-vous que dans une classe de 30 tudiants les chances sont bonnes pour que 2 tudiants soient ns le mme jour?
vendredi 24 janvier 14
Digression
Pensez-vous que dans une classe de 30 tudiants les chances sont bonnes pour que 2 tudiants soient ns le mme jour?
vendredi 24 janvier 14
vendredi 24 janvier 14
N boules
vendredi 24 janvier 14
vendredi 24 janvier 14
vendredi 24 janvier 14
vendredi 24 janvier 14
vendredi 24 janvier 14
i0, zialatoire dans le domaine de h(.), Vu{} Rpter Vu Vu + {(zi,h(zi))} i i+1, zi alatoire dans le domaine de h(.)
Jusqu ce que (*,h(zi))"Vu et (zi,*) napparat pas dans Vu
vendredi 24 janvier 14
i0, zialatoire dans le domaine de h(.), Vu{} Rpter Vu Vu + {(zi,h(zi))} i i+1, zi alatoire dans le domaine de h(.)
Jusqu ce que (*,h(zi))"Vu et (zi,*) napparat pas dans Vu
h(.)
vendredi 24 janvier 14
i0, zialatoire dans le domaine de h(.), Vu{} Rpter Vu Vu + {(zi,h(zi))} i i+1, zi alatoire dans le domaine de h(.)
Jusqu ce que (*,h(zi))"Vu et (zi,*) napparat pas dans Vu
h(.)
vendredi 24 janvier 14
i0, zialatoire dans le domaine de h(.), Vu{} Rpter Vu Vu + {(zi,h(zi))} i i+1, zi alatoire dans le domaine de h(.)
Jusqu ce que (*,h(zi))"Vu et (zi,*) napparat pas dans Vu
h(.)
Supposons que la sortie de h(.) est de t bits. Si h(.) est utilise dans HMAC, alors les empreintes seront de t bits.
vendredi 24 janvier 14
i0, zialatoire dans le domaine de h(.), Vu{} Rpter Vu Vu + {(zi,h(zi))} i i+1, zi alatoire dans le domaine de h(.)
Jusqu ce que (*,h(zi))"Vu et (zi,*) napparat pas dans Vu
h(.)
Supposons que la sortie de h(.) est de t bits. Si h(.) est utilise dans HMAC, alors les empreintes seront de t bits.
vendredi 24 janvier 14
i0, zialatoire dans le domaine de h(.), Vu{} Rpter Vu Vu + {(zi,h(zi))} i i+1, zi alatoire dans le domaine de h(.)
Jusqu ce que (*,h(zi))"Vu et (zi,*) napparat pas dans Vu
h(.)
Supposons que la sortie de h(.) est de t bits. Si h(.) est utilise dans HMAC, alors les empreintes seront de t bits.
vendredi 24 janvier 14
i0, zialatoire dans le domaine de h(.), Vu{} Rpter Vu Vu + {(zi,h(zi))} i i+1, zi alatoire dans le domaine de h(.)
Jusqu ce que (*,h(zi))"Vu et (zi,*) napparat pas dans Vu
h(.)
Supposons que la sortie de h(.) est de t bits. Si h(.) est utilise dans HMAC, alors les empreintes seront de t bits.
vendredi 24 janvier 14
i0, zialatoire dans le domaine de h(.), Vu{} Rpter Vu Vu + {(zi,h(zi))} i i+1, zi alatoire dans le domaine de h(.)
Jusqu ce que (*,h(zi))"Vu et (zi,*) napparat pas dans Vu
h(.)
Supposons que la sortie de h(.) est de t bits. Si h(.) est utilise dans HMAC, alors les empreintes seront de t bits.
vendredi 24 janvier 14
i0, zialatoire dans le domaine de h(.), Vu{} Rpter Vu Vu + {(zi,h(zi))} i i+1, zi alatoire dans le domaine de h(.)
Jusqu ce que (*,h(zi))"Vu et (zi,*) napparat pas dans Vu
h(.)
Supposons que la sortie de h(.) est de t bits. Si h(.) est utilise dans HMAC, alors les empreintes seront de t bits.
vendredi 24 janvier 14
i0, zialatoire dans le domaine de h(.), Vu{} Rpter Vu Vu + {(zi,h(zi))} i i+1, zi alatoire dans le domaine de h(.)
Jusqu ce que (*,h(zi))"Vu et (zi,*) napparat pas dans Vu
h(.)
Supposons que la sortie de h(.) est de t bits. Si h(.) est utilise dans HMAC, alors les empreintes seront de t bits.
vendredi 24 janvier 14
i0, zialatoire dans le domaine de h(.), Vu{} Rpter Vu Vu + {(zi,h(zi))} i i+1, zi alatoire dans le domaine de h(.)
Jusqu ce que (*,h(zi))"Vu et (zi,*) napparat pas dans Vu
Par le paradoxe des anniversaires, 2t/2 valuations de h(.) sont sufsantes pour trouver une collision avec bonne probabilit.
h(.)
Supposons que la sortie de h(.) est de t bits. Si h(.) est utilise dans HMAC, alors les empreintes seront de t bits.
vendredi 24 janvier 14
vendredi 24 janvier 14
vendredi 24 janvier 14
vendredi 24 janvier 14
vendredi 24 janvier 14
vendredi 24 janvier 14
Scurit de HMAC
vendredi 24 janvier 14
Scurit de HMAC
La rsistance aux collisions est-elle ncessaire pour que HMAC soit sr?
vendredi 24 janvier 14
Scurit de HMAC
La rsistance aux collisions est-elle ncessaire pour que HMAC soit sr?
HMAC est construite partir dune fonction de compression rsistante aux collisions h(k,y).
vendredi 24 janvier 14
Scurit de HMAC
La rsistance aux collisions est-elle ncessaire pour que HMAC soit sr?
HMAC est construite partir dune fonction de compression rsistante aux collisions h(k,y). Il a t montr par Bellare (2006) que si h(k,.), lorsque k est gnre alatoirement, est une fonction pseudo-alatoire, alors HMAC est une fonction pseudo-alatoire.
vendredi 24 janvier 14
Scurit de HMAC
La rsistance aux collisions est-elle ncessaire pour que HMAC soit sr?
HMAC est construite partir dune fonction de compression rsistante aux collisions h(k,y). Il a t montr par Bellare (2006) que si h(k,.), lorsque k est gnre alatoirement, est une fonction pseudo-alatoire, alors HMAC est une fonction pseudo-alatoire. Si HMAC est une fonction PA, alors elle se comporte comme le premier exemple vu, qui nous donnait un CAM inconditionnellement sr.
vendredi 24 janvier 14
Scurit de HMAC
La rsistance aux collisions est-elle ncessaire pour que HMAC soit sr?
HMAC est construite partir dune fonction de compression rsistante aux collisions h(k,y). Il a t montr par Bellare (2006) que si h(k,.), lorsque k est gnre alatoirement, est une fonction pseudo-alatoire, alors HMAC est une fonction pseudo-alatoire. Si HMAC est une fonction PA, alors elle se comporte comme le premier exemple vu, qui nous donnait un CAM inconditionnellement sr. Cest--dire que HMAC est sre contre les adversaires qui fonctionnent en temps polynomial par rapport la taille de lentre.
vendredi 24 janvier 14
Scurit de HMAC
La rsistance aux collisions est-elle ncessaire pour que HMAC soit sr?
HMAC est construite partir dune fonction de compression rsistante aux collisions h(k,y). Il a t montr par Bellare (2006) que si h(k,.), lorsque k est gnre alatoirement, est une fonction pseudo-alatoire, alors HMAC est une fonction pseudo-alatoire. Si HMAC est une fonction PA, alors elle se comporte comme le premier exemple vu, qui nous donnait un CAM inconditionnellement sr. Cest--dire que HMAC est sre contre les adversaires qui fonctionnent en temps polynomial par rapport la taille de lentre. Cette condition sur la fonction de compression est plus faible que la rsistance aux collisions.
vendredi 24 janvier 14
vendredi 24 janvier 14
vendredi 24 janvier 14
vendredi 24 janvier 14
vendredi 24 janvier 14
vendredi 24 janvier 14
faiblesses non
faiblesses non
Attention CBC-MAC
vendredi 24 janvier 14
Attention CBC-MAC
M1
M2
ML
vendredi 24 janvier 14
Attention CBC-MAC
M1
M2
ML
Nous avons dj vu que remplir (padding) le dernier bloc (incomplet) avec des 0 permet de contrefaire des CAM (en retirant ou en ajoutant des 0 la n du message).
vendredi 24 janvier 14
Attention CBC-MAC
M1
M2
ML
Nous avons dj vu que remplir (padding) le dernier bloc (incomplet) avec des 0 permet de contrefaire des CAM (en retirant ou en ajoutant des 0 la n du message). Pour cette raison, il a t suggr de terminer le message par un 1 suivi de sufsamment de 0 pour complter le dernier bloc.
vendredi 24 janvier 14
Attention CBC-MAC
M1
M2
ML
Nous avons dj vu que remplir (padding) le dernier bloc (incomplet) avec des 0 permet de contrefaire des CAM (en retirant ou en ajoutant des 0 la n du message). Pour cette raison, il a t suggr de terminer le message par un 1 suivi de sufsamment de 0 pour complter le dernier bloc. Cette approche permet galement de contrefaire des messages!
vendredi 24 janvier 14
vendredi 24 janvier 14
vendredi 24 janvier 14
vendredi 24 janvier 14
vendredi 24 janvier 14
vendredi 24 janvier 14
vendredi 24 janvier 14
vendredi 24 janvier 14
vendredi 24 janvier 14
vendredi 24 janvier 14
vendredi 24 janvier 14
vendredi 24 janvier 14
Supposons que les blocs de la mthode de chiffrement sont de taille 4: Ce remplissage na pas le problme prcdent.
M1=100101 M2=1001010 M3=10010101
Remplissage avec des 0 M1 M2 M3
1001 1001 1001 0100 0100 0101 Il ny a pas de manire de modier la n dun message pour obtenir un autre message avec la mme empreinte. Est-ce que ceci signie que cette mthode est sre?
vendredi 24 janvier 14
vendredi 24 janvier 14
!
E
t1
vendredi 24 janvier 14
!
E
t1
(M1,t1)
vendredi 24 janvier 14
M2
!
E
t1 K
!
E
t2
(M1,t1)
vendredi 24 janvier 14
M2
0
!
E
t1 K
!
E
t2
(M1,t1)
vendredi 24 janvier 14
M2
0
!
E
t1 K
!
E
t2
(M1,t1)
(M2,t2)
vendredi 24 janvier 14
M1
M2
0
!
E
t1 K
!
E
t2
(M1,t1)
(M2,t2)
vendredi 24 janvier 14
M1
M2 !t1
0
!
E
t1 K
!
E
t2
(M1,t1)
(M2,t2)
vendredi 24 janvier 14
M1
M2 !t1
!
E
t1 K
!
E
t2
(M1,t1)
(M2,t2)
vendredi 24 janvier 14
M1
M2 !t1
!
E
t1 K
!
E
t2
(M1,t1)
(M2,t2)
vendredi 24 janvier 14
M1
M2 !t1
!
E
t1 K
!
E
t2
(M1,t1)
(M2,t2)
M ((M1 || M2!t1),t2)
vendredi 24 janvier 14
M1
M2 !t1
!
E
t1 K
!M2
E
t2
(M1,t1)
(M2,t2)
M ((M1 || M2!t1),t2)
vendredi 24 janvier 14
M1
M2 !t1
!
E
t1 K
!M2
E
t2
(M1,t1)
(M2,t2)
M ((M1 || M2!t1),t2)
OK!!
vendredi 24 janvier 14
M1
M2 !t1
!
E
t1 K
!M2
E
t2
Ces contrefaons (souvent appeles couper-coller) sont dangereuses contre peu prs tous les remplissages. Cest pourquoi le type 3 vu prcdemment est utilis (c.--d. celui avec la taille de M au dbut).
(M1,t1)
(M2,t2)
M ((M1 || M2!t1),t2)
OK!!
vendredi 24 janvier 14
Scurit de CBC-MAC
vendredi 24 janvier 14
Scurit de CBC-MAC
CBC-MAC est une mthode considre sre pour la gnration de CAM pour autant que la longueur des messages authentis soit connue et xe.
vendredi 24 janvier 14
Scurit de CBC-MAC
CBC-MAC est une mthode considre sre pour la gnration de CAM pour autant que la longueur des messages authentis soit connue et xe. Cest--dire que si la mthode de chiffrement utilise est sre (selon une certaine dnition formelle), alors il nest pas possible de contrefaire des messages par CBC-MAC.
vendredi 24 janvier 14
Scurit de CBC-MAC
CBC-MAC est une mthode considre sre pour la gnration de CAM pour autant que la longueur des messages authentis soit connue et xe. Cest--dire que si la mthode de chiffrement utilise est sre (selon une certaine dnition formelle), alors il nest pas possible de contrefaire des messages par CBC-MAC. CBC-MAC est beaucoup plus problmatique lorsque la longueur des messages est variable. Pourtant, cette proprit de pouvoir calculer des empreintes pour des messages de toutes les longueurs est trs importante dans la pratique.
vendredi 24 janvier 14
Processus optionnel
vendredi 24 janvier 14
Processus optionnel
Il y plusieurs standards de CBC-MAC utiliss dans la pratique.
vendredi 24 janvier 14
Processus optionnel
Il y plusieurs standards de CBC-MAC utiliss dans la pratique. Ils consistent en la spcication de processus optionnels.
vendredi 24 janvier 14
Processus optionnel
Il y plusieurs standards de CBC-MAC utiliss dans la pratique. Ils consistent en la spcication de processus optionnels. Parmi ces standards, il y a :
vendredi 24 janvier 14
Processus optionnel
Il y plusieurs standards de CBC-MAC utiliss dans la pratique. Ils consistent en la spcication de processus optionnels. Parmi ces standards, il y a : SMAC : CBC-MAC sans fonctionnalit optionnelle.
vendredi 24 janvier 14
Processus optionnel
Il y plusieurs standards de CBC-MAC utiliss dans la pratique. Ils consistent en la spcication de processus optionnels. Parmi ces standards, il y a : SMAC : CBC-MAC sans fonctionnalit optionnelle. EMAC : CBC-MAC avec un chiffrement supplmentaire de lempreinte produite. Ncessite une cl de plus.
vendredi 24 janvier 14
Processus optionnel
Il y plusieurs standards de CBC-MAC utiliss dans la pratique. Ils consistent en la spcication de processus optionnels. Parmi ces standards, il y a : SMAC : CBC-MAC sans fonctionnalit optionnelle. EMAC : CBC-MAC avec un chiffrement supplmentaire de lempreinte produite. Ncessite une cl de plus. ARMAC : Le dernier bloc dchiffr (lempreinte) et ensuite chiffr. Ncessite une cl de plus.
vendredi 24 janvier 14
EMAC
vendredi 24 janvier 14
EMAC
ML
vendredi 24 janvier 14
EMAC
ML
Processus optionnel
vendredi 24 janvier 14
EMAC
ML
vendredi 24 janvier 14
EMAC
ML
vendredi 24 janvier 14
EMAC
ML
Cette construction possde une preuve de scurit avec les remplissages 2) ou 3).
vendredi 24 janvier 14
EMAC
ML
Cette construction possde une preuve de scurit avec les remplissages 2) ou 3). Prfrable pour les chiffrements par blocs avec des cls assez longues.
vendredi 24 janvier 14
EMAC
ML
Cette construction possde une preuve de scurit avec les remplissages 2) ou 3). Prfrable pour les chiffrements par blocs avec des cls assez longues. Pour DES, cette mthode nest pas plus sre que CBC-MAC contre la fouille exhaustive de cls (semblable lattaque contre DES deux cls). La cl peut tre trouve aprs environ 256 oprations pour 112 bits de cls.
vendredi 24 janvier 14
ARMAC
vendredi 24 janvier 14
ARMAC
M2 ML
M1
vendredi 24 janvier 14
ARMAC
M2 ML
M1
K K
D E
vendredi 24 janvier 14
ARMAC
M2 ML
M1
E K Pas de preuve de scurit, mais conu pour tre utilis avec DES.
vendredi 24 janvier 14
ARMAC
M2 ML
M1
E K Pas de preuve de scurit, mais conu pour tre utilis avec DES.
Les attaques pour retrouver la cl semblent beaucoup plus difciles quavec EMAC.
vendredi 24 janvier 14
ARMAC
M2 ML
M1
E K Pas de preuve de scurit, mais conu pour tre utilis avec DES.
Les attaques pour retrouver la cl semblent beaucoup plus difciles quavec EMAC. Trouver la cl avec DES peut tre fait avec le bris de 3DES (2112 chiffrements+2112 de mmoire) ou un bris de DES et 264/2 CAMs valides.
vendredi 24 janvier 14
XCBC
vendredi 24 janvier 14
XCBC
Est diffrent des autres, car il ne peut pas tre dni comme une fonctionnalit optionnelle.
vendredi 24 janvier 14
XCBC
Est diffrent des autres, car il ne peut pas tre dni comme une fonctionnalit optionnelle. Possde une preuve de scurit tant donn un chiffrement sr.
vendredi 24 janvier 14
XCBC
Est diffrent des autres, car il ne peut pas tre dni comme une fonctionnalit optionnelle. Possde une preuve de scurit tant donn un chiffrement sr. Utilise 3 cls : K une cl pour la mthode de chiffrement. Cls K1 et K2 de la longueur des blocs.
vendredi 24 janvier 14
XCBC
Est diffrent des autres, car il ne peut pas tre dni comme une fonctionnalit optionnelle. Possde une preuve de scurit tant donn un chiffrement sr. Utilise 3 cls : K une cl pour la mthode de chiffrement. Cls K1 et K2 de la longueur des blocs. Utilise le remplissage 2) si ncessaire et aucun remplissage sinon.
vendredi 24 janvier 14
XCBC
Est diffrent des autres, car il ne peut pas tre dni comme une fonctionnalit optionnelle. Possde une preuve de scurit tant donn un chiffrement sr. Utilise 3 cls : K une cl pour la mthode de chiffrement. Cls K1 et K2 de la longueur des blocs. Utilise le remplissage 2) si ncessaire et aucun remplissage sinon. Les ambiguts sont limines en utilisant K1 sil y a remplissage et K2 sinon.
vendredi 24 janvier 14
XCBC
Est diffrent des autres, car il ne peut pas tre dni comme une fonctionnalit optionnelle. Possde une preuve de scurit tant donn un chiffrement sr. Utilise 3 cls : K une cl pour la mthode de chiffrement. Cls K1 et K2 de la longueur des blocs. Utilise le remplissage 2) si ncessaire et aucun remplissage sinon. Les ambiguts sont limines en utilisant K1 sil y a remplissage et K2 sinon. Utilise le mme nombre de chiffrements que SMAC, ce qui est optimal.
vendredi 24 janvier 14
XCBC
Est diffrent des autres, car il ne peut pas tre dni comme une fonctionnalit optionnelle. Possde une preuve de scurit tant donn un chiffrement sr. Utilise 3 cls : K une cl pour la mthode de chiffrement. Cls K1 et K2 de la longueur des blocs. Utilise le remplissage 2) si ncessaire et aucun remplissage sinon. Les ambiguts sont limines en utilisant K1 sil y a remplissage et K2 sinon. Utilise le mme nombre de chiffrements que SMAC, ce qui est optimal. Demande cependant une longue cl (384 bits avec AES)!
vendredi 24 janvier 14
K=(K1,K2,K3)
vendredi 24 janvier 14
Variantes de XCBC
vendredi 24 janvier 14
Variantes de XCBC
Il y a deux autres variantes de XCBC qui utilisent moins de cls.
vendredi 24 janvier 14
Variantes de XCBC
Il y a deux autres variantes de XCBC qui utilisent moins de cls. TMAC a une preuve de scurit. Ncessite deux cls (K,K). Les cls K1 et K2 pour XCBC sont calcules partir de K.
vendredi 24 janvier 14
Variantes de XCBC
Il y a deux autres variantes de XCBC qui utilisent moins de cls. TMAC a une preuve de scurit. Ncessite deux cls (K,K). Les cls K1 et K2 pour XCBC sont calcules partir de K. OMAC possde une preuve de scurit et est bas sur TMAC avec seulement une cl K. K dans TMAC est calcul comme K=EK(0n). TMAC est alors utilis avec (K,K).
vendredi 24 janvier 14
Variantes de XCBC
Il y a deux autres variantes de XCBC qui utilisent moins de cls. TMAC a une preuve de scurit. Ncessite deux cls (K,K). Les cls K1 et K2 pour XCBC sont calcules partir de K. OMAC possde une preuve de scurit et est bas sur TMAC avec seulement une cl K. K dans TMAC est calcul comme K=EK(0n). TMAC est alors utilis avec (K,K). OMAC est pressenti pour tre le prochain standard NIST pour lauthentication de messages partir dun chiffre par bloc.
vendredi 24 janvier 14
Chiffrement authenti
vendredi 24 janvier 14
Chiffrement authenti
Il est habituel quune application demande la fois condentialit et intgrit.
vendredi 24 janvier 14
Chiffrement authenti
Il est habituel quune application demande la fois condentialit et intgrit. Il y a plusieurs faons dy parvenir partir dun chiffrement (EK,DK) et dun CAM (SK,VK).
vendredi 24 janvier 14
Chiffrement authenti
Il est habituel quune application demande la fois condentialit et intgrit. Il y a plusieurs faons dy parvenir partir dun chiffrement (EK,DK) et dun CAM (SK,VK). En voici quelques-unes partir du message m :
vendredi 24 janvier 14
Chiffrement authenti
Il est habituel quune application demande la fois condentialit et intgrit. Il y a plusieurs faons dy parvenir partir dun chiffrement (EK,DK) et dun CAM (SK,VK). En voici quelques-unes partir du message m :
Chiffre-et-Authentie : Transmet (c,t) avec c=EK(m) et t=SK(m). Le vricateur dchiffre m=DK(c) et vrie VK(m,t).
vendredi 24 janvier 14
Chiffrement authenti
Il est habituel quune application demande la fois condentialit et intgrit. Il y a plusieurs faons dy parvenir partir dun chiffrement (EK,DK) et dun CAM (SK,VK). En voici quelques-unes partir du message m :
Chiffre-et-Authentie : Transmet (c,t) avec c=EK(m) et t=SK(m). Le vricateur dchiffre m=DK(c) et vrie VK(m,t). Authentie-puis-Chiffre : Transmet c avec t=SK(m) et c=EK(m,t). Le vricateur dchiffre (m,t)=DK(c) et vrie VK(m,t). (SSL)
vendredi 24 janvier 14
Chiffrement authenti
Il est habituel quune application demande la fois condentialit et intgrit. Il y a plusieurs faons dy parvenir partir dun chiffrement (EK,DK) et dun CAM (SK,VK). En voici quelques-unes partir du message m :
Chiffre-et-Authentie : Transmet (c,t) avec c=EK(m) et t=SK(m). Le vricateur dchiffre m=DK(c) et vrie VK(m,t). Authentie-puis-Chiffre : Transmet c avec t=SK(m) et c=EK(m,t). Le vricateur dchiffre (m,t)=DK(c) et vrie VK(m,t). (SSL) Chiffre-puis-Authentie : Transmet (c,t) avec c=EK(m) et t=SK(c). Le vricateur dchiffre m=DK(c) et vrie VK(c,t).
vendredi 24 janvier 14
Scurit
vendredi 24 janvier 14
Scurit
Chiffre-et-Authentie nest pas sr quels que soient le CAM et le chiffre. La raison est quun CAM nest pas ncessairement condentiel.
vendredi 24 janvier 14
Scurit
Chiffre-et-Authentie nest pas sr quels que soient le CAM et le chiffre. La raison est quun CAM nest pas ncessairement condentiel. Donc, (c,t) avec c=EK(m) et t=SK(m) peut tre tel que t
donne de linformation sur m!!!!
vendredi 24 janvier 14
Scurit
Chiffre-et-Authentie nest pas sr quels que soient le CAM et le chiffre. La raison est quun CAM nest pas ncessairement condentiel. Donc, (c,t) avec c=EK(m) et t=SK(m) peut tre tel que t
donne de linformation sur m!!!!
vendredi 24 janvier 14
Scurit
Chiffre-et-Authentie nest pas sr quels que soient le CAM et le chiffre. La raison est quun CAM nest pas ncessairement condentiel. Donc, (c,t) avec c=EK(m) et t=SK(m) peut tre tel que t
donne de linformation sur m!!!!
Chiffre-puis-Authentie: Cette mthode fonctionne avec un CAM et un chiffre srs. Pourrait tre moins efcace que le prcdent, mais sr!
vendredi 24 janvier 14
Le standard CCM
vendredi 24 janvier 14
Le standard CCM
Des modes pour des chiffrements authentis ont t proposs partir de chiffres par blocs.
vendredi 24 janvier 14
Le standard CCM
Des modes pour des chiffrements authentis ont t proposs partir de chiffres par blocs. Le standard CCM utilise 2 cls et est de la forme authentie-puis-chiffre. Les cls sont videmment des cls pour le chiffre par blocs.
vendredi 24 janvier 14
Le standard CCM
Des modes pour des chiffrements authentis ont t proposs partir de chiffres par blocs. Le standard CCM utilise 2 cls et est de la forme authentie-puis-chiffre. Les cls sont videmment des cls pour le chiffre par blocs. Le standard CCM est utilis dans IPsec et est bas sur lauthentication CBC-MAC et le mode CTR pour le chiffrement.
vendredi 24 janvier 14
Le standard CCM
Des modes pour des chiffrements authentis ont t proposs partir de chiffres par blocs. Le standard CCM utilise 2 cls et est de la forme authentie-puis-chiffre. Les cls sont videmment des cls pour le chiffre par blocs. Le standard CCM est utilis dans IPsec et est bas sur lauthentication CBC-MAC et le mode CTR pour le chiffrement. Possde une preuve de scurit.
vendredi 24 janvier 14
Fonctionnement
vendredi 24 janvier 14
Fonctionnement
Cl=(k,Key)
vendredi 24 janvier 14
Fonctionnement
Cl=(k,Key)
1) CBC-MAC de M=M1,...,ML
vendredi 24 janvier 14
Fonctionnement
Cl=(k,Key)
1) CBC-MAC de M=M1,...,ML
M1
M2
ML
vendredi 24 janvier 14
Fonctionnement
Cl=(k,Key)
1) CBC-MAC de M=M1,...,ML
M1
M2
ML
vendredi 24 janvier 14
Fonctionnement
Cl=(k,Key)
1) CBC-MAC de M=M1,...,ML
M1
M2
ML
vendredi 24 janvier 14
Fonctionnement
Cl=(k,Key)
1) CBC-MAC de M=M1,...,ML
M1
M2
ML
t
Nonce+1 Nonce+2 Nonce+L+1
vendredi 24 janvier 14
Fonctionnement
Cl=(k,Key)
1) CBC-MAC de M=M1,...,ML
M1
M2
ML
t
Nonce+1 Nonce+2 Nonce+L+1
(t,M)=(t,M1,M2,...,ML)
vendredi 24 janvier 14
Fonctionnement
Cl=(k,Key)
1) CBC-MAC de M=M1,...,ML
M1
M2
ML
t
Nonce+1 Nonce+2 Nonce+L+1
(t,M)=(t,M1,M2,...,ML)
C1
vendredi 24 janvier 14
C2
CL+1
Fonctionnement
Cl=(k,Key)
1) CBC-MAC de M=M1,...,ML
M1
M2
ML
t
Nonce+1 Nonce+2 Nonce+L+1
(t,M)=(t,M1,M2,...,ML)
C1
vendredi 24 janvier 14
C2
CL+1
SHA-1
vendredi 24 janvier 14
SHA-1
SHA-1 est une fonction de hachage qui peut servir de hachage cryptographique dans la pratique.
vendredi 24 janvier 14
SHA-1
SHA-1 est une fonction de hachage qui peut servir de hachage cryptographique dans la pratique. SHA-1 produit des empreintes de 160 bits.
vendredi 24 janvier 14
SHA-1
SHA-1 est une fonction de hachage qui peut servir de hachage cryptographique dans la pratique. SHA-1 produit des empreintes de 160 bits. Cest le successeur de SHA-0. SHA-0 a t remplace par le NIST puisquelle tait souponne de contenir des failles permettant de trouver des collisions. Faiblesses releves par le NSA!
vendredi 24 janvier 14
SHA-1
SHA-1 est une fonction de hachage qui peut servir de hachage cryptographique dans la pratique. SHA-1 produit des empreintes de 160 bits. Cest le successeur de SHA-0. SHA-0 a t remplace par le NIST puisquelle tait souponne de contenir des failles permettant de trouver des collisions. Faiblesses releves par le NSA! SHA-1 pourrait aussi avoir des faiblesses caches.
vendredi 24 janvier 14
SHA-1
SHA-1 est une fonction de hachage qui peut servir de hachage cryptographique dans la pratique. SHA-1 produit des empreintes de 160 bits. Cest le successeur de SHA-0. SHA-0 a t remplace par le NIST puisquelle tait souponne de contenir des failles permettant de trouver des collisions. Faiblesses releves par le NSA! SHA-1 pourrait aussi avoir des faiblesses caches. SHA-256 a t propose pour remdier la situation.
vendredi 24 janvier 14
Principe gnral
vendredi 24 janvier 14
Principe gnral
SHA-1 et MD5 sont construites sur le mme principe. Elles invoquent une fonction de compression f(mi,s) qui prend un bloc du message mi et une valeur s pour fournir une empreinte de la taille dsire.
vendredi 24 janvier 14
Principe gnral
SHA-1 et MD5 sont construites sur le mme principe. Elles invoquent une fonction de compression f(mi,s) qui prend un bloc du message mi et une valeur s pour fournir une empreinte de la taille dsire. mi est un bloc du message de 512 bits tandis que s contient 160 bits.
vendredi 24 janvier 14
Principe gnral
SHA-1 et MD5 sont construites sur le mme principe. Elles invoquent une fonction de compression f(mi,s) qui prend un bloc du message mi et une valeur s pour fournir une empreinte de la taille dsire. mi est un bloc du message de 512 bits tandis que s contient 160 bits. Au dpart, le message m est divis en t+1 blocs de 512 bits chacun. Un remplissage de 0 suivi de la longueur de m en binaire est ajout.
vendredi 24 janvier 14
Principe gnral
SHA-1 et MD5 sont construites sur le mme principe. Elles invoquent une fonction de compression f(mi,s) qui prend un bloc du message mi et une valeur s pour fournir une empreinte de la taille dsire. mi est un bloc du message de 512 bits tandis que s contient 160 bits. Au dpart, le message m est divis en t+1 blocs de 512 bits chacun. Un remplissage de 0 suivi de la longueur de m en binaire est ajout. La valeur s0=cste, et pour chaque bloc i=1..t+1 la valeur si=f(mi,si-1) est calcule. La valeur nale est st+1. Soit H la fonction rsultante.
vendredi 24 janvier 14
Principe gnral
SHA-1 et MD5 sont construites sur le mme principe. Elles invoquent une fonction de compression f(mi,s) qui prend un bloc du message mi et une valeur s pour fournir une empreinte de la taille dsire. mi est un bloc du message de 512 bits tandis que s contient 160 bits. Au dpart, le message m est divis en t+1 blocs de 512 bits chacun. Un remplissage de 0 suivi de la longueur de m en binaire est ajout. La valeur s0=cste, et pour chaque bloc i=1..t+1 la valeur si=f(mi,si-1) est calcule. La valeur nale est st+1. Soit H la fonction rsultante. Trouver une collision sur la fonction totale H implique quune collision peut tre trouve pour f.
vendredi 24 janvier 14
Principe gnral
SHA-1 et MD5 sont construites sur le mme principe. Elles invoquent une fonction de compression f(mi,s) qui prend un bloc du message mi et une valeur s pour fournir une empreinte de la taille dsire. mi est un bloc du message de 512 bits tandis que s contient 160 bits. Au dpart, le message m est divis en t+1 blocs de 512 bits chacun. Un remplissage de 0 suivi de la longueur de m en binaire est ajout. La valeur s0=cste, et pour chaque bloc i=1..t+1 la valeur si=f(mi,si-1) est calcule. La valeur nale est st+1. Soit H la fonction rsultante. Trouver une collision sur la fonction totale H implique quune collision peut tre trouve pour f. Sil est difcile de trouver une collision pour f alors il est aussi difcile den trouver une pour H...
vendredi 24 janvier 14
Fonctionnement de SHA-1
vendredi 24 janvier 14
Fonctionnement de SHA-1
vendredi 24 janvier 14
Fonctionnement de SHA-1
160 bits
vendredi 24 janvier 14
Fonctionnement de SHA-1
Au dpart, A,B,C,D,E sont des constantes de 32 bits. F est une fonction non linaire (il y en a 4) et <<<<n indique un dcalage gauche de n positions.
160 bits
vendredi 24 janvier 14
Fonctionnement de SHA-1
Au dpart, A,B,C,D,E sont des constantes de 32 bits. F est une fonction non linaire (il y en a 4) et <<<<n indique un dcalage gauche de n positions. Dbute en ajoutant un 1 la n suivi de 0 et de la longueur du message. Le nombre de 0 permet davoir un multiple de 512 bits. L'algorithme travaille successivement sur les blocs de 512 obtenus.
160 bits
vendredi 24 janvier 14
Fonctionnement de SHA-1
Au dpart, A,B,C,D,E sont des constantes de 32 bits. F est une fonction non linaire (il y en a 4) et <<<<n indique un dcalage gauche de n positions. Dbute en ajoutant un 1 la n suivi de 0 et de la longueur du message. Le nombre de 0 permet davoir un multiple de 512 bits. L'algorithme travaille successivement sur les blocs de 512 obtenus. SHA-1 fonctionne en 80 rondes. La fonction non linaire F applique dpend du numro de squence de la ronde.
160 bits
vendredi 24 janvier 14
Fonctionnement de SHA-1
Au dpart, A,B,C,D,E sont des constantes de 32 bits. F est une fonction non linaire (il y en a 4) et <<<<n indique un dcalage gauche de n positions. Dbute en ajoutant un 1 la n suivi de 0 et de la longueur du message. Le nombre de 0 permet davoir un multiple de 512 bits. L'algorithme travaille successivement sur les blocs de 512 obtenus. SHA-1 fonctionne en 80 rondes. La fonction non linaire F applique dpend du numro de squence de la ronde. Les valeurs A,B,C,D,E sont modies en fonction des 512 bits de lentre courante Wt. Kt est la constante de ronde. Les additions (carres) sont modulo 232.
160 bits
vendredi 24 janvier 14