Expand description
Verified ASN.1 contents, tag-length-value wrappers, and schema combinators.
der exposes notation-like constants and modifiers for canonical DER.
ber provides specialized formats for BER alternatives such as
constructed strings and indefinite-length containers. Shared modules define
contents formats, tags, constraints, retagging, disjointness certificates,
and allocation-free DER ordering.
The vest_asn1 frontend guide
describes schema generation and the supported ASN.1 subset. Direct backend
users should start with der or ber rather than assembling raw TLVs.
Re-exports§
pub use any::AnyOwned;pub use any::Any;pub use any::AnySpec;pub use ber::BerAnyFmt;pub use ber::BerBitStringFmt;pub use ber::BerBmpStringFmt;pub use ber::BerCharStringFmt;pub use ber::BerIa5StringFmt;pub use ber::BerOctetStringFmt;pub use ber::BerPrintableStringFmt;pub use ber::BerSequenceFmt;pub use ber::BerSequenceOfFmt;pub use ber::BerTeletexStringFmt;pub use ber::BerUtf8StringFmt;pub use ber::EocFmt;pub use ber::EOC;pub use bitstring::BitStringOwned;pub use bitstring::BitString;pub use bitstring::BitStringSpec;pub use bmpstring::BmpString;pub use bmpstring::BmpStringSpec;pub use constraints::ConstraintAnd;pub use constraints::ConstraintNot;pub use constraints::ConstraintOr;pub use constraints::IntegerRange;pub use constraints::Size;pub use datetime::DateTime;pub use datetime::TimePrecision;pub use datetime::TimeZone;pub use der_ord::DeepViewIdentity;pub use der_ord::DerOrd;pub use enumerated::Enumerated;pub use generalizedtime::GeneralizedTime;pub use generalizedtime::GeneralizedTimeSpec;pub use ia5string::Ia5StringOwned;pub use ia5string::Ia5String;pub use ia5string::Ia5StringSpec;pub use integer::Integer;pub use integer::Integer16Fmt;pub use integer::Integer8Fmt;pub use modifiers::DefaultedFmt;pub use modifiers::ImplicitlyTaggedFmt;pub use modifiers::Retaggable;pub use numericstring::NumericStringOwned;pub use numericstring::NumericString;pub use numericstring::NumericStringFmt;pub use numericstring::NumericStringFmt;pub use numericstring::NumericStringSpec;pub use oid::ObjectIdentifier;pub use oid::ObjectIdentifierSpec;pub use printablestring::PrintableStringOwned;pub use printablestring::PrintableString;pub use printablestring::PrintableStringSpec;pub use real::Real;pub use real::RealSpec;pub use set_of::SetOfFmt;pub use tag::constructed_tag;pub use tag::primitive_tag;pub use tag::Class;pub use tag::Tag;pub use teletexstring::TeletexStringOwned;pub use teletexstring::TeletexString;pub use teletexstring::TeletexStringSpec;pub use universalstring::UniversalString;pub use universalstring::UniversalStringSpec;pub use utctime::UtcTime;pub use utf8string::Utf8String;pub use utf8string::Utf8StringOwned;pub use der::*;
Modules§
- any
- ASN.1 ANY / open-type complete TLV format. ASN.1 ANY / open-type values.
- ber
- BER indefinite-length and constructed-value combinators. BER constructed-value formats and notation-style constructors.
- bitstring
- ASN.1 BIT STRING contents octets. ASN.1 BIT STRING contents values and primitive contents format.
- bmpstring
- ASN.1 BMPString contents. ASN.1 BMPString values and UCS-2 contents format.
- boolean
- ASN.1 BOOLEAN contents octet. ASN.1 BOOLEAN contents under DER and BER rules.
- constraints
- Reusable ASN.1 subtype-constraint predicates. Reusable executable and specification predicates for ASN.1 subtype constraints.
- datetime
- Shared semantic date/time values and calendar operations. Shared logical date, time, precision, and time-zone representations.
- der
- ASN.1 notation-style aliases for universal formats with DER encoding. Canonical DER universal formats and notation-style constructors.
- der_ord
- Allocation-free ordering of values by their DER encodings. Allocation-free comparison of values by their complete DER encodings.
- disjoint
- Disjointness proofs for complete ASN.1 formats. Compositional disjointness proofs for complete ASN.1 formats.
- enumerated
- ASN.1 ENUMERATED contents octets. ASN.1 ENUMERATED contents.
- generalizedtime
- ASN.1 GeneralizedTime contents. ASN.1 GeneralizedTime values and contents format.
- ia5string
- ASN.1 IA5String contents. ASN.1 IA5String borrowed and owned values and contents format.
- integer
- ASN.1 INTEGER contents octets. ASN.1 INTEGER values, general contents, and bounded integer formats.
- length
- ASN.1 definite length octets. ASN.1 definite and BER indefinite length octets.
- macros
- Macros for implementing verified nominal ASN.1 formats. Implementations for generated nominal ASN.1 format types.
- modifiers
- Shared ASN.1 tagging and component modifiers. Shared ASN.1 component modifiers and notation constructors.
- numericstring
- ASN.1 NumericString contents. ASN.1 NumericString contents.
- oid
- ASN.1 OBJECT IDENTIFIER contents octets. ASN.1 OBJECT IDENTIFIER contents.
- printablestring
- ASN.1 PrintableString contents. ASN.1 PrintableString borrowed and owned values and contents format.
- real
- ASN.1 REAL contents octets. ASN.1 BER/DER REAL contents.
- set_of
- ASN.1 DER SET OF contents.
ASN.1 DER
SET OFcontents. - tag
- ASN.1 tag octets. ASN.1 identifier octets, tag classes, and universal tag numbers.
- teletexstring
- ASN.1 TeletexString contents. ASN.1 TeletexString borrowed and owned values and contents format.
- tlv
- ASN.1 TLV wrapper. Generic ASN.1 tag-length-value wrappers for definite-length contents.
- universalstring
- ASN.1 UniversalString contents. ASN.1 UniversalString contents.
- utctime
- ASN.1 UTCTime contents. ASN.1 UTCTime values and contents format.
- utf8string
- ASN.1 UTF8String contents. ASN.1 UTF8String borrowed and owned values and contents format.
Structs§
- ASN1Fmt
- AnyFmt
- ASN.1 ANY/open-type format.
- BerLength
Fmt - BER length determinant accepting both definite and indefinite encodings.
- BitString
Fmt - ASN.1 BIT STRING contents format.
- BmpString
Fmt - ASN.1 BMPString format.
- BoolFmt
- ASN.1 BOOLEAN format.
- Enumerated
Fmt - ASN.1 ENUMERATED contents format.
- Generalized
Time Fmt - ASN.1 GeneralizedTime format.
- Ia5String
Fmt - ASN.1 IA5String format.
- Integer
Fmt - ASN.1 INTEGER contents format.
- Length
Fmt - ASN.1 definite length format.
- NatLength
Fmt - ASN.1 definite length format whose codomain is
nat - Object
Identifier Fmt - ASN.1 OBJECT IDENTIFIER contents format.
- Printable
String Fmt - ASN.1 PrintableString format.
- RealFmt
- ASN.1 REAL contents format.
- TagFmt
- ASN.1 tag format combinator.
- Teletex
String Fmt - ASN.1 TeletexString format.
- Universal
String Fmt - ASN.1 UniversalString format.
- UtcTime
Fmt - ASN.1 UTCTime format.
- Utf8
String Fmt - ASN.1 UTF8String format.
Enums§
- BerLength
- BER length, including the indefinite form (
0x80).
Constants§
- BER
- BerBool
Fmt - Convenience value alias for the BER variant of ASN.1 BOOLEAN.
- BerDefinite
AnyFmt - BerGeneralized
Time Fmt - BerUtc
Time Fmt - DER
- DerAny
Fmt - DerBool
Fmt - Convenience value alias for the DER variant of ASN.1 BOOLEAN.
- DerGeneralized
Time Fmt - DerUtc
Time Fmt - NullFmt
- Convenience value alias for ASN.1 NULL format.
- Octet
String Fmt - Convenience value alias for ASN.1 OCTET STRING contents format.
Type Aliases§
- BerBit
String Content Fmt - Convenience type alias for primitive BER BIT STRING contents.
- BerBool
Fmt - Convenience type alias for the BER variant of ASN.1 BOOLEAN.
- BerDefinite
AnyFmt - Definite-length-only BER ANY format.
- BerGeneralized
Time Fmt - BerUtc
Time Fmt - DerAny
Fmt - DerBit
String Fmt - Convenience type alias for the DER variant of ASN.1 BIT STRING.
- DerBool
Fmt - Convenience type alias for the DER variant of ASN.1 BOOLEAN.
- DerGeneralized
Time Fmt - DerUtc
Time Fmt - NullFmt
- ASN.1 NULL format.
- Octet
String Fmt - ASN.1 OCTET STRING contents format (primitive).