PCI-DSS y almacenamiento de sal

3

PCI-DSS establece lo siguiente:

  

3.5 Proteja las claves utilizadas para proteger los datos del titular de la tarjeta contra divulgación y uso incorrecto

Tengo un servicio que almacena un hash bcrypt con sal del PAN del usuario. Suponiendo que el algoritmo bcrypt se ajuste para una lentitud significativa, ¿cómo se aplica el requisito 3.5 a la sal utilizada para calcular el hash? ¿Tengo que protegerla como una clave de cifrado de datos común?

    
pregunta Rômulo Ceccon 19.07.2012 - 14:37
fuente

5 respuestas

8

En mi opinión, no lo haces. La sal no se puede usar directamente para recuperar el PAN transparente, por lo que no está sujeto al requisito 3.5.

    
respondido por el Gael Muller 19.07.2012 - 16:35
fuente
0

El requisito 3.5 no se aplica a los vectores de inicialización de hash.

Se aplica a las claves de cifrado (como las claves RSA o AES).

    
respondido por el PCI Initiative 13.01.2014 - 20:05
fuente
0

Es por eso que el Salt debe ser diferente para cada contraseña en la tabla de usuarios, para evitar ataques de fuerza bruta o arco iris precompilados.

Pero no se preocupe por eso, solo PCI DSS 3.5 no se aplica a los vectores hash de contraseñas.

    
respondido por el PCI Initiative 14.01.2014 - 15:51
fuente
0

El requisito es proteger las claves. El hash no usa llaves. De hecho, el hashing ni siquiera es cifrado.

Es por eso que el requisito no se aplica a la sal utilizada en su pregunta.

Más allá de la semántica, no hay una buena razón para mantener la sal confidencial. No se puede utilizar para recuperar el mensaje no dañado. El conocimiento de la sal no debilita la fuerza del algoritmo de hash. Es un error común que las personas crean que los valores de hash están relacionados con la confidencialidad, probablemente debido a la atención que han recibido en el contexto de habilitar de forma segura el control de acceso de protección de contraseña.

Por supuesto, el único escenario para usar hashes es garantizar la integridad de la información.

    
respondido por el RQ' 15.01.2014 - 00:29
fuente
-2

Si un atacante conoce la sal, la viabilidad de un ataque de fuerza bruta depende del factor de lentitud.

En mi opinión, una función hash suficientemente lenta no está sujeta al requisito 3.5.

Pero si es lo suficientemente lento (esto depende de si hay algún dígito disponible en texto claro), también puede ser demasiado lento para usted (para satisfacer sus requisitos comerciales).

Por ejemplo, si está procesando transacciones a alta frecuencia, no es aceptable tener una función de comparación lenta.

    
respondido por el malthe 09.01.2014 - 23:22
fuente

Lea otras preguntas en las etiquetas