aboutsummaryrefslogtreecommitdiffstats
path: root/src/pubkey/ecdsa
diff options
context:
space:
mode:
authorlloyd <[email protected]>2009-12-22 04:50:18 +0000
committerlloyd <[email protected]>2009-12-22 04:50:18 +0000
commitc85c79ac51b5829258dae7e51bb472b740da9574 (patch)
treed02818ecdf25c028ead796c2a06bc10ac596924f /src/pubkey/ecdsa
parentc2c896ee870285b836f80b30a042941b03ddd440 (diff)
parent93e8fd697d009dfef3b994a77936cbf88d2d2ba3 (diff)
propagate from branch 'net.randombit.botan' (head 5525439539abc808b7b8588380a362303cf3c599)
to branch 'net.randombit.botan.c++0x' (head 6749468bfbdeff4636b7a15de412a6c89f1aea87)
Diffstat (limited to 'src/pubkey/ecdsa')
-rw-r--r--src/pubkey/ecdsa/ecdsa.cpp15
1 files changed, 7 insertions, 8 deletions
diff --git a/src/pubkey/ecdsa/ecdsa.cpp b/src/pubkey/ecdsa/ecdsa.cpp
index 9d352c70f..ea90010b1 100644
--- a/src/pubkey/ecdsa/ecdsa.cpp
+++ b/src/pubkey/ecdsa/ecdsa.cpp
@@ -19,7 +19,7 @@ namespace Botan {
ECDSA_PrivateKey::ECDSA_PrivateKey(RandomNumberGenerator& rng,
const EC_Domain_Params& dom_pars)
{
- mp_dom_pars = std::auto_ptr<EC_Domain_Params>(new EC_Domain_Params(dom_pars));
+ mp_dom_pars = std::unique_ptr<EC_Domain_Params>(new EC_Domain_Params(dom_pars));
generate_private_key(rng);
try
@@ -37,10 +37,10 @@ ECDSA_PrivateKey::ECDSA_PrivateKey(RandomNumberGenerator& rng,
ECDSA_PrivateKey::ECDSA_PrivateKey(const EC_Domain_Params& domain,
const BigInt& x)
{
- mp_dom_pars = std::auto_ptr<EC_Domain_Params>(new EC_Domain_Params(domain));
+ mp_dom_pars = std::unique_ptr<EC_Domain_Params>(new EC_Domain_Params(domain));
m_private_value = x;
- mp_public_point = std::auto_ptr<PointGFp>(new PointGFp (mp_dom_pars->get_base_point()));
+ mp_public_point = std::unique_ptr<PointGFp>(new PointGFp (mp_dom_pars->get_base_point()));
mp_public_point->mult_this_secure(m_private_value,
mp_dom_pars->get_order(),
mp_dom_pars->get_order()-1);
@@ -90,11 +90,10 @@ void ECDSA_PublicKey::set_domain_parameters(const EC_Domain_Params& dom_pars)
throw Invalid_State("EC_PublicKey::set_domain_parameters(): point does not lie on provided curve");
}
- std::auto_ptr<EC_Domain_Params> p_tmp_pars(new EC_Domain_Params(dom_pars));
- ECDSA_Core tmp_ecdsa_core(*p_tmp_pars, BigInt(0), tmp_pp);
+ mp_dom_pars.reset(new EC_Domain_Params(dom_pars));
+ ECDSA_Core tmp_ecdsa_core(*mp_dom_pars, BigInt(0), tmp_pp);
mp_public_point.reset(new PointGFp(tmp_pp));
m_ecdsa_core = tmp_ecdsa_core;
- mp_dom_pars = p_tmp_pars;
}
void ECDSA_PublicKey::set_all_values(const ECDSA_PublicKey& other)
@@ -134,8 +133,8 @@ bool ECDSA_PublicKey::verify(const byte msg[], u32bit msg_len,
ECDSA_PublicKey::ECDSA_PublicKey(const EC_Domain_Params& dom_par,
const PointGFp& public_point)
{
- mp_dom_pars = std::auto_ptr<EC_Domain_Params>(new EC_Domain_Params(dom_par));
- mp_public_point = std::auto_ptr<PointGFp>(new PointGFp(public_point));
+ mp_dom_pars = std::unique_ptr<EC_Domain_Params>(new EC_Domain_Params(dom_par));
+ mp_public_point = std::unique_ptr<PointGFp>(new PointGFp(public_point));
m_param_enc = ENC_EXPLICIT;
m_ecdsa_core = ECDSA_Core(*mp_dom_pars, BigInt(0), *mp_public_point);
}