sábado, 14 de marzo de 2015

criptografía - criptosistemas simétricos

cifrado por bloques (block cipher en inglés) es una unidad de cifrado de clave simétrica que opera en grupos de bits de longitud fija, llamados bloques, aplicándoles una transformación invariante. Cuando realiza cifrado, una unidad de cifrado por bloques toma un bloque de texto plano o claro como entrada y produce un bloque de igual tamaño de texto cifrado. La transformación exacta es controlada utilizando una segunda entrada — la clave secreta. El descifrado es similar: se ingresan bloques de texto cifrado y se producen bloques de texto plano.- ........................................................:http://es.wikipedia.org/w/index.php?title=Especial:Libro&bookcmd=download&collection_id=911b31a2a5724b166b21186317e27af10ace86b8&writer=rdf2latex&return_to=Cifrado+por+bloques

Este tipo de cifradores, realizan el cifrado por grupos de caracteres llamados bloques, en la actualidad se suele trabajar con grupos de bits debido a que los mensajes a cifrar se codifican a esta forma previamente (utilizando el código ANSII, por ejemplo), es decir que cada algoritmo de cifrado/descifrado procesa un bloque de tamaño n a la vez, produciendo un bloque de tamaño n de salida por cada bloque de entrada. Como ejemplo de este tipo de cifradores están los algoritmos de sustitución monoalfabética poligrámica.
En la figura 2.4.4 se muestra el procedimiento del cifrado por bloques.
Cifrado por bloques :: Figura 2.4.4  
Figura 2.4.4 Cifrado por bloques

El cifrado de bloque utiliza combinaciones complejas basadas en sustituciones y cambios de posición que se regirán por la clave de cifrado. Estos sistemas son más costosos, tanto a nivel de fabricación de dispositivos como a nivel computacional, que los sistemas de cifrado de flujo (generación de la secuencia incluida). Por contra, con claves relativamente cortas, de 128 o 256 bits, ofrecen una seguridad lo bastante buena contra los ataques de fuerza bruta. El funcionamiento del cifrado de bloque tiene diferentes variantes. La más simple es ellibro de códigos electrónico (ECB), que consiste en que la salida correspondiente a un determinado bloque depende de la clave y del propio bloque.
 
En la siguiente figura, se muestra la aplicación del cifrado de bloque con la variante ECB. El mensaje inicial, de 1.019 bits, se debe dividir en bloques. Como el cifrador del ejemplo trabaja con bloques de 300 bits, se necesitan tres bloques: los tres primeros de 300 bits y el último de 119.
 
Ejemplo de aplicación del cifrado de bloque
Aplicación del cifrado de bloque según el ejemplo del texto, en un estado intermedio en el que se está cifrando el segundo bloque de texto
 
Uno de los primeros sistemas utilizados en la informática fue el estándar para el cifrado de datos (DES). Este sistema dividía el mensaje de entrada en bloques de 64 bits y utilizaba una clave de 56 bits. A medida que los ordenadores fueron ganando potencia de cálculo, el sistema DES estaba más cerca de quedar inutilizado porque se podría romper, mediante la fuerza bruta, en un tiempo factible (quizá en unas horas). Así pues, se empezó a utilizar una variante, el triple DES, con claves de 192 bits y que consistía en usar varias veces el DES.






CS-Cipher es un algoritmo de cifrado por bloques inventado por Jacques Stern y Serge Vaudenay en 1998.
El algoritmo utiliza una clave de longitud entre 0 y 128 bits (la longitud debe ser múltiplo de 8). Por defecto el cifrador utiliza 128 bits. Opera sobre bloques de 64 bits utilizando una red de Feistel y está optimizado para trabajar con procesadores de 8 bits.
El CS-Cipher2 es una alternativa del algoritmo por Tom St Denis.

  1. Con clave Sustitución de cifrado

  2. Aquí está un ejemplo rápido de sus notas: La clave ("triunfar" en el ejemplo anterior) se pasa a su programa como parámetro de la línea de comandos. Las letras en la clave no se utilizan en el resto del alfabeto utilizado para el cifrado. El mismo alfabeto se utiliza para decrypytion.
             





  3. Vigenère

  4. La cifra de Vigenère, propuesto por Blaise de Vigenère de la corte de Enrique III de Francia en el siglo XVI, es una sustitución polialfabética basado en el siguiente cuadro:



    Tenga en cuenta que cada fila de la tabla corresponde a una cifra de César. La primera fila es un cambio de 0; el segundo es un cambio de 1; y el último es un cambio de 25. La clave se lee como parámetro de línea de comandos.

    Comenzamos escribiendo la palabra clave, que se repite tantas veces como sea necesario, sobre el mensaje de texto plano. Para obtener el texto cifrado utilizando el cuadro, para cada letra en el texto plano, se encuentra la intersección de la fila dada por la letra palabra clave correspondiente y. La columna dada por la propia carta de texto plano para escoger la letra del texto cifrado desciframiento de un mensaje cifrado es igualmente sencillo. Uno escribe la palabra clave en varias ocasiones por encima del mensaje. Esta vez uno utiliza la letra palabra clave para elegir una columna de la tabla y luego traza abajo de la columna a la fila que contiene la letra del texto cifrado. El índice de la fila es la letra de texto plano.

1 comentario: