aboutsummaryrefslogtreecommitdiffstats
path: root/src/lib/pubkey/dl_algo/dl_algo.cpp
diff options
context:
space:
mode:
authorJack Lloyd <[email protected]>2018-05-22 11:04:15 -0400
committerJack Lloyd <[email protected]>2018-05-22 11:04:15 -0400
commit3789138906cecbcc5e33bb0d5784e6b576171080 (patch)
tree147c442020bec8ad6effe62727fdb6b300d0f7f7 /src/lib/pubkey/dl_algo/dl_algo.cpp
parentcd0bcd90817ece3e4fcba32e06a372580bbe3008 (diff)
DER improvements
Let DER_Encoder write to a user specified vector instead of only to an internal vector. This allows encoding to a std::vector without having to first write to a locked vector and then copying out the result. Add ASN1_Object::BER_encode convenience method. Replaces X509_Object::BER_encode which had the same logic but was restricted to a subtype. This replaces many cases where DER_Encoder was just used to encode a single object (X509_DN, AlgorithmIdentifier, etc).
Diffstat (limited to 'src/lib/pubkey/dl_algo/dl_algo.cpp')
-rw-r--r--src/lib/pubkey/dl_algo/dl_algo.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/lib/pubkey/dl_algo/dl_algo.cpp b/src/lib/pubkey/dl_algo/dl_algo.cpp
index f9d6178b0..15b0b175e 100644
--- a/src/lib/pubkey/dl_algo/dl_algo.cpp
+++ b/src/lib/pubkey/dl_algo/dl_algo.cpp
@@ -30,7 +30,9 @@ AlgorithmIdentifier DL_Scheme_PublicKey::algorithm_identifier() const
std::vector<uint8_t> DL_Scheme_PublicKey::public_key_bits() const
{
- return DER_Encoder().encode(m_y).get_contents_unlocked();
+ std::vector<uint8_t> output;
+ DER_Encoder(output).encode(m_y);
+ return output;
}
DL_Scheme_PublicKey::DL_Scheme_PublicKey(const DL_Group& group, const BigInt& y) :