You are on page 1of 7

Problemas de aplicación de matrices:

producto de matrices e inversa por el método de Gauss-Jordan

Probablemente alguno de ustedes haya leído La fortaleza digital, de Dan Brown. Para los que no lo
hayan hecho, les contaré a grandes rasgos de qué trata esta novela, que es una mezcla de novela
policiaca, suspenso y ciencia ficción.

La historia se centra en dos personajes principales, Susan Fletcher y David Becker, que son pareja.
David es un modesto profesor de idiomas de la Universidad de Georgetown. Por su parte, Susan es una
una criptógrafa excepcionalmente buena que trabaja para la Agencia de Seguridad Nacional. Un día la
NSA recibe un mensaje encriptado que no han podido descifrar, ni siquiera con ayuda de la
supercomputadora más poderosa que haya sido fabricada, TRANSLATR. El mensaje fue enviado por
Ensei Tankado, que resulta ser un antiguo empleado de la NSA, que después de muchos años de haber
trabajado para ésta, decide rebelarse contra el sistema oculto de vigilancia al que se somete a la
sociedad sin que alguien sepa que están violando su privacidad. Se sabe que el mensaje le dará acceso a
cualquier ciudadano a la base de datos de la NSA, para que así el poder de la información no esté en
manos de unos cuantos. La clave para descifrar el mensaje está grabada en un anillo que le pertenece a
Tankado, pero nadie sabe donde está.

Ese mismo día David planeaba pedirle matrimonio a Susan, pero un superior le ofrece un trabajo: ir en
busca del anillo de Tankado. Aunque David no tiene idea de la magnitud e importancia de la misión,
acepta ir a Sevilla, donde está el cadáver de Tankado, y aplaza la propuesta que iba a hacerle a Susan.

Las matrices son una herramienta básica para la criptografía, permiten codificar mensajes de una forma
en principio sencilla. Se tiene el mensaje, el cual debe de separarse en grupos de letras, de tal modo que
todos tengan el mismo número de ellas y después se escoge una matriz que servirá para encriptar el
mensaje.

Escogí un mensaje que al final le escribe David a Susan:

Queridísima Susan:
Te quiero
Sin cera,
David

David siempre firmaba sus cartas para Susan con un sin cera, que Susan nunca pudo descifrar por más
que lo intentó.

A continuación le mostraré el procedimiento para encriptar los mensajes.

Primero hay que darle valores a las letras del alfabeto, escogí darle números primos a cada letra.

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
1 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 51 53 57 59 61 67 71 79 83 87 89
Así, el mensaje sin codificar, se escribe de la siguiente forma:

53 67 7 57 19 5 19 59 19 37 1 59 67 59 1 41 61 7 53 67 19 7 57 47 59 19 41 3 7 57 1 5 1 71 19 5

Ahora procederemos a agrupar el mensaje de manera que se obtenga vectores cuyos componentes sean
los números equivalentes a las letras. No hay una restricción sobre el número de elementos que deben
tener los vectores--sólo deben ser los mismos en todos los grupos--, en este caso decidí dividirlo en seis
vectores de seis elementos cada uno, que equivale a escribir el mensaje en grupos de seis letras:

QUERID ISIMAS USANTE QUIERO SINCER ADAVID

α β γ δ ε ζ
Q 53 I 19 U 67 Q 53 S 59 A 1
U 67 S 59 S 59 U 67 I 19 D 5
E 7 I 19 A 1 I 19 N 41 A 1
R 57 M 37 N 41 E 7 C 3 V 71
I 19 A 1 T 61 R 57 E 7 I 19
D 5 S 59 E 7 O 47 R 57 D 5

     
53 19 67 53 59 1
67 59 59 67 19 5
7 19 1 19 41 1
α= β= γ= δ= ε= ζ=
57 37 41 7 3 71
19 1 61 57 7 19
5 59 7 47 57 5

Para codificar el mensaje, se necesita usar una matriz cualquiera que permitirá la transformación del
mensaje. Escogí la siguiente matriz Ω:

 
2 1 1 1 2 0
1 4 0 0 0 1
0 0 6 1 4 5
Ω=
0 5 1 7 0 0
2 0 0 0 8 1
1 4 3 1 1 10

Así, para codificar el mensaje de David, multiplicamos los vectores formados por seis letras, por la
matriz Ω.
    
