Les algorithmes de chiffrement célèbres
incluent "DES", "RC4" et "AES". Dans ce qui suit, on va parler seulement des
algorithmes "DES" et "AES".
II.5.1.2.1 Data Encryption Standard « DES
»
DES est un chiffrement par blocs typique - un algorithme qui
convertit un texte en clair de longueur fixe en un texte chiffré de la
même longueur à travers une série d'opérations
complexes. Pour DES, la longueur de bloc est de 64 bits. Dans le même
temps, DES utilise des clés pour personnaliser le processus de
transformation, de sorte que l'algorithme estime que seuls les utilisateurs qui
détiennent la clé utilisée pour le chiffrement peuvent
déchiffrer le texte chiffré. La clé est de 64 bits en
surface, cependant, seuls 56 d'entre eux sont réellement utilisés
pour l'algorithme, et les 8 bits restants peuvent être utilisés
pour la parité et rejetés dans l'algorithme. Par
conséquent, la longueur de clé effective de DES n'est que de 56
bits [60J.
Deux principes de conception de chiffrement par blocs sont
utilisés dans la conception du DES : la confusion et la diffusion, dont
le but est de résister à l'analyse statistique du crypto
système par l'adversaire. Le rôle de la diffusion est d'appliquer
l'influence de chaque texte en clair à plus de bits de texte
chiffré en sortie le plus rapidement possible, afin d'éliminer la
structure statistique du texte en clair dans un grand nombre de textes
chiffrés et de rendre l'influence de chaque clé aussi rapide que
possible. Il y a plus de bits de texte chiffré pour éviter que la
clé ne soit décodée pièce par pièce.
[35]
Le cadre algorithmique du chiffrement DES est le suivant :
Chapitre II Fonctionnement de la blockchain
[36]
Figure II- 5: Structure DES
La vitesse des recherches exhaustives de clés contre
DES après 1990 a commencé à gêner les utilisateurs
de DES. Cependant, les utilisateurs ne voulaient pas remplacer DES car il faut
énormément de temps et d'argent pour changer les algorithmes de
chiffrement qui sont largement adoptés et intégrés dans de
grandes architectures de sécurité. L'approche pragmatique
n'était pas d'abandonner complètement le DES, mais de changer la
manière dont le DES est utilisé. Cela a conduit aux
schémas modifiés de Triple DES.
TDES (ou 3DES) est un algorithme qui
améliore DES. Il utilise trois clés de 64bits pour chiffrer trois
fois les données, et sa sécurité est
améliorée par rapport à l'algorithme DES. Cependant, les
performances de l'algorithme TDES sont bien inférieures à celles
de l'algorithme AES, et son efficacité d'implémentation
logicielle et matérielle n'est pas aussi bonne que l'algorithme AES. En
1999, le National Institute of Standards and Technologie (NIST) a
désigné TDES comme algorithme cryptographique pour la
période de transition. A l'heure actuelle, l'utilisation des algorithmes
TDES diminue, et on prévoit qu'ils seront éventuellement
remplacés par des algorithmes AES.
II.5.1.2.2 Advanced Encryption Standard «
AES »
L'Institut national des normes et de la technologie (NIST) a
travaillé à l'élaboration d'une nouvelle norme de
chiffrement pour sécuriser les informations gouvernementales.
L'organisation en est aux dernières étapes d'un processus ouvert
de sélection d'un ou
Chapitre II Fonctionnement de la blockchain
[37]
plusieurs algorithmes ou formules de brouillage des
données pour la nouvelle norme de chiffrement avancé (AES) et
prévoit de prendre des décisions.
AES est destiné à être un successeur plus
fort et plus efficace de la norme de chiffrement des données triple
(3DES), qui a remplacé le DES vieillissant, qui a été
fissuré en moins de trois jours en juillet 1998.
AES est une nouvelle génération de normes de
chiffrement NIST / FIPS25. Au cours des 30 prochaines années,
il remplacera DES en tant que norme de cryptage de mot de passe commune pour
les entreprises publiques et privées. Le texte chiffré
crypté peut protéger 100 ans de sécurité.
Il est utilisé pour protéger les données
sensibles. Le bloc de données est de 128 bits, et la longueur de la
clé peut être sélectionnée parmi 128/192/256
bits.
Figure II- 6: Structure AES
Le processus de cryptage AES fonctionne sur une matrice 4
× 4 octets. Cette matrice est également appelée «
état » et sa valeur initiale est un bloc de texte en clair. La
taille d'un élément de la matrice est l'un des blocs de texte en
clair. La méthode de chiffrement Rijndael prend en charge des blocs plus
grands et le "numéro de ligne" de sa matrice peut
25 FIPS (Federal
Information Processing Standards) sont des normes annoncées
publiquement développées par le National Institute of Standards
and Technology pour être utilisées dans les systèmes
informatiques par des agences gouvernementales américaines non
militaires et des entrepreneurs gouvernementaux.
Chapitre II Fonctionnement de la blockchain
[38]
être augmenté selon les besoins. Lors du
chiffrement, chaque tour de boucle de chiffrement AES (sauf le dernier tour)
comprend 4 étapes (61] :
§ AddRoundKey : chaque octet de la
matrice est associé à un sous-octet retour alliage de clé
fait (clé année) de l'opérateur OU EXCLUSIF, chaque
sous-clé générée par le système de
génération de clé.
§ SubBytes : Grâce à une
fonction de remplacement non linéaire, chaque octet est remplacé
par un octet correspondant par une table de recherche.
§ ShiftRows : tournez chaque ligne de la
matrice.
§ MixColumns : opérations pour
mélanger complètement les lignes individuelles dans la matrice.
Cette étape utilise une transformation linéaire pour
mélanger les quatre octets de chaque ligne. L'étape MixColumns
est omise dans la dernière boucle de chiffrement et remplacée par
une autre AddRoundKey.
Figure II- 7: Processus du premier tour AES
II.5.1.2.3 Comparaison entre DES et AES
Depuis que l'algorithme DES a été rendu public,
la communauté universitaire a mené des recherches et lancé
des débats acharnés sur sa sécurité et d'autres
aspects. Techniquement, la critique du DES s'est concentrée sur les
domaines suivants (62] :
§ En tant que chiffrement par blocs, l'unité de
chiffrement de DES n'est que binaire 64 bits, ce qui est trop petit pour la
transmission de données, car chaque bloc ne contient que 8
caractères, et certains de ces bits sont également
utilisés pour la parité ou d'autres communications.
§ Le nombre de clés DES est trop court, seulement
56 bits, et les clés utilisées à chaque itération
sont générées récursivement, cette
corrélation réduit inévitablement la
sécurité du système cryptographique. La méthode
pour trouver la clé est devenue possible.
§ Le DES ne peut pas lutter contre la cryptanalyse
différentielle et linéaire.
§
Chapitre II Fonctionnement de la blockchain
[39]
La longueur de clé réelle utilisée par
les utilisateurs DES est de 56 bits et la force de cryptage maximale
théorique est de 256. Pour augmenter la force de chiffrement (telle que
l'augmentation de la longueur de clé) de l'algorithme DES, la surcharge
du système augmente de façon exponentielle. À l'exception
de l'amélioration des fonctions matérielles et de l'augmentation
des fonctions de traitement parallèle, la force de cryptage de
l'algorithme DES ne peut pas être améliorée à partir
de l'algorithme lui-même et de la technologie logicielle.
Par rapport à l'algorithme DES, l'algorithme AES
résout sans aucun doute les problèmes ci-dessus.
L'algorithme AES se manifeste principalement sous les aspects
suivants :
§ Vitesse de calcul rapide.
§ Les besoins en mémoire sont très faibles et
adaptés aux environnements contraints.
§ C'est un chiffrement itératif par blocs, avec
des conceptions de bloc et de longueur de clé flexibles.
§ La norme AES prend en charge une longueur de paquet
variable. La longueur du paquet peut être définie sur n'importe
quel multiple de 32 bits. La valeur minimale est de 128 bits et la valeur
maximale est de 256 bits.
§ La longueur de clé d'AES est supérieure
à celle de DES.
Ci-dessous, nous avons résumé la différence
entre DES et AES [62] :
Chapitre II Fonctionnement de la blockchain
[40]