nodejs / nodejs/node

Define certificate creation facilities

Open
#51,169 2 comments 3 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

crypto feature request never-stale
Dominant language
JavaScript
Stars
122k
Forks
37.3k
Avg merge
4d 2h
Merged PRs (30d)
283

Description

What is the problem this feature will solve?

Right now, there is a gap in the crypto package in that, while one can parse existing certificates (e.g., new X509Certificate(...)), there's no exposed built-in functionality (that I could find) to create new certificates with specified properties.

This feature will close that gap.

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

Add new classes and/or methods to node:crypto, so that one can create a signed certificate from its various parts, along with a signing key, CSR, etc.

What alternatives have you considered?

I am currently using the npm package pem for this, which is a thin wrapper around call-outs to the openssl binary (which it assumes is available in the environment).

The npm packagenode-forge seems to have the right functionality and is JS-native, though it is unclear how well-maintained it is.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing the existing node:crypto X509Certificate functionality and the certificate-creation requirements described in the issue. Define the API needed to create signed certificates and CSRs from certificate parts and a signing key, with the exposed classes or methods serving as the completion criteria.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript, node.js
Domain
cryptography, security
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.