lunes, 30 de enero de 2017

Algoritmos de cifrado por sustitución.






  
Algoritmos de Sustitución


SUSTITUCIÓN MONOALFABÉTICA


En este tipo de sustitución sólo existe un alfabeto y siempre al texto en claro le va a corresponder el mismo criptograma.


Los métodos cifrado del César, cifrado Atbash, cifrado de Polybios y cifrado Playfair son ejemplos de métodos de cifrado de este tipo.


SUSTITUCIÓN POLIALFABÉTICA


A diferencia de la sustitución monoalfábetica en donde al texto en claro siempre le corresponde el mismo criptograma, en la sustitución polialfabética el criptograma del texto en claro puede ser diferente dependiendo de la clave que se utilice para cifrar, por lo que se dice que existen múltiples alfabetos de cifrado, de ahí el nombre de sustitución polialfabética.

Cifrado del César

Este método consiste en sustituir cada letra del texto original por otra situada tres posiciones delante de ella en el alfabeto que se esté utilizando.


Ejemplo:


MCla: MUCHOS AÑOS DESPUES


Cripto: OXFKRV DQRV GHVSXHV

Cifrado Atbash


Este método consiste en sustituir la primera letra por la última del alfabeto que se esté utilizando, la segunda por la penúltima, la tercera por la antepenúltima y así sucesivamente con todo el alfabeto


A este método también suele llamársele código espejo ya que el cifrado del criptograma es nuevamente el texto en claro.


Ejemplo:


MCla: FRENTE AL PELOTON DE FUSILAMIENTO


Cripto: UIVNGV ZO KVOLGLN WV UFHROZÑRVNGL

Cifrado de Polybios


El cifrado consiste en sustituir cada letra por la pareja de valores correspondientes al renglón y la columna que definen su posición en la matriz.


Por ejemplo la letra E (en la matriz de la izquierda de la figura 2.2.4) está ubicada en el quinto renglón y la primera columna por lo que le corresponde el valor: 51


Ejemplo:


MCla: EL CORONEL HABIA DE RECORDAR


Utilizando la matriz de la siguiente figura:








Cripto: 5123 31533453435123 3211214211 4151 3451315334411134

Cifrado de Playfair



El cifrado de Playfair requiere que se construya una matriz de 5x5 en donde se coloca el alfabeto después de haber colocado una clave.


Por ejemplo utilizando la clave AQUELLA TARDE REMOTA, se deben tener las siguientes consideraciones para la construcción de la matriz: 
La V y W comparten la misma casilla al igual que la Ñ y N, (esta disposición puede variar, de hecho es recomendable que la ñ y la n estén en diferente casilla con el objetivo de que no causen confusión en el mensaje). 
Se comienza poniendo la clave en la matriz (una letra por casilla de izquierda a derecha), si alguna letra se repite en la clave sólo se pone una vez y las demás veces se omite: 




Se verifica cada letra del alfabeto para ver si la tenemos que colocar en la matriz. Por ejemplo verificamos si la A ya está en la matriz y nos damos cuenta de que sí, entonces seguimos con la B, la cual aún no está por lo que la colocamos en la siguiente casilla vacía, se sigue el mismo procedimiento hasta acabar con todas las letras del alfabeto:



El método de cifrado trabaja con dos caracteres (bigrama) a la vez, por lo que el texto en claro se debe descomponer en parejas de dos caractetes. Cada una de las parejas de caracteres obtenidas después de la descomposición se sustituye por otra conforme a las siguientes reglas: 
Si las dos letras se encuentran en el mismo renglón de la matriz antes construida, cada una de ellas se sustituye con la letra que esté a su derecha.
Suponiendo que la pareja del texto en claro es: DO, la nueva pareja es: MT 






En otro caso, la primera letra de la pareja se sustituye por la que este en la intersección de su misma fila y la columna de la segunda letra, la segunda letra se sustituye por la que este en la intersección de su misma fila y la columna de la primera letra.
Suponiendo que la pareja del mensaje en claro es: AH, la nueva pareja es: LB 






Si la pareja está conformada por la misma letra, entonces se debe descomponer dicha pareja en dos nuevas parejas de la siguiente manera: suponiendo que la pareja es AA las nuevas dos parejas son AX y AX. 
Si el número de caracteres del mensaje en claro es impar, se debe agregar una ‘X’ para poder formar todas las parejas. 


En la figura se muestra un ejemplo práctico del cifrado de Playfair:




Cifrado de Alberti


Este cifrado se lleva a cabo con la ayuda del cifrador que se muestra en la figura, ideado por Leon Battista Alberti.



