¿Cómo se relacionan los cifrados con los algoritmos criptográficos como DES o AES?

3

Parece que estoy teniendo un problema de terminología aquí. En criptografía, tenemos cifrados de flujo y cifrados de bloque. Entiendo su diferencia. También tenemos algoritmos criptográficos como AES (Rijndael).

Mi punto de confusión es cómo los algoritmos criptográficos y los cifrados se conectan entre sí. Fundamentalmente, parece que están haciendo cosas similares (cifrado y descifrado).

¿Es AES, etc., un "caso especial" de cifrado de bloque? ¿Es el cifrado de bloque una familia de algoritmos que uno de ellos es AES?

    
pregunta py_script 04.11.2018 - 19:40
fuente

2 respuestas

5

Un cifrado es un algoritmo criptográfico.

Los cifrados de secuencia generan una secuencia de teclas al xxitar el texto sin cifrar para cifrar. Son muy rápidos en comparación con los cifrados en bloque. Una comparación de referencia se puede ver en sitio web de WolfSSL , compare AES-128 versus ChaCha.

Los cifrados de bloques funcionan en bloques, ya que el Estándar de cifrado avanzado (AES) tiene un tamaño de bloque de 128 bits.

AES es uno de los cifrados de bloque como el estándar actual de NIST (antes de AES, había el estándar de cifrado de datos (DES) como el estándar anterior). Twofish, Speck y Simon (los dos últimos de la NSA), etc. son otros miembros de cifrados en bloque.

Hay una relación interesante entre los cifrados de bloque y los cifrados de flujo. Es decir; puede convertir cualquier cifrado de bloque en cifrado de flujo utilizando el modo de cifrado de bloque adecuado, como OFB y CTR. AES en el modo de funcionamiento CTR se utiliza en el modo AES-GCM , y actualmente está utilizado en las suites de cifrado estándar en TLS 1.3;

  • {0x13,0x01} - TLS_AES_256_ GCM _SHA384
  • {0x13,0x02} - TLS_CHACHA20_POLY1305_SHA256
  • {0x13,0x03} - TLS_AES_128_ GCM _SHA256
  • {0x13,0x04} - TLS_AES_128_ CCM _8_SHA256
  • {0x13,0x05} - TLS_AES_128_ CCM _SHA256
respondido por el kelalaka 04.11.2018 - 20:15
fuente
5

Un algoritmo criptográfico puede ser cualquier descripción matemática específica (el algoritmo) relacionada con la criptografía. Hay tipos específicos de algoritmos, como algoritmos hash, cifrados de bloque, cifrados de flujo, algoritmos de firma, generadores de números pseudoaleatorios, etc.

Los algoritmos criptográficos pueden utilizarse para realizar el cifrado / descifrado. En ese caso el algoritmo se llamaría cifrado. Esto podría ser un cifrado de flujo, un cifrado de bloque o un cifrado asimétrico como RSA. El cifrado de bloque generalmente tiene que usarse en un modo de operación para ser seguro, es decir, para cumplir con las propiedades que normalmente asociamos con un cifrado completo. Los modos de operación incluyen el modo CBC y el modo GCM.

AES es un cifrado de bloque y sí, ciertamente pertenece a la familia de cifrados de bloque. Es especial en el sentido de que ha sido estandarizado por NIST como el cifrado principal para usar en los EE. UU., Lo que sucede a DES. Su nombre original es Rijndael según los autores, Vincent Rijmen y Joan Daemen (aunque AES solo usa un subconjunto específico de la especificación de Rijndael).

Rijndael se convirtió en el Estándar de cifrado avanzado después de ganar la competencia AES; si otro cifrado hubiera ganado, ese cifrado se habría convertido en AES, y había algoritmos como Serpent que se hubieran considerado más seguros. Sin embargo, Rijndael también es bastante eficiente para implementarse en hardware y software, al menos en comparación con los otros algoritmos de la competencia, en ese momento.

Tenga en cuenta que los cifrados en bloque no solo se utilizan para el cifrado / descifrado. Al igual que los algoritmos hash, a menudo se utilizan como primitivo para construir otras funciones. Los cifrados de bloque pueden utilizarse, por ejemplo, para construir modos de autenticación. Los ejemplos son AES-CMAC, AES-GMAC y AES en Poly1305. Esta es una ventaja que tienen sobre cifrados de flujo, que son más limitados: los cifrados de bloque son permutaciones pseudoaleatorias (con clave) que tienen propiedades específicas requeridas por dichos esquemas.

    
respondido por el Maarten Bodewes 07.11.2018 - 03:47
fuente

Lea otras preguntas en las etiquetas