|
Monero
|
#include <assert.h>#include <stddef.h>#include <stdint.h>#include <string.h>#include <stdio.h>#include <unistd.h>#include "common/int-util.h"#include "hash-ops.h"#include "oaes_lib.h"#include "variant2_int_sqrt.h"
Classes | |
| union | cn_slow_hash_state |
Macros | |
| #define | MEMORY (1 << 21) |
| #define | ITER (1 << 20) |
| #define | AES_BLOCK_SIZE 16 |
| #define | AES_KEY_SIZE 32 |
| #define | INIT_SIZE_BLK 8 |
| #define | INIT_SIZE_BYTE (INIT_SIZE_BLK * AES_BLOCK_SIZE) |
| #define | VARIANT1_1(p) |
| #define | VARIANT1_2(p) |
| #define | VARIANT1_CHECK() |
| #define | NONCE_POINTER (((const uint8_t*)data)+35) |
| #define | VARIANT1_PORTABLE_INIT() |
| #define | VARIANT1_INIT64() |
| #define | VARIANT2_INIT64() |
| #define | VARIANT2_PORTABLE_INIT() |
| #define | VARIANT2_SHUFFLE_ADD_SSE2(base_ptr, offset) |
| #define | VARIANT2_SHUFFLE_ADD_NEON(base_ptr, offset) |
| #define | VARIANT2_PORTABLE_SHUFFLE_ADD(base_ptr, offset) |
| #define | VARIANT2_INTEGER_MATH_DIVISION_STEP(b, ptr) |
| #define | VARIANT2_INTEGER_MATH_SSE2(b, ptr) |
| #define | VARIANT2_PORTABLE_INTEGER_MATH(b, ptr) |
| #define | VARIANT2_2_PORTABLE() |
| #define | VARIANT2_2() |
| #define | U64(x) ((uint64_t *) (x)) |
Functions | |
| int | aesb_single_round (const uint8_t *in, uint8_t *out, const uint8_t *expandedKey) |
| int | aesb_pseudo_round (const uint8_t *in, uint8_t *out, const uint8_t *expandedKey) |
| void | slow_hash_allocate_state (void) |
| void | slow_hash_free_state (void) |
| static size_t | e2i (const uint8_t *a, size_t count) |
| static void | mul (const uint8_t *a, const uint8_t *b, uint8_t *res) |
| static void | sum_half_blocks (uint8_t *a, const uint8_t *b) |
| static void | copy_block (uint8_t *dst, const uint8_t *src) |
| static void | swap_blocks (uint8_t *a, uint8_t *b) |
| static void | xor_blocks (uint8_t *a, const uint8_t *b) |
| static void | xor64 (uint8_t *left, const uint8_t *right) |
| void | cn_slow_hash (const void *data, size_t length, char *hash, int variant, int prehashed) |
Variables | |
| static void(*const | extra_hashes [4])(const void *, size_t, char *) |
| #define AES_BLOCK_SIZE 16 |
| #define AES_KEY_SIZE 32 |
| #define INIT_SIZE_BLK 8 |
| #define INIT_SIZE_BYTE (INIT_SIZE_BLK * AES_BLOCK_SIZE) |
| #define ITER (1 << 20) |
| #define MEMORY (1 << 21) |
| #define NONCE_POINTER (((const uint8_t*)data)+35) |
| #define U64 | ( | x | ) | ((uint64_t *) (x)) |
| #define VARIANT1_1 | ( | p | ) |
| #define VARIANT1_2 | ( | p | ) |
| #define VARIANT1_CHECK | ( | ) |
| #define VARIANT1_INIT64 | ( | ) |
| #define VARIANT1_PORTABLE_INIT | ( | ) |
| #define VARIANT2_2 | ( | ) |
| #define VARIANT2_2_PORTABLE | ( | ) |
| #define VARIANT2_INIT64 | ( | ) |
| #define VARIANT2_INTEGER_MATH_DIVISION_STEP | ( | b, | |
| ptr | |||
| ) |
| #define VARIANT2_INTEGER_MATH_SSE2 | ( | b, | |
| ptr | |||
| ) |
| #define VARIANT2_PORTABLE_INIT | ( | ) |
| #define VARIANT2_PORTABLE_INTEGER_MATH | ( | b, | |
| ptr | |||
| ) |
| #define VARIANT2_PORTABLE_SHUFFLE_ADD | ( | base_ptr, | |
| offset | |||
| ) |
| #define VARIANT2_SHUFFLE_ADD_NEON | ( | base_ptr, | |
| offset | |||
| ) |
| #define VARIANT2_SHUFFLE_ADD_SSE2 | ( | base_ptr, | |
| offset | |||
| ) |
| int aesb_pseudo_round | ( | const uint8_t * | in, |
| uint8_t * | out, | ||
| const uint8_t * | expandedKey | ||
| ) |
| int aesb_single_round | ( | const uint8_t * | in, |
| uint8_t * | out, | ||
| const uint8_t * | expandedKey | ||
| ) |
| void cn_slow_hash | ( | const void * | data, |
| size_t | length, | ||
| char * | hash, | ||
| int | variant, | ||
| int | prehashed | ||
| ) |
|
static |
|
static |
|
static |
| void slow_hash_allocate_state | ( | void | ) |
| void slow_hash_free_state | ( | void | ) |
|
static |
|
static |
|
static |
|
static |
|
static |
1.8.14