diff options
author | lloyd <[email protected]> | 2010-03-21 21:54:47 +0000 |
---|---|---|
committer | lloyd <[email protected]> | 2010-03-21 21:54:47 +0000 |
commit | c23ae85c0529071b3170e88d361342d6a792f417 (patch) | |
tree | 5f731b328266809df9fd82cd1e1e5d4dc6c8e88b /src/pubkey/rsa | |
parent | 8b0d3575e794073f6e6658544d8167e399762ce0 (diff) |
KeyPair::check_key's behavior of throwing an exception upon failure was
not useful; in all cases, we immediately caught it and then returned
false.
Modify as follows:
- Create the pubkey objects inside the checking code, so calling code
doesn't need to do it.
- Return true/false for pass/fail
Also add consistency checking for ECDSA keys
Diffstat (limited to 'src/pubkey/rsa')
-rw-r--r-- | src/pubkey/rsa/rsa.cpp | 16 |
1 files changed, 1 insertions, 15 deletions
diff --git a/src/pubkey/rsa/rsa.cpp b/src/pubkey/rsa/rsa.cpp index 3222b5113..133164c31 100644 --- a/src/pubkey/rsa/rsa.cpp +++ b/src/pubkey/rsa/rsa.cpp @@ -55,21 +55,7 @@ bool RSA_PrivateKey::check_key(RandomNumberGenerator& rng, bool strong) const if((e * d) % lcm(p - 1, q - 1) != 1) return false; - try - { - PK_Signer this_signer(*this, "EMSA4(SHA-1)"); - PK_Verifier this_verifier(*this, "EMSA4(SHA-1)"); - - KeyPair::check_key(rng, - this_signer, - this_verifier); - } - catch(Self_Test_Failure) - { - return false; - } - - return true; + return KeyPair::signature_consistency_check(rng, *this, "EMSA4(SHA-1)"); } RSA_Private_Operation::RSA_Private_Operation(const RSA_PrivateKey& rsa) : |