|
Botan 3.12.0
Crypto and TLS for C&
|
#include <tls_external_psk.h>
Public Member Functions | |
| ExternalPSK (const ExternalPSK &)=delete | |
| ExternalPSK (ExternalPSK &&)=default | |
| ExternalPSK (std::string_view identity, std::string_view prf_algo, secure_vector< uint8_t > psk) | |
| ExternalPSK (std::string_view identity, std::string_view prf_algo, secure_vector< uint8_t > psk, bool imported) | |
| secure_vector< uint8_t > | extract_master_secret () |
| const std::string & | identity () const |
| bool | is_imported () const |
| ExternalPSK & | operator= (const ExternalPSK &)=delete |
| ExternalPSK & | operator= (ExternalPSK &&)=default |
| const std::string & | prf_algo () const |
| ~ExternalPSK ()=default | |
This is an externally provided PreSharedKey along with its identity, master secret and (in case of TLS 1.3) a pre-provisioned Pseudo Random Function.
Definition at line 22 of file tls_external_psk.h.
|
delete |
References ExternalPSK().
Referenced by ExternalPSK(), ExternalPSK(), operator=(), and operator=().
|
default |
References ExternalPSK().
|
default |
|
inline |
Definition at line 30 of file tls_external_psk.h.
References identity(), and prf_algo().
|
inline |
| secure_vector< uint8_t > Botan::TLS::ExternalPSK::extract_master_secret | ( | ) |
Returns the master secret by moving it out of this object. Do not call this method more than once.
Definition at line 16 of file tls_external_psk.cpp.
References BOTAN_STATE_CHECK.
|
inline |
Identity (e.g. username of the PSK owner) of the preshared key. Despite the std::string return type, this may or may not be a human-readable/printable string.
Definition at line 41 of file tls_external_psk.h.
Referenced by ExternalPSK(), and ExternalPSK().
|
inline |
Returns true if this PSK was derived using the PSK importer mechanism from RFC 9258. Imported PSKs use the "imp binder" label for binder computation instead of "ext binder".
Definition at line 61 of file tls_external_psk.h.
|
delete |
References ExternalPSK().
|
default |
References ExternalPSK().
|
inline |
External preshared keys in TLS 1.3 must be provisioned with a pseudo-random function (typically SHA-256 or the like). This is needed to calculate/verify the PSK binder values in the client hello.
Definition at line 54 of file tls_external_psk.h.
Referenced by ExternalPSK(), and ExternalPSK().