pub struct X509Certificate<'a> { /* private fields */ }
Expand description

A parsed (but not validated) X.509 version 3 certificate.

Implementations

The tbsCertificate, signatureAlgorithm, and signature

The serial number. Big-endian and non-empty. The first byte is guaranteed to be non-zero.

The X.509 issuer. This has not been validated and is not trusted. In particular, it is not guaranteed to be valid ASN.1 DER.

The earliest time, in seconds since the Unix epoch, that the certificate is valid.

Will always be between MIN_ASN1_TIMESTAMP and MAX_ASN1_TIMESTAMP, inclusive.

The latest time, in seconds since the Unix epoch, that the certificate is valid.

Will always be between MIN_ASN1_TIMESTAMP and MAX_ASN1_TIMESTAMP, inclusive.

X.509 subject. This has not been validated and is not trusted. In particular, it is not guaranteed to be valid ASN.1 DER.

The subjectPublicKeyInfo, encoded as ASN.1 DER. There is no guarantee that the OID or public key are valid ASN.1 DER, but if they are not, all methods that check signatures will fail.

An iterator over the certificate’s extensions.

Verify a signature made by the certificate.

Verify a signature made by the certificate, applying the restrictions of TLSv1.3:

  • ECDSA algorithms where the hash has a different size than the curve are not allowed.
  • RSA PKCS1.5 signatures are not allowed.

This is a good choice for new protocols and applications. Note that extensions are not checked, so applications must process extensions themselves.

Verify a signature made by the certificate, applying the restrictions of TLSv1.2:

  • RSA-PSS signatures are not allowed.

This should not be used outside of a TLSv1.2 implementation. Note that extensions are not checked, so applications must process extensions themselves.

Check that the certificate is valid at time now, in seconds since the Epoch.

The tbsCertficate

The AlgorithmId of the algorithm used to sign this certificate

The signature of the certificate

Verify that this certificate was signed by cert’s secret key.

This does not check that cert is a certificate authority.

As above, but also check that self’s issuer is cert’s subject.

👎 Deprecated since 0.3.3:

Use check_self_issued instead

Check that this certificate is self-signed. This does not check that the subject and issuer are equal.

Check that this certificate is self-signed, and that the subject and issuer are equal.

Trait Implementations

Formats the value using the given formatter. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.