typedef struct
{
- #if defined _DES_
- u32 digest_buf[4];
- #elif defined _MD4_
- u32 digest_buf[4];
- #elif defined _MD5_
- u32 digest_buf[4];
- #elif defined _MD5H_
- u32 digest_buf[4];
- #elif defined _SHA1_
- u32 digest_buf[5];
- #elif defined _BCRYPT_
- u32 digest_buf[6];
- #elif defined _SHA256_
- u32 digest_buf[8];
- #elif defined _SHA384_
- u32 digest_buf[16];
- #elif defined _SHA512_
- u32 digest_buf[16];
- #elif defined _KECCAK_
- u32 digest_buf[50];
- #elif defined _RIPEMD160_
- u32 digest_buf[5];
- #elif defined _WHIRLPOOL_
- u32 digest_buf[16];
- #elif defined _GOST_
- u32 digest_buf[8];
- #elif defined _GOST2012_256_
- u32 digest_buf[8];
- #elif defined _GOST2012_512_
- u32 digest_buf[16];
- #elif defined _SAPB_
- u32 digest_buf[4];
- #elif defined _SAPG_
- u32 digest_buf[5];
- #elif defined _MYSQL323_
- u32 digest_buf[4];
- #elif defined _LOTUS5_
- u32 digest_buf[4];
- #elif defined _LOTUS6_
- u32 digest_buf[4];
- #elif defined _SCRYPT_
- u32 digest_buf[8];
- #elif defined _LOTUS8_
- u32 digest_buf[4];
- #elif defined _OFFICE2007_
- u32 digest_buf[4];
- #elif defined _OFFICE2010_
- u32 digest_buf[4];
- #elif defined _OFFICE2013_
- u32 digest_buf[4];
- #elif defined _OLDOFFICE01_
- u32 digest_buf[4];
- #elif defined _OLDOFFICE34_
- u32 digest_buf[4];
- #elif defined _SIPHASH_
- u32 digest_buf[4];
- #elif defined _PBKDF2_MD5_
- u32 digest_buf[32];
- #elif defined _PBKDF2_SHA1_
- u32 digest_buf[32];
- #elif defined _PBKDF2_SHA256_
- u32 digest_buf[32];
- #elif defined _PBKDF2_SHA512_
- u32 digest_buf[32];
- #elif defined _PDF17L8_
- u32 digest_buf[8];
- #elif defined _CRC32_
- u32 digest_buf[4];
- #elif defined _SEVEN_ZIP_
- u32 digest_buf[4];
- #elif defined _ANDROIDFDE_
- u32 digest_buf[4];
- #elif defined _DCC2_
- u32 digest_buf[4];
- #elif defined _WPA_
- u32 digest_buf[4];
- #elif defined _MD5_SHA1_
- u32 digest_buf[4];
- #elif defined _SHA1_MD5_
- u32 digest_buf[5];
- #elif defined _NETNTLMV2_
- u32 digest_buf[4];
- #elif defined _KRB5PA_
- u32 digest_buf[4];
- #elif defined _CLOUDKEY_
- u32 digest_buf[8];
- #elif defined _SCRYPT_
- u32 digest_buf[4];
- #elif defined _PSAFE2_
- u32 digest_buf[5];
- #elif defined _LOTUS8_
- u32 digest_buf[4];
- #elif defined _RAR3_
- u32 digest_buf[4];
- #elif defined _SHA256_SHA1_
- u32 digest_buf[8];
- #elif defined _MS_DRSR_
- u32 digest_buf[8];
- #elif defined _ANDROIDFDE_SAMSUNG_
- u32 digest_buf[8];
- #elif defined _RAR5_
- u32 digest_buf[4];
- #elif defined _KRB5TGS_
- u32 digest_buf[4];
- #elif defined _AXCRYPT_
- u32 digest_buf[4];
- #elif defined _KEEPASS_
- u32 digest_buf[4];
- #elif defined _ZIP2_
- u32 digest_buf[4];
- #endif
+ u32 digest_buf[DGST_ELEM];
} digest_t;
u32 scrypt_N;
u32 scrypt_r;
u32 scrypt_p;
- u32 scrypt_tmto;
- u32 scrypt_phy;
} salt_t;
} zip2_t;
+typedef struct
+{
+ u32 salt_buf[32];
+
+} win8phone_t;
+
typedef struct
{
u32 version;
typedef struct
{
- u32 KEK[5];
-
+ u32 KEK[4];
u32 lsb[4];
u32 cipher[4];
typedef struct
{
- uint4 P[64];
+ #ifndef SCRYPT_TMP_ELEM
+ #define SCRYPT_TMP_ELEM 1
+ #endif
+
+ uint4 P[SCRYPT_TMP_ELEM];
} scrypt_tmp_t;