Fix CRYPT_E_INVALID_X500_STRING (0x80092023) in Minutes
This error means Windows choked on a malformed certificate string. The fix is usually deleting a corrupt registry value or reinstalling the cert.
Yeah, I get it. You're staring at some cryptic error like CRYPT_E_INVALID_X500_STRING (0x80092023) and your app or service just died. Let's cut through the noise and get you back up.
The Quick Fix: Nuke the Bad Certificate
This error almost always means a certificate has a malformed X.500 string — like someone fat-fingered a distinguished name or a field has illegal characters. Windows can't parse it, so it throws this error. The fastest way to fix it is to find the bad cert and remove it.
Step 1: Find the offending certificate
- Open an elevated Command Prompt (right-click, run as admin).
- Type
certlm.mscand hit Enter — that opens Local Machine certificate store. - Look in Personal and Trusted Root Certification Authorities.
- Sort by “Intended Purpose” — look for expired certs or ones with weird names (extra spaces, special chars, non-English characters).
I had a client last month whose Microsoft System Center Operations Manager (SCOM) agent started throwing 0x80092023 on every heartbeat. Turned out someone imported a backup certificate that had a trailing space in the Subject field. Windows 10 22H2 just couldn't handle it.
Step 2: Delete the suspect certificate
Right-click the bad cert and choose Delete. Yes, really. If it's a self-signed or test cert, just nuke it. If it's a production cert, you'll need to reissue it properly from your CA.
But here's the trick — sometimes the error doesn't come from the certificate store. It can come from a registry entry that references a broken cert.
Registry Bloat: The Hidden Cause
Windows stores certificate references in the registry under:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SystemCertificates
If an app or a bad install wrote a corrupted X.500 string directly to the registry, you'll get this error even if the certificate store looks clean. Happens a lot with old Microsoft Endpoint Configuration Manager (SCCM) or PKI setups.
Step to fix registry corruption:
- Open Regedit.exe as administrator.
- Navigate to
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SystemCertificates\MY\Certificates. - Look for subkeys with names that don't match a standard 40-character hex thumbprint (usually 40 hex chars, no hyphens).
- If you see a subkey with a gibberish name full of special characters or quotes, right-click and delete it.
- Also check
...\CA\Certificatesand...\ROOT\Certificates.
After that, restart the app or service. In the SCOM case, I deleted a registry key that had a stray double-quote in the subject line — the error vanished instantly.
Less Common Variations
Sometimes the error pops up in weird places:
- IIS — When binding an HTTPS certificate, if the certificate's Subject field has illegal characters (like a comma inside a CN), IIS throws 0x80092023. Fix: reissue the cert with a clean subject.
- Windows Update — Rare, but I've seen it when Windows Update tries to verify a catalog signature and the X.500 string is corrupted. Usually fixed by running
dism /online /cleanup-image /restorehealththensfc /scannow. - Outlook/Exchange Autodiscover — If you're using a self-signed cert with a malformed subject (e.g., missing an OU value), Autodiscover can fail with 0x80092023. Use
certutil -verifyto check.
For the command-line fans, run this to list all certs with their subjects and thumbprints:
certutil -store My
Look for any subject that looks off — like CN=MyServer, OU=, O=Company (empty OU can trigger this).
Prevention: Keep Your Certs Clean
This error is mostly about data hygiene. Here's what you can do:
- Never manually edit certificate subjects in a text editor and re-import. Use your CA's tools.
- Validate every cert with
certutil -verifybefore deploying. - Keep your CAs updated — old Windows Server 2008 R2 CAs have been known to generate wonky X.500 strings when you upgrade.
- Use a script to periodically check for malformed certs in the store. PowerShell can grab subjects and flag anything with odd characters.
And honestly, if you're using third-party certs from a public CA, you're unlikely to hit this. It's almost always self-signed certs or ones generated by legacy tools that cause the headache.
That's it. Find the bad cert or registry entry, delete it, and move on. If you've got a production system where you can't just delete, reissue the cert with a clean subject string. Either way, 0x80092023 is a data corruption error, not a deep Windows bug. And that makes it fixable in 10 minutes.
Was this solution helpful?