Botan
2.1.0
Crypto and TLS for C++11
|
#include <xmss_wots_verification_operation.h>
Public Member Functions | |
virtual bool | is_valid_signature (const uint8_t sig[], size_t sig_len) override |
void | update (const uint8_t msg[], size_t msg_len) override |
XMSS_WOTS_Verification_Operation (const XMSS_WOTS_Addressed_PublicKey &public_key) | |
virtual | ~XMSS_WOTS_Verification_Operation ()=default |
Protected Member Functions | |
void | chain (secure_vector< uint8_t > &result, size_t start_idx, size_t steps, XMSS_Address &adrs, const secure_vector< uint8_t > &seed) |
Protected Attributes | |
XMSS_Hash | m_hash |
XMSS_WOTS_Parameters | m_wots_params |
Provides signature verification capabilities for Winternitz One Time Signatures used in Extended Merkle Tree Signatures (XMSS).
This operation is not intended for stand-alone use and thus not registered in the Botan algorithm registry.
Definition at line 27 of file xmss_wots_verification_operation.h.
Botan::XMSS_WOTS_Verification_Operation::XMSS_WOTS_Verification_Operation | ( | const XMSS_WOTS_Addressed_PublicKey & | public_key | ) |
Definition at line 18 of file xmss_wots_verification_operation.cpp.
References Botan::XMSS_WOTS_Addressed_PublicKey::public_key(), and Botan::XMSS_WOTS_PublicKey::wots_parameters().
|
virtualdefault |
|
protectedinherited |
Algorithm 2: Chaining Function.
[out] | result | Contains the n-byte input string "x" upon call to chain(), that will be replaced with the value obtained by iterating the cryptographic hash function "F" steps times on the input x using the outputs of the PRNG "G". |
[in] | start_idx | The start index. |
[in] | steps | A number of steps. |
[in] | adrs | An OTS Hash Address. |
[in] | seed | A Seed. |
Definition at line 16 of file xmss_wots_common_ops.cpp.
References Botan::XMSS_Address::bytes(), Botan::XMSS_Hash::f(), Botan::XMSS_Address::Key_Mode, Botan::XMSS_WOTS_Common_Ops::m_hash, Botan::XMSS_WOTS_Common_Ops::m_wots_params, Botan::XMSS_Address::Mask_Mode, Botan::XMSS_Hash::prf(), Botan::XMSS_Address::set_hash_address(), Botan::XMSS_Address::set_key_mask_mode(), Botan::XMSS_WOTS_Parameters::wots_parameter(), and Botan::xor_buf().
|
overridevirtual |
Implements Botan::PK_Ops::Verification.
Definition at line 42 of file xmss_wots_verification_operation.cpp.
References Botan::XMSS_WOTS_Addressed_PublicKey::address(), BOTAN_ASSERT, Botan::XMSS_WOTS_Parameters::element_size(), Botan::XMSS_WOTS_PublicKey::key_data(), Botan::XMSS_WOTS_Parameters::len(), Botan::XMSS_WOTS_Parameters::oid(), Botan::XMSS_WOTS_Addressed_PublicKey::public_key(), Botan::XMSS_WOTS_PublicKey::public_seed(), and Botan::XMSS_WOTS_PublicKey::wots_parameters().
|
overridevirtual |
Implements Botan::PK_Ops::Verification.
Definition at line 29 of file xmss_wots_verification_operation.cpp.
References BOTAN_ASSERT, Botan::XMSS_WOTS_Addressed_PublicKey::public_key(), and Botan::XMSS_WOTS_PublicKey::wots_parameters().
|
protectedinherited |
Definition at line 50 of file xmss_wots_common_ops.h.
Referenced by Botan::XMSS_WOTS_Common_Ops::chain().
|
protectedinherited |
Definition at line 49 of file xmss_wots_common_ops.h.
Referenced by Botan::XMSS_WOTS_Common_Ops::chain(), and Botan::XMSS_WOTS_Signature_Operation::sign().