Me pregunto cuáles son los riesgos asociados con el almacenamiento de los últimos 6 dígitos de una tarjeta de pago en comparación con los últimos 4 dígitos. Además, ¿tendrá implicaciones en el cumplimiento de PCI DSS?
En el punto 3.4 de las directrices de PCI DSS, el truncamiento es
generalmente no debe exceder los primeros seis y los últimos cuatro dígitos
, pero depende específicamente de si sería factible volver a generar el número completo de la tarjeta, por ejemplo, utilizando un hash del mismo número de tarjeta como prueba para generar posibles dígitos faltantes. Almacenar los primeros y últimos seis dígitos reduciría un número de tarjeta de 19 dígitos a 7 dígitos redactados, lo que sería trivial a fuerza bruta si también se proporcionara un hash. Hay una nota específica sobre esta situación:
Nota: Es un esfuerzo relativamente trivial para una persona maliciosa reconstruir datos PAN originales si tienen acceso tanto a la Versión truncada y hash de un PAN. Donde hash y truncado Las versiones del mismo PAN están presentes en el entorno de una entidad, controles adicionales deben estar en su lugar para asegurar que el hash y Las versiones truncadas no se pueden correlacionar para reconstruir el original PAN.
Además, en el punto 3.3:
los primeros seis y los últimos cuatro dígitos son el número máximo de dígitos para mostrarse
Para obtener una respuesta para su sistema específico, necesitaría obtener asesoramiento de un QSA. No es imposible que se le permita almacenar seis dígitos, pero sería recomendable no hacerlo, y solo un QSA. sería capaz de firmar la decisión.
Los números de las tarjetas de crédito generalmente tienen 16 dígitos.
Los primeros 6 dígitos son 'usualmente' el BIN de la tarjeta. Identifican qué tipo de tarjeta es (tarjeta dorada ABC Bank, tarjeta de débito bancaria DEF, etc.), y generalmente se utiliza para enrutar dentro de la red de la tarjeta, por lo que VISA / Mastercard sabe a qué Emisor enrutar la transacción.
Esta información generalmente se considera pública, y puede encontrar rangos BIN genéricos en línea.
Los siguientes 10 dígitos son el número de la tarjeta. Que identifica de forma única la tarjeta al banco emisor.
Cuando se trata de cuántos de estos 10 dígitos deben estar expuestos, hay consideraciones. Exponga muy poco y será difícil identificar transacciones individuales y tarjetas individuales (solución de problemas de pesadilla).
Exponga demasiado, y los delincuentes pueden reconstruir el número de la tarjeta.
El consejo general de PCI es exponer 'no más' que 4, con una guía para reducir esto si no necesita 4 dígitos. De esta manera, el número de dígitos enmascarados es 6. Con un rango posible de 000000 - 999999 o 1,000,000 permutaciones posibles.
Si expone 6 dígitos, entonces el número de dígitos enmascarados es solo 4 (10-6). Y el posible rango de números de tarjetas se reduce en 100x, a solo 0000 - 9999 o 10,000 permutaciones posibles. Esto generalmente es lo suficientemente bajo para que alguien con fuerza bruta adivine el número de la tarjeta por otros medios.
En resumen, no hagas esto. 4 Los números generalmente están bien, y cuanto más bajos mejor, pero no lo hagas 6. No solo no serás compatible con PCI, sino que también pondrás en riesgo a tus clientes (o clientes de tus clientes).
Lea otras preguntas en las etiquetas pci-dss