Вы находитесь на странице: 1из 13

CIFRADO DE HILL

Docente:
Joselin Montealegre Martínez

Institución Universitaria Politécnico Grancolombiano


Facultad de ingeniería y ciencias básicas
Ingeniería industrial
2019
Tabla de Contenidos II

Introducción .................................................................................................................................... 1
Objetivos ......................................................................................................................................... 2
Marco teorico .................................................................................................................................. 3
Cifrado de Hill ............................................................................................................................ 4
Actividad 1 .................................................................................................................................. 4
Actividad 2 .................................................................................................................................. 6
Resultados y discusión. ................................................................................................................. 10
Lista de referencias ....................................................................................................................... 11
1

Introducción

Desde que el hombre empezó a comunicarse desde su lenguaje mas primitivo

hasta nuestro lenguaje actual, siempre tuvo la necesidad de mantener en secreto cierta

información que no debía ser percibida por ningún otro ser que no estuviera autorizado,

es de allí que comienza la historia de la criptografía, la criptografía es un sistema basado

en el cifrado y descifrado de mensajes con el fin de mantener estos a salvo. El cifrado de

Hill es un procedimiento mediante el cual podemos codificar nuestro mensaje empleando

matrices para lograr dicho objetivo, por otra parte, el descifrado es lo opuesto utilizando

nuestra matriz podremos decodificar nuestro mensaje oculto.


2

Objetivos

 Hallar la matriz inversa para cada una de las matrices clave.

 Ejecutar las diferentes multiplicaciones matriciales para llevar acabo el

cifrado y el descifrado de los mensajes.

 Identificar cuando una matriz es invertible.


3

Marco teórico

Matriz: Conjunto ordenado en una estructura de filas y columnas.

Determinante: Es un escalar que solo se puede calcular si se trata de una matriz

cuadrada.

Cifrado: Procedimiento que emplea un algoritmo con cierta clave para

transformar un mensaje.

Cofactores: Construcción particular útil para calcular tanto el determinante como

la inversa de una matriz cuadrada.

Matriz de cofactores: Matriz formada por todos los cofactores de los elementos

de una matriz.

Matriz adjunta: Es una matriz que se obtiene de trasponer la matriz de

cofactores.

Matriz traspuesta: Se obtiene al convertir las filas de una matriz a columnas o

viceversa.
4

Cifrado de Hill

El cifrado de Hill es un sistema de encriptación que se basa en un método de

sustitución poligráfica en el cual se utiliza una matriz cuadrada invertible K como clave,

este sistema fue inventado por el matemático norteamericano Lester S. Hill en 1929, este

sistema es poli alfabético es decir cada letra puede ser representado en un mismo mensaje

por mas de un carácter, en primer lugar se le asigna un valor numérico a cada letra del

alfabeto, adicional a esto se puede tener en cuenta el espacio “_”, signos de interrogación

entre otros. En el cifrado de Hill se emplea una matriz cuadrada de números A como

clave, esta determina la transformación lineal Y= A∙X donde Y, X son vectores

columnas, A y X se multiplican mediante la multiplicación matricial, y para decodificar

el mensaje se hace uso de la matriz inversa de la matriz clave, este aspecto es importante

para poder decodificar los mensajes, la matriz necesariamente debe ser invertible.

Actividad 1

Utilizando el cifrado de Hill cifrar la palabra DEDICACION empleando la

1 7
matriz clave [ ] y la siguiente asignación numérica donde “_” representa el espacio
0 1

entre palabras o letras.

Lo primero que hicimos fue determinar que trabajaríamos con un modulo de 29

letras y signos, lo cual nos deja que el 29 equivaldría a 0, una vez determinado esto
5

procedemos a separar nuestra palabra de a silabas de dos letras y asignar su

correspondiente valor numérico.

𝐷 3
( )=[ ]
𝐸 4
𝐷 3
( )=[ ]
𝐼 8

𝐶 2
( )=[ ]
𝐴 0

𝐶 2
( )=[ ]
𝐼 8

𝑂 15
( )=[ ]
𝑁 13

Después empleando nuestra matriz clave procedemos a realizar las operaciones

correspondientes para cifrar nuestro mensaje.

1 7 3 1 ∙ 3 + 7 ∙ 4 3 + 28 31 2 𝑪
[ ]∙[ ]= = = [ ] 𝑚𝑜𝑑29 [ ] = ( )
0 1 4 0∙3+1∙4 0+4 4 4 𝑬

Como podemos observar el primer resultado que nos da supera nuestro limite de

letras ya que trabajamos con congruencia modular 29, entonces debemos ajustar ese

resultado a nuestro modulo para eso realizamos la siguiente operación (31 - 29 = 2), este

mismo procedimiento lo realizamos para los resultados que nos den más de 29.

