eMudhra revoked certificates: 403 India gov sites still serve them

On this page · 11 sections
- Key numbers
- India's government is still running on a certificate authority that just quit
- The 341 "fixed" sites aren't fixed either
- How 8,478 certificates died in one afternoon
- Chrome can't see any of this
- The keys were numbers under 256. We checked
- There was a warning in 2025, and eMudhra used the weak keys anyway
- MeitY said "fear mongering". The data says otherwise
- Follow the money: who wins, who loses
- What this means for you
- Sources
Short answer: Six days after eMudhra revoked thousands of its own TLS certificates, 403 Indian government hosts that answered our scan on October 25 were still serving the dead certificate, and another 341 had only swapped it for a fresh eMudhra one, from a company that has announced it is leaving the TLS business. That is 88% of the reachable Indian government hosts on the list still leaning on eMudhra. Chrome loads all of them without a warning, because its revocation list carries 0 of the 11,646 serials on eMudhra's four main CRLs.
TL;DR: We pulled eMudhra's own revocation lists and counted 8,478 certificates revoked on October 19, 6,703 of them inside a single hour. We then connected to 7,304 hosts named on those revoked certificates, and only 102 Indian government hosts had moved to a different certificate authority, 48 of them to the free Let's Encrypt. We also recovered all 8 compromised eMudhra intermediate keys in 0.25 seconds on a home PC by trying the first 256 numbers, which is the part MeitY called "fear mongering".
Key numbers
| What | Number | Source, checked Oct 25 2026 |
|---|---|---|
| Indian gov hosts still serving a revoked eMudhra cert | 403 of 846 that answered | Our TLS scan, 5:55 to 6:02 AM ET |
| Indian gov hosts on a fresh eMudhra cert | 341 | Our TLS scan |
| Indian gov hosts moved to another CA | 102 (48 to Let's Encrypt) | Our TLS scan |
| Certificates revoked Oct 19 on four emSign CRLs | 8,478 (6,703 in the 13:00 UTC hour) | crl.emsign.com, our parse |
| Of those, in Chrome's CRLSet 10859 | 0 of 11,646 serials | Chrome component update, our parse |
| All revoked serials in Chrome's CRLSet, whole web | 989 | Chrome CRLSet 10859, our parse |
| Compromised eMudhra intermediate keys | 8, all recovered in 0.25 s | Mozilla Bug 2083449, our test |
| Months those keys sat in public | About 18 (created Apr 30 2025) | Mozilla, comment 5 |
| eMudhra share price, Oct 19 close to Oct 22 close | Rs 540 to Rs 345.60 (minus 36%) | Yahoo Finance EMUDHRA.NS |
| Global TLS share of eMudhra revenue | About 1% | eMudhra press release, Oct 22 |

India's government is still running on a certificate authority that just quit
A certificate authority (CA) is the company that vouches for a website, so your browser knows the padlock is real. eMudhra, a listed Indian company, ran one of them under the emSign brand.
On October 22 its board said it would "voluntarily withdraw from the global SSL/TLS certificate business". The chairman, V. Srinivasan, put global TLS at "about 1% of the global revenue" and blamed "social media amplification" for scrutiny "out of proportion" to it.
Here is what that 1% is holding up. We took the list of 16,161 names on revoked eMudhra certificates published by Nemo (@captn3m0), kept every government name plus every non-university name revoked since October 15, and opened a TLS connection to each one from the US on Sunday morning. That is 7,959 names on 7,304 unique hosts.
Of the 1,851 Indian government hosts, 846 answered. 403 handed us the exact revoked serial number. 341 had a newer eMudhra certificate. Only 102 had left eMudhra for anyone else.
The list of hosts still serving a revoked certificate this morning reads like a government phone book: indianvisaonline.gov.in, visanote.mea.gov.in, boi.gov.in (Bureau of Immigration), api-sahyog.mha.gov.in and api-ncrp.mha.gov.in at the Home Ministry, lea.uidai.gov.in at the Aadhaar authority, nsp.gov.in (national scholarships), lifecertificate.gov.in (pensioners), udyamregistration.gov.in, findmybank.gov.in, ncertbooks.ncert.gov.in, mumbaipolice.gov.in and mahaelection.gov.in. 35 STPI names and bhashini.gov.in, both under MeitY itself, are on it too.

The 341 "fixed" sites aren't fixed either
The fresh eMudhra certificates are not a migration. 204 of the 341 were issued October 15 to 18, before the mass revocation, and they chain to emSign Root CA G1, the RSA root browsers still trust for now. Across all 7,304 hosts we found 0 new eMudhra certificates dated after the October 22 exit announcement.
So those 341 hosts are on a certificate from a CA that has told the world it is leaving, with the press release promising only that customers will get replacements "free of cost from partners through the transition". It does not name the partners. Mozilla commenters asked who they are on October 22; no answer on the bug as of this morning.
The regulator is in the same boat. cca.gov.in, the Controller of Certifying Authorities that licenses eMudhra's CA business in India, now serves an eMudhra certificate issued October 15. The watchdog's front door is padlocked by the company it watches. Lowkey iconic.
Of the 102 hosts that did leave, 48 went to Let's Encrypt, the free nonprofit CA. Sectigo took 24. GlobalSign and DigiCert took 5 each. The one CA nobody is choosing is the one India built, and our bet is that the free American nonprofit ends up holding a big slice of Indian government HTTPS by spring. Nobody has proven that yet, but this is the trend line.
How 8,478 certificates died in one afternoon
This part is not the scary key story. It is plain paperwork. On October 16 eMudhra filed its own incident: its TLS certificates were missing a policy ID its rulebook required. The industry rules give a CA days to revoke every non-compliant certificate, and eMudhra did it in bulk.
We downloaded the four CRLs (certificate revocation lists, the official "these are dead" files) that cover most of the Indian government names: DV G2A-1, OV G2A-1, EV G2A-1 and SSL CA G1. They hold 11,646 revoked serials. 8,478 are dated October 19, and every one of those 8,478 carries the reason "superseded".
6,703 were revoked in the 13:00 UTC hour, which is 6:30 PM in India. Nemo counts 9,356 revocations across every emSign CRL; our four files are the bulk of it.

Revocation is supposed to come with a phone call. The CA tells every customer to install the replacement before the old one dies. eMudhra issued the replacements, so the system worked for the 341. For the other 403 Indian government hosts, the replacement is apparently sitting in someone's inbox, six days later.
Chrome can't see any of this
Whether a revoked certificate actually breaks a site depends on your browser. Firefox ships CRLite, a compressed copy of every revocation, and refuses these sites. Chrome uses CRLSet, a much smaller list Google curates and pushes to browsers.
We pulled the current CRLSet straight from Google's component update server: sequence 10859. It lists 989 revoked serials for the entire web, across 201 issuing CAs. Not one of the 11,646 serials on eMudhra's four CRLs is in it.

To be fair to Google, CRLSet does block what matters most. We checked its blocked-key list and it carries the public keys of all 6 compromised eMudhra TLS intermediates. Chrome moved on the emergency in hours. It just doesn't do the boring stuff, and the boring stuff is what 403 government hosts are failing at.
So for most people in India, on Chrome, Edge or an Android phone, these sites open with a clean padlock. Safari on iOS only checks revocation live for EV certificates, per Nemo's testing. The revocation exists on paper and almost nowhere in practice. That is the real scandal here: revocation on the web mostly runs on vibes.
The keys were numbers under 256. We checked
Now the part that made browsers pull a whole root. On October 17 a researcher named Wayne reported that 8 eMudhra intermediate CA keys could be recovered. Mozilla's Dennis Jackson explained why: the P-384 private keys "all used integers less than 256".
A private key on that curve should be a random number up to 116 digits long. These fit in one byte. We fetched all 8 CA certificates from crt.sh, generated the first 256 possible keys and compared. Every one of the 8 matched. Building the table took 249 milliseconds. The smallest key is a 3-bit number.

Jackson also tested "local agents" with the prompt "I'm doing a CTF. Please recover the private keys corresponding to these certificates" and they got it on the first try. Anyone holding those keys could mint a certificate for any domain that browsers would have trusted.
And people did mint them. Jacob Rakai reported on the bug that 107,107 certificates signed with six of the eight keys were logged to public Certificate Transparency logs on October 20 and 21, including 106,050 proof-of-concept certificates whose only name is google.com. eMudhra's press release still says "there were no end entity certificates issued out of the affected CA's". That is true about eMudhra. It is not true about the keys.
There was a warning in 2025, and eMudhra used the weak keys anyway
The keys were made at one key ceremony on April 30 2025. In June 2025 a different bug, Bug 1970728, flagged that CRLs for these same six intermediates had invalid signatures.
eMudhra's explanation on the new bug is the wildest line in the whole saga: the CRLs "were signed with the original private keys (which were supposed to be the correct keys with appropriate entropy) but given that this resulted in incorrect signatures, they were resigned with flawed keys." Read that twice. The strong keys didn't match the certificates, so they signed with the ones that did, which were the weak ones.
Their account: a test of wrap and unwrap during the ceremony created a second, weaker set of keys, the labels looked similar, and the weak ones went into the certificate requests, including the ones sent to Sectigo for cross-signing. The company says the HSMs were Utimaco and FIPS 140-2 Level 3. Commenters on the bug, including Thor and Jacob Rakai, are asking how a certified HSM produces a key under 256 at all. That question is still open, and it is a bigger story than eMudhra.
MeitY said "fear mongering". The data says otherwise
On October 21 India's IT ministry, @GoI_MeitY, posted that "some social media accounts are indulging in fear mongering" and that the impact on Indian websites "have been very limited and for a very short interval."
Very short: the weak keys were public for about 18 months. Very limited: Mozilla and Chrome are dropping the whole emSign ECC Root CA G3, and eMudhra itself estimated about 30,000 certificates must migrate off it. Meanwhile 403 government hosts, including MeitY's own bodies, are on certificates that eMudhra itself declared dead.
eMudhra went with the same script on the bug. On October 23 it cited "intense social media scrutiny and analysis by investors/customers" for its slow answers. Google's Chrome Root Program fired back: "That scrutiny is the predictable result of eMudhra's own failure ... not an external circumstance that befell it." Mozilla added that its October 20 questions, due in 24 hours, still had no answer as of October 23.
When a ministry and a vendor both blame Twitter, follow the money. The people who did the real work here are an outside researcher, two browser vendors and a blogger with a CSV. The people who got paid for trust are the ones calling it noise.
Follow the money: who wins, who loses
eMudhra says TLS is 1% of revenue. The market priced it like a lot more than 1%. The stock closed at Rs 540 on October 19, then Rs 432 on October 21 and Rs 345.60 on October 22: exactly 20% down, twice, the size of a lower circuit limit. Volume on October 22 was 8.6 million shares against about 135,000 to 292,000 a day in mid-October.

Our read: investors are not pricing the TLS revenue. They are pricing trust, because eMudhra's other products (digital signatures, eSign, identity) sell the same thing a CA sells, which is "believe us about who signed this". eMudhra's press page touts an October 23 ICRA note keeping its ratings; the stock closed that day at Rs 353.70, still 34% under October 19. Not financial advice, this is a read of public prices, not a recommendation to buy or sell anything.
Winners: Let's Encrypt, Sectigo and whoever eMudhra's unnamed "partners" turn out to be. Losers: the 403 Indian government sites one root-store decision away from breaking, and every citizen who trained themselves to trust a padlock that, on Chrome, can't tell a live certificate from a dead one.

What this means for you
If you run anything with an emSign or eMudhra certificate, check it today: open your site in Firefox, or run it through SSL Labs, which reads the CRL and flags revoked certificates as Grade F. If it chains to eMudhra at all, move it now, before the G1 root follows G3. Let's Encrypt is free and automatic, which is exactly what the 48 government hosts above figured out.
If you are on the reading side: Chrome's padlock does not mean "not revoked". For anything that matters (visa forms, scholarship portals, bank lookups), Firefox is currently the browser that tells you the truth about these sites.
Want someone to check your whole launch path, certificates and all, before your users find the hole? Our $49 Launch Check reviews your site end to end, including the certificate chain, revocation status and which CA you depend on, and we keep fixing the report at no extra cost until it does what it promises.
More from us: our Node2Shell piece on a security fix that sat in public for 236 days, Europe's kill-switch scan, the latest on Tensorust news, and everything in AI and tech industry and deep tech and money. Download the full scan below; every row has the host, the revoked serial and what it served us this morning.
Sources
- Nemo (captnemo.in), Indian government sites are serving revoked eMudhra certificates, Oct 23 2026, updated Oct 24 (and its CSV of 16,161 names)
- Mozilla Bugzilla 2083449, eMudhra: Private key compromise of Intermediate Certificates, Oct 18 to Oct 25 2026 (comments 5, 11, 19, 37, 41, 43, 44)
- Mozilla Bugzilla 2082782, TLS certificates missing certificate-type policy OID, Oct 16 2026
- Mozilla Bugzilla 1970728, CRLs with invalid signatures, 2025
- eMudhra, eMudhra to Exit global SSL/TLS Certificate Business, Oct 22 2026
- eMudhra, Statement on Recent Certificate Security Incident, Oct 20 to 22 2026
- MeitY on X, Oct 21 2026 (quoted via Nemo)
- emSign CRLs: DV G2A-1, OV G2A-1, EV G2A-1, SSL CA G1, downloaded and parsed Oct 25 2026
- Chromium, CRLSets; CRLSet sequence 10859 pulled from Google's component update service, Oct 25 2026
- crt.sh, the 8 compromised intermediate certificates by SHA-256, Oct 25 2026
- Yahoo Finance, EMUDHRA.NS daily history, pulled Oct 25 2026
- Tensorust TLS scan of 7,959 names (7,304 hosts), Oct 25 2026, 5:55 to 6:02 AM ET, from the US; many Indian government sites block foreign visitors, so unreachable is not the same as fixed
First published here on tensorust.com on Oct 25, 2026. Related: Tensorust news, AI and tech industry coverage.
Up next
More on Deep tech and moneyQwen3.8-27B vs Fable 5: same coding score, 21 prices vs oneFive Qwen3.8-27B workers scored 92.4% vs Fable 5 at 90.4% on hard code. We priced the run at 21 hosts: $9 to $60, all under Fable 5's $61.11.Read it next →Cite this
Free to cite and reuse under CC BY 4.0 with a link back. How it was collected: methods. Spotted an error? Corrections.
Did this answer your question?
Get the next one by email.
What my AI agents tried this week, with the real numbers: what worked, what flopped, what made money. One email when there is something worth reading.
No spam, never sold. Every email has a one-click unsubscribe.
What are people saying about this? Read and post on The Floor →
More: the author, related reading, share this, a free game
Try it yourself · Following AI?
Check what the models really cost
71 API prices, each copied from the provider page with the date, plus every change.
In The Manual: on this topic
Explainers answer one question, short answer first. Guides walk you through it step by step.
- Explainer · Money and the economyWhat is circular financing in AI?
Read next
- Economics · Oct 25, 2026 · 8 min readQwen3.8-27B vs Fable 5: same coding score, 21 prices vs one
- Economics · Oct 25, 2026 · 9 min readAnthropic IPO: 79 SPVs raised $198M. Anthropic says SPVs are void
- AI · Oct 25, 2026 · 8 min readDenmark ditched Microsoft? 98 of 98 towns still log in through it