11#ifndef BOTAN_FRODOKEM_CONSTANTS_H_ 
   12#define BOTAN_FRODOKEM_CONSTANTS_H_ 
   14#include <botan/frodo_mode.h> 
   15#include <botan/internal/frodo_types.h> 
   41      uint16_t 
cdf_table_at(
size_t i)
 const { 
return m_cdf_table.at(i); }
 
   45      size_t n()
 const { 
return m_n; }
 
   47      size_t b()
 const { 
return m_b; }  
 
   49      size_t d()
 const { 
return m_d; }  
 
   51      size_t n_bar()
 const { 
return m_n_bar; }
 
   62         return (m_d * m_n * m_n_bar + m_d * m_n_bar * m_n_bar + m_len_salt) / 8;
 
 
   68         return (m_nist_strength + m_len_a + (m_d * m_n * m_n_bar) + (m_n_bar * m_n * 16) + m_nist_strength) / 8;
 
 
   85      size_t m_nist_strength;
 
   94      std::vector<uint16_t> m_cdf_table;  
 
   96      mutable std::unique_ptr<XOF> m_shake_xof;
 
 
size_t len_ct_bytes() const
 
size_t estimated_strength() const
 
FrodoDomainSeparator keygen_domain_separator() const
 
size_t len_private_key_bytes() const
 
FrodoKEMConstants & operator=(FrodoKEMConstants &&other)=default
 
FrodoKEMConstants & operator=(const FrodoKEMConstants &other)=delete
 
size_t len_public_key_bytes() const
 
FrodoKEMConstants(const FrodoKEMConstants &other)
 
size_t len_sec_bytes() const
 
FrodoKEMMode mode() const
 
FrodoKEMConstants(FrodoKEMMode mode)
 
FrodoKEMConstants(FrodoKEMConstants &&other)=default
 
size_t len_se_bytes() const
 
uint16_t cdf_table_at(size_t i) const
 
size_t len_a_bytes() const
 
size_t len_salt_bytes() const
 
size_t len_packed_c_bytes() const
 
size_t len_packed_b_bytes() const
 
FrodoDomainSeparator encapsulation_domain_separator() const
 
size_t cdf_table_len() const
 
Strong< std::array< uint8_t, 1 >, struct FrodoDoaminSeparator_ > FrodoDomainSeparator