Impl´ementation et Analyse d’une White-box du
DES
David Wong Jacques Monin Hugo Bonnin
Universit´e de Bordeaux
2014
A quoi ¸ca sert ?
Base de la cryptographie
Man At The End
.-----------------.
| ATTAQUANT |
| .-----------. |
| | | |
| | PROGRAMME | |
| | | |
| ’-----------’ |
| |...
Exemples
D´efinition
Algorithme DES
Le but est de transformer toutes ces op´erations
Github
DES : www.github.com/mimoo/DES
WHITEBOX-DES : www.github.com/mimoo/whiteboxDES
Partial evaluation
Regrouper le XOR entre le bloc et la cl´e avec l’op´eration de
substitution.
On peut ensuite pr´e-calcu...
Tabularization
Figure 1: Tabularisation
Transformation
D´ecomposition de Matrice
Figure 2: D´ecomposition de Matrice
Input/Output Encoding
Figure 3: Encoding
Concepts secondaires
*********************************************
* state 2 (96 bits) *
*********************************...
Randomization
Mixing Bijection
000000000000000000000000000000010000000000000000000000001000000000000000000000000000000000000000
10000000...
Bypass
On empˆeche l’identification facile des op´erations
On rajoute des bits en entr´ee et en sortie
Combined Function
(P||Q)(inputP||inputQ).
Split-Path Encoding
Entr´ee S-box Sortie
.--------------------.
0011||0010 --> |...| 0011||0010 |...|
|----------------|--...
External Encoding
Appliquer deux bijections `a l’entr´ee et la sortie de DES
Whitebox = E ◦ DES(input) ◦ G
Conclusion
Beaucoup d’effort pour d’autres solutions (API, cl´es publiques)
Taille importante
La non-connaissance des algor...
Prochain SlideShare
Chargement dans…5
×

Whitebox techniques for DES

170 vues

Publié le

intro to the chow et al. techniques for whiteboxing DES

Publié dans : Sciences
0 commentaire
0 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Aucun téléchargement
Vues
Nombre de vues
170
Sur SlideShare
0
Issues des intégrations
0
Intégrations
3
Actions
Partages
0
Téléchargements
2
Commentaires
0
J’aime
0
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

Whitebox techniques for DES

  1. 1. Impl´ementation et Analyse d’une White-box du DES David Wong Jacques Monin Hugo Bonnin Universit´e de Bordeaux 2014
  2. 2. A quoi ¸ca sert ?
  3. 3. Base de la cryptographie
  4. 4. Man At The End .-----------------. | ATTAQUANT | | .-----------. | | | | | | | PROGRAMME | | | | | | | ’-----------’ | | | ’-----------------’
  5. 5. Exemples
  6. 6. D´efinition
  7. 7. Algorithme DES Le but est de transformer toutes ces op´erations
  8. 8. Github DES : www.github.com/mimoo/DES WHITEBOX-DES : www.github.com/mimoo/whiteboxDES
  9. 9. Partial evaluation Regrouper le XOR entre le bloc et la cl´e avec l’op´eration de substitution. On peut ensuite pr´e-calculer toutes les sorties possibles de cette op´eration. Les tables cr´e´ees sont les seules du programme `a ˆetre modifi´ees lorsqu’une nouvelle cl´e est utilis´ee.
  10. 10. Tabularization Figure 1: Tabularisation
  11. 11. Transformation
  12. 12. D´ecomposition de Matrice Figure 2: D´ecomposition de Matrice
  13. 13. Input/Output Encoding Figure 3: Encoding
  14. 14. Concepts secondaires ********************************************* * state 2 (96 bits) * ********************************************* | | | | v v v ... v ????????????????????????????????????????????? | | | ... | v v v v ********************************************* * state 3 (96 bits) * *********************************************
  15. 15. Randomization
  16. 16. Mixing Bijection 000000000000000000000000000000010000000000000000000000001000000000000000000000000000000000000000 100000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000 010000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000 001000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000 000100000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000 000010000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000 000100000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000 000010000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000 000001000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000 000000100000000000000000000000000000000000000000000000000001000000000000000000000000000000000000 000000010000000000000000000000000000000000000000100000000000000000000000000000000000000000000000 G−1 · (G · M1) o`u G · M1
  17. 17. Bypass On empˆeche l’identification facile des op´erations On rajoute des bits en entr´ee et en sortie
  18. 18. Combined Function (P||Q)(inputP||inputQ).
  19. 19. Split-Path Encoding Entr´ee S-box Sortie .--------------------. 0011||0010 --> |...| 0011||0010 |...| |----------------|---| |...| 0001 |...| --> 0001 ’--------------------’ | v .--------------------. 0011||0010 --> |...| 0011||0010 |...| |----------------|---| |...| 0001||xxxx |...| --> 0001||1001 ’--------------------’
  20. 20. External Encoding Appliquer deux bijections `a l’entr´ee et la sortie de DES Whitebox = E ◦ DES(input) ◦ G
  21. 21. Conclusion Beaucoup d’effort pour d’autres solutions (API, cl´es publiques) Taille importante La non-connaissance des algorithmes est “trop” importante. Utilis´e profesionnellement

×