Le chiffrement par blocs

L'idée générale du chiffrement par blocs est la suivante:
  1. Remplacer les caractères par un code binaire (par exemple le code ASCII en base 2). On obtient ainsi une longue chaîne de 0 et de 1.
  2. Découper cette chaîne en blocs de longueur donnée, par exemple 64 bits.
  3. Chiffrer un bloc en l'"additionnant" bit par bit à une clef.
  4. Déplacer certains bits du bloc.
  5. Recommencer éventuellement un certain nombre de fois l'opération 3. On appelle cela une ronde.
  6. Passer au bloc suivant et retourner au point 3 jusqu'à ce que tout le message soit chiffré.

Vous voyez ci-contre le schéma général du DES (Data Encryption Standard), qui fut le chiffrement par blocs le plus utilisé pendant les années 80 et 90.

La plupart des algorithmes de chiffrement par blocs utilisés actuellement dans le monde civil sont des réseaux de Feistel. Le tableau ci-dessous indique les algorithmes de chiffrement par blocs les plus connus:

Algorithme Rondes Notes Références

Blowfish

16

Gratuit, non breveté

RC5 16 Breveté par RSA Data Security
DES 16 Clef de 56 bits
  • Cryptographie - Théorie et pratique, par Douglas Stinson, pp. 65-100
  • Cryptographie appliquée, par Bruce Schneier, pp. 281-319
IDEA 8 Actuellement exploité par Mediacrypt AG, qui appartient à 50 % à Ascom et à 50 % au groupe Kudelski.
TDES 48 Triple DES. Applique 3 fois le DES à chaque bloc. Clef de 112 bits.

L'étude détaillée de ces algorithmes n'entre pas dans le cadre de ce cours. Le lecteur intéressé pourra consulter les références données dans le tableau ci-dessus.


Références


  Didier Müller, 24.1.21