Está en la página 1de 4

Encriptacin de mensajes usando algebra lineal

En el presente articulo veremos como simples conceptos del algebra lineal los podemos aplicar a la criptografa (esconder mensajes). Un criptograma es un mensaje escrito en un cdigo secreto (la palabra griega kryptos significa oculto). Empezamos asignando un nmero a cada letra del abecedario (con 0 asignado al espacio en blanco), como sigue.

As el mensaje se convierte en una secuencia de nmeros que se parte en matrices fila no codificadas, de n elementos, como ilustra el paso 1. Paso 1: Formando las matrices filas no codificadas Escribir las matrices fila no codificadas de tamao 1x3 para el mensaje MEET ME MONDAY. Solucin. Partiendo el mensaje (incluidos los espacios en blanco, pero ignorando otros signos de puntuacin) en grupos de tres se obtienen las siguientes matrices fila no codificadas:

Hemos usado un espacio en blanco para completar la ltima matriz fila. Para codificar el mensaje, elegimos una matriz invertible A n x n y multiplicamos las matrices fila no codificadas por A por la izquierda. As, se obtienen las matrices fila codificadas, como ilustra el paso 2. Paso 2: Codificacin de un mensaje Usando la matriz de codificacin.

Codificar el mensaje MEET ME MONDAY Solucin. Las matrices fila codificadas son el resultado de multiplicar a la izquierda por A cada una de las matrices fila no codificadas del ejemplo 4.

Por tanto, la secuencia de matrices filas codificadas es

Finalmente, suprimiendo la notacin matricial, queda el siguiente criptograma:

A quien no conozca la matriz A le ser muy difcil descifrar ese criptograma del paso 2. Pero a un receptor autorizado, conocedor de la matriz A, le bastar multiplicar el criptograma A por la matriz A-1 para recuperar el mensaje original. En otras palabras, si

es una matriz 1 X n no codificada, Y = XA es la correspondiente matriz codificada. El receptor puede decodificar Y multiplicando a la derecha por A, con lo que obtendr

El paso 3 se muestra como funciona este mtodo.

Paso 3: Decodificacin de un mensaje Usar la inversa de la matriz

Para decodificar el criptograma

Solucin. En primer lugar, hallamos A por eliminacin de Gauss-Jordan.

Ahora para decodificar el mensaje, lo partimos en grupos de tres para formar las matrices fila codificadas.

Para hallar las matrices fila decodificadas, multiplicamos las codificadas por A (a la derecha).

Por tanto, la secuencia de matrices fila decodificadas es

Y el mensaje

Implementacin: Su implementacin puede realizarse en cualquier lenguaje de programacin, pero de preferencia yo recomendara usar MATLAB, o algn otro lenguaje de procesamiento numrico. Conclusiones: Bueno este artculo funciona muy bien tericamente, pero en la implementacin se va a realizar en una computadora lo cual genera un error de redondeo, ya que la aritmtica usada en una computadora involucra nmeros, con un numero finito de dgitos. En caso que haya nmeros que no se puedan representar con este nmero de dgitos se los representa por el nmero de mquina ms cercano, generando un pequeo margen de error, pero al realizar varias operaciones este margen crece. Bueno el error que se comete en el presente artculo, es en el clculo de la matriz inversa de la matriz de encriptacin, ya que este clculo puede generar fracciones, algunas de las cuales representadas por el nmero de maquina ms cercano generando un error de redondeo, pudiendo por ejemplo ocurrir:

Para evitar este error; una posible solucin sera que la matriz de encriptacin, su inversa y sus nmeros sean solo nmeros enteros (Como se muestra en este articulo). As como este ejemplo nosotros tenemos la capacidad de abstraccin, que a partir de ciertos conocimientos (en este caso matemticos) podemos aplicarlos a algn problema que se nos presente, usemos esa habilidad de abstraccin para aplicarla e investigar en alguna de las reas de ciencias de la computacin. Gracias. Nils Murrugarra Llerena Saquemos adelante C.S. nineil.cs@gmail.com

También podría gustarte