Recomendado, 2024

La Elección Del Editor

Diferencia entre cifrado de bloque y cifrado de secuencia

El cifrado de bloque y el cifrado de flujo son los métodos utilizados para convertir el texto plano en texto cifrado directamente y pertenecen a la familia de cifrados de clave simétrica.

La principal diferencia entre un cifrado de bloque y un cifrado de flujo es que el cifrado de bloque cifra y desencripta un bloque del texto a la vez. Por otro lado, el cifrado de flujo cifra y descifra el texto tomando un byte del texto a la vez.

Gráfica comparativa

Bases para la comparaciónCifrado de bloqueCifrado de flujo
BASIC
Convierte el texto plano tomando su bloque a la vez.
Convierte el texto tomando un byte del texto plano a la vez.
Complejidad
Diseño simple
Comparativamente complejo
No de bits utilizados
64 Bits o más
8 Bits
Confusión y Difusión
Utiliza tanto la confusión como la difusión.Sólo confía en la confusión
Modos de algoritmo utilizados
BCE (Libro de códigos electrónicos)
CBC (Cipher Block Chaining)
CFB (Cipher Feedback)
OFB (Feedback de salida)
Reversibilidad
Invertir texto cifrado es difícil.
Utiliza XOR para el cifrado que puede revertirse fácilmente al texto simple.
Implementación
Cifrado de Feistel
Vernam Cipher

Definición de cifrado de bloque

Block Cipher toma un mensaje y lo divide en un tamaño fijo de bloques y convierte un bloque del mensaje en un instante. Por ejemplo, tenemos un mensaje en texto simple "STREET_BY_STREET" requerido para ser cifrado. Usando el cifrado bock, "STREET" debe estar cifrado al principio, seguido de "_BY_" y finalmente al final "STREET".
En la práctica real, la comunicación tiene lugar solo en bits. Por lo tanto, STREET en realidad significa el equivalente binario del carácter ASCII de STREET. Posteriormente, cualquier algoritmo encripta estos; los bits resultantes se transforman de nuevo en su equivalente ASCII.

Un problema evidente con respecto al uso de cifrados de bloque es la repetición de texto, para lo cual se genera el mismo cifrado. Por lo tanto, daría una pista al criptoanalista, lo que hace que sea más fácil descubrir las cadenas recurrentes de texto sin formato. Como resultado, puede revelar todo el mensaje.

Para superar este problema se utiliza el modo de encadenamiento . En esta técnica, el bloque de texto de cifrado anterior se mezcla con el bloque actual, por lo que, para el texto de cifrado vago, esto evita los patrones recurrentes de bloques con el mismo contenido.

Definición de Stream Cipher

El cifrado de secuencia generalmente encripta un byte del mensaje en ese momento en lugar de usar bloques. Tomemos un ejemplo, supongamos que el mensaje original (texto plano) es "cielo azul" en ASCII (es decir, formato de texto). Cuando convierte estos ASCII en valores binarios equivalentes, dará la salida en forma de 0 y 1. Que sea traducido en 010111001.

Para el cifrado y descifrado, se utiliza un generador de bits pseudoaleatorios en el que se cargan una clave y texto sin formato. Un generador de bits pseudoaleatorios crea una secuencia de números de 8 bits que aparentemente se conocen como secuencia de teclas . Deje que la clave de entrada sea 100101011. Ahora la clave y el texto sin formato están en XORed. La lógica XOR es simple de entender.
XOR produce una salida de 1 cuando una entrada es 0, y la otra es 1. La salida es 0 si ambas entradas son 0 o ambas entradas son 1.

La confusión es un método que garantiza que un texto cifrado no da ninguna pista sobre el texto plano original.
La difusión es una estrategia utilizada para mejorar la redundancia del texto sin formato mediante su distribución en filas y columnas.

Diferencias clave entre el cifrado de bloque y el cifrado de secuencia

  1. La técnica de cifrado de bloques implica el cifrado de un bloque de texto a la vez, es decir, individualmente. Del mismo modo, descifre el texto tomando un bloque tras otro. En contraste, la técnica de cifrado de flujo implica el cifrado y descifrado de un byte del texto a la vez.
  2. El cifrado de bloque utiliza tanto la confusión como la difusión, mientras que el cifrado de flujo se basa únicamente en la confusión.
  3. El tamaño habitual del bloque podría ser de 64 o 128 bits en el cifrado del bloque. A diferencia de, 1 byte (8 bits) a la vez se convierte en el cifrado de flujo.
  4. El cifrado de bloque utiliza los modos de algoritmo ECB (Libro de códigos electrónicos) y CBC (Encadenamiento de bloques de cifrado) . Por el contrario, Stream cipher utiliza los modos de algoritmo CFB (Cipher Feedback) y OFB (Output Feedback) .
  5. El cifrado de flujo utiliza la función XOR para convertir el texto plano en texto cifrado, por eso es fácil revertir los bits XORed. Mientras que el cifrado de bloque no usa XOR para hacerlo.
  6. El cifrado de bloque usa la misma clave para cifrar cada bloque, mientras que el cifrado de flujo usa una clave diferente para cada byte.

Conclusión:

El cifrado de bloque y el cifrado de flujo difieren en la forma en que el texto sin formato se cifra y descifra. La idea detrás del cifrado de bloque es dividir el texto sin formato en bloques para cifrar aún más esos bloques. Mientras que el cifrado de flujo convierte texto sin formato bit a bit, similar al flujo.

Top