Vous êtes sur la page 1sur 5

Aplicaciones del lgebra lineal - DGAO

Criptografa, (del griego os '(criptos), oculto, y (graf), escritura, literalmente


escritura oculta), para la mayora de la gente, se ocupa de mantener la privacidad en las
conversaciones. En efecto, la proteccin de las comunicaciones confidenciales ha sido el nfasis de la
criptografa en gran parte de su historia.
El cifrado o encriptacin es la transformacin de datos a alguna forma ilegible. Su finalidad es asegurar
la privacidad, manteniendo la informacin oculta a cualquiera a quin no ha sido destinada, incluso
para aquellos que pueden ver los datos cifrados. El descifrado o des encriptacin es el reverso de
cifrado; es la transformacin de los datos cifrados, de vuelta en alguna forma inteligible.
El cifrado y descifrado que requieren el uso de cierta informacin secreta, normalmente se conocida
como clave o llave. Dependiendo del mecanismo de cifrado utilizado, la misma clave puede ser usada
tanto para el cifrado y descifrado, mientras que para otros mecanismos, las claves utilizadas para el
cifrado y descifrado pueden ser diferentes.
Los gobiernos de hoy en da utilizan mtodos sofisticados de mensajes de codificacin y decodificacin.
Una de las aplicaciones del lgebra lineal en criptografa la hallamos en un tipo de cdigo, que es
extremadamente difcil de romper, hace uso de una matriz grande para codificar un mensaje. El
receptor del mensaje lo decodifica utilizando la inversa de la matriz. Esta primera matriz se denomina
matriz de codificacin y su inversa se llama la matriz de decodificacin.
El lgebra lineal es fundamental para la codificacin y decodificacin de este tipo, para el cual se
utilizan las siguientes propiedades:
-Si B es una matriz cuadrada de tamao m, entonces la matriz identidad Imxm es el elemento
neutro de modo que:
()() = () =
-Del producto entre una matriz A, y su matriz inversa es igual a la matriz identidad.
()()1 =
Donde A es la matriz de codificacin, y M la matriz que contiene el mensaje, el producto de ambas
matrices dan como resultado a C, la matriz codificada.
()() =
Aplicando las propiedades mencionadas anteriormente:
()1 = ()1 ()() = ()() =
Podemos observar que la decodificacin consiste en multiplicar la matriz codificada por la inversa de la
matriz de codificacin, obteniendo como resultado M que es la matriz que contiene el mensaje.
-Ejemplo 1Supongamos que el mensaje es:

Preprese para negociar


Y la matriz de codificacin es:
3
(0
4

3
1
3

4
1)
4

Aplicaciones del lgebra lineal: Criptografa DGAO

Nosotros asignamos un nmero para cada letra del abecedario, por simplicidad le asignamos su
posicin en el abecedario a cada letra: A es 1, B es 2, C es 3, etctera. Tambin asignamos el nmero 28
al espacio entre dos palabras (ya que en nuestro abecedario existen 27 letras).
c
1 2 3 4


5 6 7

9 10 11 12 13 14 15 16

17 18 19 20 21 22 23 24 25 26 27 28

Por lo tanto el mensaje se convierte en lo siguiente:


P
17

R
19

E
5

P
17

A
1

R
19

E
5

C
3

E
5

P
17

28

A
1

R
19

A
1

N
14

28

E
5

G
7

O
16

C
7

I
9

A
1

R
19

Como estamos usando una matriz de 3 por 3 rompemos el mensaje enumerado anteriormente en una
secuencia de 3 por 1 vectores:
17
(19)
5

17
5
( 1 ) ( 3)
19
5

28
(17)
1

19
(1)
28

14
(5)
7

16
( 7 )
9

1
(19)
28

Tenga en cuenta que era necesario aadir un espacio al final del mensaje para completar el ltimo
vector. Ahora se codifica el mensaje multiplicando cada uno de los vectores anteriores por la matriz de
codificacin. Esto se puede hacer escribiendo los vectores anteriores como columnas de una matriz y
realizar la multiplicacin de la matriz de dicha matriz con la matriz de codificacin de la siguiente
manera:
3
(0
4

3
1
3

4 17
1 ) (19
4
5

17
1
19

5
3
5

28
17
1

19
1
28

14
5
7

16
7
9

1
19)
28

Lo que resulta en la siguiente matriz:


128
( 24
145

130
20
147

44
8
49

139
18
167

172
29
191

85
12
99

105
16
121

172
47 )
173

Las columnas de esta matriz dan el mensaje codificado. Y el mensaje se transmite en la siguiente forma
lineal:
128, 24, 145, 130, 20, 147, 44,8,49, 139,18,167, 172,29,191, 85,12,99, 105,16,121, 172,47,173
Para decodificar el mensaje, el receptor escribe esta cadena como una secuencia de 3 por 1 matrices de
columna y repite la tcnica usando la inversa de la matriz de codificacin.
La inversa de esta matriz de codificacin, la matriz de decodificacin, es:
3
(0
4

3
1
3

4 1
1
1 ) =( 4
4
4

0
4
3

1
3)
3

Por ende para decodificar la matriz, se realiza el siguiente producto:


1
(4
4

0
4
3

1
128
3 ) ( 24
3
145

130
20
147

44
8
49

139
18
167

172
29
191

85
12
99

105
16
121

172
47 )
173

Y se obtiene de nuevo la matriz:

Aplicaciones del lgebra lineal: Criptografa DGAO

17
(19
5

17
1
19

5
3
5

28
17
1

19
1
28

14
5
7

16
7
9

1
19)
28

Las columnas de esta matriz escritas en forma lineal, devuelven el mensaje original.
17
P

19
R

5
E

17
P

1
A

19
R

5
E

3
C

5
E

28

17
P

1
A

19
R

1
A

28

14
N

5
E

7
G

16
O

7
C

9
I

1
A

19
R

28

A este tipo de codificacin/encriptacin/cifrado se le conoce como cifrado Hill, la manera clsica en la


que se conoce es con un mdulo de 26, que representan las letras en el abecedario ingls asignando las
posiciones desde el 0, y asignando el espacio al nmero 26. Como se muestra a continuacin:

c
2 3

9 10 11 12 13 14 15 16

17 18 19 20 21 22 23 24 25 26

Este tipo de encriptacin se encuentra englobada dentro de la criptografa clsica.


Bsicamente el ejemplo anterior es una modificacin de este tipo de cifrado, en donde se us una
diferente asignacin de nmeros a cada letra del abecedario, y aplicado a un abecedario en espaol
(nicamente se incluye la y se inici la asignacin desde el 1).
Podemos observar que mientras ms grande sea el mensaje codificado, es ms difcil descifrarlo
(manualmente). De igual manera si la matriz de codificacin tiene una inversa que no contiene slo
nmeros enteros, la decodificacin del mensaje se hace ms compleja.
Pero Qu pasa con mensajes ms cortos?
Ejemplo 2, Basndonos en el cifrado Hill clsico.
Supongamos que tenemos el siguiente mensaje: CAT que significa gato en ingls.
Y nuestra matriz de codificacin ser:
6
(13
20

24
16
17

1
10)
15

Que en palabras dira algo como GNUYQRBKP.


Como vimos en el ejemplo 1, asignamos los nmeros correspondientes a cada letra de la palabra a
codificar, pero en este caso usando el cifrado Hill clsico, lo que nos dara el siguiente vector:
2
(0)
19
Al codificar obtenemos:
6
(13
20

24
16
17

1
2
31
10) ( 0 ) = (216)
15 19
325

Si utilizamos el mdulo para ver la palabra resultante obtendremos:


31
5
(216) ( 8 ) (26)
325
13

Aplicaciones del lgebra lineal: Criptografa DGAO

