- MD4/sha1
  - hmac-sha1
  - pbkdf2-hmac-sha1
  - pbkdf2-hmac-sha512
Remaining:
  - handling of long salt (SID)
  - (AES256/DES3) + the end
pull/1238/head
Fist0urs 7 years ago
parent 73d48dcd26
commit 014278ab0e

@ -1382,12 +1382,18 @@ typedef struct
/* Fist0urs */
typedef struct
{
/* dedicated to hmac-sha1 */
u32 ipad[5];
u32 opad[5];
u32 dgst[5];
u32 out[4];
u32 out[5];
/* dedicated to hmac-sha512 */
u64 ipad64[8];
u64 opad64[8];
u64 dgst64[16];
u64 out64[16];
} dpapimk_tmp_t;
/* Fist0urs_end */

File diff suppressed because it is too large Load Diff

@ -831,12 +831,18 @@ typedef struct keepass_tmp
/* Fist0urs */
typedef struct dpapimk_tmp
{
/* dedicated to hmac-sha1 */
u32 ipad[5];
u32 opad[5];
u32 dgst[5];
u32 out[4];
u32 out[5];
/* dedicated to hmac-sha512 */
u64 ipad64[8];
u64 opad64[8];
u64 dgst64[16];
u64 out64[16];
} dpapimk_tmp_t;
/* Fist0urs_end */
@ -1623,7 +1629,7 @@ typedef enum rounds_count
ROUNDS_ATLASSIAN = 10000,
ROUNDS_NETBSD_SHA1CRYPT = 20000,
/* Fist0urs */
ROUNDS_DPAPIMK = 14000, // can be really different but fits jtr -test
ROUNDS_DPAPIMK = 24000 - 1, // can be really different but fits jtr -test
/* Fist0urs_end */
ROUNDS_STDOUT = 0

@ -2969,7 +2969,7 @@ int dpapimk_parse_hash (u8 *input_buf, u32 input_len, hash_t *hash_buf, MAYBE_UN
rounds_pos++;
salt->salt_iter = (atoll ((const char *) rounds_pos));
salt->salt_iter = (atoll ((const char *) rounds_pos)) - 1;
iv_pos = (u8 *) strchr ((const char *) rounds_pos, '*');
@ -18513,7 +18513,7 @@ int ascii_digest (hashcat_ctx_t *hashcat_ctx, char *out_buf, const size_t out_le
u32 version = (u32) dpapimk->version;
u32 context = (u32) dpapimk->context;
u32 rounds = salt.salt_iter;
u32 rounds = salt.salt_iter + 1;
u32 iv_len = 16;
u32 contents_len = (u32) dpapimk->contents_len;

Loading…
Cancel
Save