Botan 1.10.17
Botan::Key_Length_Specification Class Reference

#include <key_spec.h>

Public Member Functions

 Key_Length_Specification (size_t keylen)
 Key_Length_Specification (size_t min_k, size_t max_k, size_t k_mod=1)
size_t keylength_multiple () const
size_t maximum_keylength () const
size_t minimum_keylength () const
bool valid_keylength (size_t length) const

Detailed Description

Represents the length requirements on an algorithm key

Definition at line 18 of file key_spec.h.

Constructor & Destructor Documentation

◆ Key_Length_Specification() [1/2]

Botan::Key_Length_Specification::Key_Length_Specification ( size_t keylen)
inline

Constructor for fixed length keys

Parameters
keylenthe supported key length

Definition at line 25 of file key_spec.h.

25 :
26 min_keylen(keylen),
27 max_keylen(keylen),
28 keylen_mod(1)
29 {
30 }

Referenced by Botan::Block_Cipher_Fixed_Params< BS, KMIN, KMAX, KMOD >::key_spec().

◆ Key_Length_Specification() [2/2]

Botan::Key_Length_Specification::Key_Length_Specification ( size_t min_k,
size_t max_k,
size_t k_mod = 1 )
inline

Constructor for variable length keys

Parameters
min_kthe smallest supported key length
max_kthe largest supported key length
k_modthe number of bytes the key must be a multiple of

Definition at line 38 of file key_spec.h.

40 :
41 min_keylen(min_k),
42 max_keylen(max_k ? max_k : min_k),
43 keylen_mod(k_mod)
44 {
45 }

Member Function Documentation

◆ keylength_multiple()

size_t Botan::Key_Length_Specification::keylength_multiple ( ) const
inline
Returns
key length multiple in bytes

Definition at line 77 of file key_spec.h.

78 {
79 return keylen_mod;
80 }

◆ maximum_keylength()

size_t Botan::Key_Length_Specification::maximum_keylength ( ) const
inline
Returns
maximum key length in bytes

Definition at line 69 of file key_spec.h.

70 {
71 return max_keylen;
72 }

◆ minimum_keylength()

size_t Botan::Key_Length_Specification::minimum_keylength ( ) const
inline
Returns
minimum key length in bytes

Definition at line 61 of file key_spec.h.

62 {
63 return min_keylen;
64 }

◆ valid_keylength()

bool Botan::Key_Length_Specification::valid_keylength ( size_t length) const
inline
Parameters
lengthis a key length in bytes
Returns
true iff this length is a valid length for this algo

Definition at line 51 of file key_spec.h.

52 {
53 return ((length >= min_keylen) &&
54 (length <= max_keylen) &&
55 (length % keylen_mod == 0));
56 }

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