¿Se puede usar un MAC como un Token PCI irreversible?

4

Estoy considerando la implementación de un proceso de generación de token PCI basado en un código MAC obtenido de PAN. Esto sería un token irreversible.

El método que tengo en mente me parece bien, pero no estoy seguro de que funcione con un QSA. Algunos consejos sobre los posibles fallos de mi receta serían muy apreciados.

Aquí están los detalles:

  • El token sería un valor de 32 dígitos, 10 de los cuales serían decimales y 8, hexadecinal. Los 10 dígitos decimales serían los primeros 6 y los últimos 4 dígitos del PAN. Se agregan solo para crear variedad y evitar colisiones;
  • Los 8 dígitos hexadecimales serían un CBC MAC obtenido de una cadena de 32 caracteres formada por el PAN XORed con una sal, más un relleno hecho de algunos dígitos PAN (repetidos);
    • El HSM que estoy usando solo es compatible con 3DES con teclas de doble longitud (sin AES, sin SHA-256, etc.);

¿Alguien tiene una opinión sobre este método?

    
pregunta Claude Chouinard 04.05.2018 - 17:16
fuente

1 respuesta

1

Hay una guía de tokenización disponible para comprender mejor los requisitos y las restricciones de PCI-DSS en este respecto.

Esta guía especifica que hay diferentes enfoques con respecto a la tokenización, siendo uno de ellos "una función criptográfica no reversible de una vía (por ejemplo, una función hash con sal fuerte y secreta)". Además, permite un formato de token como 6+ (Tokenized Value) +4.

En su escenario, por lo que puedo determinar, siempre y cuando el valor de sal utilizado para su MAC-CBC se mantenga secreto e impredecible (por lo tanto, no es factible un ataque de fuerza bruta / colisión para obtener el PAN completo), debería ser bueno a los ojos de un QSA.

    
respondido por el Jausk 31.05.2018 - 08:36
fuente

Lea otras preguntas en las etiquetas