| Previous | Next |
| SL_E_AUTHN_MISMATCHED_KEY | SL_E_AUTHN_CANT_VERIFY |
SL_E_AUTHN_CHALLENGE_NOT_SET
Where this result is produced
SL_E_AUTHN_CHALLENGE_NOT_SET is HRESULT 0xC004F079. It belongs to the local Software Protection Platform. Its narrow boundary is: the caller attempts verification before establishing the required authentication challenge.
AllStat records “The Software Licensing Service reported that the authentication data is not set” for this HRESULT. That identifies the official outcome; the additional value is the producing object, evidence set, nearby conditions and safe verification path.
Objects and state transitions
| Stage | Role for this HRESULT |
|---|---|
| Product instance | Application ID and Activation ID identify the exact licensed object. |
| License inputs | Packages, dependencies, signatures and policies feeding this result are loaded for that object. |
| Requested transition | The right, property, event, plug-in or service operation that returns this result is evaluated. |
| Commit or status | The intended state cannot be trusted or committed while this result remains unresolved. |
A later unlicensed, notification or grace-state message describes a consequence. Preserve the earliest event carrying this HRESULT for the same product object or service request.
What the constant itself tells you
| Signal | Interpretation |
|---|---|
| Family | The result is local to Software Protection Platform and should be tied to one product object, not the computer in general. |
| Object | Challenge/response authentication state is being evaluated. |
| Operation | The suffix names the object or transition to inspect before any broad activation reset. |
| State | Its HRESULT severity is failure; later status messages can describe only the resulting state. |
Minimum diagnostic record
| Evidence | Question answered |
|---|---|
| Application ID, Activation ID and product name | For this HRESULT: Which Application ID and Activation ID returned the code? |
| LicenseStatus, LicenseStatusReason and grace values | For this HRESULT: Was the failure during package load, policy evaluation, authorization or service maintenance? |
| first API/slmgr method and earliest Security-SPP event | For this HRESULT: Is the named object absent, invalid, mismatched, duplicated or in the wrong lifecycle state? |
| challenge correlation, key ID, data version and verifier | For this HRESULT: Can caller identity and elevation be captured before changing state? |
| caller identity and elevation | For this HRESULT: Does the evidence support “restart the sequence and persist the challenge/response correlation” rather than a challenge that exists but cannot be verified? |
Redact full keys, activation blobs, account tokens, private certificate material and raw hardware identifiers. Partial keys, hashes, IDs and UTC timestamps retain correlation value without publishing secrets.
How to reproduce the same boundary
- Record
0xC004F079, UTC time, caller and the first method or server request that returned it. - Capture first API/slmgr method and earliest Security-SPP event specifically for this HRESULT.
- Prove the distinction between the named boundary and a challenge that exists but cannot be verified before remediation.
- After one supported change, repeat the same operation and compare state, events and response correlation for this HRESULT.
- Bind this result to the exact Application ID, Activation ID, edition and partial key.
REM Evidence context: SL_E_AUTHN_CHALLENGE_NOT_SET
cscript %windir%\system32\slmgr.vbs /dlv
powershell -NoProfile -Command "Get-CimInstance SoftwareLicensingProduct | Where-Object PartialProductKey | Select Name,ApplicationID,ID,LicenseStatus,LicenseStatusReason,PartialProductKey"
Use the status output as evidence. Run an activation retry only after the collected state supports the identified prerequisite; blind retries can add quota, throttle or cleanup noise.
Do not merge these conditions
| Result | Different condition |
|---|---|
SL_E_AUTHN_MISMATCHED_KEY | the authentication response or data is bound to a different key than the verifier expects |
SL_E_AUTHN_CANT_VERIFY | authentication data is present but the licensing service cannot complete verification |
SL_E_AUTHN_WRONG_VERSION | authentication data uses a version incompatible with the local licensing verifier |
A focused reproduction for this exact result
| Control | Design |
|---|---|
| Failing fixture | An asynchronous workflow loses the challenge state before response processing. |
| Single variable | Change only challenge, authentication-data version and key correlation. |
| Positive control | A fresh response generated for the same challenge and expected key verifies. |
| Different result | If the experiment instead proves “the authentication response or data is bound to a different key than the verifier expects”, follow that neighboring boundary rather than treating it as it. |
This controlled comparison is stronger than a broad reset because it changes one prerequisite and leaves product identity, evidence source and observation method stable.
Recovery without broad resets
A supported correction is to restart the sequence and persist the challenge/response correlation. A representative incident is an asynchronous workflow loses the challenge state before response processing.
Changes that make this code harder to diagnose
- avoid copying license packages or protected stores from another computer; it changes evidence without proving the named boundary.
- avoid force-deleting policy, plug-in or license files while sppsvc owns them; it changes evidence without proving the named boundary.
- avoid using rearm or key replacement as a universal package/policy repair; it changes evidence without proving the named boundary.
Technical references
- SoftwareLicensingProduct WMI class — official reference for the mechanism surrounding it.
- SoftwareLicensingService WMI class
- WMI properties and methods for volume activation
- Slmgr.vbs options
Looking for a different code? Search another status or error code.