1 7 3 1 ∙ 3 + 7 ∙ 8 3 + 56 59 1 𝑩
[ ]∙[ ]= = = [ ] 𝑚𝑜𝑑29 [ ] = ( )
0 1 8 0∙3+1∙8 0+8 8 8 𝑰

1 7 2 1∙2+7∙0 2+0 2 2 𝑪
[ ]∙[ ]= = = [ ] 𝑚𝑜𝑑29 [ ] = ( )
0 1 0 0∙2+1∙0 0+0 0 0 𝑨

1 7 2 1 ∙ 2 + 7 ∙ 8 2 + 56 58 0 𝑨
[ ]∙[ ]= = = [ ] 𝑚𝑜𝑑29 [ ] = ( )
0 1 8 0∙2+1∙8 0+8 8 8 𝑰

1 7 15 1 ∙ 15 + 7 ∙ 13 15 + 91 106 19 𝑺
[ ]∙[ ]= = =[ ] 𝑚𝑜𝑑29 [ ] = ( )
0 1 13 0 ∙ 15 + 1 ∙ 13 0 + 13 13 13 𝑵
6

Al terminar con nuestras operaciones obtuvimos como resultado el siguiente

mensaje CEBICAAISN.

Actividad 2

Descifrar el siguiente mensaje:

NQÑTIJIQKSSEWNHRÑTYPIWADPHYEVNUHZEMQTEKHJQLLP

9 5 2
Utilizando la siguiente matriz clave [5 4 3]
1 1 1

Para descifrar el mensaje lo primero que debemos hacer es hallar el determinante

de nuestra matriz con el finde saber si es invertible o no.

9 5 2
[5 4 3]
1 1 1

𝑑𝑒𝑡𝐴 = (9 ∙ 4 ∙ 1 + 5 ∙ 3 ∙ 1 + 2 ∙ 5 ∙ 1) − (5 ∙ 5 ∙ 1 + 9 ∙ 3 ∙ 1 + 2 ∙ 4 ∙ 1)

𝑑𝑒𝑡𝐴 = (36 + 15 + 10) − (25 + 27 + 8)

𝑑𝑒𝑡𝐴 = 61 − 60

𝑑𝑒𝑡𝐴 = 𝟏

Al realizar el debido proceso para hallar el determinante de nuestra matriz clave

por medio de la ley de sarrus, podemos comprobar que nuestra matriz es invertible ya

que, si determinante es diferente a 0, el paso a seguir es hallar la inversa de nuestra matriz

ya sea por el método de gauss jordan o por medio de determinantes usando una matriz de

cofactores, para este caso la hallaremos por determinantes.

Primero debemos hallar el cofactor correspondiente a cada posición de nuestra

matriz clave:
7

4 3
𝐶11 = (−1)1+1 [ ] = (−1)2 (4 ∙ 1 − 3 ∙ 1) = 1 ∙ 1 = 𝟏
1 1

5 3
𝐶12 = (−1)1+2 [ ] = (−1)3 (5 ∙ 1 − 3 ∙ 1) = (−1) ∙ 2 = −𝟐
1 1

5 4
𝐶13 = (−1)1+3 [ ] = (−1)4 (5 ∙ 1 − 4 ∙ 1) = 1 ∙ 1 = 𝟏
1 1

5 2
𝐶21 = (−1)2+1 [ ] = (−1)3 (5 ∙ 1 − 2 ∙ 1) = (−1) ∙ 3 = −𝟑
1 1

9 2
𝐶22 = (−1)2+2 [ ] = (−1)4 (9 ∙ 1 − 2 ∙ 1) = 1 ∙ 7 = 𝟕
1 1

9 5
𝐶23 = (−1)2+3 [ ] = (−1)5 (9 ∙ 1 − 5 ∙ 1) = (−1) ∙ 4 = −𝟒
1 1

5 2
𝐶31 = (−1)3+1 [ ] = (−1)4 (5 ∙ 3 − 2 ∙ 4) = 1 ∙ 7 = 𝟕
4 3

9 2
𝐶32 = (−1)3+2 [ ] = (−1)5 (9 ∙ 3 − 2 ∙ 5) = (−1) ∙ 17 = −𝟏𝟕
5 3

9 5
𝐶33 = (−1)3+3 [ ] = (−1)6 (9 ∙ 4 − 5 ∙ 5) = 1 ∙ 11 = 𝟏𝟏
5 4

Ahora con los resultados obtenidos procedemos armar la matriz de cofactores y

luego a obtener la matriz adjunta, dicha matriz la obtenemos al trasponer una matriz.

1 −2 1 1 −3 7
𝐴 = [−3 7 −4] al trasponer la matriz obtenemos 𝑎𝑑𝑗 = [−2 7 −17]
7 −17 11 1 −4 11

