mbed TLS v2.16.0: mbedtls_x509_crt Struct Reference

mbed TLS v2.16.0

Data Fields
mbedtls_x509_crt Struct Reference
X.509 module

`#include <x509_crt.h>`

Collaboration diagram for mbedtls_x509_crt:
[legend]

## Data Fields
mbedtls_x509_buf | raw
mbedtls_x509_buf | tbs
int | version
mbedtls_x509_buf | serial
mbedtls_x509_buf | sig_oid
mbedtls_x509_buf | issuer_raw
mbedtls_x509_buf | subject_raw
mbedtls_x509_name | issuer
mbedtls_x509_name | subject
mbedtls_x509_time | valid_from
mbedtls_x509_time | valid_to
mbedtls_pk_context | pk
mbedtls_x509_buf | issuer_id
mbedtls_x509_buf | subject_id
mbedtls_x509_buf | v3_ext
mbedtls_x509_sequence | subject_alt_names
int | ext_types
int | ca_istrue
int | max_pathlen
unsigned int | key_usage
mbedtls_x509_sequence | ext_key_usage
unsigned char | ns_cert_type
mbedtls_x509_buf | sig
mbedtls_md_type_t | sig_md
mbedtls_pk_type_t | sig_pk
void * | sig_opts
struct mbedtls_x509_crt * | next

## Detailed Description

Container for an X.509 certificate. The certificate may be chained.

Definition at line 53 of file x509_crt.h.

## Field Documentation

## ◆ ca_istrue

int mbedtls_x509_crt::ca_istrue

Optional Basic Constraint extension value: 1 if this certificate belongs to a CA, 0 otherwise.

Definition at line 79 of file x509_crt.h.

## ◆ ext_key_usage

mbedtls_x509_sequence mbedtls_x509_crt::ext_key_usage

Optional list of extended key usage OIDs.

Definition at line 84 of file x509_crt.h.

## ◆ ext_types

int mbedtls_x509_crt::ext_types

Bit string containing detected and parsed extensions

Definition at line 78 of file x509_crt.h.

## ◆ issuer

mbedtls_x509_name mbedtls_x509_crt::issuer

The parsed issuer data (named information object).

Definition at line 65 of file x509_crt.h.

## ◆ issuer_id

mbedtls_x509_buf mbedtls_x509_crt::issuer_id

Optional X.509 v2/v3 issuer unique identifier.

Definition at line 73 of file x509_crt.h.

## ◆ issuer_raw

mbedtls_x509_buf mbedtls_x509_crt::issuer_raw

The raw issuer data (DER). Used for quick comparison.

Definition at line 62 of file x509_crt.h.

## ◆ key_usage

unsigned int mbedtls_x509_crt::key_usage

Optional key usage extension value: See the values in x509.h

Definition at line 82 of file x509_crt.h.

## ◆ max_pathlen

int mbedtls_x509_crt::max_pathlen

Optional Basic Constraint extension value: The maximum path length to the root certificate. Path length is 1 higher than RFC 5280 'meaning', so 1+

Definition at line 80 of file x509_crt.h.

## ◆ next

struct mbedtls_x509_crt* mbedtls_x509_crt::next

Next certificate in the CA-chain.

Definition at line 93 of file x509_crt.h.

## ◆ ns_cert_type

unsigned char mbedtls_x509_crt::ns_cert_type

Optional Netscape certificate type extension value: See the values in x509.h

Definition at line 86 of file x509_crt.h.

## ◆ pk

mbedtls_pk_context mbedtls_x509_crt::pk

Container for the public key context.

Definition at line 71 of file x509_crt.h.

## ◆ raw

mbedtls_x509_buf mbedtls_x509_crt::raw

The raw certificate data (DER).

Definition at line 55 of file x509_crt.h.

## ◆ serial

mbedtls_x509_buf mbedtls_x509_crt::serial

Unique id for certificate issued by a specific CA.

Definition at line 59 of file x509_crt.h.

## ◆ sig

mbedtls_x509_buf mbedtls_x509_crt::sig

Signature: hash of the tbs part signed with the private key.

Definition at line 88 of file x509_crt.h.

## ◆ sig_md

mbedtls_md_type_t mbedtls_x509_crt::sig_md

Internal representation of the MD algorithm of the signature algorithm, e.g. MBEDTLS_MD_SHA256

Definition at line 89 of file x509_crt.h.

## ◆ sig_oid

mbedtls_x509_buf mbedtls_x509_crt::sig_oid

Signature algorithm, e.g. sha1RSA

Definition at line 60 of file x509_crt.h.

## ◆ sig_opts

void* mbedtls_x509_crt::sig_opts

Signature options to be passed to mbedtls_pk_verify_ext(), e.g. for RSASSA-PSS

Definition at line 91 of file x509_crt.h.

## ◆ sig_pk

mbedtls_pk_type_t mbedtls_x509_crt::sig_pk

Internal representation of the Public Key algorithm of the signature algorithm, e.g. MBEDTLS_PK_RSA

Definition at line 90 of file x509_crt.h.

## ◆ subject

mbedtls_x509_name mbedtls_x509_crt::subject

The parsed subject data (named information object).

Definition at line 66 of file x509_crt.h.

## ◆ subject_alt_names

mbedtls_x509_sequence mbedtls_x509_crt::subject_alt_names

Optional list of Subject Alternative Names (Only dNSName supported).

Definition at line 76 of file x509_crt.h.

## ◆ subject_id

mbedtls_x509_buf mbedtls_x509_crt::subject_id

Optional X.509 v2/v3 subject unique identifier.

Definition at line 74 of file x509_crt.h.

## ◆ subject_raw

mbedtls_x509_buf mbedtls_x509_crt::subject_raw

The raw subject data (DER). Used for quick comparison.

Definition at line 63 of file x509_crt.h.

## ◆ tbs

mbedtls_x509_buf mbedtls_x509_crt::tbs

The raw certificate body (DER). The part that is To Be Signed.

Definition at line 56 of file x509_crt.h.

## ◆ v3_ext

mbedtls_x509_buf mbedtls_x509_crt::v3_ext

Optional X.509 v3 extensions.

Definition at line 75 of file x509_crt.h.

## ◆ valid_from

mbedtls_x509_time mbedtls_x509_crt::valid_from

Start time of certificate validity.

Definition at line 68 of file x509_crt.h.

## ◆ valid_to

mbedtls_x509_time mbedtls_x509_crt::valid_to

End time of certificate validity.

Definition at line 69 of file x509_crt.h.

## ◆ version

int mbedtls_x509_crt::version

The X.509 version. (1=v1, 2=v2, 3=v3)

Definition at line 58 of file x509_crt.h.

The documentation for this struct was generated from the following file:

- x509_crt.h