Desde que la humanidad inventó el lenguaje escrito, ha tratado de compartir información de manera secreta. Este es, básicamente, el objetivo de la criptografía, el estudio de las técnicas para proteger las comunicaciones sensibles por medio de encriptación de datos y su posterior descifrado. El cifrado es la transformación de los datos en una forma ilegible, de manera que, incluso aquellos que puedan ver los datos cifrados, no puedan entender la información oculta. El descifrado es el proceso inverso; es la transformación de los datos cifrados de nuevo en una forma comprensible.
Hay algunos conceptos básicos relativos a la criptografía.
- Cifrado: El procedimiento que generará un mensaje ininteligible para el receptor. También se usa para recrear el mensaje original, según el mecanismo de cifrado que se utilice.
- Texto Plano: El mensaje o información que se va a codificar.
- Texto cifrado: El mensaje o información que se obtiene después que se ha utilizado el Cifrado.
¿Cómo funciona este método?
Supongamos que tenemos una matriz invertible A (la matriz de codificación) y un texto que queremos cifrar.
Transformamos el texto a una secuencia de números, dando a cada carácter un valor numérico único; a continuación, formamos una matriz mediante la agrupación de los números en columnas de acuerdo al orden de la matriz A (la cantidad de elementos en cada columna debe ser igual al orden de la matriz). Llamemos a esta matriz B (la matriz plana). Multipliquemos la matriz A por la matriz B:
C = A•B
La matriz C es la matriz cifrada.
Para descifrar el mensaje, sólo debe multiplicarse Inv(A)•C, donde Inv(A) es la matriz inversa de A.
Nótese que:
Inv(A)•C = Inv(A)•A•B = I•B = B
El texto plano original se puede hallar nuevamente tomando la matriz resultante y uniendo sus vectores columna, de manera que formen una secuencia, para luego convertir los números en los caracteres respectivos.
La matriz cifrada C, se puede mostrar como una secuencia de números, uniendo sus vectores columna, de la misma manera que hay que hacer para obtener el texto plano original; pero no se pueden convertir los números a letras utilizando el método anterior, debido a que los números resultantes pueden oscilar en un conjunto numérico más amplio. Si lo prefiere, se puede transformar en un texto asociando los dígitos, el signo de menos y el separador de listas a diferentes caracteres. Es este ejemplo utilizamos sencillas funciones de mapeo para hacer eso.
Indicaciones resumidas.
Asignar un valor numérico a cada letra del alfabeto a
utilizar iniciando en cero
La clave a utilizar debe constar de tantas letras como
se desee siempre que sea posible colocar los equivalentes numéricas de cada una
de ellas en una matriz de NxN
El Mcla se divide en diagramas, trigramas o Ngramas
necesarios, tal que sus equivalentes numéricos sean colocados en matrices de
Nx1
El criptograma se obtiene multiplicando las matrices
K*Mcla, esto es, Cripto(Nx1) = K(NxN) * Mcla(Nx1)
El mensaje en claro se recupera llevando a cabo el
proceso inverso, sólo que en este caso la multiplicación se realizará entre las
matrices correspondientes a y Criptografía.
Bibliografía:
No hay comentarios:
Publicar un comentario