Metodo de Hill
Metodo de Hill
Metodo de Hill
http://www.criptored.upm.es/thoth/index.php
Lester Hill fue un matemático neoyorquino que nace en 1891 y fallece a los 70 años en 1961.
Profesor en las universidades de Yale, Princeton, Montana y Hunter College, gran parte de su
investigación la dedica a la criptografía, siendo su aporte más conocido el invento en 1929 del
sistema de cifra que lleva su nombre, basado en operaciones con matrices.
Hill plantea el problema de la cifra como un conjunto de cuatro ecuaciones, cifrando bloques
de cuatro letras.
y1 = 8 x1 + 6 x2 + 9 x3 + 5 x4 mod 26
y2 = 6 x1 + 9 x2 + 5 x3 + 10 x4 mod 26
y3 = 5 x1 + 8 x2 + 4 x3 + 9 x4 mod 26
y4 = 10 x1 + 6 x2 + 11 x3 + 4 x4 mod 26
Donde xi es cada una de las cuatro letras del bloque de texto en claro, yi es el resultado de la
cifra y los valores (8, 6, 9, 5) (6, 9, 5, 10) (5, 8, 4, 9) (10, 6, 11, 4) forman la clave aleatoria K
para cifrar cada bloque de cuatro letras. Para ello utiliza el alfabeto de 26 elementos con las
letras mayúsculas del inglés, pero distribuidas de una manera particular definida por Hill.
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
5 23 2 20 10 15 8 4 18 25 0 16 13 7 3 1 19 6 12 24 21 17 14 22 11 9
Así, el mensaje DELAY OPERATIONS que originalmente usó su creador, vendrá expresado por
estos cuatro vectores: DELA (20 10 16 5), YOPE (11 3 1 20), RATI (6 5 24 18) y ONSU (3 7 12
21), en donde la letra U=21 ha sido usada como relleno. La cifran del primer bloque de cuatro
letras se muestra a continuación:
y1 = 8 x1 + 6 x2 + 9 x3 + 5 x4 mod 26
y1 = (8 x 20) + (6 x 10) + (9 x 16) + (5 x 5) mod 26 = 4 + 8 + 14 + 25 mod 26 = 25; y1 = J
y2 = 6 x1 + 9 x2 + 5 x3 + 10 x4 mod 26
y2 = (6 x 20) + (9 x 10) + (5 x 16) + (10 x 5) mod 26 = 16 + 12 + 2 + 24 mod 26 = 2; y2 = C
y3 = 5 x1 + 8 x2 + 4 x3 + 9 x4 mod 26
y3 = (5 x 20) + (8 x 10) + (4 x 16) + (9 x 5) mod 26 = 22 + 2 + 12 + 19 mod 26 = 3; y3 = O
y4 = 10 x1 + 6 x2 + 11 x3 + 4 x4 mod 26
y4 = (10 x 20) + (6 x 10) + (11 x 16) + (4 x 5) mod 26 = 18 + 8 + 20 + 20 mod 26 = 14; y4 = W
El primer bloque de texto en claro DELA se ha cifrado como JCOW. Finalmente la cifra del
mensaje DELAY OPERATIONS será JCOW ZLVB DVLE QMXC. Para descifrar yi con esta clave y
encontrar los valores xi del mensaje, se usará en este caso otro sistema de cuatro ecuaciones:
x1 = 23 y1 + 20 y2 + 5 y3 + 1 y4 mod 26
x2 = 2 y1 + 11 y2 + 18 y3 + 1 y4 mod 26
x3 = 2 y1 + 20 y2 + 6 y3 + 25 y4 mod 26
x4 = 25 y1 + 2 y2 + 22 y3 + 25 y4 mod 26
y1 1 1
8 6 9 5 x1 x1 23 20 5 y
y
= 6 9 5 10 x2 x2 2 11 18 1 y2
mod 26 =
2
y 5 8 4 9 x mod 26
x3 2 20 6 25 y3
3 3
y 10 6 11 4 x 25 2 22 25
4 4 x4 y4
En otras palabras, para cifrar y descifrar se realizarán dos operaciones matriciales diferentes:
Cifrado: [y] = [k] [x] mod n Descifrado: [x] = [k-1] [y] mod n
La matriz inversa de k en el cuerpo de cifra n, que se escribe k-1 es: k-1 = [adj (k)]T/det k mod n.
La cifra poligrámica de Hill con d caracteres requerirá una matriz clave k que tenga inversa en
ese cuerpo de cifra.
Los valores kij serán números enteros aleatorios que se encuentren dentro del módulo de cifra
n, aunque en general puede ser cualquier número entero.
Como en la ecuación de la inversa aparece la expresión (1/det k), la matriz k deberá cumplir las
siguientes condiciones para que sea válida:
a) No puede ser singular, es decir su determinante no puede ser cero en tanto se
encuentra en el denominador de la ecuación de la matriz inversa.
b) El determinante de k no podrá tener factores en común con el módulo n porque en
ese caso no existiría el inverso en el cuerpo de cifra.