183 virtual bool tls_should_persist_resumption_information(
const Session& session);
215 virtual void tls_verify_cert_chain(
const std::vector<X509_Certificate>& cert_chain,
216 const std::vector<std::optional<OCSP::Response>>& ocsp_responses,
217 const std::vector<Certificate_Store*>& trusted_roots,
219 std::string_view hostname,
248 virtual void tls_verify_raw_public_key(
const Public_Key& raw_public_key,
250 std::string_view hostname,
261 return std::chrono::milliseconds(0);
278 return std::vector<uint8_t>();
294 virtual std::vector<std::vector<uint8_t>> tls_provide_cert_chain_status(
311 virtual std::vector<uint8_t> tls_sign_message(
const Private_Key& key,
313 std::string_view padding,
315 const std::vector<uint8_t>& msg);
331 virtual bool tls_verify_message(
const Public_Key& key,
332 std::string_view padding,
334 const std::vector<uint8_t>& msg,
335 const std::vector<uint8_t>& sig);
354 virtual std::unique_ptr<Public_Key> tls_deserialize_peer_public_key(
355 const std::variant<TLS::Group_Params, DL_Group>& group, std::span<const uint8_t> key_bits);
409 const std::vector<uint8_t>& encoded_public_key,
440 const std::vector<uint8_t>& encapsulated_bytes,
465 virtual std::unique_ptr<PK_Key_Agreement_Key> tls_generate_ephemeral_key(
492 virtual secure_vector<uint8_t> tls_ephemeral_key_agreement(
const std::variant<TLS::Group_Params, DL_Group>& group,
494 const std::vector<uint8_t>& public_value,
531 virtual std::string tls_server_choose_app_protocol(
const std::vector<std::string>& client_protos);
565 virtual void tls_examine_extensions(
const Extensions& extn,
585 virtual std::optional<OCSP::Response> tls_parse_ocsp_response(
const std::vector<uint8_t>& raw_response);
597 virtual std::string tls_peer_network_identity();
608 virtual std::chrono::system_clock::time_point tls_current_timestamp();
649 std::span<const uint8_t> client_random,
650 std::span<const uint8_t> secret)
const {