v. 1.0.0.0
This commit is contained in:
72
src/crypto/neoscrypt.h
Normal file
72
src/crypto/neoscrypt.h
Normal file
@@ -0,0 +1,72 @@
|
||||
#if (__cplusplus)
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
void neoscrypt(const unsigned char *password, unsigned char *output,
|
||||
unsigned int profile);
|
||||
|
||||
void neoscrypt_blake2s(const void *input, const unsigned int input_size,
|
||||
const void *key, const unsigned char key_size,
|
||||
void *output, const unsigned char output_size);
|
||||
|
||||
void neoscrypt_copy(void *dstp, const void *srcp, unsigned int len);
|
||||
void neoscrypt_erase(void *dstp, unsigned int len);
|
||||
void neoscrypt_xor(void *dstp, const void *srcp, unsigned int len);
|
||||
|
||||
#if defined(ASM) && defined(MINER_4WAY)
|
||||
void neoscrypt_4way(const unsigned char *password, unsigned char *output,
|
||||
unsigned char *scratchpad);
|
||||
|
||||
#ifdef SHA256
|
||||
void scrypt_4way(const unsigned char *password, unsigned char *output,
|
||||
unsigned char *scratchpad);
|
||||
#endif
|
||||
|
||||
void neoscrypt_blake2s_4way(const unsigned char *input,
|
||||
const unsigned char *key, unsigned char *output);
|
||||
|
||||
void neoscrypt_fastkdf_4way(const unsigned char *password,
|
||||
const unsigned char *salt, unsigned char *output, unsigned char *scratchpad,
|
||||
const unsigned int mode);
|
||||
#endif
|
||||
|
||||
unsigned int cpu_vec_exts(void);
|
||||
|
||||
#if (__cplusplus)
|
||||
}
|
||||
#else
|
||||
|
||||
typedef unsigned long long ullong;
|
||||
typedef signed long long llong;
|
||||
typedef unsigned int uint;
|
||||
typedef unsigned char uchar;
|
||||
|
||||
#ifndef MIN
|
||||
#define MIN(a, b) ((a) < (b) ? a : b)
|
||||
#endif
|
||||
|
||||
#ifndef MAX
|
||||
#define MAX(a, b) ((a) > (b) ? a : b)
|
||||
#endif
|
||||
|
||||
#define BLOCK_SIZE 64
|
||||
#define DIGEST_SIZE 32
|
||||
|
||||
typedef uchar hash_digest[DIGEST_SIZE];
|
||||
|
||||
#define ROTL32(a,b) (((a) << (b)) | ((a) >> (32 - b)))
|
||||
#define ROTR32(a,b) (((a) >> (b)) | ((a) << (32 - b)))
|
||||
|
||||
#define U8TO32_BE(p) \
|
||||
(((uint)((p)[0]) << 24) | ((uint)((p)[1]) << 16) | \
|
||||
((uint)((p)[2]) << 8) | ((uint)((p)[3])))
|
||||
|
||||
#define U32TO8_BE(p, v) \
|
||||
(p)[0] = (uchar)((v) >> 24); (p)[1] = (uchar)((v) >> 16); \
|
||||
(p)[2] = (uchar)((v) >> 8); (p)[3] = (uchar)((v) );
|
||||
|
||||
#define U64TO8_BE(p, v) \
|
||||
U32TO8_BE((p), (uint)((v) >> 32)); \
|
||||
U32TO8_BE((p) + 4, (uint)((v) ));
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user