SecurityRisk & complianceNote

eMudhra’s script cut 8 keys to a byte; its TLS issuing stops 16 November

eMudhra’s incident report of 10 November: the key-moving script behind 16 revoked CAs, the warning missed in June 2025, and the dates Indian sites on its certificates face.

Illustration: The TechBag Journal

eMudhra revoked eight more of its intermediate certificate authorities on 7 November, bringing to 16 the CA certificates it has withdrawn since a researcher showed on 17 October that eight private keys could be worked out from public data. Its full incident report, filed on Mozilla’s bug tracker on 10 November, names the cause: a custom Python script its own PKI operations team wrote to move keys between two makes of hardware security module, in which a single line cut each elliptic-curve private key “to its leading byte”.1 The Indian certificate authority will stop all issuance from G1, its last publicly trusted TLS hierarchy, at 23:59 UTC on 16 November (5:29am IST on 17 November) and leave the public TLS business.1

A script run in April 2025 led to 16 revoked CAs and a TLS exit in November 2026

Events in eMudhra's incident report and on its incident page, 30 April 2025 to 4 December 2026 (planned dates included)

30 Apr 2025Key ceremony
5 Jun 2025CRLs fail to verify
17 Oct 2026Researcher's report
18 Oct 20268 ECDSA CAs revoked
7 Nov 20268 RSA CAs revoked
16 Nov 2026G1 issuance stops
30 Nov 2026Apple drops G1
4 Dec 2026Independent review
Show tableHide table
DateEventDetail
30 Apr 2025Key ceremony16 CA keys made, then run through the script; 8 cut to one byte
5 Jun 2025CRLs fail to verifyBug 1970728, fixed at the level of the signature mismatch
17 Oct 2026Researcher's reportThe 8 ECDSA keys are recoverable
18 Oct 20268 ECDSA CAs revoked09:24 to 09:38 UTC, reason cACompromise
7 Nov 20268 RSA CAs revokedReason cessationOfOperation
16 Nov 2026G1 issuance stops23:59 UTC; Chrome and Firefox cut-off for new G1 certificates
30 Nov 2026Apple drops G1Every G1 certificate distrusted on Apple platforms
4 Dec 2026Independent reviewImprovements from the review due

Source: eMudhra incident report, Mozilla Bugzilla 2083449, 10 November 2026; eMudhra incident page, Update 8 · as of 12 November 2026 · Dates from 16 November on are eMudhra's and the browsers' planned dates

01One line in a key-moving script

At a ceremony on 30 April 2025 eMudhra generated 16 issuing-CA keys, eight ECDSA P-384 (G3B and G3C) and eight RSA-4096 (G2B and G2C), on a Utimaco module. They were meant for its new US and EU facilities, but the Crypto4A modules ordered for the US were delayed, and a root-program rule taking effect on 15 June 2025 meant the keys had to exist before the end of May. So the team generated them on hand and planned to move them by key wrapping, with FIPS-approved mode switched off for the step.1

After the round trip, the script read each unwrapped private key into the host computer’s memory and re-created a key object from it. For the ECDSA keys that read-back truncated the value, leaving a private key below 256; the re-created object, carrying an almost identical label, was the one used to request the certificate. The RSA keys came through intact, but because their material passed through a Python process on the ceremony host, eMudhra says it “cannot positively demonstrate” they met its own rule on moving keys, and revoked those eight as well.1

02The warning sign in June 2025

Between 29 May and 6 June 2025 the revocation lists of six G3 TLS intermediates failed to verify, because the certificates had been issued over the re-created keys while the lists were signed with the originals. eMudhra re-signed them with the matching key; its report says the fix “did not reach the underlying cause” and calls the episode an early indication of the defect. The ceremony never tested key strength or compared the certified key with the generated one, which the industry’s Baseline Requirements do not require, and two WebTrust audit cycles passed.1

The Chrome Root Program has said why its own checks missed the keys for 18 months: standard linting tools did not test for small elliptic-curve private keys, and Google’s scanner covered only certificates logged to Certificate Transparency, which these dormant intermediates never were. It now scans CA certificates disclosed to the CCADB and has proposed a weak-key check before any can be disclosed.4 eMudhra appointed KPMG to review the incident; improvements from that review are due by 4 December, and an inventory of all its CA keys by 30 November.31

03What an Indian site on an eMudhra certificate must do, and by when

Chrome and Firefox will not trust a G1 certificate issued after 16 November, though earlier ones keep working until they expire. Apple removes G1 on 30 November, after which no G1 certificate, whenever issued, is trusted on its platforms. eMudhra says it has moved every emSign TLS customer outside the US to other providers at no charge, and that its digital signature certificates and eSign run on separate infrastructure and are unaffected.3 Its remaining TLS customer is a university federation in North America, moving to another publicly trusted provider.1

Sources

  1. eMudhra: Full Incident Report, Mozilla Bugzilla 2083449, comment 82 — 10 November 2026
  2. eMudhra: affected_certificates_G2C.xlsx, attachment to Bugzilla 2083449, comment 83 — 10 November 2026
  3. eMudhra: Update on our TLS certificates (incident page, Update 7 on KPMG, Update 8 on browser dates) — 30 October and 5 November 2026
  4. Chrome Root Program: response on weak-key checks, Bugzilla 2083449, comment 50 — 27 October 2026

Disclosure. TechBag is a software reseller: it earns when companies buy through it, including from vendors named here. The analysis is TechBag’s own; no vendor paid for or saw this piece before publication. Facts are labelled reported, TechBag count or our view.