|
Botan 3.13.0
Crypto and TLS for C&
|
#include <der_enc.h>
Public Types | |
| typedef std::function< void(const uint8_t[], size_t)> | append_fn |
| typedef std::function<void(const uint8_t[], size_t)> Botan::DER_Encoder::append_fn |
|
default |
DER encode, writing to an internal buffer Use get_contents or get_contents_unlocked to read the results after all encoding is completed.
References BOTAN_FUTURE_EXPLICIT, and DER_Encoder().
Referenced by add_object(), add_object(), add_object(), add_object(), add_object(), add_object(), DER_Encoder(), encode(), encode(), encode(), encode(), encode(), encode(), encode(), encode(), encode(), encode(), encode(), encode_bitstring(), encode_bitstring(), encode_if(), encode_if(), encode_if(), encode_if(), encode_implicit(), encode_list(), encode_named_bitstring(), encode_null(), encode_octet_aligned_bitstring(), encode_optional(), encode_optional(), end_cons(), end_explicit(), raw_bytes(), raw_bytes(), start_cons(), start_context_specific(), start_explicit(), start_explicit_context_specific(), start_sequence(), start_set(), start_set(), and start_set().
| Botan::DER_Encoder::DER_Encoder | ( | secure_vector< uint8_t > & | vec | ) |
DER encode, writing to
| vec | If this constructor is used, get_contents* may not be called. |
Definition at line 81 of file der_enc.cpp.
| Botan::DER_Encoder::DER_Encoder | ( | std::vector< uint8_t > & | vec | ) |
DER encode, writing to
| vec | If this constructor is used, get_contents* may not be called. |
Definition at line 89 of file der_enc.cpp.
|
inline |
DER encode, calling append to write output If this constructor is used, get_contents* may not be called.
Definition at line 55 of file der_enc.h.
References BOTAN_FUTURE_EXPLICIT.
|
inline |
Write a tag and length header followed by the given contents
| type_tag | the type tag to encode with |
| class_tag | the class tag to encode with |
| rep | the contents of the object |
Definition at line 432 of file der_enc.h.
References add_object(), and DER_Encoder().
|
inline |
Write a tag and length header followed by the given contents
| type_tag | the type tag to encode with |
| class_tag | the class tag to encode with |
| rep | the contents of the object |
Definition at line 421 of file der_enc.h.
References add_object(), and DER_Encoder().
| DER_Encoder & Botan::DER_Encoder::add_object | ( | ASN1_Type | type_tag, |
| ASN1_Class | class_tag, | ||
| const uint8_t | rep[], | ||
| size_t | length ) |
Write a tag and length header followed by the given contents
| type_tag | the type tag to encode with |
| class_tag | the class tag to encode with |
| rep | the contents of the object |
| length | the length of rep in bytes |
Definition at line 285 of file der_enc.cpp.
References DER_Encoder().
Referenced by add_object(), add_object(), add_object(), add_object(), add_object(), Botan::AlternativeName::decode_from(), encode(), encode(), encode(), encode_bitstring(), Botan::AlternativeName::encode_into(), Botan::ASN1_String::encode_into(), Botan::ASN1_Time::encode_into(), Botan::Cert_Extension::IPAddressBlocks::IPAddressFamily::encode_into(), Botan::GeneralName::encode_into(), Botan::OCSP::SingleResponse::encode_into(), Botan::OID::encode_into(), Botan::X509_Serial_Number::encode_into(), encode_null(), and Botan::PKCS12::export_to().
|
inline |
Write a tag and length header followed by the given contents
| type_tag | the type tag to encode with |
| class_tag | the class tag to encode with |
| rep | the contents of the object |
Definition at line 410 of file der_enc.h.
References add_object(), and DER_Encoder().
| DER_Encoder & Botan::DER_Encoder::add_object | ( | ASN1_Type | type_tag, |
| ASN1_Class | class_tag, | ||
| std::string_view | str ) |
Write a tag and length header followed by the given contents
| type_tag | the type tag to encode with |
| class_tag | the class tag to encode with |
| str | the contents of the object |
Definition at line 475 of file der_enc.cpp.
References add_object(), Botan::as_span_of_bytes(), and DER_Encoder().
| DER_Encoder & Botan::DER_Encoder::add_object | ( | ASN1_Type | type_tag, |
| ASN1_Class | class_tag, | ||
| uint8_t | val ) |
Write a tag and length header followed by a single byte of contents
| type_tag | the type tag to encode with |
| class_tag | the class tag to encode with |
| val | the contents of the object |
Definition at line 482 of file der_enc.cpp.
References add_object(), and DER_Encoder().
| DER_Encoder & Botan::DER_Encoder::encode | ( | bool | b | ) |
Encode a BOOLEAN
Definition at line 313 of file der_enc.cpp.
References Botan::Boolean, DER_Encoder(), encode(), and Botan::Universal.
Referenced by Botan::AlternativeName::add_other_name(), Botan::GOST_3410_PublicKey::algorithm_identifier(), Botan::OCSP::Request::BER_encode(), Botan::PKCS8::BER_encode(), Botan::PKCS8::BER_encode_encrypted_pbkdf_iter(), Botan::PKCS8::BER_encode_encrypted_pbkdf_msec(), Botan::PKCS10_Request::create(), Botan::DL_Group::DER_encode(), Botan::DL_PrivateKey::DER_encode(), Botan::DL_PublicKey::DER_encode(), Botan::EC_Group::DER_encode(), Botan::TLS::Session::DER_encode(), Botan::EC_Group_Data::EC_Group_Data(), encode(), encode(), encode(), encode(), encode(), encode(), encode(), encode_if(), encode_if(), encode_if(), Botan::AlgorithmIdentifier::encode_into(), Botan::AlternativeName::encode_into(), Botan::Attribute::encode_into(), Botan::Cert_Extension::ASBlocks::ASIdentifiers::encode_into(), Botan::Cert_Extension::ASBlocks::ASIdOrRange::encode_into(), Botan::Cert_Extension::CRL_Distribution_Points::Distribution_Point::encode_into(), Botan::Cert_Extension::IPAddressBlocks::IPAddressFamily::encode_into(), Botan::CRL_Entry::encode_into(), Botan::Extensions::encode_into(), Botan::GeneralSubtree::encode_into(), Botan::OCSP::CertID::encode_into(), Botan::OCSP::SingleResponse::encode_into(), Botan::PSS_Params::encode_into(), Botan::X509_DN::encode_into(), Botan::X509_Object::encode_into(), encode_list(), encode_optional(), encode_optional(), Botan::PKCS12::export_to(), Botan::X509_Object::make_signed(), Botan::pkcs12_pbe_encrypt(), Botan::EC_PrivateKey::private_key_bits(), Botan::Ed25519_PrivateKey::private_key_bits(), Botan::Ed448_PrivateKey::private_key_bits(), Botan::McEliece_PrivateKey::private_key_bits(), Botan::RSA_PrivateKey::private_key_bits(), Botan::X25519_PrivateKey::private_key_bits(), Botan::X448_PrivateKey::private_key_bits(), Botan::XMSS_PrivateKey::private_key_bits(), Botan::Private_Key::private_key_info(), Botan::GOST_3410_PublicKey::public_key_bits(), Botan::McEliece_PublicKey::public_key_bits(), Botan::RSA_PublicKey::public_key_bits(), Botan::TPM_PrivateKey::public_key_bits(), Botan::XMSS_PublicKey::public_key_bits(), Botan::PSS_Params::serialize(), Botan::TLS::Certificate_Request_12::serialize(), Botan::EC_Group_Data::set_oid(), and Botan::Public_Key::subject_public_key().
| DER_Encoder & Botan::DER_Encoder::encode | ( | bool | b, |
| ASN1_Type | type_tag, | ||
| ASN1_Class | class_tag = ASN1_Class::ContextSpecific ) |
Encode a BOOLEAN with an IMPLICIT tagging
| b | the value to encode |
| type_tag | the type tag to encode with |
| class_tag | the class tag to encode with |
Definition at line 341 of file der_enc.cpp.
References add_object(), and DER_Encoder().
| DER_Encoder & Botan::DER_Encoder::encode | ( | const ASN1_Object & | obj | ) |
Request for an object to encode itself to this stream
| obj | the object to encode |
Definition at line 467 of file der_enc.cpp.
References DER_Encoder(), and Botan::ASN1_Object::encode_into().
| DER_Encoder & Botan::DER_Encoder::encode | ( | const BigInt & | n | ) |
Encode an INTEGER
Definition at line 327 of file der_enc.cpp.
References DER_Encoder(), encode(), Botan::Integer, and Botan::Universal.
| DER_Encoder & Botan::DER_Encoder::encode | ( | const BigInt & | n, |
| ASN1_Type | type_tag, | ||
| ASN1_Class | class_tag = ASN1_Class::ContextSpecific ) |
Encode an INTEGER with an IMPLICIT tagging
| n | the value to encode |
| type_tag | the type tag to encode with |
| class_tag | the class tag to encode with |
Definition at line 389 of file der_enc.cpp.
References add_object(), DER_Encoder(), and Botan::ASN1::integer_contents().
|
inline |
Encode an OCTET STRING or octet aligned BIT STRING with an IMPLICIT tagging
| v | the contents of the object |
| len | the length of v in bytes |
| real_type | either ASN1_Type::OctetString or ASN1_Type::BitString |
| type_tag | the type tag to encode with |
| class_tag | the class tag to encode with |
Definition at line 285 of file der_enc.h.
References Botan::ContextSpecific, DER_Encoder(), and encode().
|
inline |
Encode an OCTET STRING or an octet aligned BIT STRING
| val | the contents of the object |
| len | the length of val in bytes |
| real_type | either ASN1_Type::OctetString or ASN1_Type::BitString |
Definition at line 232 of file der_enc.h.
References DER_Encoder(), and encode().
| DER_Encoder & Botan::DER_Encoder::encode | ( | size_t | s | ) |
Encode an INTEGER
Definition at line 320 of file der_enc.cpp.
References DER_Encoder(), encode(), Botan::BigInt::from_u64(), Botan::Integer, and Botan::Universal.
| DER_Encoder & Botan::DER_Encoder::encode | ( | size_t | s, |
| ASN1_Type | type_tag, | ||
| ASN1_Class | class_tag = ASN1_Class::ContextSpecific ) |
Encode an INTEGER with an IMPLICIT tagging
| s | the value to encode |
| type_tag | the type tag to encode with |
| class_tag | the class tag to encode with |
Definition at line 349 of file der_enc.cpp.
References DER_Encoder(), encode(), and Botan::BigInt::from_u64().
| DER_Encoder & Botan::DER_Encoder::encode | ( | std::span< const uint8_t > | val, |
| ASN1_Type | real_type ) |
Encode an OCTET STRING or an octet aligned BIT STRING
| val | the contents of the object |
| real_type | either ASN1_Type::OctetString or ASN1_Type::BitString |
Definition at line 334 of file der_enc.cpp.
References DER_Encoder(), encode(), and Botan::Universal.
| DER_Encoder & Botan::DER_Encoder::encode | ( | std::span< const uint8_t > | value, |
| ASN1_Type | real_type, | ||
| ASN1_Type | type_tag, | ||
| ASN1_Class | class_tag = ASN1_Class::ContextSpecific ) |
Encode an OCTET STRING or octet aligned BIT STRING with an IMPLICIT tagging
| value | the contents of the object |
| real_type | either ASN1_Type::OctetString or ASN1_Type::BitString |
| type_tag | the type tag to encode with |
| class_tag | the class tag to encode with |
Definition at line 396 of file der_enc.cpp.
References add_object(), Botan::BitString, DER_Encoder(), encode_bitstring(), and Botan::OctetString.
| DER_Encoder & Botan::DER_Encoder::encode_bitstring | ( | const ASN1_BitString & | bits, |
| ASN1_Type | type_tag = ASN1_Type::BitString, | ||
| ASN1_Class | class_tag = ASN1_Class::Universal ) |
Encode a BIT STRING
| bits | the value to encode |
| type_tag | the type tag to encode with |
| class_tag | the class tag to encode with |
Definition at line 434 of file der_enc.cpp.
References Botan::ASN1_BitString::bytes(), DER_Encoder(), encode_bitstring(), and Botan::ASN1_BitString::unused_bits().
| DER_Encoder & Botan::DER_Encoder::encode_bitstring | ( | std::span< const uint8_t > | bits, |
| size_t | unused_bits = 0, | ||
| ASN1_Type | type_tag = ASN1_Type::BitString, | ||
| ASN1_Class | class_tag = ASN1_Class::Universal ) |
Encode a BIT STRING, with bits not including the initial unused-bits octet.
Definition at line 411 of file der_enc.cpp.
References add_object(), and DER_Encoder().
Referenced by encode(), encode_bitstring(), Botan::Cert_Extension::IPAddressBlocks::IPAddressOrRange< V >::encode_into(), encode_named_bitstring(), and encode_octet_aligned_bitstring().
|
inline |
Encode a BOOLEAN if pred is true
| pred | if false nothing is written |
| num | the value to encode |
Definition at line 386 of file der_enc.h.
References DER_Encoder(), and encode().
|
inline |
Encode an object if pred is true
| pred | if false nothing is written |
| obj | the object to encode |
Definition at line 360 of file der_enc.h.
References DER_Encoder(), and encode().
|
inline |
Write the contents of another encoder to this stream if pred is true
| pred | if false nothing is written |
| enc | the encoder whose contents are written |
Definition at line 347 of file der_enc.h.
References DER_Encoder(), get_contents(), and raw_bytes().
|
inline |
Encode an INTEGER if pred is true
| pred | if false nothing is written |
| num | the value to encode |
Definition at line 373 of file der_enc.h.
References DER_Encoder(), and encode().
|
inline |
Encode value and emit just its body bytes under an IMPLICIT type_tag/class_tag (e.g. for [N] IMPLICIT OBJECT IDENTIFIER where the body is an OID's arc bytes but the tag must be [N]). The primitive/constructed bit is copied from value.
Definition at line 461 of file der_enc.h.
References Botan::ContextSpecific, and DER_Encoder().
Referenced by Botan::AlternativeName::encode_into().
|
inline |
Encode each element of the vector in turn
| values | the values to encode |
Definition at line 327 of file der_enc.h.
References DER_Encoder(), and encode().
Referenced by Botan::TLS::Session::DER_encode(), Botan::Cert_Extension::ASBlocks::ASIdentifierChoice::encode_into(), and Botan::Cert_Extension::IPAddressBlocks::IPAddressChoice< V >::encode_into().
| DER_Encoder & Botan::DER_Encoder::encode_named_bitstring | ( | uint64_t | bits, |
| size_t | width, | ||
| ASN1_Type | type_tag = ASN1_Type::BitString, | ||
| ASN1_Class | class_tag = ASN1_Class::Universal ) |
Helper for encoding BIT STRING elements that are actually bit sets, rather than being OCTET STRINGS with the wrong type.
Definition at line 438 of file der_enc.cpp.
References Botan::ctz(), DER_Encoder(), and encode_bitstring().
| DER_Encoder & Botan::DER_Encoder::encode_null | ( | ) |
Encode a NULL
Definition at line 306 of file der_enc.cpp.
References add_object(), DER_Encoder(), Botan::Null, and Botan::Universal.
Referenced by Botan::Cert_Extension::ASBlocks::ASIdentifierChoice::encode_into(), and Botan::Cert_Extension::IPAddressBlocks::IPAddressChoice< V >::encode_into().
|
inline |
Encode a BIT STRING with no unused bits
| bytes | the bits to encode |
| type_tag | the type tag to encode with |
| class_tag | the class tag to encode with |
Definition at line 210 of file der_enc.h.
References Botan::BitString, DER_Encoder(), encode_bitstring(), and Botan::Universal.
Referenced by Botan::X509_Object::encode_into(), Botan::X509_Object::make_signed(), Botan::EC_PrivateKey::private_key_bits(), and Botan::Public_Key::subject_public_key().
|
inline |
Encode a value if it is set, otherwise write nothing
| value | the value to encode |
Definition at line 314 of file der_enc.h.
References DER_Encoder(), and encode().
|
inline |
Encode a value unless it is equal to the DEFAULT
| value | the value to encode |
| default_value | the value which should be omitted |
Definition at line 301 of file der_enc.h.
References DER_Encoder(), encode(), and encode_optional().
Referenced by Botan::Extensions::encode_into(), and encode_optional().
| DER_Encoder & Botan::DER_Encoder::end_cons | ( | ) |
Finish the innermost open constructed encoding
Throws Invalid_State if no constructed encoding is open.
Definition at line 208 of file der_enc.cpp.
References DER_Encoder().
Referenced by Botan::GOST_3410_PublicKey::algorithm_identifier(), Botan::OCSP::Request::BER_encode(), Botan::PKCS8::BER_encode(), Botan::PKCS8::BER_encode_encrypted_pbkdf_iter(), Botan::PKCS8::BER_encode_encrypted_pbkdf_msec(), Botan::PKCS10_Request::create(), Botan::DL_Group::DER_encode(), Botan::EC_Group::DER_encode(), Botan::TLS::Session::DER_encode(), Botan::AlgorithmIdentifier::encode_into(), Botan::AlternativeName::encode_into(), Botan::Attribute::encode_into(), Botan::Cert_Extension::ASBlocks::ASIdentifierChoice::encode_into(), Botan::Cert_Extension::ASBlocks::ASIdentifiers::encode_into(), Botan::Cert_Extension::ASBlocks::ASIdOrRange::encode_into(), Botan::Cert_Extension::CRL_Distribution_Points::Distribution_Point::encode_into(), Botan::Cert_Extension::IPAddressBlocks::IPAddressChoice< V >::encode_into(), Botan::Cert_Extension::IPAddressBlocks::IPAddressFamily::encode_into(), Botan::Cert_Extension::IPAddressBlocks::IPAddressOrRange< V >::encode_into(), Botan::CRL_Entry::encode_into(), Botan::Extensions::encode_into(), Botan::GeneralSubtree::encode_into(), Botan::OCSP::CertID::encode_into(), Botan::OCSP::SingleResponse::encode_into(), Botan::PSS_Params::encode_into(), Botan::X509_DN::encode_into(), Botan::X509_Object::encode_into(), end_explicit(), Botan::PKCS12::export_to(), Botan::X509_Object::make_signed(), Botan::pkcs12_pbe_encrypt(), Botan::EC_PrivateKey::private_key_bits(), Botan::McEliece_PrivateKey::private_key_bits(), Botan::RSA_PrivateKey::private_key_bits(), Botan::Private_Key::private_key_info(), Botan::McEliece_PublicKey::public_key_bits(), Botan::RSA_PublicKey::public_key_bits(), Botan::TPM_PrivateKey::public_key_bits(), and Botan::Public_Key::subject_public_key().
| DER_Encoder & Botan::DER_Encoder::end_explicit | ( | ) |
Finish the innermost open constructed encoding, an alias for end_cons()
Definition at line 230 of file der_enc.cpp.
References DER_Encoder(), and end_cons().
Referenced by Botan::OCSP::Request::BER_encode(), Botan::PKCS10_Request::create(), Botan::AlternativeName::encode_into(), Botan::Cert_Extension::ASBlocks::ASIdentifiers::encode_into(), and Botan::OCSP::SingleResponse::encode_into().
| secure_vector< uint8_t > Botan::DER_Encoder::get_contents | ( | ) |
Return the encoded contents
Throws Invalid_State if any constructed encoding is still open, or if this encoder was constructed with an output vector or append function.
Definition at line 161 of file der_enc.cpp.
Referenced by Botan::DL_PrivateKey::DER_encode(), Botan::TLS::Session::DER_encode(), encode_if(), Botan::EC_PrivateKey::private_key_bits(), Botan::Ed25519_PrivateKey::private_key_bits(), Botan::Ed448_PrivateKey::private_key_bits(), Botan::McEliece_PrivateKey::private_key_bits(), Botan::RSA_PrivateKey::private_key_bits(), Botan::X25519_PrivateKey::private_key_bits(), Botan::X448_PrivateKey::private_key_bits(), Botan::XMSS_PrivateKey::private_key_bits(), Botan::Private_Key::private_key_info(), and Botan::TLS::Certificate_Request_12::serialize().
| std::vector< uint8_t > Botan::DER_Encoder::get_contents_unlocked | ( | ) |
Return the encoded contents as a std::vector
If using this function, instead pass a std::vector to the constructor of DER_Encoder where the output will be placed. This avoids several unnecessary copies.
Definition at line 175 of file der_enc.cpp.
Referenced by Botan::PKCS10_Request::create().
| DER_Encoder & Botan::DER_Encoder::raw_bytes | ( | const uint8_t | val[], |
| size_t | len ) |
Insert raw bytes directly into the output stream
Definition at line 237 of file der_enc.cpp.
References DER_Encoder().
Referenced by Botan::PKCS10_Request::create(), encode_if(), Botan::AlgorithmIdentifier::encode_into(), Botan::AlternativeName::encode_into(), Botan::Attribute::encode_into(), Botan::X509_DN::encode_into(), Botan::X509_Object::encode_into(), and Botan::X509_Object::make_signed().
|
inline |
Insert raw bytes directly into the output stream
Definition at line 154 of file der_enc.h.
References DER_Encoder(), and raw_bytes().
Referenced by raw_bytes().
| DER_Encoder & Botan::DER_Encoder::start_cons | ( | ASN1_Type | type_tag, |
| ASN1_Class | class_tag ) |
Start a constructed encoding with the given tagging. Must be closed with end_cons(). Contents are emitted in the order they are encoded.
| type_tag | the type tag of the constructed encoding |
| class_tag | the class tag of the constructed encoding |
Definition at line 192 of file der_enc.cpp.
References DER_Encoder(), and start_cons().
Referenced by Botan::OCSP::SingleResponse::encode_into(), start_cons(), start_context_specific(), start_explicit(), start_explicit_context_specific(), start_sequence(), start_set(), and start_set().
|
inline |
Start an IMPLICIT context specific constructed encoding
| tag | the context specific tag number |
Definition at line 113 of file der_enc.h.
References Botan::ContextSpecific, DER_Encoder(), and start_cons().
Referenced by Botan::PSS_Params::encode_into(), and Botan::PKCS12::export_to().
| DER_Encoder & Botan::DER_Encoder::start_explicit | ( | uint16_t | type_tag | ) |
Start a context specific constructed encoding, an alias for start_context_specific()
| type_tag | the context specific tag number |
Definition at line 223 of file der_enc.cpp.
References Botan::ContextSpecific, DER_Encoder(), and start_cons().
Referenced by Botan::OCSP::Request::BER_encode(), Botan::PKCS10_Request::create(), Botan::AlternativeName::encode_into(), Botan::Cert_Extension::ASBlocks::ASIdentifiers::encode_into(), and Botan::OCSP::SingleResponse::encode_into().
|
inline |
Start an EXPLICIT context specific constructed encoding
| tag | the context specific tag number |
Definition at line 122 of file der_enc.h.
References DER_Encoder(), Botan::ExplicitContextSpecific, and start_cons().
Referenced by Botan::Cert_Extension::CRL_Distribution_Points::Distribution_Point::encode_into(), and Botan::EC_PrivateKey::private_key_bits().
|
inline |
Start a SEQUENCE. Must be closed with end_cons().
Definition at line 86 of file der_enc.h.
References DER_Encoder(), Botan::Sequence, start_cons(), start_sequence(), and Botan::Universal.
Referenced by Botan::GOST_3410_PublicKey::algorithm_identifier(), Botan::OCSP::Request::BER_encode(), Botan::PKCS8::BER_encode(), Botan::PKCS8::BER_encode_encrypted_pbkdf_iter(), Botan::PKCS8::BER_encode_encrypted_pbkdf_msec(), Botan::PKCS10_Request::create(), Botan::DL_Group::DER_encode(), Botan::EC_Group::DER_encode(), Botan::TLS::Session::DER_encode(), Botan::AlgorithmIdentifier::encode_into(), Botan::AlternativeName::encode_into(), Botan::Attribute::encode_into(), Botan::Cert_Extension::ASBlocks::ASIdentifierChoice::encode_into(), Botan::Cert_Extension::ASBlocks::ASIdentifiers::encode_into(), Botan::Cert_Extension::ASBlocks::ASIdOrRange::encode_into(), Botan::Cert_Extension::CRL_Distribution_Points::Distribution_Point::encode_into(), Botan::Cert_Extension::IPAddressBlocks::IPAddressChoice< V >::encode_into(), Botan::Cert_Extension::IPAddressBlocks::IPAddressFamily::encode_into(), Botan::Cert_Extension::IPAddressBlocks::IPAddressOrRange< V >::encode_into(), Botan::CRL_Entry::encode_into(), Botan::Extensions::encode_into(), Botan::GeneralSubtree::encode_into(), Botan::OCSP::CertID::encode_into(), Botan::OCSP::SingleResponse::encode_into(), Botan::PSS_Params::encode_into(), Botan::X509_DN::encode_into(), Botan::X509_Object::encode_into(), Botan::PKCS12::export_to(), Botan::X509_Object::make_signed(), Botan::pkcs12_pbe_encrypt(), Botan::EC_PrivateKey::private_key_bits(), Botan::McEliece_PrivateKey::private_key_bits(), Botan::RSA_PrivateKey::private_key_bits(), Botan::Private_Key::private_key_info(), Botan::McEliece_PublicKey::public_key_bits(), Botan::RSA_PublicKey::public_key_bits(), Botan::TPM_PrivateKey::public_key_bits(), start_sequence(), and Botan::Public_Key::subject_public_key().
|
inline |
Start a SET/SET OF. Must be closed with end_cons(). Contents are DER sorted.
Definition at line 91 of file der_enc.h.
References DER_Encoder(), Botan::Set, start_cons(), and Botan::Universal.
Referenced by Botan::Attribute::encode_into(), and Botan::X509_DN::encode_into().
| DER_Encoder & Botan::DER_Encoder::start_set | ( | ASN1_Type | type_tag, |
| ASN1_Class | class_tag ) |
Start a SET/SET OF with an alternate tag. Contents are still DER sorted.
| type_tag | the type tag of the constructed encoding |
| class_tag | the class tag of the constructed encoding |
Definition at line 196 of file der_enc.cpp.
References DER_Encoder(), and start_cons().
|
inline |
Start a SET/SET OF with a context specific tag. Contents are still DER sorted.
| tag | the context specific tag number |
Definition at line 106 of file der_enc.h.
References Botan::ContextSpecific, DER_Encoder(), and start_set().
Referenced by start_set().