Donde asignando 5, 8 y 13 a las letras del abecedario tendremos la palabra FIN. (Si en el mensaje
enviamos las palabras GNUYQRBKP y FIN, cualquiera que leyera el mensaje encriptado no tendra
idea de que hablamos de un gato)
Para des encriptar el mensaje nicamente tenemos que calcular la matriz inversa, y multiplicarla por el
vector que contiene la palabra, pero como la palabra fin, tiene mdulo 26, la matriz inversa que
multiplica la palabra, tambin debe de tener mdulo 26.
6
(13
20
8
(21
21

24
16
17
5
8
12

1 1
8
10) (21
15
21

5
8
12

10
21) (26)
8

210
2
10
5
21) ( 8 ) = (442) ( 0 ) (26)
305
19
8
13

Finalmente se obtiene el resultado de la multiplicacin y usamos el resultado con mdulo 26 para


obtener la siguiente combinacin lineal:
2, 0, 19
Que traducida al abecedario es CAT.
Al ser menos palabras es ms simple decodificar el mensaje, pero si el mensaje es transmitido en
palabras y no en nmeros como en el primer ejemplo, tendramos que hacer uso de la aritmtica
modular.
Un cifrado distinto pudiera hacer la tarea de des encriptar ms difcil, y ms complejo de operar, basado
en los mismos principios de lgebra lineal, pero nicamente cambiando la asignacin de los nmeros a
las letras.
-Ejemplo 3Suponiendo que alguien que intercepta los mensajes descubri que se trata de un cifrado Hill, y sabe
cmo decodificar el mensaje, ya sea en mensajes con letras, o bien en nmeros. Podramos asignar
nmeros distintos a las letras para hacerle la tarea un poco ms difcil.
Por ejemplo, la asignacin en vez de ser nmeros ascendentes, podran ser nmeros primos en orden
ascendente.

2 3 5 7

11 13 17 19 23 29 31 37 41 43 47

53 59 61 67 71 73 79 83

89 97 101 103 107

Si el mensaje es ALGEBRA LINEAL, asignamos los nmeros de manera lineal:


2, 37, 17, 11, 3, 67, 2, 107, 37, 23, 43, 11, 2, 37
Obtendremos la siguiente matriz para el mensaje.
2
(37
17

11
3
67

2
107
37

23
43
11

2
37 )
107

Si la matriz codificacin la asignamos de la palabra CLAVEDECD, que equivale a


5, 37, 2, 83, 11, 7, 11, 5, 7

Aplicaciones del lgebra lineal: Criptografa DGAO

5
(37
2

83
11
7

11
5)
7

Entonces el mensaje codificado sera el producto de la matriz de codificacin y el mensaje:


5
(37
2

83
11
7

2
11
5 ) (37
17
7

11
3
67

2
107
37

23
43
11

2
37 )
107

De lo cual resulta la siguiente matriz.


1413
( 692
326

300
1415
605

4043
1602
816

1728
2459
545

1593
1322)
956

Con esta asignacin de nmeros podemos ver que se requiere de ms dgitos para un mensaje, as como
tambin de operaciones que requieren de mayor tiempo.
La matriz inversa de la matriz de codificacin sera la siguiente.
1
425
12

425
7
( 425

83
5950
13

17850
191

8925

79
5950
131

17850
1508
8925 )

De igual manera como se realiz en los ejemplos anteriores, para decodificar el mensaje se multiplica la
matriz inversa por el mensaje codificado.
1
425
12
425
7
( 425

83
5950
13

17850
191

8925

79
5950
1413
131
( 692

17850
326
1508
8925 )

300
1415
605

4043
1602
816

1728
2459
545

1593
1322)
956

Para obtener la matriz que contiene el mensaje.


2
(37
17

11
3
67

2
107
37

23
43
11

2
37 )
107

Finalmente traducimos el mensaje como en el ejemplo 1, pero usando las asignaciones de este nuevo
cifrado.
2
A

37
L

17
G

11
E

3
B

67
R

2
A

107

37
L

23
I

43
N

11
E

2
A

37
L

107

Vous aimerez peut-être aussi