certstrap | bootstrap CAs , certificate requests | TLS library
kandi X-RAY | certstrap Summary
kandi X-RAY | certstrap Summary
A simple certificate manager written in Go, to bootstrap your own certificate authority and public key infrastructure. Adapted from etcd-ca. certstrap is a very convenient app if you don't feel like dealing with openssl, its myriad of options or config files.
Support
Quality
Security
License
Reuse
Top functions reviewed by kandi - BETA
Currently covering the most popular Java, JavaScript and Python libraries. See a Sample of certstrap
certstrap Key Features
certstrap Examples and Code Snippets
Community Discussions
Trending Discussions on certstrap
QUESTION
I have the following self signed certificate chain:
RootCA -> IntermediateCA (signed by root) -> Server Cert (leaf for TLS, signed by intermediate)
RootCA has MaxPathLen = 0
My certificates are generated using certstrap using CreateCertificateAuthority
and CreateIntermediateCertificateAuthority
so I assumed the default settings were correct. But when trying to get my self signed certificates working with Python or Node client side I hit a path length constraint exceeded
error.
NOTE: The setup was working fine when using a Go TLS client by just supplying the intermediate CA certificate. Python and Node seem to require the full cert chain hence why the problem arose.
From rfc5280 I see the statement:
In this case, it gives the maximum number of non-self-issued intermediate certificates that may follow this certificate in a valid certification path.
I'm confused by non-self-issued intermediate certificates
. Is this implying that my chain is valid because the RootCA signed the intermediate (hence it is not non-self-issued). Or it is not valid, because the intermediate counts as as a non-self-issued
certificate. What exactly is self
referring to here? It could be self signing or the rootca being self.
Should my rootCA in this case actually have a MaxPathLen of 1?
...ANSWER
Answered 2022-Jan-13 at 20:30If the root has a MaxPathLen=0
, then it can only issue end-entity certificates and no intermediate CA certificates can follow. The Root CA is self-signed.
In your case, the Root has issued an intermediate CA and that is not allowed. And will get the error you described.
non-self-issued intermediate certificates
This refers to intermediate CAs that can follow the Root that are issued by that Root.
Or it is not valid, because the intermediate counts as as a non-self-issued certificate.
That is correct the intermediate exceeds the MaxPathlen = 0.
Self
Refers to the Root.
Root CA and maxPathLen
The root CA with a maxPathLen >= 1 will work for the scenario presented. It can have an intermediate CA and that intermediate can sign end-entity certs.
Community Discussions, Code Snippets contain sources that include Stack Exchange Network
Vulnerabilities
No vulnerabilities reported
Install certstrap
Support
Reuse Trending Solutions
Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items
Find more librariesStay Updated
Subscribe to our newsletter for trending solutions and developer bootcamps
Share this Page