2 1 1 1 2 0 53 275
1 4 0 0 0 1 67 326
0 0 6 1 4 5 7 200
Ωα = α-1 = =
0 5 1 7 0 0 57 741
2 0 0 0 8 1 19 263
1 4 3 1 1 10 5 468

   
2 1 1 1 2 0 19 155
1 4 0 0 0 1 59 314
0 0 6 1 4 5 19 450
Ωβ = β-1 = =
0 5 1 7 0 0 37 573
2 0 0 0 8 1 1 105
1 4 3 1 1 10 59 940

   
2 1 1 1 2 0 67 357
1 4 0 0 0 1 59 310
0 0 6 1 4 5 1 326
Ω γ = γ-1 = =
0 5 1 7 0 0 41 583
2 0 0 0 8 1 61 629
1 4 3 1 1 10 7 478

   
2 1 1 1 2 0 53 313
1 4 0 0 0 1 67 368
0 0 6 1 4 5 19 584
Ω δ = δ-1 = =
0 5 1 7 0 0 7 403
2 0 0 0 8 1 57 609
1 4 3 1 1 10 47 912

   
2 1 1 1 2 0 59 195
1 4 0 0 0 1 19 192
0 0 6 1 4 5 41 562
Ωε = ε-1 = =
0 5 1 7 0 0 3 157
2 0 0 0 8 1 7 231
1 4 3 1 1 10 57 838

   
2 1 1 1 2 0 1 117
1 4 0 0 0 1 5 26
0 0 6 1 4 5 1 178
Ωζ = ζ-1 = =
0 5 1 7 0 0 71 523
2 0 0 0 8 1 19 159
1 4 3 1 1 10 5 164

Entonces, el mensaje codificado se escribe:


275 326 200 741 263 468 155 314 450 573 105 940 357 310 326 583 629 478 313 368 586 403 609
912 195 192 562 157 231 838 117 26 178 523 159 164

Si queremos descodificar el mensaje, sólo necesitamos multiplicar la inversa Ω, o sea Ω-1, por los
vectores del mensaje codificado. A continuación se obtendrá la matriz inversa de Ω por el método de
Gauss-Jordan.

 
2 1 1 1 2 0 1 0 0 0 0 0
1 4 0 0 0 1 0 1 0 0 0 0
0 0 6 1 4 5 0 0 1 0 0 0
Ω-1 =
0 5 1 7 0 0 0 0 0 1 0 0
2 0 0 0 8 1 0 0 0 0 1 0
1 4 3 1 1 10 0 0 0 0 0 1

 
1 0.5 0.5 0.5 1 0 0.5 0 0 0 0 0
0 3.5 −0.5 −0.5 −1 1 −0.5 1 0 0 0 0
0 0 6 1 4 5 0 0 1 0 0 0
=
0 5 1 7 0 0 0 0 0 1 0 0
0 −1 −1 −1 6 1 −1 0 0 0 1 0
0 3.5 2.5 0.5 0 10 −0.5 0 0 0 0 1

 
1 0 0.5715 0.5715 1.1429 −0.1429 0.5715 −0.1429 0 0 0 0
0 1 −0.1429 −0.1429 −0.2857 0.2857 0−0.1429 0.2857 0 0 0 0
0 0 6 1 4 5 0 0 1 0 0 0
=
0 0 1.7145 7.7145 1.4285 −1.4285 0.7145 −1.4285 0 1 0 0
0 0 −1.1429 −1.1429 5.7143 1.2854 −1.1429 0.2857 0 0 1 0
0 0 3.0002 1.0002 1 9 0.0002 −1 0 0 0 1

 
1 0 0 0.4762 0.7619 −0.6191 0.5715 −0.1429 −0.0953 0 0 0
0 1 0 −0.1191 −0.1904 0.4048 −0.1429 0.2857 0.0238 0 0 0
0 0 1 0.1667 0.6667 0.8333 0 0 0.1667 0 0 0
=
0 0 0 7.4287 0.2854 −2.8572 0.7145 −1.4285 −0.2858 1 0 0
0 0 0 −0.9524 6.4763 2.2378 −1.1429 0.2857 0.1905 0 1 0
0 0 0 0.5001 −1.0002 6.4999 0.0002 −1 −0.5001 0 0 1

 
1 0 0 0 −0.7802 −0.4360 0.5257 −0.0513 −0.0770 −0.0641 0 0
0 1 0 0 −0.1858 0.3590 −0.1814 0.2628 0.0192 0.0160 0 0
0 0 1 0 0.6603 0.8974 −0.0160 0.0321 0.1731 0.0064 0 0
=
0 0 0 1 0.0384 −0.3846 0.0962 −0.1923 −0.0385 0.1346 0 0
0 0 0 0 6.5129 1.8715 −1.0513 0.1026 0.1538 0.1282 1 0
0 0 0 0 −1.0194 6.6922 −0.0479 −0.9038 −0.4808 −0.0673 0 1
 
1 0 0 0 0 −0.2118 0.3998 −0.0390 −0.0591 0.0487 0.1198 0
0 1 0 0 0 0.4124 −0.2114 0.2657 0.0235 0.0197 0.0285 0
0 0 1 0 0 0.7076 0.0906 0.0217 0.1579 −0.0066 −0.1014 0
=
0 0 0 1 0 −0.3956 0.1024 −0.1929 −0.0394 0.1338 −0.0059 0
0 0 0 0 1 0.2874 −0.1614 0.0158 0.0230 0.0197 0.1535 0
0 0 0 0 0 6.9852 −0.2124 −0.8877 −0.4574 −0.0472 0.1565 1

 
0.6259 −0.1456 −0.1370 −0.0831 −0.0996 0.0930
−0.1489 0.3182 0.0506 0.0225 0.0913 −0.0590
0.1121 0.1116 0.2037 −0.0306 −0.1172 −0.1013
=
0.0903 −0.2432 −0.0652 0.1312 0.0030 0.0566
−0.1527 0.0523 0.0424 0.0216 0.1471 −0.0411
−0.0304 −0.1271 −0.0654 −0.0068 0.0224 0.1432

