🔓 Debug Unlock Calculator

Compute debug unlock tokens for the Caliptra WASM emulator. Manufacturing mode uses a shared secret token; production mode uses a cryptographic challenge-response.

Manufacturing Debug Unlock

Send a 32-byte token via the MANUF_DEBUG_UNLOCK_REQ_TOKEN (0x4D445554) mailbox command. The ROM computes SHA-512 of the token and compares against the fuse value.

Default Token (Caliptra-only mode)

Used when running with default Fuses (non-subsystem mode).


Default Token (Subsystem / MCU mode)

Used with OTP provisioning (DEFAULT_MANUF_DEBUG_UNLOCK_RAW_TOKEN from hw-model).

Production Auth Debug Unlock

Two-step challenge-response flow using ECC P-384 + ML-DSA-87 signatures. The public key hash must be programmed into OTP fuses for the desired unlock level.

Step 1: Key Setup

Generate or import key pairs. The PK hash must match OTP fuses for the unlock level.

Not generated
Not generated

Program this 48-byte hash into OTP for the desired unlock level.

Generate both key pairs first

Step 2: Send Debug Unlock Request

Send PRODUCTION_AUTH_DEBUG_UNLOCK_REQ (0x50445552) to get a challenge.


Step 3: Parse Challenge Response

Paste the hex response from PRODUCTION_AUTH_DEBUG_UNLOCK_REQ command.


Step 4: Sign & Generate Token

Signs SHA-384(uid || level || reserved || challenge) with ECC, and SHA-512(uid || level || reserved || challenge) with MLDSA. Assembles the complete PRODUCTION_AUTH_DEBUG_UNLOCK_TOKEN (0x50445554) mailbox command.