cloudflare / cloudflare/boring

Add Builders for missing X509v3 Extensions

Open
#234 2 comments 0 reactions 1 assignee Claimed by @evanrittenhouse View on GitHub
Dominant language
Rust
Stars
522
Forks
171
PR merge metrics
No merged PRs in 30d

Description

Hello,
I've noticed that some of the standard X509 Extensions defined in [RFC5280](https://www.rfc-editor.org/rfc/rfc5280#section-4.2.1) aren't implemented as Builders in `:x509::extensions'.
Here is an overview of the current status:
- [x] [Authority Key Identifier](https://www.rfc-editor.org/rfc/rfc5280#section-4.2.1.1)
- [x] [Subject Key Identifier](https://www.rfc-editor.org/rfc/rfc5280#section-4.2.1.2)
- [x] [Key Usage](https://www.rfc-editor.org/rfc/rfc5280#section-4.2.1.3)
- [ ] [Certificate Policies](https://www.rfc-editor.org/rfc/rfc5280#section-4.2.1.4)
- [ ] [Policy Mappings](https://www.rfc-editor.org/rfc/rfc5280#section-4.2.1.5)
- [x] [Subject Alternative Name](https://www.rfc-editor.org/rfc/rfc5280#section-4.2.1.8)
- [ ] [Issuer Alternative Name](https://www.rfc-editor.org/rfc/rfc5280#section-4.2.1.6)
- [ ] [Subject Directory Attributes](https://www.rfc-editor.org/rfc/rfc5280#section-4.2.1.8)
- [x] [Basic Constraints](https://www.rfc-editor.org/rfc/rfc5280#section-4.2.1.9)
- [ ] [Name Constraints](https://www.rfc-editor.org/rfc/rfc5280#section-4.2.1.10)
- [ ] [Policy Constraints](https://www.rfc-editor.org/rfc/rfc5280#section-4.2.1.11)
- [x] [Extended Key Usage](https://www.rfc-editor.org/rfc/rfc5280#section-4.2.1.12)
- [ ] [CRL Distribution Points](https://www.rfc-editor.org/rfc/rfc5280#section-4.2.1.13)
- [ ] [Inhibit anyPolicy](https://www.rfc-editor.org/rfc/rfc5280#section-4.2.1.14)

I think that support for more commonly used extensions like CRL Distribution Points or Name Constraints would be really great, because it reduces the margin for error drastically by reducing the need to call `x509::X509Extension::new_nid`.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.