Ahora bien, si queremos descodificar el mensaje, tenemos que hacer el producto de la matriz inversa de
Ω por los vectores codificados:

 
0.6259 −0.1456 −0.1370 −0.0831 −0.0996 0.0930 275
−0.1489 0.3182 0.0506 0.0225 0.0913 −0.0590 326
0.1121 0.1116 0.2037 −0.0306 −0.1172 −0.1013 200
Ω-1 α-1 = α =
0.0903 −0.2432 −0.0652 0.1312 0.0030 0.0566 741
−0.1527 0.0523 0.0424 0.0216 0.1471 −0.0411 263
−0.0304 −0.1271 −0.0654 −0.0068 0.0224 0.1432 468

  
79.2038 Q
85.9781 U
7.0425 E
= =
57.0063 R
18.9954 I
4.9954 D

 
0.6259 −0.1456 −0.1370 −0.0831 −0.0996 0.0930 155
−0.1489 0.3182 0.0506 0.0225 0.0913 −0.0590 314
0.1121 0.1116 0.2037 −0.0306 −0.1172 −0.1013 450
Ω-1β-1 = β =
0.0903 −0.2432 −0.0652 0.1312 0.0030 0.0566 573
−0.1527 0.0523 0.0424 0.0216 0.1471 −0.0411 105
−0.0304 −0.1271 −0.0654 −0.0068 0.0224 0.1432 940
  
29.4498 I
66.6243 S
19.0211 I
= =
36.9883 M
1.0220 A
59.0122 S

 
0.6259 −0.1456 −0.1370 −0.0831 −0.0996 0.0930 357
−0.1489 0.3182 0.0506 0.0225 0.0913 −0.0590 310
0.1121 0.1116 0.2037 −0.0306 −0.1172 −0.1013 326
Ω-1γ-1 = γ = 0.0903 −0.2432 −0.0652 0.1312 0.0030 0.0566 583
−0.1527 0.0523 0.0424 0.0216 0.1471 −0.0411 629
−0.0304 −0.1271 −0.0654 −0.0068 0.0224 0.1432 478

  
67.0066 U
59.0355 S
1.0419 A
= =
41.0213 N
60.9944 T
7.0006 E

 
0.6259 −0.1456 −0.1370 −0.0831 −0.0996 0.0930 313
−0.1489 0.3182 0.0506 0.0225 0.0913 −0.0590 368
0.1121 0.1116 0.2037 −0.0306 −0.1172 −0.1013 584
Ω-1 δ-1 = δ =
0.0903 −0.2432 −0.0652 0.1312 0.0030 0.0566 403
−0.1527 0.0523 0.0424 0.0216 0.1471 −0.0411 609
−0.0304 −0.1271 −0.0654 −0.0068 0.0224 0.1432 912

  
113.6446 Q
110.9035 U
19.0247 I
= =
7.0093 E
57.0184 R
47.0180 O

 
0.6259 −0.1456 −0.1370 −0.0831 −0.0996 0.0930 195
−0.1489 0.3182 0.0506 0.0225 0.0913 −0.0590 192
0.1121 0.1116 0.2037 −0.0306 −0.1172 −0.1013 562
Ω-1ε-1 = ε =
0.0903 −0.2432 −0.0652 0.1312 0.0030 0.0566 157
−0.1527 0.0523 0.0424 0.0216 0.1471 −0.0411 231
−0.0304 −0.1271 −0.0654 −0.0068 0.0224 0.1432 838
  
81.9986 S
35.6769 I
40.9993 N
= =
2.9939 C
7.0234 E
57.0224 R

 
0.6259 −0.1456 −0.1370 −0.0831 −0.0996 0.0930 117
−0.1489 0.3182 0.0506 0.0225 0.0913 −0.0590 26
0.1121 0.1116 0.2037 −0.0306 −0.1172 −0.1013 178
Ω-1 ζ-1= ζ =
0.0903 −0.2432 −0.0652 0.1312 0.0030 0.0566 523
−0.1527 0.0523 0.0424 0.0216 0.1471 −0.0411 159
−0.0304 −0.1271 −0.0654 −0.0068 0.0224 0.1432 164

  
1.0241 A
16.4669 D
1.0241 A
= =
71.0133 V
18.9864 I
4.9874 D

Así hemos descifrado el mensaje de David para Susan, y aunque sin cera sigue siendo una incógnita,
tenemos una pequeña idea de cuán complicada y encantadora es la criptografía. Así que si un día no
tienen nada que hacer, pueden mandarle a quien quieran un mensaje encriptado, ya decidirá cada quién
si también le regalan la matriz para descodificarlo o no. O también les sirve si son paranoicos y quieren
escribir de forma que sólo ustedes puedan saber qué dice lo que escribieron. En fin, como ya hemos
visto, hay una amplia variedad de aplicaciones de matrices que podemos relacionar con la vida
cotidiana.

You might also like