Por último, procedemos aplicar la siguiente formula con la que obtendremos

nuestra matriz inversa.

1
𝐴−1 = ∙ 𝑎𝑑𝑗𝐴
𝑑𝑒𝑡𝐴

1 1 −3 7
𝐴−1 = ∙ [−2 7 −17]
1
1 −4 11
8

𝟏 −𝟑 𝟕
𝐴−1 = [−𝟐 𝟕 −𝟏𝟕]
𝟏 −𝟒 𝟏𝟏

Ya obtuvimos nuestra matriz inversa la que usaremos para descifrar nuestro

mensaje, para ello primero debemos agrupar nuestro mensaje de a silabas de tres letras.

[𝑁 𝑄 Ñ] [𝑇 𝐼 𝐽 𝐼 𝑄
] [
𝐾
] [
𝑆 𝑆 𝐸 𝑊
] [
𝑁 𝐻
]
13 17 14 20 8 9 8 17 10 19 19 4 23 13 7

[𝑅 Ñ 𝑇] [𝑌 𝑃 𝐼 𝑊
] [
𝐴 𝐷 𝑃 𝐻
] [
𝑌 𝐸
] [
𝑉 𝑁
]
18 14 20 25 16 8 23 0 3 16 7 25 4 22 13

𝑈 𝐻 𝑍 𝐸 𝑀 𝑄 𝑇 𝐸 𝐾 𝐻 𝐽 𝑄 𝐿 𝐿 𝑃
[ ] [ ] [ ] [ ] [ ]
21 7 26 4 12 17 20 4 10 7 9 17 11 11 16

Ahora procedemos a realizar las respectivas operaciones para descifrar el


mensaje.

1 −3 7 13 1 ∙ 13 + (−3) ∙ 17 + 7 ∙ 14 60 2
[−2 7 −17] ∙ [17] = [(−2) ∙ 13 + 7 ∙ 17 + (−17) ∙ 14] = [−145] 𝑚𝑜𝑑29 [ 0 ]
1 −4 11 14 1 ∙ 13 + (−4) ∙ 17 + 11 ∙ 14 99 12

1 −3 7 20 1 ∙ 20 + (−3) ∙ 8 + 7 ∙ 9 59 1
[−2 7 −17] ∙ [ 8 ] = [(−2) ∙ 20 + 7 ∙ 8 + (−17) ∙ 9] = [−137] 𝑚𝑜𝑑29 [8]
1 −4 11 9 1 ∙ 20 + (−4) ∙ 8 + 11 ∙ 9 87 0

1 −3 7 8 1 ∙ 8 + (−3) ∙ 17 + 7 ∙ 10 27 27
[−2 7 −17] ∙ [17] = [(−2) ∙ 8 + 7 ∙ 17 + (−17) ∙ 10] = [−67] 𝑚𝑜𝑑29 [20]
1 −4 11 10 1 ∙ 8 + (−4) ∙ 17 + 11 ∙ 10 50 21

1 −3 7 19 1 ∙ 19 + (−3) ∙ 19 + 7 ∙ 4 −10 19
[−2 7 −17] ∙ [19] = [(−2) ∙ 19 + 7 ∙ 19 + (−17) ∙ 4] = [ 27 ] 𝑚𝑜𝑑29 [27]
1 −4 11 4 1 ∙ 19 + (−4) ∙ 19 + 11 ∙ 4 −13 16

1 −3 7 23 1 ∙ 23 + (−3) ∙ 13 + 7 ∙ 7 33 4
[−2 7 −17] ∙ [13] = [(−2) ∙ 23 + 7 ∙ 13 + (−17) ∙ 7] = [−74] 𝑚𝑜𝑑29 [13]
1 −4 11 7 1 ∙ 23 + (−4) ∙ 13 + 11 ∙ 7 48 19

1 −3 7 18 1 ∙ 18 + (−3) ∙ 14 + 7 ∙ 20 116 0
[−2 7 −17] ∙ [14] = [ (−2) ∙ 18 + 7 ∙ 14 + (−17) ∙ 20] = [−278] 𝑚𝑜𝑑29 [12]
1 −4 11 20 1 ∙ 18 + (−4) ∙ 14 + 11 ∙ 20 182 8
9

1 −3 7 25 1 ∙ 25 + (−3) ∙ 16 + 7 ∙ 8 33 4
[−2 7 −17] ∙ [16] = [(−2) ∙ 25 + 7 ∙ 16 + (−17) ∙ 8] = [−74] 𝑚𝑜𝑑29 [13]
1 −4 11 8 1 ∙ 25 + (−4) ∙ 16 + 11 ∙ 8 49 20

