La clave única por transacción derivada (DUKPT) es un esquema de administració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 está comprometida, los datos de transacciones pasadas y futuras aún están protegidas, ya que la siguiente o la anterior no se pueden determinar fácilmente. DUKPT se especifica en ANSI X9.24 parte 1
El aspecto clave de DUKPT es que para cada transacción que se origina desde el dispositivo PIN, la clave para el cifrado será única. La clave no tendrá ninguna relación con las claves que se usaron en el pasado o con las claves que podrían usarse para transacciones futuras. El algoritmo de cifrado que se utilizará es TDES.
IPEK se deriva de la Clave de Derivación Base (BDK). Las entradas para crear IPEK son la ID del dispositivo PIN y la ID del conjunto de claves. El ID del conjunto de claves identifica de forma única el BDK. Para que pueda ver que, con un BDK, puede tener múltiples IPEK. Un IPEK para cada dispositivo con ID única. El BDK no será conocido por el dispositivo PIN. El BDK es una clave súper secreta que se conocerá en la puerta de enlace con la que se comunican todos los dispositivos PIN. La puerta de enlace almacenará el BDK de forma segura en un dispositivo HSM. El BDK no se puede compartir entre los dispositivos PIN. Período. Así viene el IPEK a rescatar.
Una vez que el terminal se haya inicializado con IPEK, llenará los 21 registros de Future Key invocando un proceso de transformación no reversible. Las entradas para esto serían IPEK y un valor que es función del número de registro. Luego se descarta el IPEK. Ahora el terminal tiene 21 claves futuras guardadas en 21 registros. Ahora el dispositivo PIN puede comunicarse con la puerta de enlace, cifrar con la clave generada junto con los metadatos que incluyen la ID del conjunto de claves y la ID del dispositivo. Con estos metadatos y el BDK, la puerta de enlace también derivará la clave para el descifrado.