Skip to content

Remove or date-limit emSign Root CA - G1 before Mozilla's 2026-11-16 cutoff #67391

Open

Description

@nishantms

What is the problem this feature will solve?

What is the feature you are proposing to solve the problem?

  1. Remove G1, as Node did for TrustCor. This is the simplest fix, but it also breaks G1 certificates issued before the cutoff.
  2. Reject G1 chains whose certificate was issued after the cutoff, as Node did for StartCom and WoSign. This could go in the hook added by tls: reject chains containing blocked public keys #66871 and matches Mozilla. It needs custom code, and a certificate's issue date can be backdated; Mozilla guards against that with SCT checks.

What alternatives have you considered?

  • Keep things as they are: Node keeps trusting G1 certificates that Mozilla rejects after 11/16.
  • Drop G1 in each app: the code below works on Node 22.23.4, 24.22.1 and 26.13.0 (I tested all three). It doesn't help tools like npm that use the default store.
const tls = require('node:tls');
const { X509Certificate } = require('node:crypto');
tls.setDefaultCACertificates(tls.getCACertificates('default').filter(
  (pem) => !new X509Certificate(pem).subject.includes('CN=emSign Root CA - G1')));

/cc @aduh95 @UlisesGascon @Renegade334

Activity

  1. UlisesGascon commented on Nov 10, 2026

    @UlisesGascon
    Member

    I will have a look into this today/tomorrow

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    feature requestIssues requesting new Node.js features.

    Type

    No type

    Projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions