¿Está bien si las frases de paso a KDF son "predecibles"?

2

Estoy buscando hacer cifrado de archivos para pequeñas cantidades de texto (8-100 caracteres para cada elemento que se encripta). Esto es lo que tengo:

  • Una frase secreta y una sal.
  • Uso Rijndael para generar una clave y iv al cifrar texto.
  • Utilizo la clave + iv para cifrar el texto.
  • Almaceno el texto iv + cifrado como el cifrado.
  • HMAC el resultado.

Ahora mi pregunta es sobre la frase de contraseña. Es un requisito para PCI DSS rotar la contraseña al menos una vez al año. Me preguntaba si sería inseguro tener la parte del año de la frase de contraseña. Por lo tanto, si mi frase de contraseña "básica" es "Orange Ballons", la frase de contraseña que usaría es "Orange Balloons2013", "Orange Balloons2015", etc. según el año correspondiente al negocio de ese elemento de datos.

¿Es este un posible agujero de seguridad, o está bien hacer esto? Mi inclinación no es hacerlo, pero hará que la administración de claves sea mucho más sencilla en mi caso de uso particular.

    
pregunta ashic 27.07.2015 - 19:12
fuente

2 respuestas

2

Sí, esto es inseguro. Puede pasar la auditoría si nadie lo verifica, pero es muy inseguro.

En cualquier caso, su método no le ahorra mucho, porque todavía tiene una pesadilla clave para determinar qué año usar para qué entradas (a menos que lo esté basando en una fecha modificada, lo que es un mal idea).

Necesitará un sistema más completo que rastree qué claves se usan para qué entradas. En ese momento, puede usar claves más complejas sin costo adicional.

También tiene un problema de rotación de claves con el que lidiar, ya que las entradas antiguas usan la clave antigua, pero deben actualizarse periódicamente a la nueva clave.

Puede ser más fácil almacenar todas las entradas en una base de datos compartida, donde la base de datos está encriptada, pero las entradas individuales no lo son. Entonces solo tienes una tecla para seguir. La desventaja de eso sería si necesita segmentar qué usuarios pueden acceder a qué datos.

    
respondido por el Jason Coyne 27.07.2015 - 19:19
fuente
5

Lo primero que se me ocurre es que una vez que alguien conoce una contraseña, también conoce todas las contraseñas pasadas y futuras.

La idea de cambiarlos cada año es contrarrestar ese problema si alguien termina de descifrar la frase de contraseña, pero también brinda al menos un poco de protección contra empleados pasados que pueden haber tenido acceso a esas frases de contraseña, también.     

respondido por el schroeder 27.07.2015 - 19:19
fuente

Lea otras preguntas en las etiquetas