1 −3 7 23 1 ∙ 23 + (−3) ∙ 0 + 7 ∙ 3 44 15
[−2 7 −17] ∙ [ 0 ] = [(−2) ∙ 23 + 7 ∙ 0 + (−17) ∙ 3] = [−97] 𝑚𝑜𝑑29 [19]
1 −4 11 3 1 ∙ 23 + (−4) ∙ 0 + 11 ∙ 3 56 27

1 −3 7 16 1 ∙ 16 + (−3) ∙ 7 + 7 ∙ 25 170 25
[−2 7 −17] ∙ [ 7 ] = [(−2) ∙ 16 + 7 ∙ 7 + (−17) ∙ 25] = [−408] 𝑚𝑜𝑑29 [27]
1 −4 11 25 1 ∙ 16 + (−4) ∙ 7 + 11 ∙ 25 263 2

1 −3 7 4 1 ∙ 4 + (−3) ∙ 22 + 7 ∙ 13 29 0
[−2 7 −17] ∙ [22] = [(−2) ∙ 4 + 7 ∙ 22 + (−17) ∙ 13] = [−75] 𝑚𝑜𝑑29 [12]
1 −4 11 13 1 ∙ 4 + (−4) ∙ 22 + 11 ∙ 13 59 1

1 −3 7 21 1 ∙ 21 + (−3) ∙ 7 + 7 ∙ 26 182 8
[−2 7 −17] ∙ [ 7 ] = [(−2) ∙ 21 + 7 ∙ 7 + (−17) ∙ 26] = [−435] 𝑚𝑜𝑑29 [ 0 ]
1 −4 11 26 1 ∙ 21 + (−4) ∙ 7 + 11 ∙ 26 279 18

1 −3 7 4 1 ∙ 4 + (−3) ∙ 12 + 7 ∙ 17 87 0
[−2 7 −17] ∙ [12] = [(−2) ∙ 4 + 7 ∙ 12 + (−17) ∙ 17] = [−213] 𝑚𝑜𝑑29 [19]
1 −4 11 17 1 ∙ 4 + (−4) ∙ 12 + 11 ∙ 17 143 27

1 −3 7 20 1 ∙ 20 + (−3) ∙ 4 + 7 ∙ 10 78 20
[−2 7 −17] ∙ [ 4 ] = [(−2) ∙ 20 + 7 ∙ 4 + (−17) ∙ 10] = [−182] 𝑚𝑜𝑑29 [21]
1 −4 11 10 1 ∙ 20 + (−4) ∙ 4 + 11 ∙ 10 114 27

1 −3 7 7 1 ∙ 7 + (−3) ∙ 9 + 7 ∙ 17 99 12
[−2 7 −17] ∙ [ 9 ] = [(−2) ∙ 7 + 7 ∙ 9 + (−17) ∙ 17] = [−240] 𝑚𝑜𝑑29 [21]
1 −4 11 17 1 ∙ 7 + (−4) ∙ 9 + 11 ∙ 17 158 13

1 −3 7 11 1 ∙ 11 + (−3) ∙ 11 + 7 ∙ 16 90 3
[−2 7 −17] ∙ [11] = [(−2) ∙ 11 + 7 ∙ 11 + (−17) ∙ 16] = [−217] 𝑚𝑜𝑑29 [15]
1 −4 11 16 1 ∙ 11 + (−4) ∙ 11 + 11 ∙ 16 143 27

Una vez terminadas nuestras respectivas operaciones obtuvimos el siguiente


resultado y descifrado.

CAMBIA_TUS_PENSAMIENTOS_Y_CAMBIARAS_TU_MUNDO
10

Resultados y discusión.

Para poder cifrar mensajes mediante el sistema de Hill, es importante tener claro

que dicho método solo funciona empelando matrices cuadradas y que sean invertibles, de

lo contrario no será posible llevar a cabo el cifrado o descifrado.

Se pueden emplear diferentes tipos de congruencias modulares para cifrar y

descifrar los mensajes, que van desde el modulo 26 en adelante, esto depende de los

caracteres que se vayan a emplear.

Una manera de comprobar si nuestra matriz es invertible, será hallando su

determinante el cual nos debe dar diferente a cero.

Para hallar la matriz inversa es posible emplear diferentes métodos, ya sea

utilizando gauss jordan o por medio de determinantes utilizando una matriz por

cofactores.
11

Lista de referencias

César Tomé, Criptografía con matrices, el cifrado de Hill, recuperado de:


https://culturacientifica.com/2017/01/11/criptografia-matrices-cifrado-hill/

Criptosistema Hill Textos Científicos, recuperado de:


https://www.textoscientificos.com/criptografia/hill

Cifrado de Hill, recuperado de: https://www.youtube.com/watch?v=ZAXkmBq9Zl0

ALGORITMO HILL, recuperado de: http://criptounam2012.blogspot.com/2012/10/algoritmo-


hill.html

Вам также может понравиться