0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012 #ifndef _CRYPTO_STREEBOG_H_
0013 #define _CRYPTO_STREEBOG_H_
0014
0015 #include <linux/types.h>
0016
0017 #define STREEBOG256_DIGEST_SIZE 32
0018 #define STREEBOG512_DIGEST_SIZE 64
0019 #define STREEBOG_BLOCK_SIZE 64
0020
0021 struct streebog_uint512 {
0022 __le64 qword[8];
0023 };
0024
0025 struct streebog_state {
0026 union {
0027 u8 buffer[STREEBOG_BLOCK_SIZE];
0028 struct streebog_uint512 m;
0029 };
0030 struct streebog_uint512 hash;
0031 struct streebog_uint512 h;
0032 struct streebog_uint512 N;
0033 struct streebog_uint512 Sigma;
0034 size_t fillsize;
0035 };
0036
0037 #endif