Algoritmos de cifrado

LIBP-0270 (Libro de pautas)

Modificar las condiciones del algoritmo de cifrado en función de su tipología

Recientemente se han descubierto que numerosos algoritmos considerados "seguros" son criptográficamente débiles. Esto significa que en lugar de realizar 2^80 operaciones para hacer un ataque fuerza bruta a una clave, puede llevar solamente 2^69 operaciones, algo alcanzable en una máquina normal.

Conforme la criptografía moderna confía en ser computacionalmente costosa de romper, en estándares específicos pueden configurarse tamaños de clave que proporcionen seguridad con la tecnología y el conocimiento actual, y que asegure que el coste de descifrar la clave sea elevado. Por lo tanto, necesitamos asegurarnos que tanto los algoritmos como el tamaño de la clave sean tenidos en cuenta en la selección de un algoritmo.

Pautas

TítuloCarácter
Algoritmo simétricoObligatoria
Algoritmo asimétricoObligatoria
Algoritmos hashObligatoria
Algoritmos de cifrado de flujoNo Recomendada

Algoritmo simétrico

Utilizar un tamaño de clave de 128 bits (estándar para SSL) en general

Un tamaño de clave de 128 bits (estándar para SSL) es suficiente para la mayoría de aplicaciones.
Considere 168 o 256 bits para sistemas seguros tales como grandes transacciones financieras.

Algoritmo asimétrico

Utilizar un tamaño de clave de 1024 bits en general

Tamaños de clave de 1024 bits son suficientes para la mayoría de aplicaciones personales.
 1536 bits deberían ser aceptables actualmente para la mayoría de aplicaciones seguras.
 2048 bits son recomendables para aplicaciones altamente protegidas.

Algoritmos hash

Utilizar un algoritmo de hash lo más actual posible

Los algoritmos hash pueden presentar colisiones que permitirían a un atacante proporcionar una contraseña suplente sin pasar por la autenticación. Para mitigar esta situación, habrá que utilizar un algoritmo considerado fuerte actualmente, como pueden ser los algoritmos SHA-256 ó SHA-512.

Los algoritmos MD-4, MD-5 y SHA-1 son vulnerables por lo que no deberían ser utilizados.

Algoritmos de cifrado de flujo

No usar los cifrados de flujo ya que son vulnerables

Los cifrados de flujo, como RC4, son vulnerables debido a una propiedad que poseen este tipo de cifrados:

Si se utiliza la misma clave para “proteger” dos documentos diferentes, el flujo de claves se abandona cuando se realiza la operación XOR con los dos documentos, dejando en texto plano los dos documentos de la operación XOR. Los dos documentos en texto plano se pueden recuperar usando un análisis de frecuencia.

Por lo tanto, no deben usarse cifradores de flujo de esta manera. En su caso, habrá que considerar el uso de algoritmos simétricos fuertes como AES.

Contenidos relacionados

Recursos
Área: Desarrollo » Seguridad » Cifrado
Código Título Tipo Carácter
RECU-0596 Criptología de empleo en el Esquema Nacional de Seguridad Especificación Recomendado