Clave única derivada por transacción


En criptografía , la clave única derivada por transacción ( DUKPT ) es un esquema de gestión de claves en el que para cada transacción se utiliza una clave única que se deriva de una clave fija. Por lo tanto, si una clave derivada se ve comprometida, los datos de transacciones pasadas y futuras aún están protegidos, ya que las claves siguientes o anteriores no se pueden determinar fácilmente. DUKPT se especifica en ANSI X9.24 parte 1.

DUKPT permite que el procesamiento del cifrado se aleje de los dispositivos que contienen el secreto compartido. El cifrado se realiza con una clave derivada , que no se reutiliza después de la transacción. DUKPT se utiliza para cifrar transacciones de comercio electrónico. Si bien se puede usar para proteger la información entre dos empresas o bancos, generalmente se usa para cifrar la información del PIN adquirida por los dispositivos de punto de venta (POS).

DUKPT no es en sí mismo un estándar de cifrado; más bien es una técnica de gestión de claves. Las características del esquema DUKPT son:

DUKPT se inventó a fines de la década de 1980 en Visa, pero no recibió mucha aceptación hasta la década de 1990, cuando las prácticas de la industria cambiaron hacia recomendar y luego exigir que cada dispositivo tenga una clave de cifrado distinta.

Antes de DUKPT, el estado del arte se conocía como Master/Session , que requería que cada dispositivo de cifrado de PIN se inicializara con una clave maestra única. Al manejar transacciones que se originaban en dispositivos que usaban la administración de claves maestras/de sesión, un efecto secundario no deseado era la necesidad de una tabla de claves de cifrado tan numerosa como los dispositivos implementados. En un gran adquirente comercial, la mesa podría volverse bastante grande. DUKPT resolvió esto. En DUKPT, cada dispositivo todavía se inicializa con una clave distinta, pero todas las claves de inicialización de una familia completa de dispositivos se derivan de una sola clave, la clave de derivación base (BDK). Para descifrar mensajes cifrados de dispositivos en el campo, el destinatario solo necesita almacenar el BDK.

Como se indicó anteriormente, el algoritmo necesita una clave única inicial que en la descripción original del algoritmo se denominaba clave supersecreta , pero luego se le cambió el nombre a, de una manera más oficial, Clave de derivación base (o BDK). El nombre original quizás transmita mejor la verdadera naturaleza de esta clave, porque si está comprometida, todos los dispositivos y todas las transacciones están igualmente comprometidas.