Skip to content

0x80090016: NTE_BAD_KEYSET

Windows Error Code Lookup: Decode Windows error codes: Win32, HRESULT (0x80070005), NTSTATUS, Windows Update, msiexec and blue-screen stop codes, with what to check next.

Paste the number from an error dialog, event log, script or setup log: 0x80070005, 80070005, -2147024891, 1603, 0xC0000005, a stop code like 0x7E, a name like E_ACCESSDENIED, or a few words. You get every way Windows could mean that number (an HRESULT often wraps a Win32 error, so 0x80070005 is "Access is denied" too), its parts decoded, and what to check for the common ones. Names and messages come from the Windows SDK headers and Windows' own message tables; see Microsoft's System Error Codes and [MS-ERREF] for the full references.

Try: 0x80070005, 1603, 0xC0000005, 0x800F081F, 0x8024402C, 0x7E, access denied

0x80090016 = 2,148,073,494 = -2146893802

HRESULT 0x80090016

NTE_BAD_KEYSET

Keyset does not exist

The private key the program needs isn't there or can't be opened: a certificate imported without its key, a damaged key container, or no permission to the key.
Severity (bit 31)1: failure
Customer (bit 29)0: Microsoft
NTSTATUS inside (bit 28)0
Facility9 (0x009) SECURITY
Code22 (0x0016)