Classes | Macros | Functions
scrypt.c File Reference
#include <openssl/evp.h>
#include <assert.h>
#include <openssl/err.h>
#include <openssl/mem.h>
#include <openssl/type_check.h>
#include "../internal.h"
Include dependency graph for scrypt.c:

Go to the source code of this file.

Classes

struct  block_t
 

Macros

#define SCRYPT_MAX_MEM   (1024 * 1024 * 32)
 
#define SCRYPT_PR_MAX   ((1 << 30) - 1)
 

Functions

int EVP_PBE_scrypt (const char *password, size_t password_len, const uint8_t *salt, size_t salt_len, uint64_t N, uint64_t r, uint64_t p, size_t max_mem, uint8_t *out_key, size_t key_len)
 
 OPENSSL_STATIC_ASSERT (sizeof(block_t)==64, "block_t has padding")
 
static void salsa208_word_specification (block_t *inout)
 
static void scryptBlockMix (block_t *out, const block_t *B, uint64_t r)
 
static void scryptROMix (block_t *B, uint64_t r, uint64_t N, block_t *T, block_t *V)
 
static void xor_block (block_t *out, const block_t *a, const block_t *b)
 

Macro Definition Documentation

◆ SCRYPT_MAX_MEM

#define SCRYPT_MAX_MEM   (1024 * 1024 * 32)

Definition at line 142 of file scrypt.c.

◆ SCRYPT_PR_MAX

#define SCRYPT_PR_MAX   ((1 << 30) - 1)

Definition at line 138 of file scrypt.c.

Function Documentation

◆ EVP_PBE_scrypt()

int EVP_PBE_scrypt ( const char *  password,
size_t  password_len,
const uint8_t salt,
size_t  salt_len,
uint64_t  N,
uint64_t  r,
uint64_t  p,
size_t  max_mem,
uint8_t out_key,
size_t  key_len 
)

Definition at line 144 of file scrypt.c.

◆ OPENSSL_STATIC_ASSERT()

OPENSSL_STATIC_ASSERT ( sizeof(block_t = =64,
"block_t has padding"   
)

◆ salsa208_word_specification()

static void salsa208_word_specification ( block_t inout)
static

Definition at line 38 of file scrypt.c.

◆ scryptBlockMix()

static void scryptBlockMix ( block_t out,
const block_t B,
uint64_t  r 
)
static

Definition at line 92 of file scrypt.c.

◆ scryptROMix()

static void scryptROMix ( block_t B,
uint64_t  r,
uint64_t  N,
block_t T,
block_t V 
)
static

Definition at line 111 of file scrypt.c.

◆ xor_block()

static void xor_block ( block_t out,
const block_t a,
const block_t b 
)
static

Definition at line 83 of file scrypt.c.



grpc
Author(s):
autogenerated on Fri May 16 2025 03:01:30