KeccakTools
|
#include "Keccak-fParts.h"
Typedefs | |
typedef UINT64 | PackedParity |
Functions | |
PackedParity | getPackedParityFromParity (const RowValue &parity, const unsigned int &z) |
RowValue | getParityFromPackedParity (const PackedParity &parity, const unsigned int &z) |
PackedParity | packParity (const vector< RowValue > &parity) |
void | unpackParity (PackedParity packedParity, vector< RowValue > &parity, unsigned int laneSize) |
RowValue | getParity (SliceValue slice) |
PackedParity | getParity (const vector< SliceValue > &state) |
void | getParity (const vector< SliceValue > &state, vector< RowValue > &parity) |
void | getParity (const vector< LaneValue > &state, vector< LaneValue > &parity) |
void | fromSlicesToSheetsParity (const vector< RowValue > &paritySlices, vector< LaneValue > &paritySheets) |
void | fromSheetsToSlicesParity (const vector< LaneValue > &paritySheets, vector< RowValue > &paritySlices) |
typedef UINT64 PackedParity |
The PackedParity type is one 64-bit word, containing up to 8 5-bit parities, coming from up to 8 slices. The parity of slice z is in the bits corresponding to (0-31)*32^z in the word. See getPackedParityFromParity() and getParityFromPackedParity() for more details.
void fromSheetsToSlicesParity | ( | const vector< LaneValue > & | paritySheets, |
vector< RowValue > & | paritySlices | ||
) |
This function converts the parity of a state expressed as a vector of parities of each sheet into a vector of parities of each slice.
paritySheets | The parity as a vector of lanes. |
paritySlices | The parity as a vector of rows. |
void fromSlicesToSheetsParity | ( | const vector< RowValue > & | paritySlices, |
vector< LaneValue > & | paritySheets | ||
) |
This function converts the parity of a state expressed as a vector of parities of each slice into a vector of parities of each sheet.
paritySlices | The parity as a vector of rows. |
paritySheets | The parity as a vector of lanes. |
PackedParity getPackedParityFromParity | ( | const RowValue & | parity, |
const unsigned int & | z | ||
) | [inline] |
This function returns a PackedParity with bits set to zero, except for parity at slice z, with a given value.
parity | The parity of the slice with z-coordinate z. |
z | The z-coordinate. |
This function computes the parity of a state, sheet per sheet, and returns it in a vector of lane values.
state | The value of the state given as a vector of lanes. |
parity | The parity of state as a vector of 5 lane values. |
void getParity | ( | const vector< SliceValue > & | state, |
vector< RowValue > & | parity | ||
) |
This function computes the parity of a state, slice per slice, and returns it in a vector of row values.
state | The value of the state given as a vector of slices. |
parity | The parity of state as a vector of row values. |
RowValue getParity | ( | SliceValue | slice | ) |
This function computes the parity of a slice.
slice | The value of a slice. |
PackedParity getParity | ( | const vector< SliceValue > & | state | ) |
This function computes the parity of a state, and returns it in a PackedParity.
state | The value of the state given as a vector of slices. |
RowValue getParityFromPackedParity | ( | const PackedParity & | parity, |
const unsigned int & | z | ||
) | [inline] |
This function returns the parity value at slice z in the given PackedParity value.
parity | The parity to read from. |
z | The z-coordinate to read from. |
PackedParity packParity | ( | const vector< RowValue > & | parity | ) |
This function converts from a vector of parity of each slice to a PackedParity value.
parity | The parity of a state as vector of row values. |
void unpackParity | ( | PackedParity | packedParity, |
vector< RowValue > & | parity, | ||
unsigned int | laneSize | ||
) |
This function converts from a PackedParity value to a vector of parity of each slice.
packedParity | The parity of a state as a PackedParity value. |
parity | The parity of a state as a vector of row values. |
laneSize | The number of slices. |