X509v3 extensions from certificate not transferred to CSR

Open
#122 1 comment 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

  • #1 by @cpu — closed without merging
  • #164 by @cpu — closed without merging

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
35/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Stale
Tech stack
rust

Research direction

Start at the serialize_request_der() entry point and trace how the certificate and CSR extensions are handled. Compare the current behavior with the linked OpenSSL issue; done means X509v3 extensions such as Extended Key Usage are present in the generated CSR.

Written by the indexing model from the issue text.

Description

Hi,

After creating a certificate with several X509v3 extensions (e.g. X509v3 Extended Key Usage: TLS Web Client Authentication), I create a certificate signing request using e.g.
certificate.serialize_request_der()

However, the certificate signing request does not contain the extensions. This is in line with an earlier issue in OpenSSL, where extensions from the certificate were not transferred to the CSR and vice versa. This appears to have been fixed by now: https://github.com/openssl/openssl/issues/10458

Do you plan to add a feature to copy X509v3 extensions from the certificate into the CSR?

Thanks.

Dominant language
Rust
Stars
516
Forks
160
PR merge metrics
No merged PRs in 30d

Getting set up

This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.

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.

More from rustls/rcgen

All issues in rustls/rcgen

Similar issues

More Rust issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.