9 #include <botan/ecdsa_sig.h>
36 const size_t enc_len = m_r > m_s ? m_r.
bytes() : m_s.
bytes();
48 if(concat.
size() % 2 != 0)
51 const size_t rs_len = concat.
size() / 2;
SecureVector< byte > get_contents()
BER_Decoder & decode(bool &)
const BigInt & get_s() const
std::invalid_argument Invalid_Argument
const BigInt & get_r() const
BER_Decoder start_cons(ASN1_Tag, ASN1_Tag=UNIVERSAL)
DER_Encoder & encode(bool b)
MemoryVector< byte > DER_encode() const
MemoryVector< byte > get_concatenation() const
ECDSA_Signature decode_concatenation(const MemoryRegion< byte > &concat)
BER_Decoder & verify_end()
static BigInt decode(const byte buf[], size_t length, Base base=Binary)
DER_Encoder & start_cons(ASN1_Tag type_tag, ASN1_Tag class_tag=UNIVERSAL)
static SecureVector< byte > encode_1363(const BigInt &n, size_t bytes)