Contenu du cours
Fondamentaux de la Cybersécurité
Fondamentaux de la Cybersécurité
Algorithme XOR
L'algorithme XOR (ou exclusif) est une méthode de chiffrement simple qui repose sur l'opération XOR, une opération binaire qui produit un résultat basé sur les différences entre les bits correspondants du texte et d'une clé binaire spécifiée. Cet algorithme est symétrique, ce qui signifie qu'il y a une seule clé pour le chiffrement et le déchiffrement.
Qu'est-ce que l'opération XOR ?
L'opération XOR compare chaque paire de bits et renvoie 1 si les bits sont différents et 0 s'ils sont identiques. Représentée par le symbole
⊕
.
XOR offre symétrie et réversibilité, ce qui le rend adapté aux processus de chiffrement et de déchiffrement.
Voici la table de vérité pour l'opération XOR :
A | B | A XOR B |
---|---|---|
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 0 |
Mise en œuvre de l'algorithme
-
Processus de chiffrement : Le processus de chiffrement consiste à appliquer l'opération XOR à chaque bit du texte en clair avec le bit correspondant de la clé. Si les bits sont identiques, le résultat est 0 ; s'ils diffèrent, le résultat est 1. Ce processus est itéré pour chaque bit du texte en clair, produisant le texte chiffré;
-
Processus de déchiffrement : Le déchiffrement est l'image miroir du chiffrement. Appliquer l'opération XOR au texte chiffré avec la même clé utilisée pour le chiffrement permet de restaurer le texte en clair original. L'opération XOR est symétrique ; appliquer XOR deux fois avec la même valeur redonne la valeur initiale;
-
Clés de longueur variable : Dans certaines implémentations de chiffrement basées sur XOR, la longueur de la clé peut différer de celle du texte. Pour pallier cela, la clé est répétée cycliquement pour correspondre à la longueur du texte en clair. Cette répétition assure une opération XOR cohérente tout au long du message, maintenant ainsi l'intégrité de l'algorithme.
Exemple
Créons un exemple simple de chiffrement XOR en utilisant la table de vérité de XOR. Pour simplifier, nous utiliserons un message binaire et une clé binaire.
Message: 1101.
Clé: 1010.
Chiffrement:
Message | Clé | Chiffrement |
---|---|---|
1 | 1 | 0 |
1 | 0 | 1 |
0 | 1 | 1 |
1 | 0 | 1 |
Note
Pour chiffrer des messages textuels, nous devons convertir notre texte au format binaire. Cela peut être fait en utilisant la table ASCII : les caractères sont d'abord encodés en tant que codes numériques, puis ces codes sont convertis en format binaire.
Merci pour vos commentaires !