Kalyna512::Base Class Reference
Inheritance diagram for Kalyna512::Base:

## Public Member Functions

std::string | AlgorithmName () const
| Provides the name of this algorithm.
unsigned int | OptimalDataAlignment () const
| Provides input and output data alignment for optimal performance.
Public Member Functions inherited from BlockCipherImpl< Kalyna512_Info >
unsigned int | BlockSize () const
| Provides the block size of the algorithm.
Public Member Functions inherited from AlgorithmImpl< SimpleKeyingInterfaceImpl< TwoBases< BlockCipher, Kalyna512_Info > > >
std::string | AlgorithmName () const
| The algorithm name.
Public Member Functions inherited from SimpleKeyingInterfaceImpl< TwoBases< BlockCipher, Kalyna512_Info > >
size_t | MinKeyLength () const
| The minimum key length used by the algorithm.
size_t | MaxKeyLength () const
| The maximum key length used by the algorithm.
size_t | DefaultKeyLength () const
| The default key length used by the algorithm.
size_t | GetValidKeyLength (size_t keylength) const
| Provides a valid key length for the algorithm.
SimpleKeyingInterface::IV_Requirement | IVRequirement () const
| The default IV requirements for the algorithm.
unsigned int | IVSize () const
| The initialization vector length for the algorithm.

## Additional Inherited Members

Static Public Member Functions inherited from AlgorithmImpl< SimpleKeyingInterfaceImpl< TwoBases< BlockCipher, Kalyna512_Info > > >
static std::string | StaticAlgorithmName ()
| The algorithm name.

## Detailed Description

Definition at line 169 of file kalyna.h.

## Member Function Documentation

## AlgorithmName()

std::string Kalyna512::Base::AlgorithmName | ( |  | ) | const

inline

Provides the name of this algorithm.

Returns
  the standard algorithm name

If the object is unkeyed, then the generic name "Kalyna" is returned to the caller. If the algorithm is keyed, then a two or three part name is returned to the caller. The name follows DSTU 7624:2014, where block size is provided first and then key length. The library uses a dash to identify block size and parenthesis to identify key length. For example, Kalyna-128(256) is Kalyna with a 128-bit block size and a 256-bit key length. If a mode is associated with the object, then it follows as expected. For example, Kalyna-128(256)/ECB. DSTU is a little more complex with more parameters, dashes, underscores, but the library does not use the delimiters or full convention.

Definition at line 183 of file kalyna.h.

## OptimalDataAlignment()

unsigned int Kalyna512::Base::OptimalDataAlignment | ( |  | ) | const

inline

Provides input and output data alignment for optimal performance.

Returns
  the input data alignment that provides optimal performance

See also
  GetAlignment() and OptimalBlockSize()

Definition at line 190 of file kalyna.h.

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

- kalyna.h
- kalyna.cpp