aboutsummaryrefslogtreecommitdiffstats
path: root/algorithms.h
blob: d581d7382e325a75ea7452dc986649f93a80f539 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
/* See LICENSE file for copyright and license details. */
/* included from "common.h" */


#include "argon2/argon2.h"


/* ordered by preference */
#define LIST_ALGORITHMS(X)\
	X(argon2id) /* argon2 variant:: recommended hybrid */ \
	X(argon2i) /* argon2 variant:: data-independent: weaker against GPU/ASIC, stronger against side-channel attacks */\
	X(argon2d) /* argon2 variant:: data-dependent: weaker against side-channel attacks, stronger against GPU/ASIC */\
	X(argon2ds) /* argon2 variant:: data-dependent though S-box, not properly cryptoanalysed */




#ifdef REQUIRES_COMMON_RFC4848S4

/**
 * RFC 4648 §4 implementation of `struct algorithm.encoding_lut_`
 */
NONSTRING extern const char librecrypt_common_rfc4848s4_encoding_lut_[256u];

/**
 * RFC 4648 §4 implementation of `struct algorithm.decoding_lut_`
 */
extern const unsigned char librecrypt_common_rfc4848s4_decoding_lut_[256u];

#endif