#include <stdarg.h>
#include <stdbool.h>
#include <stddef.h>
#include <stdint.h>
#include <stdlib.h>
#define Pbkdf2HmacSha256State_MAX_SHORT_PASSWORD_LEN (64 - 9)
#define SCRYPT_OPT_INVALID_BUFFER_ALIGNMENT -3
#define SCRYPT_OPT_INVALID_BUFFER_SIZE -2
#define SCRYPT_OPT_UNSUPPORTED_PARAM_SPACE -1
#ifdef __cplusplus
extern "C" {
#endif
int scrypt_kdf(const uint8_t *password,
size_t password_len,
const uint8_t *salt,
size_t salt_len,
uint64_t n,
uint32_t r,
uint32_t p,
uint8_t *output,
size_t output_len);
int scrypt_kdf_cf(const uint8_t *password,
size_t password_len,
const uint8_t *salt,
size_t salt_len,
uint8_t log2_n,
uint32_t r,
uint32_t p,
uint8_t *output,
size_t output_len);
int scrypt_ro_mix(uint8_t *front_buffer,
uint8_t *back_buffer,
const uint8_t **salt_output,
uint32_t r,
uint8_t cf,
size_t minimum_buffer_size);
size_t scrypt_ro_mix_minimum_buffer_len(unsigned int r, unsigned int cf);
#ifdef __cplusplus
} #endif