Décodeur de chiffrement Hill

Décryptage Chiffre de Hill avec clé connue ou effectuer une attaque de texte plat connu pour récupérer la matrice de clé.

Texte chiffré
Lettres 0
Texte clair
Taille de la matrice
Matrice clé (K)
det = 9 (mod 26)
Inverse (K−1)
Cliquez sur calculer pour afficher

Valeurs matricielles: 0-25 (A=0, Z=25)

Le déterminant doit être coprime avec 26

Comment fonctionne le chiffrement de Hill

Pour déchiffrer le chiffrement Hill, il faut calculer l'inverse ** de la matrice clé modulo 26**, puis multiplier chaque bloc de chiffrement par l'inverse. La formule est la suivante:

P = (K^-1 x C) mod 26

Cet outil prend en charge deux modes: le déchiffrement standard avec une clé connue, et une attaque known-plaintext qui récupère une clé inconnue à partir de paires de texte simple appariées.

Calcul de la matrice inverse

Exemple 2x2

Pour la matrice clé K = [[3, 3], [2, 5]]:

Étape 1 -- Déterminant: det(K) = (3 x 5) - (3 x 2) = 15 - 6 = 9

Étape 2 -- Inverse modulaire du déterminant: Trouvez x où 9x = 1 (mod 26). Essai: 9 x 3 = 27 = 26 + 1, det^-1 = 3

Étape 3 -- Matrice adjugée: Pour [[a,b],[c,d]], l'adjudant est [[d, -b], [-c, a]]: adj(K) = [[5, -3], [-2, 3]] = [[5, 23], [24, 3]] (mod 26)

Étape 4 -- Multiplier: K^-1 = 3 x [[5, 23], [24, 3]] = [[15, 69], [72, 9]] = [[15, 17], [20, 9]] (mod. 26)

3x3 matrices

Le calcul d'un inverse 3x3 implique l'expansion du cofacteur, neuf calculs du cofacteur et la transposition de l'adjugate -- beaucoup plus complexe que 2x2. Ce décodeur automatise tout le processus. Pour la pratique manuelle, master 2x2 inverse d'abord.

Décryptage

Décryptage "HIAT" avec la clé K = [[3, 3], [2, 5]]:

En utilisant l'inverse K^-1 = [[15, 17], [20, 9]] calculé ci-dessus:

Bloque 1: Chiffres H(7), I(8)

[[15,17],[20,9]] x [7,8] = [15x7+17x8, 20x7+9x8] = [241, 212]

Mod 26: [241 mod 26, 212 mod 26] = [7, 4] = HE

Bloque 2: Chiffres A(0), T(19)

[[15,17],[20,9]] x [0,19] = [15x0+17x19, 20x0+9x19] = [323, 171]

Mod 26: [323 mod 26, 171 mod 26] = [11, 15] = LP

Résultat: HIAT déchiffre vers HELP

Texte connu Attaque

La structure purement linéaire du chiffrement Hill le rend vulnérable à la cryptoanalyse lorsqu'un attaquant possède des paires de caractères simples et de ciphertextes correspondants.

Comment ça marche

Puisque C = K x P (mod 26), un attaquant qui connaît à la fois P et C peut résoudre pour K:

*K = C x P^-1 (mod. 26) *

Taille de la matriceCaractères nécessairesEquations
2x24 (2 blocs)4 équations, 4 inconnues
3x39 (3 blocs)9 équations, 9 inconnues

L'attaque est déterministe -- avec des paires correctes, elle récupère la clé exacte avec une précision de 100%. Ce n'est pas une hypothèse probabiliste; c'est une certitude mathématique découlant de la linéarité du chiffre.

Utilisation de l'outil d'attaque

Passez au mode "Known Plaintext Attack" dans le décodeur ci-dessus:

  1. Saisissez le chiffrement complet que vous souhaitez déchiffrer
  2. Fournir des paires de caractères-ciphertextes (au moins 4 caractères pour 2x2, 9 pour 3x3)
  3. Cliquez sur "Rechercher la clé" pour récupérer la matrice de chiffrement
  4. L'outil déchiffre ensuite automatiquement le message entier

Cette attaque démontre pourquoi le chiffrement Hill, malgré son élégance mathématique, ne peut pas fournir de sécurité contre un adversaire avec même des quantités modestes de texte en clair connu.

Foire aux questions

Comment décryptez-vous le chiffrement de Hill sans la clé ?

Utilisez une attaque connue. Si vous avez au moins des caractères n-carrés correspondant à un texte simple-ciphertext (4 pour 2x2, 9 pour 3x3), vous pouvez récupérer la matrice clé complète en résolvant un système d'équations linéaires. Passez au mode "Known Plaintext Attack" dans le décodeur ci-dessus pour essayer cela automatiquement.

Que faire si la matrice clé n'est pas invertible mod 26?

Si les facteurs de partage déterminant avec 26 (divisible par 2 ou 13), il n'existe pas d'inverse modulaire et le décryptage est impossible avec cette clé. Les déterminants valides du mod 26 sont: 1, 3, 5, 7, 9, 11, 15, 17, 19, 21, 23, 25. Choisissez une matrice clé différente avec un déterminant de coprime.

Puis-je décoder un chiffre 3x3 Hill en ligne ?

Oui. Sélectionnez « 3x3 » comme taille de la matrice, entrez votre matrice clé et le chiffrement, et cliquez sur Décrypter. L'outil calcule automatiquement la matrice inverse 3x3 en utilisant l'expansion du cofacteur et la méthode adjuguée, puis l'applique à chaque bloc de 3 caractères.

Quelle est la formule de déchiffrement du chiffrement de Hill?

P = (K^-1 x C) mod 26, où K^-1 = det(K)^-1 x adj(K) mod 26. La matrice inverse inverse inverse la transformation de chiffrement en « défaire » la multiplication de matrice originale. Voir notre exemple page pour des calculs détaillés.

Outils et Ressources connexes