Conceptos criptogrcos Sustitucin: Supone el cambio del signicado de los elementos del mensaje, un carcter o letra se modica o sustituye por otro elemento. Trasposicin: Supone una reordenacin de los elementos del mensaje, los caracteres o letras del mensaje se redistribuyen sin modicarse segn las reglas. Conceptos criptogrcos Cifrado simtrico: Tambin llamado criptografa de clave secreta o criptografa de una clave, es un mtodo en el cual se usa una misma clave para cifrar y descifrar mensajes. Cifrado asimtrico: Tambin llamada criptografa de clave pblica o criptografa de dos claves, es un mtodo que usa un par de claves para el envo de mensajes. Una clave es pblica y se puede entregar a cualquier persona, la otra clave es privada y pertenece a un propietario. Cifrado XOR Segn este mtodo, el mensaje cifrado se obtiene a partir de una palabra clave. Se arma una lista con todas las letras del mensaje original y se pone en paralelo con otra lista formada por las letras de la palabra clave repetida tantas veces como sea necesario.Por ejemplo, si la palabra clave es SOL y el mensaje que se quiere enviar es TE HARS RICO, la tabla quedara: Ambas columnas deben ser reemplazadas luego por tiras de bits. Cada letra ser reemplazada por su identicacin en bits. Luego se aplica entre ambas columnas el operador or excluyente conocido como XOR. 37
Un ejemplo de este mtodo es el Atbash, que pone en correspondencia al alfabeto original con el mismo, pero invertido.
A la letra A, que es la primera, se le asigna la Z que es la ltima. A la B, que es la segunda, le asigna la Y, que es la penltima. Y as sucesivamente.
La tabla quedara entonces de la siguiente manera:
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
Z Y X W V U T S R Q P O N M L K J I H G F E D C B A
Por ejemplo, para cifrar la palabra POZO se reemplaza cada letra por su correspondiente en la tabla. Quedando KLAL.
ENCRIPTACIN CON PALABRA CLAVE EN COMPUTADORAS
Segn este mtodo, el mensaje cifrado se obtiene a partir de una palabra clave. Se arma una lista con todas las letras del mensaje original y se pone en paralelo con otra lista formada por las letras de la palabra clave repetida tantas veces como sea necesario. Por ejemplo, si la palabra clave es SOL y el mensaje que se quiere enviar es TE HARS RICO, la tabla quedara:
T S E O H L A S R O A L S S R O I L C S O O
Ambas columnas deben ser reemplazadas luego por tiras de bits. Cada letra ser reemplazada por su identificacin en bits. Luego se aplica entre ambas columnas el operador or excluyente conocido como XOR.
La columna resultante de la operacin, que est en bits, se traduce a smbolos siendo se el mensaje cifrado. El receptor, conociendo la palabra clave, vuelve a armar la tabla con la operacin XOR recuperando de esta manera el mensaje original.
Para el ejemplo vamos a tomar un alfabeto en el que cada letra se representa con cinco bits. Codificaremos la palabra RICO con la palabra clave SOL.
Cifrado XOR La columna resultante de la operacin, que est en bits, se traduce a smbolos siendo se el mensaje cifrado. El receptor, conociendo la palabra clave, vuelve a armar la tabla con la operacin XOR recuperando de esta manera el mensaje original. Ejemplo Para el ejemplo vamos a tomar un alfabeto en el que cada letra se representa con cinco bits. Codicaremos la palabra RICO con la palabra clave SOL. El alfabeto con la representacin en bits que vamos a usar es: 38 El alfabeto con la representacin en bits que vamos a usar es:
A 0 0 0 0 0 P 1 0 0 0 0 B 0 0 0 0 1 Q 1 0 0 0 1 C 0 0 0 1 0 R 1 0 0 1 0 D 0 0 0 1 1 S 1 0 0 1 1 E 0 0 1 0 0 T 1 0 1 0 0 F 0 0 1 0 1 U 1 0 1 0 1 G 0 0 1 1 0 V 1 0 1 1 0 H 0 0 1 1 1 W 1 0 1 1 1 I 0 1 0 0 0 X 1 1 0 0 0 J 0 1 0 0 1 Y 1 1 0 0 1 K 0 1 0 1 0 Z 1 1 0 1 0 L 0 1 0 1 1 * 1 1 0 1 1 M 0 1 1 0 0 # 1 1 1 0 0 N 0 1 1 0 1 & 1 1 1 0 1 0 1 1 1 0 % 1 1 1 1 0 O 0 1 1 1 1 $ 1 1 1 1 1
Tenemos que armar la tabla con los bits de la palabra RICO y de la palabra clave SOL para aplicar el operador XOR.
Segn la tabla, la R en bits es 10010. La I es 01000. Hacemos lo mismo con todas las letras. Luego completamos operando con XOR y queda la siguiente tabla:
XOR
1 0 1 0 0 0 0 0 0 1 0 1 R 0 1 1 S 0 0 0 1 0 1 0 1 1 0 1 1 I 0 1 1 O
Cifrado Tenemos que armar la tabla con los bits de la palabra RICO y de la palabra clave SOL para aplicar el operador XOR. Segn la tabla, la R en bits es 10010. La I es 01000, y as, hacemos lo mismo con todas las letras. Luego completamos operando con XOR y queda la siguiente tabla:
$ ! # # % ! # # # # ! # # ! # ! # & # ! # ' Cifrado Veamos los primeros cinco bits de la columna del medio, son 00001. Observando la tabla del alfabeto vemos que esta cadena de bits representa a la letra B. La segunda cadena de cinco bits que quedo es 00111 que representa a la letra H. Las ultimas dos cadenas representan a la letra J y al smbolo #. La palabra RICO queda entonces encriptada como BHJ#. 38 El alfabeto con la representacin en bits que vamos a usar es:
A 0 0 0 0 0 P 1 0 0 0 0 B 0 0 0 0 1 Q 1 0 0 0 1 C 0 0 0 1 0 R 1 0 0 1 0 D 0 0 0 1 1 S 1 0 0 1 1 E 0 0 1 0 0 T 1 0 1 0 0 F 0 0 1 0 1 U 1 0 1 0 1 G 0 0 1 1 0 V 1 0 1 1 0 H 0 0 1 1 1 W 1 0 1 1 1 I 0 1 0 0 0 X 1 1 0 0 0 J 0 1 0 0 1 Y 1 1 0 0 1 K 0 1 0 1 0 Z 1 1 0 1 0 L 0 1 0 1 1 * 1 1 0 1 1 M 0 1 1 0 0 # 1 1 1 0 0 N 0 1 1 0 1 & 1 1 1 0 1 0 1 1 1 0 % 1 1 1 1 0 O 0 1 1 1 1 $ 1 1 1 1 1
Tenemos que armar la tabla con los bits de la palabra RICO y de la palabra clave SOL para aplicar el operador XOR.
Segn la tabla, la R en bits es 10010. La I es 01000. Hacemos lo mismo con todas las letras. Luego completamos operando con XOR y queda la siguiente tabla:
XOR
1 0 1 0 0 0 0 0 0 1 0 1 R 0 1 1 S 0 0 0 1 0 1 0 1 1 0 1 1 I 0 1 1 O
$ ! # # % ! # # # # ! # # ! # ! # & # ! # ' Descifrado Quien reciba el mensaje deber armar su tabla con la palabra BHJ# para obtener la original. Obtendr la siguiente tabla: Los primeros cinco bits de la columna del medio son 10010 que representan a la letra R. Luego, la cadena 01000 representa la l etra I . Las dos l ti mas cadenas representan las letras C y O. Qued as la palabra RICO, que es justamente la original que estbamos buscando.