Container for an X.509 certificate.
The certificate may be chained.
Some fields of this structure are publicly readable. Do not modify them except via Mbed TLS library functions: the effect of modifying those fields or the data that those fields points to is unspecified.
Public Attributes#
The raw certificate data (DER).
The raw certificate body (DER).
The X.509 version.
Unique id for certificate issued by a specific CA.
Signature algorithm, e.g.
The raw issuer data (DER).
The raw subject data (DER).
The parsed issuer data (named information object).
The parsed subject data (named information object).
Start time of certificate validity.
End time of certificate validity.
Container for the public key context.
Optional X.509 v2/v3 issuer unique identifier.
Optional X.509 v2/v3 subject unique identifier.
Optional X.509 v3 extensions.
Optional list of raw entries of Subject Alternative Names extension.
Optional X.509 v3 extension subject key identifier.
Optional X.509 v3 extension authority key identifier.
Optional list of certificate policies (Only anyPolicy is printed and enforced, however the rest of the policies are still listed).
Optional list of extended key usage OIDs.
Next certificate in the linked list that constitutes the CA chain.
Public Functions#
Indicates if raw
is owned by the structure or not.
Bit string containing detected and parsed extensions.
Optional Basic Constraint extension value: 1 if this certificate belongs to a CA, 0 otherwise.
Optional Basic Constraint extension value: The maximum path length to the root certificate.
Optional key usage extension value: See the values in x509.h.
Optional Netscape certificate type extension value: See the values in x509.h.
Signature: hash of the tbs part signed with the private key.
Internal representation of the MD algorithm of the signature algorithm, e.g.
Internal representation of the Public Key algorithm of the signature algorithm, e.g.
Signature options to be passed to mbedtls_pk_verify_ext(), e.g.
Public Attribute Documentation#
tbs#
mbedtls_x509_buf mbedtls_x509_crt::tbs
The raw certificate body (DER).
The part that is To Be Signed.
issuer_raw#
mbedtls_x509_buf mbedtls_x509_crt::issuer_raw
The raw issuer data (DER).
Used for quick comparison.
subject_raw#
mbedtls_x509_buf mbedtls_x509_crt::subject_raw
The raw subject data (DER).
Used for quick comparison.
subject#
mbedtls_x509_name mbedtls_x509_crt::subject
The parsed subject data (named information object).
issuer_id#
mbedtls_x509_buf mbedtls_x509_crt::issuer_id
Optional X.509 v2/v3 issuer unique identifier.
subject_id#
mbedtls_x509_buf mbedtls_x509_crt::subject_id
Optional X.509 v2/v3 subject unique identifier.
subject_alt_names#
mbedtls_x509_sequence mbedtls_x509_crt::subject_alt_names
Optional list of raw entries of Subject Alternative Names extension.
These can be later parsed by mbedtls_x509_parse_subject_alt_name.
subject_key_id#
mbedtls_x509_buf mbedtls_x509_crt::subject_key_id
Optional X.509 v3 extension subject key identifier.
authority_key_id
mbedtls_x509_authority mbedtls_x509_crt::authority_key_id
Optional X.509 v3 extension authority key identifier.
certificate_policies#
mbedtls_x509_sequence mbedtls_x509_crt::certificate_policies
Optional list of certificate policies (Only anyPolicy is printed and enforced, however the rest of the policies are still listed).
ext_key_usage#
mbedtls_x509_sequence mbedtls_x509_crt::ext_key_usage
Optional list of extended key usage OIDs.
next#
struct mbedtls_x509_crt* mbedtls_x509_crt::next
Next certificate in the linked list that constitutes the CA chain.
NULL
indicates the end of the list. Do not modify this field directly.
Public Function Documentation#
MBEDTLS_PRIVATE#
int mbedtls_x509_crt::MBEDTLS_PRIVATE (own_buffer )
Indicates if raw
is owned by the structure or not.
Type | Direction | Argument Name | Description |
---|---|---|---|
own_buffer | N/A |
MBEDTLS_PRIVATE#
int mbedtls_x509_crt::MBEDTLS_PRIVATE (ext_types )
Bit string containing detected and parsed extensions.
Type | Direction | Argument Name | Description |
---|---|---|---|
ext_types | N/A |
MBEDTLS_PRIVATE#
int mbedtls_x509_crt::MBEDTLS_PRIVATE (ca_istrue )
Optional Basic Constraint extension value: 1 if this certificate belongs to a CA, 0 otherwise.
Type | Direction | Argument Name | Description |
---|---|---|---|
ca_istrue | N/A |
MBEDTLS_PRIVATE#
int mbedtls_x509_crt::MBEDTLS_PRIVATE (max_pathlen )
Optional Basic Constraint extension value: The maximum path length to the root certificate.
Type | Direction | Argument Name | Description |
---|---|---|---|
max_pathlen | N/A |
Path length is 1 higher than RFC 5280 'meaning', so 1+
MBEDTLS_PRIVATE#
unsigned int mbedtls_x509_crt::MBEDTLS_PRIVATE (key_usage )
Optional key usage extension value: See the values in x509.h.
Type | Direction | Argument Name | Description |
---|---|---|---|
key_usage | N/A |
MBEDTLS_PRIVATE#
unsigned char mbedtls_x509_crt::MBEDTLS_PRIVATE (ns_cert_type )
Optional Netscape certificate type extension value: See the values in x509.h.
Type | Direction | Argument Name | Description |
---|---|---|---|
ns_cert_type | N/A |
MBEDTLS_PRIVATE#
mbedtls_x509_buf mbedtls_x509_crt::MBEDTLS_PRIVATE (sig )
Signature: hash of the tbs part signed with the private key.
Type | Direction | Argument Name | Description |
---|---|---|---|
sig | N/A |
MBEDTLS_PRIVATE#
mbedtls_md_type_t mbedtls_x509_crt::MBEDTLS_PRIVATE (sig_md )
Internal representation of the MD algorithm of the signature algorithm, e.g.
Type | Direction | Argument Name | Description |
---|---|---|---|
sig_md | N/A |
MBEDTLS_MD_SHA256
MBEDTLS_PRIVATE#
mbedtls_pk_type_t mbedtls_x509_crt::MBEDTLS_PRIVATE (sig_pk )
Internal representation of the Public Key algorithm of the signature algorithm, e.g.
Type | Direction | Argument Name | Description |
---|---|---|---|
sig_pk | N/A |
MBEDTLS_PK_RSA
MBEDTLS_PRIVATE#
void * mbedtls_x509_crt::MBEDTLS_PRIVATE (sig_opts )
Signature options to be passed to mbedtls_pk_verify_ext(), e.g.
Type | Direction | Argument Name | Description |
---|---|---|---|
sig_opts | N/A |
for RSASSA-PSS