9 #ifndef BOTAN_EAC_CVC_GEN_CERT_H__
10 #define BOTAN_EAC_CVC_GEN_CERT_H__
12 #include <botan/eac_obj.h>
13 #include <botan/eac_asn_obj.h>
14 #include <botan/ecdsa.h>
15 #include <botan/pubkey.h>
22 template<
typename Derived>
106 template<
typename Derived>
122 template<
typename Derived>
154 throw Invalid_Argument(
"EAC1_1_gen_CVC::encode() cannot PEM encode an EAC object");
159 template<
typename Derived>
SecureVector< byte > get_contents()
bool is_self_signed() const
void encode(Pipe &out, X509_Encoding encoding) const
DER_Encoder & raw_bytes(const byte val[], size_t len)
void write(const byte in[], size_t length)
BER_Decoder & decode(bool &)
std::invalid_argument Invalid_Argument
BER_Decoder start_cons(ASN1_Tag, ASN1_Tag=UNIVERSAL)
DER_Encoder & encode(bool b)
RandomNumberGenerator * rng
SecureVector< byte > sign_message(const byte in[], size_t length, RandomNumberGenerator &rng)
static MemoryVector< byte > make_signed(PK_Signer &signer, const MemoryRegion< byte > &tbs_bits, RandomNumberGenerator &rng)
SecureVector< byte > tbs_data() const
ECDSA_Signature decode_concatenation(const MemoryRegion< byte > &concat)
Public_Key * subject_public_key() const
BER_Decoder & raw_bytes(MemoryRegion< byte > &)
DER_Encoder & start_cons(ASN1_Tag type_tag, ASN1_Tag class_tag=UNIVERSAL)
static SecureVector< byte > build_cert_body(MemoryRegion< byte > const &tbs)
SecureVector< byte > tbs_bits
static void decode_info(DataSource &source, SecureVector< byte > &res_tbs_bits, ECDSA_Signature &res_sig)