Aller au contenu

Chiffre de Hill

Chiffre ou déchiffre du texte avec une clé matricielle, le classique chiffre polygraphique de l'algèbre linéaire.

Entrée
Sortie

Chiffre de Hill

Le chiffre de Hill, inventé par Lester Hill en 1929, chiffre le texte en traitant les lettres comme des nombres et en multipliant des blocs de ceux-ci par une matrice clé carrée, modulo la taille de l'alphabet. Collez le texte en clair pour le chiffrer, ou le texte chiffré pour le déchiffrer — cet outil fonctionne dans les deux sens avec la même clé.

Choisissez une taille de matrice 2×2 ou 3×3, puis entrez la clé soit comme des nombres bruts (ligne par ligne, séparés par des espaces ou des virgules) soit comme un mot — ses lettres remplissent la matrice dans l'ordre de lecture. La taille de l'alphabet peut être 26 (A–Z uniquement) ou 29, qui ajoute l'espace, le point et le point d'interrogation afin que les courtes phrases conservent leur ponctuation. Les caractères en dehors de l'alphabet choisi sont supprimés, et les lettres accentuées sont d'abord repliées sur leur équivalent simple. Si le nombre de lettres n'est pas un multiple de la taille de la matrice, la lettre de remplissage complète le dernier bloc.

Le déchiffrement nécessite que la matrice clé soit inversible modulo la taille de l'alphabet — son déterminant ne doit partager aucun facteur commun avec 26 (ou 29). Quand ce n'est pas le cas, l'outil explique pourquoi au lieu de retourner du charabia, car une matrice non inversible n'a pas d'inverse unique pour déchiffrer. Activez « Afficher matrice, déterminant et inverse » pour voir exactement comment la clé se résout, ce qui est utile pour vérifier une clé à la main ou suivre un exemple de manuel.

Tout s'exécute localement dans votre navigateur — rien de ce que vous tapez n'est téléchargé nulle part. Copiez le résultat, téléchargez-le en tant que fichier .txt, ou envoyez la sortie directement dans l'entrée pour enchaîner une autre transformation.

FAQ

Comment le chiffre de Hill chiffre-t-il réellement un bloc de lettres?
Chaque lettre devient un nombre (A=0, B=1, …), un bloc de taille fixe est traité comme un vecteur colonne, et ce vecteur est multiplié par la matrice clé modulo la taille de l'alphabet. Les nombres résultants deviennent les lettres de texte chiffré pour ce bloc.
Pourquoi le déchiffrement a-t-il échoué avec une erreur sur le déterminant?
Le déchiffrement a besoin de l'inverse de la matrice clé, qui n'existe que lorsque le déterminant ne partage aucun facteur commun avec la taille de l'alphabet (26 ou 29). Choisissez des valeurs de clé différentes pour que le déterminant soit copremier avec ce nombre.
À quoi sert la lettre de remplissage?
Le chiffre de Hill fonctionne uniquement sur des blocs complets de 2 ou 3 lettres. Si le nombre de lettres de votre texte n'est pas un multiple de la taille de la matrice, la lettre de remplissage complète le dernier bloc — la sortie déchiffrée peut se terminer par une ou deux lettres de remplissage pour la même raison.
Dois-je entrer la clé sous forme de nombres ou de mots?
Les deux fonctionnent. Les nombres vous donnent un contrôle exact sur la matrice; un mot est plus facile à retenir et ses lettres remplissent la matrice ligne par ligne, la lettre de remplissage étant utilisée si le mot est plus court que ce dont la matrice a besoin.
Mon texte est-il téléchargé quelque part?
Non. Le chiffre de Hill s'exécute entièrement dans votre navigateur — votre texte et clé ne quittent jamais votre appareil.