Module asn1

Expand description

Defines the format of certificiates

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 rama_boring::asn1::Asn1Time;
let tomorrow = Asn1Time::days_from_now(1);

Structs§

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