Home | History | Annotate | Download | only in kcp

Lines Matching refs:state

80 void KeccakP1600_Initialize(void *state)
82 memset(state, 0, 200);
84 ((UINT64*)state)[ 1] = ~(UINT64)0;
85 ((UINT64*)state)[ 2] = ~(UINT64)0;
86 ((UINT64*)state)[ 8] = ~(UINT64)0;
87 ((UINT64*)state)[12] = ~(UINT64)0;
88 ((UINT64*)state)[17] = ~(UINT64)0;
89 ((UINT64*)state)[20] = ~(UINT64)0;
95 void KeccakP1600_AddBytesInLane(void *state, unsigned int lanePosition, const unsigned char *data, unsigned int offset, unsigned int length)
114 ((UINT64*)state)[lanePosition] ^= lane;
119 void KeccakP1600_AddLanes(void *state, const unsigned char *data, unsigned int laneCount)
126 if (((((uintptr_t)state) & 7) != 0) || ((((uintptr_t)data) & 7) != 0)) {
128 ((unsigned char*)state)[i] ^= data[i];
137 ((UINT64*)state)[i+0] ^= ((UINT64*)data)[i+0];
138 ((UINT64*)state)[i+1] ^= ((UINT64*)data)[i+1];
139 ((UINT64*)state)[i+2] ^= ((UINT64*)data)[i+2];
140 ((UINT64*)state)[i+3] ^= ((UINT64*)data)[i+3];
141 ((UINT64*)state)[i+4] ^= ((UINT64*)data)[i+4];
142 ((UINT64*)state)[i+5] ^= ((UINT64*)data)[i+5];
143 ((UINT64*)state)[i+6] ^= ((UINT64*)data)[i+6];
144 ((UINT64*)state)[i+7] ^= ((UINT64*)data)[i+7];
147 ((UINT64*)state)[i+0] ^= ((UINT64*)data)[i+0];
148 ((UINT64*)state)[i+1] ^= ((UINT64*)data)[i+1];
149 ((UINT64*)state)[i+2] ^= ((UINT64*)data)[i+2];
150 ((UINT64*)state)[i+3] ^= ((UINT64*)data)[i+3];
153 ((UINT64*)state)[i+0] ^= ((UINT64*)data)[i+0];
154 ((UINT64*)state)[i+1] ^= ((UINT64*)data)[i+1];
157 ((UINT64*)state)[i+0] ^= ((UINT64*)data)[i+0];
172 ((UINT64*)state)[i] ^= lane;
180 void KeccakP1600_AddByte(void *state, unsigned char byte, unsigned int offset)
184 ((UINT64*)state)[offset/8] ^= lane;
190 void KeccakP1600_AddBytes(void *state, const unsigned char *data, unsigned int offset, unsigned int length)
192 SnP_AddBytes(state, data, offset, length, KeccakP1600_AddLanes, KeccakP1600_AddBytesInLane, 8);
197 void KeccakP1600_OverwriteBytesInLane(void *state, unsigned int lanePosition, const unsigned char *data, unsigned int offset, unsigned int length)
204 ((unsigned char*)state)[lanePosition*8+offset+i] = ~data[i];
209 memcpy((unsigned char*)state+lanePosition*8+offset, data, length);
218 void KeccakP1600_OverwriteLanes(void *state, const unsigned char *data, unsigned int laneCount)
226 ((UINT64*)state)[lanePosition] = ~((const UINT64*)data)[lanePosition];
228 ((UINT64*)state)[lanePosition] = ((const UINT64*)data)[lanePosition];
230 memcpy(state, data, laneCount*8);
239 void KeccakP1600_OverwriteBytes(void *state, const unsigned char *data, unsigned int offset, unsigned int length)
241 SnP_OverwriteBytes(state, data, offset, length, KeccakP1600_OverwriteLanes, KeccakP1600_OverwriteBytesInLane, 8);
246 void KeccakP1600_OverwriteWithZeroes(void *state, unsigned int byteCount)
254 ((UINT64*)state)[lanePosition] = ~0;
256 ((UINT64*)state)[lanePosition] = 0;
260 memset((unsigned char*)state+lanePosition*8, 0xFF, byteCount%8);
262 memset((unsigned char*)state+lanePosition*8, 0, byteCount%8);
265 memset(state, 0, byteCount);
274 void KeccakP1600_Permute_24rounds(void *state)
280 UINT64 *stateAsLanes = (UINT64*)state;
289 void KeccakP1600_Permute_12rounds(void *state)
295 UINT64 *stateAsLanes = (UINT64*)state;
304 void KeccakP1600_ExtractBytesInLane(const void *state, unsigned int lanePosition, unsigned char *data, unsigned int offset, unsigned int length)
306 UINT64 lane = ((UINT64*)state)[lanePosition];
339 void KeccakP1600_ExtractLanes(const void *state, unsigned char *data, unsigned int laneCount)
342 memcpy(data, state, laneCount*8);
347 fromWordToBytes(data+(i*8), ((const UINT64*)state)[i]);
373 void KeccakP1600_ExtractBytes(const void *state, unsigned char *data, unsigned int offset, unsigned int length)
375 SnP_ExtractBytes(state, data, offset, length, KeccakP1600_ExtractLanes, KeccakP1600_ExtractBytesInLane, 8);
380 void KeccakP1600_ExtractAndAddBytesInLane(const void *state, unsigned int lanePosition, const unsigned char *input, unsigned char *output, unsigned int offset, unsigned int length)
382 UINT64 lane = ((UINT64*)state)[lanePosition];
407 void KeccakP1600_ExtractAndAddLanes(const void *state, const unsigned char *input, unsigned char *output, unsigned int laneCount)
417 ((UINT64*)output)[i] = ((UINT64*)input)[i] ^ ((const UINT64*)state)[i];
419 fromWordToBytes(temp, ((const UINT64*)state)[i]);
448 void KeccakP1600_ExtractAndAddBytes(const void *state, const unsigned char *input, unsigned char *output, unsigned int offset, unsigned int length)
450 SnP_ExtractAndAddBytes(state, input, output, offset, length, KeccakP1600_ExtractAndAddLanes, KeccakP1600_ExtractAndAddBytesInLane, 8);
455 size_t KeccakF1600_FastLoop_Absorb(void *state, unsigned int laneCount, const unsigned char *data, size_t dataByteLen)
462 UINT64 *stateAsLanes = (UINT64*)state;