| Botan
    1.10.16
    | 
#include <ecc_key.h>
 
  
 | Public Member Functions | |
| virtual std::string | algo_name () const =0 | 
| AlgorithmIdentifier | algorithm_identifier () const | 
| bool | check_key (RandomNumberGenerator &rng, bool strong) const | 
| MemoryVector< byte > | DER_domain () const | 
| const EC_Group & | domain () const | 
| EC_Group_Encoding | domain_format () const | 
| EC_PrivateKey (RandomNumberGenerator &rng, const EC_Group &domain, const BigInt &private_key) | |
| EC_PrivateKey (const AlgorithmIdentifier &alg_id, const MemoryRegion< byte > &key_bits) | |
| virtual OID | get_oid () const | 
| virtual size_t | max_input_bits () const =0 | 
| virtual size_t | message_part_size () const | 
| virtual size_t | message_parts () const | 
| virtual AlgorithmIdentifier | pkcs8_algorithm_identifier () const | 
| MemoryVector< byte > | pkcs8_private_key () const | 
| const BigInt & | private_value () const | 
| const PointGFp & | public_point () const | 
| void | set_parameter_encoding (EC_Group_Encoding enc) | 
| MemoryVector< byte > | x509_subject_public_key () const | 
| Protected Member Functions | |
| EC_PrivateKey () | |
| void | gen_check (RandomNumberGenerator &rng) const | 
| virtual void | load_check (RandomNumberGenerator &rng) const | 
| void | load_check (RandomNumberGenerator &rng) const | 
| Protected Attributes | |
| EC_Group_Encoding | domain_encoding | 
| EC_Group | domain_params | 
| BigInt | private_key | 
| PointGFp | public_key | 
| Botan::EC_PrivateKey::EC_PrivateKey | ( | RandomNumberGenerator & | rng, | 
| const EC_Group & | ec_group, | ||
| const BigInt & | x | ||
| ) | 
EC_PrivateKey constructor
Definition at line 81 of file ecc_key.cpp.
| Botan::EC_PrivateKey::EC_PrivateKey | ( | const AlgorithmIdentifier & | alg_id, | 
| const MemoryRegion< byte > & | key_bits | ||
| ) | 
Definition at line 110 of file ecc_key.cpp.
References BOTAN_ASSERT, Botan::BER_Decoder::decode_and_check(), Botan::EC_PublicKey::domain(), Botan::EC_PublicKey::domain_encoding, Botan::EC_PublicKey::domain_params, Botan::EC_DOMPAR_ENC_EXPLICIT, Botan::EC_Group::get_base_point(), Botan::PointGFp::on_the_curve(), Botan::AlgorithmIdentifier::parameters, Botan::EC_PublicKey::public_key, Botan::SEQUENCE, and Botan::BER_Decoder::start_cons().
| 
 | inlineprotected | 
| 
 | pure virtualinherited | 
Get the name of the underlying public key scheme.
Implemented in Botan::ECDSA_PublicKey, Botan::ECDH_PublicKey, Botan::ElGamal_PublicKey, Botan::DH_PublicKey, Botan::DSA_PublicKey, Botan::NR_PublicKey, Botan::RSA_PublicKey, and Botan::RW_PublicKey.
Referenced by Botan::EAC_Signed_Object::check_signature(), Botan::X509_Object::check_signature(), Botan::X509::find_constraints(), Botan::Public_Key::get_oid(), Botan::PK_Decryptor_EME::PK_Decryptor_EME(), Botan::PK_Encryptor_EME::PK_Encryptor_EME(), Botan::PK_Key_Agreement::PK_Key_Agreement(), Botan::PK_Signer::PK_Signer(), Botan::PK_Verifier::PK_Verifier(), Botan::CMS_Encoder::sign(), and Botan::Server_Key_Exchange::verify().
| 
 | virtualinherited | 
Implements Botan::Public_Key.
Definition at line 45 of file ecc_key.cpp.
References Botan::EC_PublicKey::DER_domain(), and Botan::Public_Key::get_oid().
| 
 | virtualinherited | 
Test the key values for consistency.
| rng | rng to use | 
| strong | whether to perform strong and lengthy version of the test | 
Implements Botan::Public_Key.
Reimplemented in Botan::ECDSA_PrivateKey.
Definition at line 39 of file ecc_key.cpp.
References Botan::PointGFp::on_the_curve(), and Botan::EC_PublicKey::public_point().
| 
 | inlineinherited | 
Return the DER encoding of this keys domain in whatever format is preset for this particular key
Definition at line 72 of file ecc_key.h.
Referenced by Botan::EC_PublicKey::algorithm_identifier().
| 
 | inlineinherited | 
