RC4 (Clé privée)
- C'est un chiffrement de flux.
Introduction
L'algorithme RC4 a été pensé par Ron Rivest en 1987 et développé pour la RSA Security. Il est
basé sur les permutations aléatoires, avec des opérations sur des octets.
L'algorithme a une longueur de clé variable (de 1 à 256 octets). Cependant à cause des lois
d'exportation, la clé a souvent une longueur de 40 bits. La clé est utilisée pour initialiser une
"table d'états" de 256 octets. La table d'état est employée pour la génération d'octets pseudo-
aléatoires et ensuite pour produire le flux pseudo-aléatoire avec lequel le texte clair sera
transformé avec l'opération du OU-Exclusif.
Le RC4 est employé dans plusieurs applications commerciales, par exemple dans le protocole
SSL et dans Oracle Secure SQL. Il s'exécute très rapidement dans les logiciels.
Le RC4 au format allégé est appelé ARCFOUR (ARC4).
Algorithme
Chiffrement
Deux étapes sont nécessaires pour le chiffrement : l'initialisation à l'aide de la clé et le
chiffrement du texte clair.
La première étape génère deux tableaux de 256 octets en fonction de la clé : un tableau
K initialisé avec les octets de la clé et un tableau P (appelé table d'états, laquelle sera le flux
appliqué sur le texte clair) initialisé avec les nombres de 0 à 255 permutés pseudo-
aléatoirement selon le tableau K.
Exemples des tableaux (clé de 40 bits)
K = {clé(0),clé(1),clé(2),...,clé(39),clé(0),clé(1),...,clé(39)}
P = {34,55,228,0,...,4}
La deuxième étape consiste aussi en des permutations pour effectuer le chiffrement. À noter
que les additions sont toutes exécutées modulo 256. Le chiffrement est relativement simple :
Algorithme
i = 0
j = 0
Pour chaque octet du texte clair.
Ajouter 1 à i
Ajouter P[i] à j
Permuter P[i] avec P[j]
n = P[i] + P[j]
Retourner le résultat du OU-Exclusif entre P[n] et l'octet du texte.
clair)
Fin Pour
On remarque que le tableau P change à chaque itération en ayant deux éléments permutés
(pour éclater la redondance dans le texte clair).
Déchifffement
Le déchiffrement est exactement l'inverse du chiffrement.
Considérations
Le RC4 est la propriété de la RSA Security, mais la version allégée ARC4 peut être utilisée
légalement. Il est populaire en étant extrêmement rapide (environ dix fois plus rapide que le