10 #include <botan/ec_group.h>
11 #include <botan/ber_dec.h>
12 #include <botan/der_enc.h>
13 #include <botan/libstate.h>
14 #include <botan/oids.h>
15 #include <botan/pem.h>
74 "Only prime ECC fields supported")
88 base_point =
OS2ECP(sv_base_point, curve);
91 throw Decoding_Error(
"Unexpected tag while decoding ECC domain params");
99 const size_t ecpVers1 = 1;
100 OID curve_type(
"1.2.840.10045.1.1");
const BigInt & get_a() const
SecureVector< byte > get_contents()
std::string get_oid() const
const BigInt & get_b() const
BER_Decoder & decode(bool &)
BER_Decoder & decode_and_check(const T &expected, const std::string &error_msg)
PointGFp OS2ECP(const byte data[], size_t data_len, const CurveGFp &curve)
BER_Decoder start_cons(ASN1_Tag, ASN1_Tag=UNIVERSAL)
SecureVector< byte > EC2OSP(const PointGFp &point, byte format)
DER_Encoder & encode(bool b)
BER_Decoder & decode_octet_string_bigint(class BigInt &)
Library_State & global_state()
std::string lookup(const OID &oid)
std::string PEM_encode() const
DER_Encoder & encode_null()
SecureVector< byte > DER_encode(EC_Group_Encoding form) const
EC_Group(const CurveGFp &curve, const PointGFp &base_point, const BigInt &order, const BigInt &cofactor)
BER_Object get_next_object()
std::string encode(const byte der[], size_t length, const std::string &label, size_t width)
const BigInt & get_p() const
BER_Decoder & verify_end()
std::string as_string() const
DER_Encoder & start_cons(ASN1_Tag type_tag, ASN1_Tag class_tag=UNIVERSAL)
static SecureVector< byte > encode_1363(const BigInt &n, size_t bytes)
SecureVector< byte > decode_check_label(DataSource &source, const std::string &label_want)
std::string get(const std::string §ion, const std::string &key) const