|
|
|
@ -44,6 +44,9 @@
|
|
|
|
|
#define INIT_SIZE_BLK 8
|
|
|
|
|
#define INIT_SIZE_BYTE (INIT_SIZE_BLK * AES_BLOCK_SIZE)
|
|
|
|
|
|
|
|
|
|
extern int aesb_single_round(const uint8_t *in, uint8_t*out, const uint8_t *expandedKey);
|
|
|
|
|
extern int aesb_pseudo_round(const uint8_t *in, uint8_t *out, const uint8_t *expandedKey);
|
|
|
|
|
|
|
|
|
|
#if defined(__x86_64__) || (defined(_MSC_VER) && defined(_WIN64))
|
|
|
|
|
// Optimised code below, uses x86-specific intrinsics, SSE2, AES-NI
|
|
|
|
|
// Fall back to more portable code is down at the bottom
|
|
|
|
@ -138,9 +141,6 @@
|
|
|
|
|
#define THREADV __thread
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
extern int aesb_single_round(const uint8_t *in, uint8_t*out, const uint8_t *expandedKey);
|
|
|
|
|
extern int aesb_pseudo_round(const uint8_t *in, uint8_t *out, const uint8_t *expandedKey);
|
|
|
|
|
|
|
|
|
|
#pragma pack(push, 1)
|
|
|
|
|
union cn_slow_hash_state
|
|
|
|
|
{
|
|
|
|
|