Get the domain parameters of this key.
| Invalid_State | is thrown if the domain parameters of this point are not set | 
Definition at line 60 of file ecc_key.h.
Referenced by EC_PrivateKey(), Botan::EC_PublicKey::EC_PublicKey(), and Botan::ECDH_KA_Operation::ECDH_KA_Operation().
| 
 | inlineinherited | 
| 
 | protectedinherited | 
Self-test after generating a key
| rng | a random number generator | 
Definition at line 49 of file pk_keys.cpp.
| 
 | virtualinherited | 
Get the OID of the underlying public key scheme.
Definition at line 17 of file pk_keys.cpp.
References Botan::Public_Key::algo_name(), and Botan::OIDS::lookup().
Referenced by Botan::DL_Scheme_PublicKey::algorithm_identifier(), Botan::IF_Scheme_PublicKey::algorithm_identifier(), and Botan::EC_PublicKey::algorithm_identifier().
| 
 | protectedvirtualinherited | 
Self-test after loading a key
| rng | a random number generator | 
Reimplemented in Botan::Private_Key.
Definition at line 31 of file pk_keys.cpp.
| 
 | protectedvirtualinherited | 
Self-test after loading a key
| rng | a random number generator | 
Reimplemented from Botan::Public_Key.
Definition at line 40 of file pk_keys.cpp.
| 
 | pure virtualinherited | 
Get the maximum message size in bits supported by this public key.
Implemented in Botan::ECDH_PublicKey, Botan::ECDSA_PublicKey, Botan::IF_Scheme_PublicKey, Botan::NR_PublicKey, Botan::DSA_PublicKey, Botan::ElGamal_PublicKey, and Botan::DH_PublicKey.
| 
 | inlinevirtualinherited | 
Find out the message part size supported by this scheme/key.
Reimplemented in Botan::ECDSA_PublicKey, Botan::NR_PublicKey, and Botan::DSA_PublicKey.
| 
 | inlinevirtualinherited | 
Find out the number of message parts supported by this scheme.
Reimplemented in Botan::ECDSA_PublicKey, Botan::NR_PublicKey, and Botan::DSA_PublicKey.
Definition at line 50 of file pk_keys.h.
Referenced by Botan::EAC_Signed_Object::check_signature(), Botan::X509_Object::check_signature(), and Botan::X509_Store::validate_cert().
| 
 | inlinevirtualinherited | 
Definition at line 98 of file pk_keys.h.
Referenced by Botan::PKCS8::BER_encode().
| 
 | virtual | 
Implements Botan::Private_Key.
Definition at line 99 of file ecc_key.cpp.
References Botan::DER_Encoder::encode(), Botan::BigInt::encode_1363(), Botan::DER_Encoder::end_cons(), Botan::DER_Encoder::get_contents(), Botan::OCTET_STRING, Botan::SEQUENCE, and Botan::DER_Encoder::start_cons().
| const BigInt & Botan::EC_PrivateKey::private_value | ( | ) | const | 
Get the private key value of this key object.
Definition at line 70 of file ecc_key.cpp.
Referenced by Botan::ECDH_KA_Operation::ECDH_KA_Operation().
| 
 | inlineinherited | 
Get the public point of this key.
| Invalid_State | is thrown if the domain parameters of this point are not set | 
Definition at line 45 of file ecc_key.h.
Referenced by Botan::EC_PublicKey::check_key(), Botan::EC_PublicKey::EC_PublicKey(), and Botan::EC_PublicKey::x509_subject_public_key().
| 
 | inherited | 
Set the domain parameter encoding to be used when encoding this key.
| enc | the encoding to use | 
Definition at line 55 of file ecc_key.cpp.
References Botan::EC_PublicKey::domain_encoding, Botan::EC_PublicKey::domain_params, Botan::EC_DOMPAR_ENC_EXPLICIT, Botan::EC_DOMPAR_ENC_IMPLICITCA, Botan::EC_DOMPAR_ENC_OID, and Botan::EC_Group::get_oid().
| 
 | virtualinherited | 
Implements Botan::Public_Key.
Definition at line 50 of file ecc_key.cpp.
References Botan::PointGFp::COMPRESSED, Botan::EC2OSP(), and Botan::EC_PublicKey::public_point().
| 
 | protectedinherited | 
Definition at line 86 of file ecc_key.h.
Referenced by EC_PrivateKey(), Botan::EC_PublicKey::EC_PublicKey(), and Botan::EC_PublicKey::set_parameter_encoding().
| 
 | protectedinherited | 
Definition at line 84 of file ecc_key.h.
Referenced by EC_PrivateKey(), Botan::EC_PublicKey::EC_PublicKey(), and Botan::EC_PublicKey::set_parameter_encoding().
| 
 | protectedinherited | 
Definition at line 85 of file ecc_key.h.
Referenced by EC_PrivateKey(), and Botan::EC_PublicKey::EC_PublicKey().
 1.8.13
 1.8.13