améliorer les performances du chiffrage à flot synd 1
TRANSCRIPT
![Page 1: Améliorer les performances du chiffrage à flot SYND 1](https://reader036.vdocuments.net/reader036/viewer/2022062511/551d9d92497959293b8c840e/html5/thumbnails/1.jpg)
1
S
Améliorer les performances du
chiffrage à flot SYND
![Page 2: Améliorer les performances du chiffrage à flot SYND 1](https://reader036.vdocuments.net/reader036/viewer/2022062511/551d9d92497959293b8c840e/html5/thumbnails/2.jpg)
2
Sommaire
Principes La méthode actuelle : le SYND La méthode proposée : le XSYND
Sécurité Sécurité théorique Sécurité pratique
Performances
![Page 3: Améliorer les performances du chiffrage à flot SYND 1](https://reader036.vdocuments.net/reader036/viewer/2022062511/551d9d92497959293b8c840e/html5/thumbnails/3.jpg)
3
S
Les principes Le SYND
![Page 4: Améliorer les performances du chiffrage à flot SYND 1](https://reader036.vdocuments.net/reader036/viewer/2022062511/551d9d92497959293b8c840e/html5/thumbnails/4.jpg)
4
Le fonctionnement du SYND
Fonctionnement en trois étapes principales : Étape d’initialisation appelée INI Réalisation d’un cycle Étape finale pour chiffrer le message
![Page 5: Améliorer les performances du chiffrage à flot SYND 1](https://reader036.vdocuments.net/reader036/viewer/2022062511/551d9d92497959293b8c840e/html5/thumbnails/5.jpg)
5
L’initialisation
On utilise : Une clé secrète K de taille r/2 bits Un vecteur initial IV de taille r/2 bits
On applique la fonction Ini pour obtenir e0, un vecteur qui va servir à la première étape de génération du flux La fonction Ini une transformation en trois phases de
Feistel On utilise les fonctions Upd et Out
![Page 6: Améliorer les performances du chiffrage à flot SYND 1](https://reader036.vdocuments.net/reader036/viewer/2022062511/551d9d92497959293b8c840e/html5/thumbnails/6.jpg)
6
Le cycle de génération de flux
À chaque instant t :
Où B est une matrice aléatoire et θ une fonction qui transforme un vecteur de r bits en un mot régulier de longueur n et de poids w.
Et
Où A est une matrice aléatoire
![Page 7: Améliorer les performances du chiffrage à flot SYND 1](https://reader036.vdocuments.net/reader036/viewer/2022062511/551d9d92497959293b8c840e/html5/thumbnails/7.jpg)
7
Chiffrement du message
Dernière étape : On effectue un XOR entre chaque m_i et z_i pour
obtenir les messages chiffrés c_i
![Page 8: Améliorer les performances du chiffrage à flot SYND 1](https://reader036.vdocuments.net/reader036/viewer/2022062511/551d9d92497959293b8c840e/html5/thumbnails/8.jpg)
8
![Page 9: Améliorer les performances du chiffrage à flot SYND 1](https://reader036.vdocuments.net/reader036/viewer/2022062511/551d9d92497959293b8c840e/html5/thumbnails/9.jpg)
9
S
Les principesLa proposition : le XSYND
![Page 10: Améliorer les performances du chiffrage à flot SYND 1](https://reader036.vdocuments.net/reader036/viewer/2022062511/551d9d92497959293b8c840e/html5/thumbnails/10.jpg)
10
Les améliorations
Modification de la fonction Ini qui devient Xini : Deux fonctions d’évaluation au lieu de trois sans
perte de sécurité
Modification des fonctions Upd et Out
![Page 11: Améliorer les performances du chiffrage à flot SYND 1](https://reader036.vdocuments.net/reader036/viewer/2022062511/551d9d92497959293b8c840e/html5/thumbnails/11.jpg)
11
La nouvelle fonction XIni
Toujours la concaténation de K et IV
On applique la nouvelle fonction Upd à ce vecteur que l’on XOR avec K
On applique Out à ce vecteur que l’on XOR avec lui-même pour obtenir e0
![Page 12: Améliorer les performances du chiffrage à flot SYND 1](https://reader036.vdocuments.net/reader036/viewer/2022062511/551d9d92497959293b8c840e/html5/thumbnails/12.jpg)
12
![Page 13: Améliorer les performances du chiffrage à flot SYND 1](https://reader036.vdocuments.net/reader036/viewer/2022062511/551d9d92497959293b8c840e/html5/thumbnails/13.jpg)
13
Les nouvelles fonctions Upd et Out
Basé sur le principe du paradigme randomisation puis combinaison : Découpage d’un vecteur en w blocs de b bits (taille
choisie) On applique une fonction f aléatoire (slide suivant) à
chaque bloc puis on combine
![Page 14: Améliorer les performances du chiffrage à flot SYND 1](https://reader036.vdocuments.net/reader036/viewer/2022062511/551d9d92497959293b8c840e/html5/thumbnails/14.jpg)
14
Les nouvelles fonctions Upd et Out
On divise x en w blocs
On divise la matrice A en w sous-matrices Ai
On prend la xi colonne de la sous-matrice Ai
On fait un XOR de toutes les colonnes ainsi obtenues pour obtenir Upd(x)
![Page 15: Améliorer les performances du chiffrage à flot SYND 1](https://reader036.vdocuments.net/reader036/viewer/2022062511/551d9d92497959293b8c840e/html5/thumbnails/15.jpg)
15
S
SécuritéLa sécurité théorique
![Page 16: Améliorer les performances du chiffrage à flot SYND 1](https://reader036.vdocuments.net/reader036/viewer/2022062511/551d9d92497959293b8c840e/html5/thumbnails/16.jpg)
16
La sécurité théorique
2 étapes à valider : Difficulté à trouver x connaissant Upd(x) et Out(x) Prouver que XSYND est un générateur pseudo-
aléatoire.
![Page 17: Améliorer les performances du chiffrage à flot SYND 1](https://reader036.vdocuments.net/reader036/viewer/2022062511/551d9d92497959293b8c840e/html5/thumbnails/17.jpg)
17
Trouver x - Principe
Construction de A par concaténation de sous-matrices A i
Construction de z à partir de x
Calcul de A . zT
![Page 18: Améliorer les performances du chiffrage à flot SYND 1](https://reader036.vdocuments.net/reader036/viewer/2022062511/551d9d92497959293b8c840e/html5/thumbnails/18.jpg)
18
Exemple
![Page 19: Améliorer les performances du chiffrage à flot SYND 1](https://reader036.vdocuments.net/reader036/viewer/2022062511/551d9d92497959293b8c840e/html5/thumbnails/19.jpg)
19
Trouver x
Trouver x : Revient à trouver z
Problème du syndrome
![Page 20: Améliorer les performances du chiffrage à flot SYND 1](https://reader036.vdocuments.net/reader036/viewer/2022062511/551d9d92497959293b8c840e/html5/thumbnails/20.jpg)
20
XSYND est-il un PRNG ?
Rendre XSYND « non distinguable » Prouver que la fonction g M (z)=M.zT est PR.
Utilisation des théorèmes de Goldreich-Levin Preuve avec théorème 2
![Page 21: Améliorer les performances du chiffrage à flot SYND 1](https://reader036.vdocuments.net/reader036/viewer/2022062511/551d9d92497959293b8c840e/html5/thumbnails/21.jpg)
21
S
SécuritéLa sécurité pratique
![Page 22: Améliorer les performances du chiffrage à flot SYND 1](https://reader036.vdocuments.net/reader036/viewer/2022062511/551d9d92497959293b8c840e/html5/thumbnails/22.jpg)
22
La sécurité pratique
Sécurité face aux attaques Complexité des algorithmes
3 attaques possibles : Attaques par linéarisation Attaques des anniversaires (GBA) Attaque de l’Identification Set Decoding (ISD)
![Page 23: Améliorer les performances du chiffrage à flot SYND 1](https://reader036.vdocuments.net/reader036/viewer/2022062511/551d9d92497959293b8c840e/html5/thumbnails/23.jpg)
23
Rappel de notions
![Page 24: Améliorer les performances du chiffrage à flot SYND 1](https://reader036.vdocuments.net/reader036/viewer/2022062511/551d9d92497959293b8c840e/html5/thumbnails/24.jpg)
24
Attaques par linéarisation
2 types d’attaques intéressantes pour le XSYND : Bellare-Micciancio Saarinen
![Page 25: Améliorer les performances du chiffrage à flot SYND 1](https://reader036.vdocuments.net/reader036/viewer/2022062511/551d9d92497959293b8c840e/html5/thumbnails/25.jpg)
25
L’attaque Bellare-Micciancio
Attaque par préimage contre la fonction de hashage XHASH.
But : trouver z tel que z =XHASH (x)
![Page 26: Améliorer les performances du chiffrage à flot SYND 1](https://reader036.vdocuments.net/reader036/viewer/2022062511/551d9d92497959293b8c840e/html5/thumbnails/26.jpg)
26
L’attaque Saarinen
Attaque contre FSB (fonction de hashage)
But : Réduire le nombre de recherche de collisions ou de préimages
![Page 27: Améliorer les performances du chiffrage à flot SYND 1](https://reader036.vdocuments.net/reader036/viewer/2022062511/551d9d92497959293b8c840e/html5/thumbnails/27.jpg)
27
Attaque de l’anniversaire généralisé
On cherche à trouver des bouts de mots (mots décimaux) de façon à ce qu’ils soient compris dans les listes et qu’un XOR de ceux-ci donne 0 On prend K listes au hasard (par exemple K=4) On construit deux nouvelles listes en faisant un XOR
deux à deux On cherche deux mots tels que le XOR des deux
mots fasse 0 On construit une nouvelle liste avec la composition
de ces deux mots
![Page 28: Améliorer les performances du chiffrage à flot SYND 1](https://reader036.vdocuments.net/reader036/viewer/2022062511/551d9d92497959293b8c840e/html5/thumbnails/28.jpg)
28
Information Set Decoding
L’attaque la plus efficace en général
Le but est de trouver un mot valide de longueur n contenant k positions sans erreur k dimension n longueur du mot
On vérifie ce qui a été trouvé à l’aide de l’élimination gaussienne.
![Page 29: Améliorer les performances du chiffrage à flot SYND 1](https://reader036.vdocuments.net/reader036/viewer/2022062511/551d9d92497959293b8c840e/html5/thumbnails/29.jpg)
29
Récapitulatif sécurité
![Page 30: Améliorer les performances du chiffrage à flot SYND 1](https://reader036.vdocuments.net/reader036/viewer/2022062511/551d9d92497959293b8c840e/html5/thumbnails/30.jpg)
30
S
PerformancesComparaison des performances avec le
SYND
![Page 31: Améliorer les performances du chiffrage à flot SYND 1](https://reader036.vdocuments.net/reader036/viewer/2022062511/551d9d92497959293b8c840e/html5/thumbnails/31.jpg)
31
Comparaison avec le SYND
![Page 32: Améliorer les performances du chiffrage à flot SYND 1](https://reader036.vdocuments.net/reader036/viewer/2022062511/551d9d92497959293b8c840e/html5/thumbnails/32.jpg)
32
Merci de votre attention