Botan  2.11.0
Crypto and TLS for C++11
Public Member Functions | Protected Attributes | List of all members
Botan::XMSS_WOTS_Addressed_PublicKey Class Reference

#include <xmss_wots_addressed_publickey.h>

Inheritance diagram for Botan::XMSS_WOTS_Addressed_PublicKey:
Botan::XMSS_WOTS_Addressed_PrivateKey

Public Member Functions

const XMSS_Addressaddress () const
 
XMSS_Addressaddress ()
 
std::string algo_name () const override
 
AlgorithmIdentifier algorithm_identifier () const override
 
bool check_key (RandomNumberGenerator &rng, bool strong) const override
 
std::unique_ptr< PK_Ops::Verification > create_verification_op (const std::string &params, const std::string &provider) const override
 
size_t estimated_strength () const override
 
OID get_oid () const override
 
size_t key_length () const override
 
const XMSS_WOTS_PublicKeypublic_key () const
 
XMSS_WOTS_PublicKeypublic_key ()
 
std::vector< uint8_t > public_key_bits () const override
 
 XMSS_WOTS_Addressed_PublicKey (const XMSS_WOTS_PublicKey &public_key)
 
 XMSS_WOTS_Addressed_PublicKey (const XMSS_WOTS_PublicKey &public_key, const XMSS_Address &adrs)
 
 XMSS_WOTS_Addressed_PublicKey (XMSS_WOTS_PublicKey &&public_key)
 
 XMSS_WOTS_Addressed_PublicKey (XMSS_WOTS_PublicKey &&public_key, XMSS_Address &&adrs)
 

Protected Attributes

XMSS_Address m_adrs
 
XMSS_WOTS_PublicKey m_pub_key
 

Detailed Description

Wrapper class to pair a XMSS_WOTS_PublicKey with an XMSS Address. Since the PK_Ops::Verification interface does not allow an extra address parameter to be passed to the sign(RandomNumberGenerator&), the address needs to be stored together with the key and passed to the XMSS_WOTS_Verification_Operation() on creation.

Definition at line 24 of file xmss_wots_addressed_publickey.h.

Constructor & Destructor Documentation

◆ XMSS_WOTS_Addressed_PublicKey() [1/4]

Botan::XMSS_WOTS_Addressed_PublicKey::XMSS_WOTS_Addressed_PublicKey ( const XMSS_WOTS_PublicKey public_key)
inline

◆ XMSS_WOTS_Addressed_PublicKey() [2/4]

Botan::XMSS_WOTS_Addressed_PublicKey::XMSS_WOTS_Addressed_PublicKey ( const XMSS_WOTS_PublicKey public_key,
const XMSS_Address adrs 
)
inline

◆ XMSS_WOTS_Addressed_PublicKey() [3/4]

Botan::XMSS_WOTS_Addressed_PublicKey::XMSS_WOTS_Addressed_PublicKey ( XMSS_WOTS_PublicKey &&  public_key)
inline

◆ XMSS_WOTS_Addressed_PublicKey() [4/4]

Botan::XMSS_WOTS_Addressed_PublicKey::XMSS_WOTS_Addressed_PublicKey ( XMSS_WOTS_PublicKey &&  public_key,
XMSS_Address &&  adrs 
)
inline

Definition at line 37 of file xmss_wots_addressed_publickey.h.

Member Function Documentation

◆ address() [1/2]

const XMSS_Address& Botan::XMSS_WOTS_Addressed_PublicKey::address ( ) const
inline

Definition at line 44 of file xmss_wots_addressed_publickey.h.

References m_adrs.

◆ address() [2/2]

XMSS_Address& Botan::XMSS_WOTS_Addressed_PublicKey::address ( )
inline

Definition at line 45 of file xmss_wots_addressed_publickey.h.

References m_adrs.

◆ algo_name()

std::string Botan::XMSS_WOTS_Addressed_PublicKey::algo_name ( ) const
inlineoverride

Definition at line 47 of file xmss_wots_addressed_publickey.h.

48  {
49  return m_pub_key.algo_name();
50  }
std::string algo_name() const override

References Botan::XMSS_WOTS_PublicKey::algo_name(), and m_pub_key.

◆ algorithm_identifier()

AlgorithmIdentifier Botan::XMSS_WOTS_Addressed_PublicKey::algorithm_identifier ( ) const
inlineoverride

Definition at line 52 of file xmss_wots_addressed_publickey.h.

53  {
55  }
AlgorithmIdentifier algorithm_identifier() const override

References Botan::XMSS_WOTS_PublicKey::algorithm_identifier(), and m_pub_key.

◆ check_key()

bool Botan::XMSS_WOTS_Addressed_PublicKey::check_key ( RandomNumberGenerator &  rng,
bool  strong 
) const
inlineoverride

Definition at line 57 of file xmss_wots_addressed_publickey.h.

58  {
59  return m_pub_key.check_key(rng, strong);
60  }
bool RandomNumberGenerator & rng
Definition: numthry.h:176
bool check_key(RandomNumberGenerator &, bool) const override

References Botan::XMSS_WOTS_PublicKey::check_key(), m_pub_key, and Botan::rng.

◆ create_verification_op()

std::unique_ptr<PK_Ops::Verification> Botan::XMSS_WOTS_Addressed_PublicKey::create_verification_op ( const std::string &  params,
const std::string &  provider 
) const
inlineoverride

Definition at line 63 of file xmss_wots_addressed_publickey.h.

65  {
66  return m_pub_key.create_verification_op(params, provider);
67  }
secure_vector< uint8_t > const std::string const std::vector< uint8_t > & params
Definition: pbes2.h:80

References m_pub_key, and Botan::params.

◆ estimated_strength()

size_t Botan::XMSS_WOTS_Addressed_PublicKey::estimated_strength ( ) const
inlineoverride

◆ get_oid()

OID Botan::XMSS_WOTS_Addressed_PublicKey::get_oid ( ) const
inlineoverride

Definition at line 69 of file xmss_wots_addressed_publickey.h.

70  {
71  return m_pub_key.get_oid();
72  }

References m_pub_key.

◆ key_length()

size_t Botan::XMSS_WOTS_Addressed_PublicKey::key_length ( ) const
inlineoverride

◆ public_key() [1/2]

const XMSS_WOTS_PublicKey& Botan::XMSS_WOTS_Addressed_PublicKey::public_key ( ) const
inline

Definition at line 41 of file xmss_wots_addressed_publickey.h.

References m_pub_key.

◆ public_key() [2/2]

XMSS_WOTS_PublicKey& Botan::XMSS_WOTS_Addressed_PublicKey::public_key ( )
inline

Definition at line 42 of file xmss_wots_addressed_publickey.h.

References m_pub_key.

◆ public_key_bits()

std::vector<uint8_t> Botan::XMSS_WOTS_Addressed_PublicKey::public_key_bits ( ) const
inlineoverride

Definition at line 84 of file xmss_wots_addressed_publickey.h.

85  {
86  return m_pub_key.public_key_bits();
87  }
std::vector< uint8_t > public_key_bits() const override

References m_pub_key, and Botan::XMSS_WOTS_PublicKey::public_key_bits().

Member Data Documentation

◆ m_adrs

XMSS_Address Botan::XMSS_WOTS_Addressed_PublicKey::m_adrs
protected

Definition at line 91 of file xmss_wots_addressed_publickey.h.

Referenced by address().

◆ m_pub_key

XMSS_WOTS_PublicKey Botan::XMSS_WOTS_Addressed_PublicKey::m_pub_key
protected

The documentation for this class was generated from the following file: