Module asn1

Source
Expand description

Defines the format of certificates

This module is used by x509 and other certificate building functions to describe time, strings, and objects.

Abstract Syntax Notation One is an interface description language. The specification comes from X.208 by OSI, and rewritten in X.680. ASN.1 describes properties of an object with a type set. Those types can be atomic, structured, choice, and other (CHOICE and ANY). These types are expressed as a number and the assignment operator ::= gives the type a name.

The implementation here provides a subset of the ASN.1 types that OpenSSL uses, especially in the properties of a certificate used in HTTPS.

§Examples

use openssl::asn1::Asn1Time;
let tomorrow = Asn1Time::days_from_now(1);

Structs§

Asn1BitString
Sequence of bytes
Asn1BitStringRef
A reference to an Asn1BitString.
Asn1Enumerated
An ASN.1 enumerated.
Asn1EnumeratedRef
A reference to an Asn1Enumerated.
Asn1GeneralizedTime
Non-UTC representation of time
Asn1GeneralizedTimeRef
Reference to a Asn1GeneralizedTime
Asn1Integer
Numeric representation
Asn1IntegerRef
A reference to an Asn1Integer.
Asn1Object
Object Identifier
Asn1ObjectRef
A reference to an Asn1Object.
Asn1OctetString
ASN.1 OCTET STRING type
Asn1OctetStringRef
A reference to an Asn1OctetString.
Asn1String
Primary ASN.1 type used by OpenSSL
Asn1StringRef
A reference to an Asn1String.
Asn1Time
Time storage and comparison
Asn1TimeRef
Reference to an Asn1Time
Asn1Type
The type of an ASN.1 value.
TimeDiff
Difference between two ASN1 times.