Botan
2.1.0
Crypto and TLS for C++11
|
#include <tls_messages.h>
Public Member Functions | |
Client_Key_Exchange (Handshake_IO &io, Handshake_State &state, const Policy &policy, Credentials_Manager &creds, const Public_Key *server_public_key, const std::string &hostname, RandomNumberGenerator &rng) | |
Client_Key_Exchange (const std::vector< uint8_t > &buf, const Handshake_State &state, const Private_Key *server_rsa_kex_key, Credentials_Manager &creds, const Policy &policy, RandomNumberGenerator &rng) | |
const secure_vector< uint8_t > & | pre_master_secret () const |
Handshake_Type | type () const override |
std::string | type_string () const |
Client Key Exchange Message
Definition at line 397 of file tls_messages.h.
Botan::TLS::Client_Key_Exchange::Client_Key_Exchange | ( | Handshake_IO & | io, |
Handshake_State & | state, | ||
const Policy & | policy, | ||
Credentials_Manager & | creds, | ||
const Public_Key * | server_public_key, | ||
const std::string & | hostname, | ||
RandomNumberGenerator & | rng | ||
) |
Definition at line 44 of file msg_client_kex.cpp.
References Botan::Public_Key::algo_name(), Botan::TLS::Policy::allowed_ecc_curve(), Botan::TLS::append_tls_length_value(), Botan::OctetString::bits_of(), Botan::CECPQ1_accept(), Botan::CECPQ1_ACCEPT_BYTES, Botan::CECPQ1_OFFER_BYTES, Botan::CECPQ1_SHARED_KEY_BYTES, Botan::TLS::Policy::check_peer_key_acceptable(), Botan::TLS::Handshake_State::ciphersuite(), Botan::TLS::Handshake_State::client_hello(), Botan::PointGFp::COMPRESSED, Botan::TLS::Supported_Elliptic_Curves::curve_id_to_name(), Botan::BigInt::decode(), Botan::PK_Key_Agreement::derive_key(), Botan::BigInt::encode(), Botan::PK_Encryptor::encrypt(), Botan::EC_Group::get_curve(), Botan::TLS::TLS_Data_Reader::get_string(), Botan::TLS::Alert::HANDSHAKE_FAILURE, Botan::TLS::Handshake_State::hash(), Botan::TLS::Alert::INSUFFICIENT_SECURITY, Botan::TLS::Ciphersuite::kex_algo(), Botan::OctetString::length(), Botan::TLS::Protocol_Version::major_version(), Botan::TLS::Protocol_Version::minor_version(), Botan::OS2ECP(), Botan::Credentials_Manager::psk(), Botan::Credentials_Manager::psk_identity(), Botan::DH_PublicKey::public_value(), Botan::Curve25519_PublicKey::public_value(), Botan::ECDH_PublicKey::public_value(), Botan::DH_PrivateKey::public_value(), Botan::Curve25519_PrivateKey::public_value(), Botan::ECDH_PrivateKey::public_value(), Botan::RandomNumberGenerator::random_vec(), Botan::TLS::Handshake_IO::send(), Botan::TLS::Handshake_State::server_hello(), Botan::TLS::Handshake_State::server_kex(), Botan::srp6_client_agree(), Botan::srp6_group_identifier(), Botan::Credentials_Manager::srp_identifier(), Botan::Credentials_Manager::srp_password(), Botan::CT::strip_leading_zeros(), Botan::ASN1::to_string(), Botan::PointGFp::UNCOMPRESSED, Botan::TLS::Handshake_Hash::update(), and Botan::DL_Group::verify_group().
Botan::TLS::Client_Key_Exchange::Client_Key_Exchange | ( | const std::vector< uint8_t > & | buf, |
const Handshake_State & | state, | ||
const Private_Key * | server_rsa_kex_key, | ||
Credentials_Manager & | creds, | ||
const Policy & | policy, | ||
RandomNumberGenerator & | rng | ||
) |
Definition at line 294 of file msg_client_kex.cpp.
References Botan::Public_Key::algo_name(), Botan::TLS::append_tls_length_value(), Botan::OctetString::bits_of(), BOTAN_ASSERT, Botan::CECPQ1_ACCEPT_BYTES, Botan::CECPQ1_finish(), Botan::CECPQ1_SHARED_KEY_BYTES, Botan::TLS::Handshake_State::ciphersuite(), Botan::TLS::Handshake_State::client_hello(), Botan::BigInt::decode(), Botan::PK_Key_Agreement::derive_key(), Botan::TLS::TLS_Data_Reader::get_range(), Botan::TLS::TLS_Data_Reader::get_string(), Botan::TLS::Policy::hide_unknown_users(), Botan::TLS::Ciphersuite::kex_algo(), Botan::OctetString::length(), Botan::Credentials_Manager::psk(), Botan::PK_Key_Agreement_Key::public_value(), Botan::RandomNumberGenerator::random_vec(), Botan::TLS::Handshake_State::server_certs(), Botan::TLS::Handshake_State::server_kex(), Botan::SRP6_Server_Session::step2(), Botan::CT::strip_leading_zeros(), and Botan::TLS::Alert::UNKNOWN_PSK_IDENTITY.
|
inline |
Definition at line 402 of file tls_messages.h.
|
inlineoverridevirtual |
Implements Botan::TLS::Handshake_Message.
Definition at line 400 of file tls_messages.h.
References Botan::TLS::CLIENT_KEX.
|
inherited |
Definition at line 17 of file tls_handshake_state.cpp.
References Botan::TLS::handshake_type_to_string(), and Botan::TLS::Handshake_Message::type().