VIGILADA MINEDUCACIÓN
ESCUELA Departamento de Matemáticas
COLOMBIANA
DE INGENIERÍA
Asignatura: Álgebra Lineal
JULIO GARAVITO Taller
Competencias: R2, C2, PA2, RM2
UNIVERSIDAD
Criptografı́a
1. Objetivos
Aplicar los conceptos y propiedades de las operaciones con matrices para lograr el
cifrado y descifrado de mensajes.
2. Enunciado
Criptografı́a es la ciencia de escribir o descifrar claves. A pesar de que esta materia se asocia
frecuentemente con asuntos militares, la criptografı́a llegó a ser una área importante en los
negocios. Las grandes empresas, que procesan enormes cantidades de datos computariza-
dos, deben protegerse constantemente contra lo que se llama “espionaje industrial”, esto es,
el robo de información importante por los competidores.
Actualmente, hay muchas técnicas extremadamente complejas desarrolladas para garan-
tizar la posibilidad de transmitir grandes cantidades de información en forma confidencial.
A esto se llegó después de investigación altamente elaborada hecha por criptógrafos moder-
nos.
En este taller se ilustrará cómo construir y descifrar claves por medio de técnicas elementa-
les sobre matrices y cómo se pueden usar matrices para crear una clave difı́cil de descifrar.
Empezamos asignando a cada letra su lugar en el alfabeto ordenado. Esto nos da la siguiente
asociación:
A B C D E F G H I J K L M N
0 1 2 3 4 5 6 7 8 9 10 11 12 13
(1)
Ñ O P Q R S T U V W X Y Z
14 15 16 17 18 19 20 21 22 23 24 25 26 27
Supóngase que queremos codificar el mensaje
LAS MATRICES SON AMIGABLES
Descomponemos el mensaje en unidades de igual longitud. Si se escogen longitudes de tres
letras, se obtiene
LAS MA TRI CES SO N A MIG ABL ES (2)
El guión bajo ( ) se usa para representar el espacio entre palabras y al final simplemente llena
el espacio. Si usamos nuestro código numérico (1), podemos escribir (2) como un conjunto
de vectores de tres componentes
11 27 20 2 27 13 12 0 4
0 12 18 4 19 27 8 1 19 (3)
19 0 8 19 15 0 6 11 27
Para codificar este mensaje escogemos una matriz A de 3 × 3, invertible y con componentes
en los números enteros, con determinante ±1. Esto asegurará que A−1 también tiene sólo
componentes enteras. Una matriz con tales caracterı́sticas es:
1 2 3
A= 1 1 2
0 1 2
que tiene como inversa
0 1 −1
A −1 = 2 −2 −1
−1 1 1
Para continuar, multiplicamos cada uno de los vectores en (3), a la izquierda, por A. Por
ejemplo,
1 2 3 11 68
1 1 2 0 = 49
0 1 2 19 38
Esto nos da un nuevo conjunto de vectores de tres componentes
68 51 80 67 110 67 46 35 123
49 39 54 44 76 40 32 23 77 (4)
38 12 34 22 49 27 20 23 73
Luego, con el objetivo de representar este mensaje cifrado mediante caracteres de (1) se pro-
cede a hacer reducción módulo 281 a los valores obtenidos de la multiplicación. Obteniendo
ası́:
12 23 24 11 26 11 18 7 11
21 11 26 16 20 12 4 23 21 (5)
10 12 6 22 21 27 20 23 17
Finalmente, usando el código numérico (1), podemos escribir (5) como:
MUKWLMXZGLPVZTULM RETHWWLUQ (6)
Este es el nuevo mensaje codificado, serı́a muy difı́cil de descifrar si no se sabe cuál es la
matriz A. Conociendo A, en cambio, es relativamente sencillo. Empezamos rearreglando los
caracteres en (6) usando (1), separando en grupos de vectores de tres componentes, multi-
plicando por la matriz A−1 y haciendo reducción módulo 28. Ya que, por ejemplo, tenemos
que
0 1 −1 12 11
2 −2 −1 21 = −28
−1 1 1 10 19
el cual reducido módulo 28 es
11 L
0 = A
19 S
Ası́, multiplicando cada uno de los vectores en (5) por A−1 y reduciendo módulo 28 se
obtendrán los vectores (3), que se pueden convertir directamente por medio de (1) en el
mensaje (2). En este contexto, la matriz A se denomina matriz codificadora, y la matriz A−1
recibe el nombre de matriz descodificadora.
1 Elmódulo 28 de un número es el residuo obtenido de la división de dicho número entre 28. Por ejemplo,
el módulo 28 de 30 es 2. En Excel se puede usar la función = residuo (m, 28), este retornará el modulo 28 del
número m.
3. Ejercicios
1. Suponga que una entidad bancaria ha perdido información valiosa, entre ella la ma-
triz codificadora que permite cifrar información confidencial. Algunos empleados del
departamento de informática sostienen que la matriz codificadora es:
EMPLEADO MATRIZ CLAVE
1 1 1 1
−2 0 3 2
Juan
−1 −1 −1 −1
1 −1 0 5
1 3 2
Carolina 3 10 12
4 15 26
3 6
Marı́a
1 2
1 −2 1
Pedro −1 1 −2
1 0 2
a) ¿Cuál es la matriz codificadora?, Justifique su respuesta.
b) Codifique el primer nombre de cada uno de los integrantes del grupo usando la
matriz de codificación del inciso (a).
c) Usando la matriz codificadora del inciso (a) y alguna herramienta tecnológica,
descifre lo siguiente:
GHYF HGMT THMDVJNC MDSGFÑRJF HDCÑHVGXLIVGCNYU
2. Si sabemos que al codificar la palabra DEBE usando una matriz de codificación de
tamaño 2 × 2 se obtiene el mensaje GFKH. Teniendo en cuenta que no fue necesario
hacer uso de módulo 28, ¿Cuál fue la matriz usada para dicha codificación?