What does HRESULT 0xC004D20A (SL_REMAPPING_SP_PUB_CRYPTO_KEY_NOT_AVAILABLE) mean?

 
Previous Next
SL_REMAPPING_SP_PUB_CRYPTO_HASH_FINALIZED SL_REMAPPING_SP_PUB_CRYPTO_KEY_NOT_FOUND

SL_REMAPPING_SP_PUB_CRYPTO_KEY_NOT_AVAILABLE

What the protected licensing code means

Keep the symbolic result SL_REMAPPING_SP_PUB_CRYPTO_KEY_NOT_AVAILABLE together with HRESULT 0xC004D20A. The producer is cryptographic processing inside the security processor; at the provider, algorithm, key, hash, signature and block-processing stage used to authenticate protected licensing data, Windows determined that the key identifier is known but the key cannot be used in the current protected state.

This distinction matters because unavailable is different from KEY_NOT_FOUND: the key may exist but be inaccessible at this stage. A later “not licensed” state should not replace the first exact HRESULT in logs.

What to capture before recovery

  • provider and algorithm identifiers
  • key type and key-material length
  • cipher mode, block size and padding mode
  • hash state and digest length
  • signature format, length and verification key

Where it sits in the licensing pipeline

Algorithm selection, key lookup, block formatting and signature verification are independent boundaries; a failure in one does not prove corruption at the others. To verify this, record key ID, provider, object lifecycle, authorization state and preceding create/import/open result.

Cryptographic material should be logged by identifier, length, hash or thumbprint rather than by exporting secret keys or plaintext protected data.

Comparison with neighboring results

ResultDifferent condition
SL_REMAPPING_SP_PUB_CRYPTO_HASH_FINALIZEDCompared with this result, additional data was supplied after the hash object had already been finalized.
SL_REMAPPING_SP_PUB_CRYPTO_KEY_NOT_FOUNDCompared with this result, the selected provider has no key object for the requested identifier.
SL_REMAPPING_SP_PUB_CRYPTO_NOT_BLOCK_ALIGNEDCompared with this result, input length is not a whole multiple of the cipher block size for a mode that requires aligned data.

Investigation sequence

  1. Start with the earliest event carrying it; later status queries may only report the resulting unlicensed or notification state.
  2. Use read-only inspection first: record key ID, provider, object lifecycle, authorization state and preceding create/import/open result.

Actions that usually destroy useful evidence

  • Do not disable signature or padding validation to make the operation continue.
  • Do not publish keys, decrypted license blobs or complete protected payloads in a support ticket.

What to repair—and what not to reset

Complete the required state transition or authorization and reopen the key through the supported path.

Representative case: A decryption key exists but is requested before the protected environment is committed.

Technical references


Looking for a different code? Search another status or error code.