El cifrado se realiza haciendo coincidir una letra del disco exterior con la letra que se desee del disco interior. Esta pareja de caracteres son la clave que tanto emisor y receptor deberán conocer para llevar a cabo el proceso de cifrado/descifrado. El texto en claro se cifra letra por letra haciendo coincidir las letras del mensaje en claro con el disco exterior y sustituyéndolas por las letras correspondientes en el disco interior.


Ejemplo:


Supongamos que la clave para el cifrado es Ti.


Clave: Ti (Se debe entender que la letra i del disco interior se debe hacer coincidir con la T del disco exterior, tal y como se muestra en la figura 2.2.12).


MCla: LO LLEVO A CONOCER


Cripto: oc oozxc d gcfcgzy

Cifrado por desplazamiento


Este método consiste en sustituir cada letra del texto original por otra situada k posiciones delante de ella en el alfabeto que se esté utilizando. Este método es la generalización del cifrado del César ya que ahora el desplazamiento (k) en vez de ser fijo (3 posiciones) puede variar entre el rango: 0 ≤ k < n, en donde n es el número de caracteres del alfabeto. El desplazamiento k es la clave del sistema.


Ejemplo:


Tomando en cuenta la tabla de la figura 2.2.13; para cifrar una letra del texto en claro sólo basta con sumar (módulo el número de caracteres en el alfabeto) el desplazamiento y la posición de la letra del mensaje en claro en el alfabeto y sustituirla por la nueva letra que indique el resultado de la suma:



Clave: Desplazamiento k= 9


MCla: EL HIELO


Cripto: NT PQNTX



Cifrado de Vigenère


Este cifrado consiste en realizar la suma (módulo el número de caracteres en el alfabeto) de la clave y el texto en claro una vez que se ha asignado un valor entero a cada carácter del alfabeto.


Ejemplo:


Considerando los valores numéricos asignados a cada carácter del alfabeto castellano de la tabla mostrada en la figura 2.2.15, el cifrado de Vigenère se realiza tal y como se muestra en la figura:



Clave: ERA


MCla: ENTONCES UNA ALDEA



Cripto: IETSECIK UQR AOUEE


El MCla se recupera realizando la resta (módulo el número de caracteres en el alfabeto) de la clave y el criptograma.


Otra manera de realizar el cifrado de un mensaje con el método de Vigenère es la siguiente:


Se utiliza una clave y una matriz cuadrada que contiene 26 alfabetos distribuidos tal y como muestra la figura:



Ejemplo:


Clave: ERA


MCla: ENTONCES UNA ALDEA 
El cifrado se realiza carácter por carácter, para ello a cada carácter del mensaje en claro se le hace coincidir con un carácter de la clave, si ésta es más corta que el mensaje en claro se repite las veces que sea necesario (figura 2.2.18 a). 
El primer renglón de la matriz corresponde a los caracteres de la clave y la primera columna a los caracteres del mensaje en claro (figura 2.2.18 b). 
El criptograma es aquel carácter que resulte de la intersección del renglón y la columna de donde se encuentren los caracteres de la clave y el mensaje en claro respectivamente : 









El mensaje en claro se recupera haciendo coincidir cada carácter del criptograma con uno de la clave ( y buscando en la columna de la letra de la clave el carácter del criptograma, la primera letra que esté en el renglón de dicho carácter es la letra del mensaje en claro, véase la figura.


Por ejemplo para buscar el MCla que corresponde al criptograma obtenido en el ejercicio anterior:


Cifrado de Vernam


El cifrado de Vernam también llamado máscara desechable es parecido al cifrado de Vigenère solo que aquí la clave es aleatoria y tan larga como el mensaje, además se debe utilizar una sola vez. Claude Shannon en su trabajo “Teoría de las comunicaciones secretas” demostró que estas características hacen que este cifrado sea perfectamente seguro ya que no hay manera de criptoanalizarlo (es matemáticamente complicado).


Ejemplo:


Considerando los valores numéricos asignados a cada carácter del alfabeto castellano de la tabla de la figura 2.2.20, el cifrado de Vernam se realiza de la siguiente manera:



Clave: EDSAS A CETNIEVED


MCla: BARRO Y CAÑABRAVA



Cripto: FDKRH Y EEHNJVVZD


Otra forma de realizar el cifrado de Vernam es realizando la suma módulo 2; para el ejemplo siguiente emplearemos el código ASCII para obtener el equivalente binario de cada carácter :



Ejemplo:


MCla: A LA ORILLA DE







Universidad Nacional Autónoma de México


Facultad de ingeniería


Fundamentos de criptografía


Disponible en: http://redyseguridad.fi-p.unam.mx/proyectos/criptografia/criptografia/index.php/2-tecnicas-clasicas-de-cifrado/22-opereraciones-utilizadas/222-algoritmos-de-sustitucion?showall=&start=1






























No hay comentarios:

Publicar un comentario