Policy object for feeback based stream ciphers.
More...
Policy object for feeback based stream ciphers.
Definition at line 397 of file strciphr.h.
◆ GetAlignment()
virtual unsigned int CFB_CipherAbstractPolicy::GetAlignment |
( |
| ) |
const |
|
pure virtual |
Provides data alignment requirements.
- Returns
- data alignment requirements, in bytes Internally, the default implementation returns 1. If the stream cipher is implemented using an SSE2 ASM or intrinsics, then the value returned is usually 16.
Implemented in CFB_CipherConcretePolicy< WT, W, BASE >.
◆ GetBytesPerIteration()
virtual unsigned int CFB_CipherAbstractPolicy::GetBytesPerIteration |
( |
| ) |
const |
|
pure virtual |
Provides number of bytes operated upon during an iteration.
- Returns
- bytes operated upon during an iteration, in bytes
- See also
- GetOptimalBlockSize()
Implemented in CFB_CipherConcretePolicy< WT, W, BASE >.
◆ GetRegisterBegin()
virtual byte* CFB_CipherAbstractPolicy::GetRegisterBegin |
( |
| ) |
|
|
pure virtual |
Access the feedback register.
- Returns
- pointer to the first byte of the feedback register
◆ CanIterate()
virtual bool CFB_CipherAbstractPolicy::CanIterate |
( |
| ) |
const |
|
inlinevirtual |
◆ Iterate()
virtual void CFB_CipherAbstractPolicy::Iterate |
( |
byte * |
output, |
|
|
const byte * |
input, |
|
|
CipherDir |
dir, |
|
|
size_t |
iterationCount |
|
) |
| |
|
inlinevirtual |
Iterate the cipher.
- Parameters
-
output | the output buffer |
input | the input buffer |
dir | the direction of the cipher |
iterationCount | the number of iterations to perform on the input |
- See also
- IsSelfInverting() and IsForwardTransformation()
Definition at line 430 of file strciphr.h.
◆ CipherSetKey()
virtual void CFB_CipherAbstractPolicy::CipherSetKey |
( |
const NameValuePairs & |
params, |
|
|
const byte * |
key, |
|
|
size_t |
length |
|
) |
| |
|
pure virtual |
Key the cipher.
- Parameters
-
params | set of NameValuePairs use to initialize this object |
key | a byte array used to key the cipher |
length | the size of the key array |
◆ CipherResynchronize()
virtual void CFB_CipherAbstractPolicy::CipherResynchronize |
( |
const byte * |
iv, |
|
|
size_t |
length |
|
) |
| |
|
inlinevirtual |
Resynchronize the cipher.
- Parameters
-
iv | a byte array used to resynchronize the cipher |
length | the size of the IV array |
Definition at line 444 of file strciphr.h.
◆ AlgorithmProvider()
virtual std::string CFB_CipherAbstractPolicy::AlgorithmProvider |
( |
| ) |
const |
|
inlinevirtual |
Retrieve the provider of this algorithm.
- Returns
- the algorithm provider The algorithm provider can be a name like "C++", "SSE", "NEON", "AESNI", "ARMv8" and "Power8". C++ is standard C++ code. Other labels, like SSE, usually indicate a specialized implementation using instructions from a higher instruction set architecture (ISA). Future labels may include external hardware like a hardware security module (HSM). Generally speaking Wei Dai's original IA-32 ASM code falls under "SSE2". Labels like "SSSE3" and "SSE4.1" follow after Wei's code and use intrinsics instead of ASM. Algorithms which combine different instructions or ISAs provide the dominant one. For example on x86
AES/GCM
returns "AESNI" rather than "CLMUL" or "AES+SSE4.1" or "AES+CLMUL" or "AES+SSE4.1+CLMUL".
- Note
- Provider is not universally implemented yet.
Definition at line 462 of file strciphr.h.
The documentation for this class was generated from the following file: