18#if (CRYPTOPP_BOOL_X64 || CRYPTOPP_BOOL_X32 || CRYPTOPP_BOOL_X86 || CRYPTOPP_BOOL_ARM32 || CRYPTOPP_BOOL_ARMV8)
19# ifndef CRYPTOPP_DISABLE_LEA_SIMD
20# define CRYPTOPP_LEA_ADVANCED_PROCESS_BLOCKS 1
26#if defined(__SUNPRO_CC) && (__SUNPRO_CC <= 0x5120)
27# undef CRYPTOPP_LEA_ADVANCED_PROCESS_BLOCKS
63 void UncheckedSetKey(
const byte *userKey,
unsigned int keyLength,
const NameValuePairs ¶ms);
64 std::string AlgorithmProvider()
const;
68 unsigned int m_rounds;
75 class CRYPTOPP_NO_VTABLE
Enc :
public Base
78 void ProcessAndXorBlock(
const byte *inBlock,
const byte *xorBlock,
byte *outBlock)
const;
80#if CRYPTOPP_LEA_ADVANCED_PROCESS_BLOCKS
81 size_t AdvancedProcessBlocks(
const byte *inBlocks,
const byte *xorBlocks,
byte *outBlocks,
size_t length,
word32 flags)
const;
89 class CRYPTOPP_NO_VTABLE
Dec :
public Base
92 void ProcessAndXorBlock(
const byte *inBlock,
const byte *xorBlock,
byte *outBlock)
const;
94#if CRYPTOPP_LEA_ADVANCED_PROCESS_BLOCKS
95 size_t AdvancedProcessBlocks(
const byte *inBlocks,
const byte *xorBlocks,
byte *outBlocks,
size_t length,
word32 flags)
const;
Classes for working with NameValuePairs.
Provides a base implementation of Algorithm and SimpleKeyingInterface for block ciphers.
Inherited by algorithms with fixed block size.
LEA block cipher transformation functions.
Decryption transformation.
Encryption transformation.
LEA 128-bit block cipher.
Interface for retrieving values given their names.
Inherited by keyed algorithms with variable key length.
Library configuration file.
unsigned int word32
32-bit unsigned datatype
Crypto++ library namespace.
Classes and functions for secure memory allocations.
Classes and functions for implementing secret key algorithms.
Provides Encryption and Decryption typedefs used by derived classes to implement a block cipher.
BlockCipher Decryption
implements the BlockCipher interface
BlockCipher Encryption
implements the BlockCipher interface
LEA block cipher information.
static const std::string StaticAlgorithmName()
The algorithm name.