mirror of https://github.com/hashcat/hashcat
cryptoapi opts (2) and test unit
This commit is contained in:
parent
69dc14c66f
commit
e30febc8b8
|
@ -76,10 +76,6 @@ KERNEL_FQ void m14511_mxx (KERN_ATTR_RULES_ESALT (cryptoapi_t))
|
|||
|
||||
u32 aes_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||
|
||||
u32 padding[64] = { 0 };
|
||||
|
||||
padding[0] = 0x00000041;
|
||||
|
||||
COPY_PW (pws[gid]);
|
||||
|
||||
/**
|
||||
|
@ -121,7 +117,9 @@ KERNEL_FQ void m14511_mxx (KERN_ATTR_RULES_ESALT (cryptoapi_t))
|
|||
|
||||
sha1_init (&ctx);
|
||||
|
||||
sha1_update_swap (&ctx, padding, 1);
|
||||
ctx.w0[0] = 0x41000000;
|
||||
|
||||
ctx.len = 1;
|
||||
|
||||
sha1_update_swap (&ctx, w, w_len);
|
||||
|
||||
|
@ -271,10 +269,6 @@ KERNEL_FQ void m14511_sxx (KERN_ATTR_RULES_ESALT (cryptoapi_t))
|
|||
* base
|
||||
*/
|
||||
|
||||
u32 padding[64] = { 0 };
|
||||
|
||||
padding[0] = 0x00000041;
|
||||
|
||||
COPY_PW (pws[gid]);
|
||||
|
||||
/**
|
||||
|
@ -316,7 +310,9 @@ KERNEL_FQ void m14511_sxx (KERN_ATTR_RULES_ESALT (cryptoapi_t))
|
|||
|
||||
sha1_init (&ctx);
|
||||
|
||||
sha1_update_swap (&ctx, padding, 1);
|
||||
ctx.w0[0] = 0x41000000;
|
||||
|
||||
ctx.len = 1;
|
||||
|
||||
sha1_update_swap (&ctx, w, w_len);
|
||||
|
||||
|
|
|
@ -74,10 +74,6 @@ KERNEL_FQ void m14511_mxx (KERN_ATTR_ESALT (cryptoapi_t))
|
|||
|
||||
u32 aes_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||
|
||||
u32 padding[64] = { 0 };
|
||||
|
||||
padding[0] = 0x00000041;
|
||||
|
||||
sha1_ctx_t ctx0, ctx0_padding;
|
||||
|
||||
sha1_init (&ctx0);
|
||||
|
@ -94,7 +90,9 @@ KERNEL_FQ void m14511_mxx (KERN_ATTR_ESALT (cryptoapi_t))
|
|||
|
||||
ctx0_padding = ctx0;
|
||||
|
||||
sha1_update_swap (&ctx0_padding, padding, 1);
|
||||
ctx0_padding.w0[0] = 0x41000000;
|
||||
|
||||
ctx0_padding.len = 1;
|
||||
|
||||
sha1_update_swap (&ctx0_padding, w, w_len);
|
||||
}
|
||||
|
@ -276,10 +274,6 @@ KERNEL_FQ void m14511_sxx (KERN_ATTR_ESALT (cryptoapi_t))
|
|||
|
||||
u32 aes_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||
|
||||
u32 padding[64] = { 0 };
|
||||
|
||||
padding[0] = 0x00000041;
|
||||
|
||||
sha1_ctx_t ctx0, ctx0_padding;
|
||||
|
||||
sha1_init (&ctx0);
|
||||
|
@ -296,7 +290,9 @@ KERNEL_FQ void m14511_sxx (KERN_ATTR_ESALT (cryptoapi_t))
|
|||
|
||||
ctx0_padding = ctx0;
|
||||
|
||||
sha1_update_swap (&ctx0_padding, padding, 1);
|
||||
ctx0_padding.w0[0] = 0x41000000;
|
||||
|
||||
ctx0_padding.len = 1;
|
||||
|
||||
sha1_update_swap (&ctx0_padding, w, w_len);
|
||||
}
|
||||
|
|
|
@ -74,10 +74,6 @@ KERNEL_FQ void m14511_mxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||
|
||||
u32 aes_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||
|
||||
u32 padding[64] = { 0 };
|
||||
|
||||
padding[0] = 0x00000041;
|
||||
|
||||
const u32 pw_len = pws[gid].pw_len;
|
||||
|
||||
u32x w[64] = { 0 };
|
||||
|
@ -101,12 +97,6 @@ KERNEL_FQ void m14511_mxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||
|
||||
w[0] = w0;
|
||||
|
||||
u32x _w[64];
|
||||
|
||||
u32 _w_len = pw_len;
|
||||
|
||||
for (u32 i = 0; i < 64; i++) _w[i] = w[i];
|
||||
|
||||
sha1_ctx_t ctx0;
|
||||
|
||||
sha1_init (&ctx0);
|
||||
|
@ -130,9 +120,11 @@ KERNEL_FQ void m14511_mxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||
|
||||
sha1_init (&ctx);
|
||||
|
||||
sha1_update_swap(&ctx, padding, 1);
|
||||
ctx.w0[0] = 0x41000000;
|
||||
|
||||
sha1_update_swap(&ctx, _w, _w_len);
|
||||
ctx.len = 1;
|
||||
|
||||
sha1_update_swap (&ctx, w, pw_len);
|
||||
|
||||
sha1_final (&ctx);
|
||||
|
||||
|
@ -275,10 +267,6 @@ KERNEL_FQ void m14511_sxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||
|
||||
u32 aes_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||
|
||||
u32 padding[64] = { 0 };
|
||||
|
||||
padding[0] = 0x00000041;
|
||||
|
||||
const u32 pw_len = pws[gid].pw_len;
|
||||
|
||||
u32x w[64] = { 0 };
|
||||
|
@ -302,17 +290,11 @@ KERNEL_FQ void m14511_sxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||
|
||||
w[0] = w0;
|
||||
|
||||
u32x _w[64];
|
||||
|
||||
u32 _w_len = pw_len;
|
||||
|
||||
for (u32 i = 0; i < 64; i++) _w[i] = w[i];
|
||||
|
||||
sha1_ctx_t ctx0;
|
||||
|
||||
sha1_init (&ctx0);
|
||||
|
||||
sha1_update_swap(&ctx0, w, pw_len);
|
||||
sha1_update_swap (&ctx0, w, pw_len);
|
||||
|
||||
sha1_final (&ctx0);
|
||||
|
||||
|
@ -331,9 +313,11 @@ KERNEL_FQ void m14511_sxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||
|
||||
sha1_init (&ctx);
|
||||
|
||||
sha1_update_swap(&ctx, padding, 1);
|
||||
ctx.w0[0] = 0x41000000;
|
||||
|
||||
sha1_update_swap(&ctx, _w, _w_len);
|
||||
ctx.len = 1;
|
||||
|
||||
sha1_update_swap (&ctx, w, pw_len);
|
||||
|
||||
sha1_final (&ctx);
|
||||
|
||||
|
|
|
@ -40,10 +40,6 @@ KERNEL_FQ void m14512_mxx (KERN_ATTR_RULES_ESALT (cryptoapi_t))
|
|||
|
||||
u32 serpent_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||
|
||||
u32 padding[64] = { 0 };
|
||||
|
||||
padding[0] = 0x00000041;
|
||||
|
||||
COPY_PW (pws[gid]);
|
||||
|
||||
/**
|
||||
|
@ -85,7 +81,9 @@ KERNEL_FQ void m14512_mxx (KERN_ATTR_RULES_ESALT (cryptoapi_t))
|
|||
|
||||
sha1_init (&ctx);
|
||||
|
||||
sha1_update_swap (&ctx, padding, 1);
|
||||
ctx.w0[0] = 0x41000000;
|
||||
|
||||
ctx.len = 1;
|
||||
|
||||
sha1_update_swap (&ctx, w, w_len);
|
||||
|
||||
|
@ -198,10 +196,6 @@ KERNEL_FQ void m14512_sxx (KERN_ATTR_RULES_ESALT (cryptoapi_t))
|
|||
* base
|
||||
*/
|
||||
|
||||
u32 padding[64] = { 0 };
|
||||
|
||||
padding[0] = 0x00000041;
|
||||
|
||||
COPY_PW (pws[gid]);
|
||||
|
||||
/**
|
||||
|
@ -243,7 +237,10 @@ KERNEL_FQ void m14512_sxx (KERN_ATTR_RULES_ESALT (cryptoapi_t))
|
|||
|
||||
sha1_init (&ctx);
|
||||
|
||||
sha1_update_swap (&ctx, padding, 1);
|
||||
ctx.w0[0] = 0x41000000;
|
||||
|
||||
ctx.len = 1;
|
||||
|
||||
sha1_update_swap (&ctx, w, w_len);
|
||||
|
||||
sha1_final (&ctx);
|
||||
|
|
|
@ -38,10 +38,6 @@ KERNEL_FQ void m14512_mxx (KERN_ATTR_ESALT (cryptoapi_t))
|
|||
|
||||
u32 serpent_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||
|
||||
u32 padding[64] = { 0 };
|
||||
|
||||
padding[0] = 0x00000041;
|
||||
|
||||
sha1_ctx_t ctx0, ctx0_padding;
|
||||
|
||||
sha1_init (&ctx0);
|
||||
|
@ -58,7 +54,9 @@ KERNEL_FQ void m14512_mxx (KERN_ATTR_ESALT (cryptoapi_t))
|
|||
|
||||
ctx0_padding = ctx0;
|
||||
|
||||
sha1_update_swap (&ctx0_padding, padding, 1);
|
||||
ctx0_padding.w0[0] = 0x41000000;
|
||||
|
||||
ctx0_padding.len = 1;
|
||||
|
||||
sha1_update_swap (&ctx0_padding, w, w_len);
|
||||
}
|
||||
|
@ -204,10 +202,6 @@ KERNEL_FQ void m14512_sxx (KERN_ATTR_ESALT (cryptoapi_t))
|
|||
|
||||
u32 serpent_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||
|
||||
u32 padding[64] = { 0 };
|
||||
|
||||
padding[0] = 0x00000041;
|
||||
|
||||
sha1_ctx_t ctx0, ctx0_padding;
|
||||
|
||||
sha1_init (&ctx0);
|
||||
|
@ -224,7 +218,9 @@ KERNEL_FQ void m14512_sxx (KERN_ATTR_ESALT (cryptoapi_t))
|
|||
|
||||
ctx0_padding = ctx0;
|
||||
|
||||
sha1_update_swap (&ctx0_padding, padding, 1);
|
||||
ctx0_padding.w0[0] = 0x41000000;
|
||||
|
||||
ctx0_padding.len = 1;
|
||||
|
||||
sha1_update_swap (&ctx0_padding, w, w_len);
|
||||
}
|
||||
|
|
|
@ -38,10 +38,6 @@ KERNEL_FQ void m14512_mxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||
|
||||
u32 serpent_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||
|
||||
u32 padding[64] = { 0 };
|
||||
|
||||
padding[0] = 0x00000041;
|
||||
|
||||
const u32 pw_len = pws[gid].pw_len;
|
||||
|
||||
u32x w[64] = { 0 };
|
||||
|
@ -65,12 +61,6 @@ KERNEL_FQ void m14512_mxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||
|
||||
w[0] = w0;
|
||||
|
||||
u32x _w[64];
|
||||
|
||||
u32 _w_len = pw_len;
|
||||
|
||||
for (u32 i = 0; i < 64; i++) _w[i] = w[i];
|
||||
|
||||
sha1_ctx_t ctx0;
|
||||
|
||||
sha1_init (&ctx0);
|
||||
|
@ -94,9 +84,11 @@ KERNEL_FQ void m14512_mxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||
|
||||
sha1_init (&ctx);
|
||||
|
||||
sha1_update_swap (&ctx, padding, 1);
|
||||
ctx.w0[0] = 0x41000000;
|
||||
|
||||
sha1_update_swap (&ctx, _w, _w_len);
|
||||
ctx.len = 1;
|
||||
|
||||
sha1_update_swap (&ctx, w, pw_len);
|
||||
|
||||
sha1_final (&ctx);
|
||||
|
||||
|
@ -203,10 +195,6 @@ KERNEL_FQ void m14512_sxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||
|
||||
u32 serpent_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||
|
||||
u32 padding[64] = { 0 };
|
||||
|
||||
padding[0] = 0x00000041;
|
||||
|
||||
const u32 pw_len = pws[gid].pw_len;
|
||||
|
||||
u32x w[64] = { 0 };
|
||||
|
@ -230,12 +218,6 @@ KERNEL_FQ void m14512_sxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||
|
||||
w[0] = w0;
|
||||
|
||||
u32x _w[64];
|
||||
|
||||
u32 _w_len = pw_len;
|
||||
|
||||
for (u32 i = 0; i < 64; i++) _w[i] = w[i];
|
||||
|
||||
sha1_ctx_t ctx0;
|
||||
|
||||
sha1_init (&ctx0);
|
||||
|
@ -259,9 +241,11 @@ KERNEL_FQ void m14512_sxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||
|
||||
sha1_init (&ctx);
|
||||
|
||||
sha1_update_swap (&ctx, padding, 1);
|
||||
ctx.w0[0] = 0x41000000;
|
||||
|
||||
sha1_update_swap (&ctx, _w, _w_len);
|
||||
ctx.len = 1;
|
||||
|
||||
sha1_update_swap (&ctx, w, pw_len);
|
||||
|
||||
sha1_final (&ctx);
|
||||
|
||||
|
|
|
@ -40,10 +40,6 @@ KERNEL_FQ void m14513_mxx (KERN_ATTR_RULES_ESALT (cryptoapi_t))
|
|||
|
||||
u32 twofish_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||
|
||||
u32 padding[64] = { 0 };
|
||||
|
||||
padding[0] = 0x00000041;
|
||||
|
||||
COPY_PW (pws[gid]);
|
||||
|
||||
/**
|
||||
|
@ -85,7 +81,9 @@ KERNEL_FQ void m14513_mxx (KERN_ATTR_RULES_ESALT (cryptoapi_t))
|
|||
|
||||
sha1_init (&ctx);
|
||||
|
||||
sha1_update_swap (&ctx, padding, 1);
|
||||
ctx.w0[0] = 0x41000000;
|
||||
|
||||
ctx.len = 1;
|
||||
|
||||
sha1_update_swap (&ctx, w, w_len);
|
||||
|
||||
|
@ -199,10 +197,6 @@ KERNEL_FQ void m14513_sxx (KERN_ATTR_RULES_ESALT (cryptoapi_t))
|
|||
* base
|
||||
*/
|
||||
|
||||
u32 padding[64] = { 0 };
|
||||
|
||||
padding[0] = 0x00000041;
|
||||
|
||||
COPY_PW (pws[gid]);
|
||||
|
||||
/**
|
||||
|
@ -244,7 +238,9 @@ KERNEL_FQ void m14513_sxx (KERN_ATTR_RULES_ESALT (cryptoapi_t))
|
|||
|
||||
sha1_init (&ctx);
|
||||
|
||||
sha1_update_swap (&ctx, padding, 1);
|
||||
ctx.w0[0] = 0x41000000;
|
||||
|
||||
ctx.len = 1;
|
||||
|
||||
sha1_update_swap (&ctx, w, w_len);
|
||||
|
||||
|
|
|
@ -38,10 +38,6 @@ KERNEL_FQ void m14513_mxx (KERN_ATTR_ESALT (cryptoapi_t))
|
|||
|
||||
u32 twofish_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||
|
||||
u32 padding[64] = { 0 };
|
||||
|
||||
padding[0] = 0x00000041;
|
||||
|
||||
sha1_ctx_t ctx0, ctx0_padding;
|
||||
|
||||
sha1_init (&ctx0);
|
||||
|
@ -58,7 +54,9 @@ KERNEL_FQ void m14513_mxx (KERN_ATTR_ESALT (cryptoapi_t))
|
|||
|
||||
ctx0_padding = ctx0;
|
||||
|
||||
sha1_update_swap (&ctx0_padding, padding, 1);
|
||||
ctx0_padding.w0[0] = 0x41000000;
|
||||
|
||||
ctx0_padding.len = 1;
|
||||
|
||||
sha1_update_swap (&ctx0_padding, w, w_len);
|
||||
}
|
||||
|
@ -205,10 +203,6 @@ KERNEL_FQ void m14513_sxx (KERN_ATTR_ESALT (cryptoapi_t))
|
|||
|
||||
u32 twofish_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||
|
||||
u32 padding[64] = { 0 };
|
||||
|
||||
padding[0] = 0x00000041;
|
||||
|
||||
sha1_ctx_t ctx0, ctx0_padding;
|
||||
|
||||
sha1_init (&ctx0);
|
||||
|
@ -225,7 +219,9 @@ KERNEL_FQ void m14513_sxx (KERN_ATTR_ESALT (cryptoapi_t))
|
|||
|
||||
ctx0_padding = ctx0;
|
||||
|
||||
sha1_update_swap (&ctx0_padding, padding, 1);
|
||||
ctx0_padding.w0[0] = 0x41000000;
|
||||
|
||||
ctx0_padding.len = 1;
|
||||
|
||||
sha1_update_swap (&ctx0_padding, w, w_len);
|
||||
}
|
||||
|
|
|
@ -38,10 +38,6 @@ KERNEL_FQ void m14513_mxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||
|
||||
u32 twofish_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||
|
||||
u32 padding[64] = { 0 };
|
||||
|
||||
padding[0] = 0x00000041;
|
||||
|
||||
const u32 pw_len = pws[gid].pw_len;
|
||||
|
||||
u32x w[64] = { 0 };
|
||||
|
@ -65,12 +61,6 @@ KERNEL_FQ void m14513_mxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||
|
||||
w[0] = w0;
|
||||
|
||||
u32x _w[64];
|
||||
|
||||
u32 _w_len = pw_len;
|
||||
|
||||
for (u32 i = 0; i < 64; i++) _w[i] = w[i];
|
||||
|
||||
sha1_ctx_t ctx0;
|
||||
|
||||
sha1_init (&ctx0);
|
||||
|
@ -94,9 +84,11 @@ KERNEL_FQ void m14513_mxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||
|
||||
sha1_init (&ctx);
|
||||
|
||||
sha1_update_swap (&ctx, padding, 1);
|
||||
ctx.w0[0] = 0x41000000;
|
||||
|
||||
sha1_update_swap (&ctx, _w, _w_len);
|
||||
ctx.len = 1;
|
||||
|
||||
sha1_update_swap (&ctx, w, pw_len);
|
||||
|
||||
sha1_final (&ctx);
|
||||
|
||||
|
@ -204,10 +196,6 @@ KERNEL_FQ void m14513_sxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||
|
||||
u32 twofish_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||
|
||||
u32 padding[64] = { 0 };
|
||||
|
||||
padding[0] = 0x00000041;
|
||||
|
||||
const u32 pw_len = pws[gid].pw_len;
|
||||
|
||||
u32x w[64] = { 0 };
|
||||
|
@ -231,12 +219,6 @@ KERNEL_FQ void m14513_sxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||
|
||||
w[0] = w0;
|
||||
|
||||
u32x _w[64];
|
||||
|
||||
u32 _w_len = pw_len;
|
||||
|
||||
for (u32 i = 0; i < 64; i++) _w[i] = w[i];
|
||||
|
||||
sha1_ctx_t ctx0;
|
||||
|
||||
sha1_init (&ctx0);
|
||||
|
@ -260,9 +242,11 @@ KERNEL_FQ void m14513_sxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||
|
||||
sha1_init (&ctx);
|
||||
|
||||
sha1_update_swap (&ctx, padding, 1);
|
||||
ctx.w0[0] = 0x41000000;
|
||||
|
||||
sha1_update_swap (&ctx, _w, _w_len);
|
||||
ctx.len = 1;
|
||||
|
||||
sha1_update_swap (&ctx, w, pw_len);
|
||||
|
||||
sha1_final (&ctx);
|
||||
|
||||
|
|
|
@ -76,10 +76,6 @@ KERNEL_FQ void m14541_mxx (KERN_ATTR_RULES_ESALT (cryptoapi_t))
|
|||
|
||||
u32 aes_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||
|
||||
u32 padding[64] = { 0 };
|
||||
|
||||
padding[0] = 0x00000041;
|
||||
|
||||
COPY_PW (pws[gid]);
|
||||
|
||||
/**
|
||||
|
@ -121,7 +117,9 @@ KERNEL_FQ void m14541_mxx (KERN_ATTR_RULES_ESALT (cryptoapi_t))
|
|||
|
||||
ripemd160_init (&ctx);
|
||||
|
||||
ripemd160_update (&ctx, padding, 1);
|
||||
ctx.w0[0] = 0x00000041;
|
||||
|
||||
ctx.len = 1;
|
||||
|
||||
ripemd160_update (&ctx, w, w_len);
|
||||
|
||||
|
@ -271,10 +269,6 @@ KERNEL_FQ void m14541_sxx (KERN_ATTR_RULES_ESALT (cryptoapi_t))
|
|||
* base
|
||||
*/
|
||||
|
||||
u32 padding[64] = { 0 };
|
||||
|
||||
padding[0] = 0x00000041;
|
||||
|
||||
COPY_PW (pws[gid]);
|
||||
|
||||
/**
|
||||
|
@ -288,6 +282,7 @@ KERNEL_FQ void m14541_sxx (KERN_ATTR_RULES_ESALT (cryptoapi_t))
|
|||
tmp.pw_len = apply_rules (rules_buf[il_pos].cmds, tmp.i, tmp.pw_len);
|
||||
|
||||
u32 w[64];
|
||||
|
||||
u32 w_len = tmp.pw_len;
|
||||
|
||||
for (u32 i = 0; i < 64; i++) w[i] = tmp.i[i];
|
||||
|
@ -315,7 +310,9 @@ KERNEL_FQ void m14541_sxx (KERN_ATTR_RULES_ESALT (cryptoapi_t))
|
|||
|
||||
ripemd160_init (&ctx);
|
||||
|
||||
ripemd160_update (&ctx, padding, 1);
|
||||
ctx.w0[0] = 0x00000041;
|
||||
|
||||
ctx.len = 1;
|
||||
|
||||
ripemd160_update (&ctx, w, w_len);
|
||||
|
||||
|
|
|
@ -74,10 +74,6 @@ KERNEL_FQ void m14541_mxx (KERN_ATTR_ESALT (cryptoapi_t))
|
|||
|
||||
u32 aes_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||
|
||||
u32 padding[64] = { 0 };
|
||||
|
||||
padding[0] = 0x00000041;
|
||||
|
||||
ripemd160_ctx_t ctx0, ctx0_padding;
|
||||
|
||||
ripemd160_init (&ctx0);
|
||||
|
@ -94,7 +90,9 @@ KERNEL_FQ void m14541_mxx (KERN_ATTR_ESALT (cryptoapi_t))
|
|||
|
||||
ctx0_padding = ctx0;
|
||||
|
||||
ripemd160_update (&ctx0_padding, padding, 1);
|
||||
ctx0_padding.w0[0] = 0x00000041;
|
||||
|
||||
ctx0_padding.len = 1;
|
||||
|
||||
ripemd160_update (&ctx0_padding, w, w_len);
|
||||
}
|
||||
|
@ -276,10 +274,6 @@ KERNEL_FQ void m14541_sxx (KERN_ATTR_ESALT (cryptoapi_t))
|
|||
|
||||
u32 aes_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||
|
||||
u32 padding[64] = { 0 };
|
||||
|
||||
padding[0] = 0x00000041;
|
||||
|
||||
ripemd160_ctx_t ctx0, ctx0_padding;
|
||||
|
||||
ripemd160_init (&ctx0);
|
||||
|
@ -296,7 +290,9 @@ KERNEL_FQ void m14541_sxx (KERN_ATTR_ESALT (cryptoapi_t))
|
|||
|
||||
ctx0_padding = ctx0;
|
||||
|
||||
ripemd160_update (&ctx0_padding, padding, 1);
|
||||
ctx0_padding.w0[0] = 0x00000041;
|
||||
|
||||
ctx0_padding.len = 1;
|
||||
|
||||
ripemd160_update (&ctx0_padding, w, w_len);
|
||||
}
|
||||
|
|
|
@ -74,10 +74,6 @@ KERNEL_FQ void m14541_mxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||
|
||||
u32 aes_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||
|
||||
u32 padding[64] = { 0 };
|
||||
|
||||
padding[0] = 0x00000041;
|
||||
|
||||
const u32 pw_len = pws[gid].pw_len;
|
||||
|
||||
u32x w[64] = { 0 };
|
||||
|
@ -101,12 +97,6 @@ KERNEL_FQ void m14541_mxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||
|
||||
w[0] = w0;
|
||||
|
||||
u32x _w[64];
|
||||
|
||||
u32 _w_len = pw_len;
|
||||
|
||||
for (u32 i = 0; i < 64; i++) _w[i] = w[i];
|
||||
|
||||
ripemd160_ctx_t ctx0;
|
||||
|
||||
ripemd160_init (&ctx0);
|
||||
|
@ -130,9 +120,11 @@ KERNEL_FQ void m14541_mxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||
|
||||
ripemd160_init (&ctx);
|
||||
|
||||
ripemd160_update (&ctx, padding, 1);
|
||||
ctx.w0[0] = 0x00000041;
|
||||
|
||||
ripemd160_update (&ctx, _w, _w_len);
|
||||
ctx.len = 1;
|
||||
|
||||
ripemd160_update (&ctx, w, pw_len);
|
||||
|
||||
ripemd160_final (&ctx);
|
||||
|
||||
|
@ -275,10 +267,6 @@ KERNEL_FQ void m14541_sxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||
|
||||
u32 aes_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||
|
||||
u32 padding[64] = { 0 };
|
||||
|
||||
padding[0] = 0x00000041;
|
||||
|
||||
const u32 pw_len = pws[gid].pw_len;
|
||||
|
||||
u32x w[64] = { 0 };
|
||||
|
@ -302,12 +290,6 @@ KERNEL_FQ void m14541_sxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||
|
||||
w[0] = w0;
|
||||
|
||||
u32x _w[64];
|
||||
|
||||
u32 _w_len = pw_len;
|
||||
|
||||
for (u32 i = 0; i < 64; i++) _w[i] = w[i];
|
||||
|
||||
ripemd160_ctx_t ctx0;
|
||||
|
||||
ripemd160_init (&ctx0);
|
||||
|
@ -331,9 +313,11 @@ KERNEL_FQ void m14541_sxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||
|
||||
ripemd160_init (&ctx);
|
||||
|
||||
ripemd160_update (&ctx, padding, 1);
|
||||
ctx.w0[0] = 0x00000041;
|
||||
|
||||
ripemd160_update (&ctx, _w, _w_len);
|
||||
ctx.len = 1;
|
||||
|
||||
ripemd160_update (&ctx, w, pw_len);
|
||||
|
||||
ripemd160_final (&ctx);
|
||||
|
||||
|
|
|
@ -40,10 +40,6 @@ KERNEL_FQ void m14542_mxx (KERN_ATTR_RULES_ESALT (cryptoapi_t))
|
|||
|
||||
u32 serpent_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||
|
||||
u32 padding[64] = { 0 };
|
||||
|
||||
padding[0] = 0x00000041;
|
||||
|
||||
COPY_PW (pws[gid]);
|
||||
|
||||
/**
|
||||
|
@ -85,7 +81,9 @@ KERNEL_FQ void m14542_mxx (KERN_ATTR_RULES_ESALT (cryptoapi_t))
|
|||
|
||||
ripemd160_init (&ctx);
|
||||
|
||||
ripemd160_update (&ctx, padding, 1);
|
||||
ctx.w0[0] = 0x00000041;
|
||||
|
||||
ctx.len = 1;
|
||||
|
||||
ripemd160_update (&ctx, w, w_len);
|
||||
|
||||
|
@ -198,10 +196,6 @@ KERNEL_FQ void m14542_sxx (KERN_ATTR_RULES_ESALT (cryptoapi_t))
|
|||
* base
|
||||
*/
|
||||
|
||||
u32 padding[64] = { 0 };
|
||||
|
||||
padding[0] = 0x00000041;
|
||||
|
||||
COPY_PW (pws[gid]);
|
||||
|
||||
/**
|
||||
|
@ -243,7 +237,9 @@ KERNEL_FQ void m14542_sxx (KERN_ATTR_RULES_ESALT (cryptoapi_t))
|
|||
|
||||
ripemd160_init (&ctx);
|
||||
|
||||
ripemd160_update (&ctx, padding, 1);
|
||||
ctx.w0[0] = 0x00000041;
|
||||
|
||||
ctx.len = 1;
|
||||
|
||||
ripemd160_update (&ctx, w, w_len);
|
||||
|
||||
|
|
|
@ -38,10 +38,6 @@ KERNEL_FQ void m14542_mxx (KERN_ATTR_ESALT (cryptoapi_t))
|
|||
|
||||
u32 serpent_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||
|
||||
u32 padding[64] = { 0 };
|
||||
|
||||
padding[0] = 0x00000041;
|
||||
|
||||
ripemd160_ctx_t ctx0, ctx0_padding;
|
||||
|
||||
ripemd160_init (&ctx0);
|
||||
|
@ -58,7 +54,9 @@ KERNEL_FQ void m14542_mxx (KERN_ATTR_ESALT (cryptoapi_t))
|
|||
|
||||
ctx0_padding = ctx0;
|
||||
|
||||
ripemd160_update (&ctx0_padding, padding, 1);
|
||||
ctx0_padding.w0[0] = 0x00000041;
|
||||
|
||||
ctx0_padding.len = 1;
|
||||
|
||||
ripemd160_update (&ctx0_padding, w, w_len);
|
||||
}
|
||||
|
@ -204,10 +202,6 @@ KERNEL_FQ void m14542_sxx (KERN_ATTR_ESALT (cryptoapi_t))
|
|||
|
||||
u32 serpent_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||
|
||||
u32 padding[64] = { 0 };
|
||||
|
||||
padding[0] = 0x00000041;
|
||||
|
||||
ripemd160_ctx_t ctx0, ctx0_padding;
|
||||
|
||||
ripemd160_init (&ctx0);
|
||||
|
@ -224,7 +218,9 @@ KERNEL_FQ void m14542_sxx (KERN_ATTR_ESALT (cryptoapi_t))
|
|||
|
||||
ctx0_padding = ctx0;
|
||||
|
||||
ripemd160_update (&ctx0_padding, padding, 1);
|
||||
ctx0_padding.w0[0] = 0x00000041;
|
||||
|
||||
ctx0_padding.len = 1;
|
||||
|
||||
ripemd160_update (&ctx0_padding, w, w_len);
|
||||
}
|
||||
|
|
|
@ -38,10 +38,6 @@ KERNEL_FQ void m14542_mxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||
|
||||
u32 serpent_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||
|
||||
u32 padding[64] = { 0 };
|
||||
|
||||
padding[0] = 0x00000041;
|
||||
|
||||
const u32 pw_len = pws[gid].pw_len;
|
||||
|
||||
u32x w[64] = { 0 };
|
||||
|
@ -65,12 +61,6 @@ KERNEL_FQ void m14542_mxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||
|
||||
w[0] = w0;
|
||||
|
||||
u32x _w[64];
|
||||
|
||||
u32 _w_len = pw_len;
|
||||
|
||||
for (u32 i = 0; i < 64; i++) _w[i] = w[i];
|
||||
|
||||
ripemd160_ctx_t ctx0;
|
||||
|
||||
ripemd160_init (&ctx0);
|
||||
|
@ -94,9 +84,11 @@ KERNEL_FQ void m14542_mxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||
|
||||
ripemd160_init (&ctx);
|
||||
|
||||
ripemd160_update (&ctx, padding, 1);
|
||||
ctx.w0[0] = 0x00000041;
|
||||
|
||||
ripemd160_update (&ctx, _w, _w_len);
|
||||
ctx.len = 1;
|
||||
|
||||
ripemd160_update (&ctx, w, pw_len);
|
||||
|
||||
ripemd160_final (&ctx);
|
||||
|
||||
|
@ -203,10 +195,6 @@ KERNEL_FQ void m14542_sxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||
|
||||
u32 serpent_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||
|
||||
u32 padding[64] = { 0 };
|
||||
|
||||
padding[0] = 0x00000041;
|
||||
|
||||
const u32 pw_len = pws[gid].pw_len;
|
||||
|
||||
u32x w[64] = { 0 };
|
||||
|
@ -230,12 +218,6 @@ KERNEL_FQ void m14542_sxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||
|
||||
w[0] = w0;
|
||||
|
||||
u32x _w[64];
|
||||
|
||||
u32 _w_len = pw_len;
|
||||
|
||||
for (u32 i = 0; i < 64; i++) _w[i] = w[i];
|
||||
|
||||
ripemd160_ctx_t ctx0;
|
||||
|
||||
ripemd160_init (&ctx0);
|
||||
|
@ -259,9 +241,11 @@ KERNEL_FQ void m14542_sxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||
|
||||
ripemd160_init (&ctx);
|
||||
|
||||
ripemd160_update (&ctx, padding, 1);
|
||||
ctx.w0[0] = 0x00000041;
|
||||
|
||||
ripemd160_update (&ctx, _w, _w_len);
|
||||
ctx.len = 1;
|
||||
|
||||
ripemd160_update (&ctx, w, pw_len);
|
||||
|
||||
ripemd160_final (&ctx);
|
||||
|
||||
|
|
|
@ -40,10 +40,6 @@ KERNEL_FQ void m14543_mxx (KERN_ATTR_RULES_ESALT (cryptoapi_t))
|
|||
|
||||
u32 twofish_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||
|
||||
u32 padding[64] = { 0 };
|
||||
|
||||
padding[0] = 0x00000041;
|
||||
|
||||
COPY_PW (pws[gid]);
|
||||
|
||||
/**
|
||||
|
@ -85,7 +81,9 @@ KERNEL_FQ void m14543_mxx (KERN_ATTR_RULES_ESALT (cryptoapi_t))
|
|||
|
||||
ripemd160_init (&ctx);
|
||||
|
||||
ripemd160_update (&ctx, padding, 1);
|
||||
ctx.w0[0] = 0x00000041;
|
||||
|
||||
ctx.len = 1;
|
||||
|
||||
ripemd160_update (&ctx, w, w_len);
|
||||
|
||||
|
@ -199,10 +197,6 @@ KERNEL_FQ void m14543_sxx (KERN_ATTR_RULES_ESALT (cryptoapi_t))
|
|||
* base
|
||||
*/
|
||||
|
||||
u32 padding[64] = { 0 };
|
||||
|
||||
padding[0] = 0x00000041;
|
||||
|
||||
COPY_PW (pws[gid]);
|
||||
|
||||
/**
|
||||
|
@ -244,7 +238,9 @@ KERNEL_FQ void m14543_sxx (KERN_ATTR_RULES_ESALT (cryptoapi_t))
|
|||
|
||||
ripemd160_init (&ctx);
|
||||
|
||||
ripemd160_update (&ctx, padding, 1);
|
||||
ctx.w0[0] = 0x00000041;
|
||||
|
||||
ctx.len = 1;
|
||||
|
||||
ripemd160_update (&ctx, w, w_len);
|
||||
|
||||
|
@ -260,6 +256,7 @@ KERNEL_FQ void m14543_sxx (KERN_ATTR_RULES_ESALT (cryptoapi_t))
|
|||
}
|
||||
|
||||
// key
|
||||
|
||||
u32 ukey[8] = { 0 };
|
||||
|
||||
ukey[0] = k0;
|
||||
|
|
|
@ -38,10 +38,6 @@ KERNEL_FQ void m14543_mxx (KERN_ATTR_ESALT (cryptoapi_t))
|
|||
|
||||
u32 twofish_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||
|
||||
u32 padding[64] = { 0 };
|
||||
|
||||
padding[0] = 0x00000041;
|
||||
|
||||
ripemd160_ctx_t ctx0, ctx0_padding;
|
||||
|
||||
ripemd160_init (&ctx0);
|
||||
|
@ -58,7 +54,9 @@ KERNEL_FQ void m14543_mxx (KERN_ATTR_ESALT (cryptoapi_t))
|
|||
|
||||
ctx0_padding = ctx0;
|
||||
|
||||
ripemd160_update (&ctx0_padding, padding, 1);
|
||||
ctx0_padding.w0[0] = 0x00000041;
|
||||
|
||||
ctx0_padding.len = 1;
|
||||
|
||||
ripemd160_update (&ctx0_padding, w, w_len);
|
||||
}
|
||||
|
@ -205,10 +203,6 @@ KERNEL_FQ void m14543_sxx (KERN_ATTR_ESALT (cryptoapi_t))
|
|||
|
||||
u32 twofish_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||
|
||||
u32 padding[64] = { 0 };
|
||||
|
||||
padding[0] = 0x00000041;
|
||||
|
||||
ripemd160_ctx_t ctx0, ctx0_padding;
|
||||
|
||||
ripemd160_init (&ctx0);
|
||||
|
@ -225,7 +219,9 @@ KERNEL_FQ void m14543_sxx (KERN_ATTR_ESALT (cryptoapi_t))
|
|||
|
||||
ctx0_padding = ctx0;
|
||||
|
||||
ripemd160_update (&ctx0_padding, padding, 1);
|
||||
ctx0_padding.w0[0] = 0x00000041;
|
||||
|
||||
ctx0_padding.len = 1;
|
||||
|
||||
ripemd160_update (&ctx0_padding, w, w_len);
|
||||
}
|
||||
|
|
|
@ -38,10 +38,6 @@ KERNEL_FQ void m14543_mxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||
|
||||
u32 twofish_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||
|
||||
u32 padding[64] = { 0 };
|
||||
|
||||
padding[0] = 0x00000041;
|
||||
|
||||
const u32 pw_len = pws[gid].pw_len;
|
||||
|
||||
u32x w[64] = { 0 };
|
||||
|
@ -65,12 +61,6 @@ KERNEL_FQ void m14543_mxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||
|
||||
w[0] = w0;
|
||||
|
||||
u32x _w[64];
|
||||
|
||||
u32 _w_len = pw_len;
|
||||
|
||||
for (u32 i = 0; i < 64; i++) _w[i] = w[i];
|
||||
|
||||
ripemd160_ctx_t ctx0;
|
||||
|
||||
ripemd160_init (&ctx0);
|
||||
|
@ -94,9 +84,11 @@ KERNEL_FQ void m14543_mxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||
|
||||
ripemd160_init (&ctx);
|
||||
|
||||
ripemd160_update (&ctx, padding, 1);
|
||||
ctx.w0[0] = 0x00000041;
|
||||
|
||||
ripemd160_update (&ctx, _w, _w_len);
|
||||
ctx.len = 1;
|
||||
|
||||
ripemd160_update (&ctx, w, pw_len);
|
||||
|
||||
ripemd160_final (&ctx);
|
||||
|
||||
|
@ -204,10 +196,6 @@ KERNEL_FQ void m14543_sxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||
|
||||
u32 twofish_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||
|
||||
u32 padding[64] = { 0 };
|
||||
|
||||
padding[0] = 0x00000041;
|
||||
|
||||
const u32 pw_len = pws[gid].pw_len;
|
||||
|
||||
u32x w[64] = { 0 };
|
||||
|
@ -231,12 +219,6 @@ KERNEL_FQ void m14543_sxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||
|
||||
w[0] = w0;
|
||||
|
||||
u32x _w[64];
|
||||
|
||||
u32 _w_len = pw_len;
|
||||
|
||||
for (u32 i = 0; i < 64; i++) _w[i] = w[i];
|
||||
|
||||
ripemd160_ctx_t ctx0;
|
||||
|
||||
ripemd160_init (&ctx0);
|
||||
|
@ -260,9 +242,11 @@ KERNEL_FQ void m14543_sxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||
|
||||
ripemd160_init (&ctx);
|
||||
|
||||
ripemd160_update (&ctx, padding, 1);
|
||||
ctx.w0[0] = 0x00000041;
|
||||
|
||||
ripemd160_update (&ctx, _w, _w_len);
|
||||
ctx.len = 1;
|
||||
|
||||
ripemd160_update (&ctx, w, pw_len);
|
||||
|
||||
ripemd160_final (&ctx);
|
||||
|
||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -98,5 +98,4 @@ else:
|
|||
|
||||
f.close()
|
||||
|
||||
print('Hashcat mode: ' + str(hash_mode))
|
||||
print('Hash: $cryptoapi$' + str(kern_type) + '$' + str(key_size) + '$03000000000000000000000000000000$00000000000000000000000000000000$' + ct)
|
||||
print('$cryptoapi$' + str(kern_type) + '$' + str(key_size) + '$03000000000000000000000000000000$00000000000000000000000000000000$' + ct)
|
||||
|
|
231
tools/test.sh
231
tools/test.sh
|
@ -24,10 +24,13 @@ NOCHECK_ENCODING="16800 22000"
|
|||
# LUKS mode has test containers
|
||||
LUKS_MODE="14600"
|
||||
|
||||
# Cryptoloop mode which have test containers
|
||||
CL_MODES="14511 14512 14513 14521 14522 14523 14531 14532 14533 14541 14542 14543 14551 14552 14553"
|
||||
|
||||
# missing hash types: 5200
|
||||
|
||||
HASH_TYPES=$(ls "${TDIR}"/test_modules/*.pm | sed -E 's/.*m0*([0-9]+).pm/\1/')
|
||||
HASH_TYPES="${HASH_TYPES} ${TC_MODES} ${VC_MODES} ${LUKS_MODE}"
|
||||
HASH_TYPES="${HASH_TYPES} ${TC_MODES} ${VC_MODES} ${LUKS_MODE} ${CL_MODES}"
|
||||
HASH_TYPES=$(echo -n "${HASH_TYPES}" | tr ' ' '\n' | sort -u -n | tr '\n' ' ')
|
||||
|
||||
VECTOR_WIDTHS="1 2 4 8 16"
|
||||
|
@ -156,24 +159,23 @@ function is_in_array()
|
|||
function init()
|
||||
{
|
||||
if [ "${PACKAGE}" -eq 1 ]; then
|
||||
|
||||
echo "[ ${OUTD} ] > Generate tests for hash type $hash_type."
|
||||
|
||||
else
|
||||
|
||||
echo "[ ${OUTD} ] > Init test for hash type $hash_type."
|
||||
|
||||
fi
|
||||
|
||||
rm -rf "${OUTD}/${hash_type}.sh" "${OUTD}/${hash_type}_passwords.txt" "${OUTD}/${hash_type}_hashes.txt"
|
||||
|
||||
# Exclude TrueCrypt and VeraCrypt testing modes
|
||||
# Exclude TrueCrypt, VeraCrypt and CryptoLoop testing modes
|
||||
if is_in_array "${hash_type}" ${TC_MODES}; then
|
||||
return 0
|
||||
fi
|
||||
if is_in_array "${hash_type}" ${VC_MODES}; then
|
||||
return 0
|
||||
fi
|
||||
if is_in_array "${hash_type}" ${CL_MODES}; then
|
||||
return 0
|
||||
fi
|
||||
|
||||
if [ "${hash_type}" -eq ${LUKS_MODE} ]; then
|
||||
|
||||
|
@ -2375,6 +2377,176 @@ function attack_7()
|
|||
fi
|
||||
}
|
||||
|
||||
function cryptoloop_test()
|
||||
{
|
||||
hashType=$1
|
||||
keySize=$2
|
||||
CMD="unset"
|
||||
|
||||
mkdir -p ${OUTD}/cl_tests
|
||||
|
||||
case $hashType in
|
||||
|
||||
14511)
|
||||
case $keySize in
|
||||
128|192|256)
|
||||
${TDIR}/cryptoloop2hashcat.py --source ${TDIR}/cl_tests/hashcat_sha1_aes_${keySize}.img --hash sha1 --cipher aes --keysize ${keySize} > ${OUTD}/cl_tests/hashcat_sha1_aes_${keySize}.hash
|
||||
CMD="./${BIN} ${OPTS} -a 3 -m 14500 ${OUTD}/cl_tests/hashcat_sha1_aes_${keySize}.hash hashca?l"
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
|
||||
14512)
|
||||
case $keySize in
|
||||
128|192|256)
|
||||
${TDIR}/cryptoloop2hashcat.py --source ${TDIR}/cl_tests/hashcat_sha1_serpent_${keySize}.img --hash sha1 --cipher serpent --keysize ${keySize} > ${OUTD}/cl_tests/hashcat_sha1_serpent_${keySize}.hash
|
||||
CMD="./${BIN} ${OPTS} -a 3 -m 14500 ${OUTD}/cl_tests/hashcat_sha1_serpent_${keySize}.hash hashca?l"
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
|
||||
14513)
|
||||
case $keySize in
|
||||
128|192|256)
|
||||
${TDIR}/cryptoloop2hashcat.py --source ${TDIR}/cl_tests/hashcat_sha1_twofish_${keySize}.img --hash sha1 --cipher twofish --keysize ${keySize} > ${OUTD}/cl_tests/hashcat_sha1_twofish_${keySize}.hash
|
||||
CMD="./${BIN} ${OPTS} -a 3 -m 14500 ${OUTD}/cl_tests/hashcat_sha1_twofish_${keySize}.hash hashca?l"
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
|
||||
14521)
|
||||
case $keySize in
|
||||
128|192|256)
|
||||
${TDIR}/cryptoloop2hashcat.py --source ${TDIR}/cl_tests/hashcat_sha256_aes_${keySize}.img --hash sha256 --cipher aes --keysize ${keySize} > ${OUTD}/cl_tests/hashcat_sha256_aes_${keySize}.hash
|
||||
CMD="./${BIN} ${OPTS} -a 3 -m 14500 ${OUTD}/cl_tests/hashcat_sha256_aes_${keySize}.hash hashca?l"
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
|
||||
14522)
|
||||
case $keySize in
|
||||
128|192|256)
|
||||
${TDIR}/cryptoloop2hashcat.py --source ${TDIR}/cl_tests/hashcat_sha256_serpent_${keySize}.img --hash sha256 --cipher serpent --keysize ${keySize} > ${OUTD}/cl_tests/hashcat_sha256_serpent_${keySize}.hash
|
||||
CMD="./${BIN} ${OPTS} -a 3 -m 14500 ${OUTD}/cl_tests/hashcat_sha256_serpent_${keySize}.hash hashca?l"
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
|
||||
14523)
|
||||
case $keySize in
|
||||
128|192|256)
|
||||
${TDIR}/cryptoloop2hashcat.py --source ${TDIR}/cl_tests/hashcat_sha256_twofish_${keySize}.img --hash sha256 --cipher twofish --keysize ${keySize} > ${OUTD}/cl_tests/hashcat_sha256_twofish_${keySize}.hash
|
||||
CMD="./${BIN} ${OPTS} -a 3 -m 14500 ${OUTD}/cl_tests/hashcat_sha256_twofish_${keySize}.hash hashca?l"
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
|
||||
14531)
|
||||
case $keySize in
|
||||
128|192|256)
|
||||
${TDIR}/cryptoloop2hashcat.py --source ${TDIR}/cl_tests/hashcat_sha512_aes_${keySize}.img --hash sha512 --cipher aes --keysize ${keySize} > ${OUTD}/cl_tests/hashcat_sha512_aes_${keySize}.hash
|
||||
CMD="./${BIN} ${OPTS} -a 3 -m 14500 ${OUTD}/cl_tests/hashcat_sha512_aes_${keySize}.hash hashca?l"
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
|
||||
14532)
|
||||
case $keySize in
|
||||
128|192|256)
|
||||
${TDIR}/cryptoloop2hashcat.py --source ${TDIR}/cl_tests/hashcat_sha512_serpent_${keySize}.img --hash sha512 --cipher serpent --keysize ${keySize} > ${OUTD}/cl_tests/hashcat_sha512_serpent_${keySize}.hash
|
||||
CMD="./${BIN} ${OPTS} -a 3 -m 14500 ${OUTD}/cl_tests/hashcat_sha512_serpent_${keySize}.hash hashca?l"
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
|
||||
14533)
|
||||
case $keySize in
|
||||
128|192|256)
|
||||
${TDIR}/cryptoloop2hashcat.py --source ${TDIR}/cl_tests/hashcat_sha512_twofish_${keySize}.img --hash sha512 --cipher twofish --keysize ${keySize} > ${OUTD}/cl_tests/hashcat_sha512_twofish_${keySize}.hash
|
||||
CMD="./${BIN} ${OPTS} -a 3 -m 14500 ${OUTD}/cl_tests/hashcat_sha512_twofish_${keySize}.hash hashca?l"
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
|
||||
14541)
|
||||
case $keySize in
|
||||
128|192|256)
|
||||
${TDIR}/cryptoloop2hashcat.py --source ${TDIR}/cl_tests/hashcat_ripemd160_aes_${keySize}.img --hash ripemd160 --cipher aes --keysize ${keySize} > ${OUTD}/cl_tests/hashcat_ripemd160_aes_${keySize}.hash
|
||||
CMD="./${BIN} ${OPTS} -a 3 -m 14500 ${OUTD}/cl_tests/hashcat_ripemd160_aes_${keySize}.hash hashca?l"
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
|
||||
14542)
|
||||
case $keySize in
|
||||
128|192|256)
|
||||
${TDIR}/cryptoloop2hashcat.py --source ${TDIR}/cl_tests/hashcat_ripemd160_serpent_${keySize}.img --hash ripemd160 --cipher serpent --keysize ${keySize} > ${OUTD}/cl_tests/hashcat_ripemd160_serpent_${keySize}.hash
|
||||
CMD="./${BIN} ${OPTS} -a 3 -m 14500 ${OUTD}/cl_tests/hashcat_ripemd160_serpent_${keySize}.hash hashca?l"
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
|
||||
14543)
|
||||
case $keySize in
|
||||
128|192|256)
|
||||
${TDIR}/cryptoloop2hashcat.py --source ${TDIR}/cl_tests/hashcat_ripemd160_twofish_${keySize}.img --hash ripemd160 --cipher twofish --keysize ${keySize} > ${OUTD}/cl_tests/hashcat_ripemd160_twofish_${keySize}.hash
|
||||
CMD="./${BIN} ${OPTS} -a 3 -m 14500 ${OUTD}/cl_tests/hashcat_ripemd160_twofish_${keySize}.hash hashca?l"
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
|
||||
14551)
|
||||
case $keySize in
|
||||
128|192|256)
|
||||
${TDIR}/cryptoloop2hashcat.py --source ${TDIR}/cl_tests/hashcat_whirlpool_aes_${keySize}.img --hash whirlpool --cipher aes --keysize ${keySize} > ${OUTD}/cl_tests/hashcat_whirlpool_aes_${keySize}.hash
|
||||
CMD="./${BIN} ${OPTS} -a 3 -m 14500 ${OUTD}/cl_tests/hashcat_whirlpool_aes_${keySize}.hash hashca?l"
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
|
||||
14552)
|
||||
case $keySize in
|
||||
128|192|256)
|
||||
${TDIR}/cryptoloop2hashcat.py --source ${TDIR}/cl_tests/hashcat_whirlpool_serpent_${keySize}.img --hash whirlpool --cipher serpent --keysize ${keySize} > ${OUTD}/cl_tests/hashcat_whirlpool_serpent_${keySize}.hash
|
||||
CMD="./${BIN} ${OPTS} -a 3 -m 14500 ${OUTD}/cl_tests/hashcat_whirlpool_serpent_${keySize}.hash hashca?l"
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
|
||||
14553)
|
||||
case $keySize in
|
||||
128|192|256)
|
||||
${TDIR}/cryptoloop2hashcat.py --source ${TDIR}/cl_tests/hashcat_whirlpool_twofish_${keySize}.img --hash whirlpool --cipher twofish --keysize ${keySize} > ${OUTD}/cl_tests/hashcat_whirlpool_twofish_${keySize}.hash
|
||||
CMD="./${BIN} ${OPTS} -a 3 -m 14500 ${OUTD}/cl_tests/hashcat_whirlpool_twofish_${keySize}.hash hashca?l"
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
esac
|
||||
|
||||
if [ ${#CMD} -gt 5 ]; then
|
||||
echo "> Testing hash type $hashType with attack mode 3, markov ${MARKOV}, single hash, Device-Type ${TYPE}, Kernel-Type ${KERNEL_TYPE}, Vector-Width ${VECTOR}, Key-Size ${keySize}" >> "${OUTD}/logfull.txt" 2>> "${OUTD}/logfull.txt"
|
||||
|
||||
output=$(${CMD} 2>&1)
|
||||
|
||||
ret=${?}
|
||||
|
||||
echo "${output}" >> "${OUTD}/logfull.txt"
|
||||
|
||||
cnt=1
|
||||
e_nf=0
|
||||
msg="OK"
|
||||
|
||||
if [ ${ret} -ne 0 ]; then
|
||||
e_nf=1
|
||||
msg="Error"
|
||||
fi
|
||||
|
||||
echo "[ ${OUTD} ] [ Type ${hash_type}, Attack 3, Mode single, Device-Type ${TYPE}, Kernel-Type ${KERNEL_TYPE}, Vector-Width ${VECTOR}, Key-Size ${keySize} ] > $msg : ${e_nf}/${cnt} not found"
|
||||
|
||||
status ${ret}
|
||||
fi
|
||||
}
|
||||
|
||||
function truecrypt_test()
|
||||
{
|
||||
hashType=$1
|
||||
|
@ -3072,7 +3244,9 @@ if [ "${PACKAGE}" -eq 0 ] || [ -z "${PACKAGE_FOLDER}" ]; then
|
|||
if [ "${TMP_HT}" -ne ${LUKS_MODE} ]; then
|
||||
if ! is_in_array "${TMP_HT}" ${TC_MODES}; then
|
||||
if ! is_in_array "${TMP_HT}" ${VC_MODES}; then
|
||||
perl tools/test.pl single "${TMP_HT}" >> "${OUTD}/all.sh"
|
||||
if ! is_in_array "${TMP_HT}" ${CL_MODES}; then
|
||||
perl tools/test.pl single "${TMP_HT}" >> "${OUTD}/all.sh"
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
@ -3087,7 +3261,9 @@ if [ "${PACKAGE}" -eq 0 ] || [ -z "${PACKAGE_FOLDER}" ]; then
|
|||
# Exclude TrueCrypt and VeraCrypt testing modes
|
||||
if ! is_in_array "${TMP_HT}" ${TC_MODES}; then
|
||||
if ! is_in_array "${TMP_HT}" ${VC_MODES}; then
|
||||
perl tools/test.pl single "${TMP_HT}" >> "${OUTD}/all.sh"
|
||||
if ! is_in_array "${TMP_HT}" ${CL_MODES}; then
|
||||
perl tools/test.pl single "${TMP_HT}" >> "${OUTD}/all.sh"
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
@ -3197,7 +3373,6 @@ if [ "${PACKAGE}" -eq 0 ] || [ -z "${PACKAGE_FOLDER}" ]; then
|
|||
veracrypt_test 4 # camellia (alternative cascade)
|
||||
veracrypt_test 5 # kuznyechik
|
||||
veracrypt_test 6 # kuznyechik (alternative cascade)
|
||||
|
||||
elif is_in_array "${hash_type}" ${TC_MODES}; then
|
||||
# run truecrypt tests
|
||||
truecrypt_test "${hash_type}" 0
|
||||
|
@ -3213,20 +3388,27 @@ if [ "${PACKAGE}" -eq 0 ] || [ -z "${PACKAGE_FOLDER}" ]; then
|
|||
|
||||
else
|
||||
|
||||
# run attack mode 0 (stdin)
|
||||
if [ ${ATTACK} -eq 65535 ] || [ ${ATTACK} -eq 0 ]; then attack_0; fi
|
||||
if is_in_array "${hash_type}" ${CL_MODES}; then
|
||||
# run cryptoloop tests
|
||||
cryptoloop_test "${hash_type}" 128
|
||||
cryptoloop_test "${hash_type}" 192
|
||||
cryptoloop_test "${hash_type}" 256
|
||||
else
|
||||
# run attack mode 0 (stdin)
|
||||
if [ ${ATTACK} -eq 65535 ] || [ ${ATTACK} -eq 0 ]; then attack_0; fi
|
||||
|
||||
# run attack mode 1 (combinator)
|
||||
if [ ${ATTACK} -eq 65535 ] || [ ${ATTACK} -eq 1 ]; then attack_1; fi
|
||||
# run attack mode 1 (combinator)
|
||||
if [ ${ATTACK} -eq 65535 ] || [ ${ATTACK} -eq 1 ]; then attack_1; fi
|
||||
|
||||
# run attack mode 3 (bruteforce)
|
||||
if [ ${ATTACK} -eq 65535 ] || [ ${ATTACK} -eq 3 ]; then attack_3; fi
|
||||
# run attack mode 3 (bruteforce)
|
||||
if [ ${ATTACK} -eq 65535 ] || [ ${ATTACK} -eq 3 ]; then attack_3; fi
|
||||
|
||||
# run attack mode 6 (dict+mask)
|
||||
if [ ${ATTACK} -eq 65535 ] || [ ${ATTACK} -eq 6 ]; then attack_6; fi
|
||||
# run attack mode 6 (dict+mask)
|
||||
if [ ${ATTACK} -eq 65535 ] || [ ${ATTACK} -eq 6 ]; then attack_6; fi
|
||||
|
||||
# run attack mode 7 (mask+dict)
|
||||
if [ ${ATTACK} -eq 65535 ] || [ ${ATTACK} -eq 7 ]; then attack_7; fi
|
||||
# run attack mode 7 (mask+dict)
|
||||
if [ ${ATTACK} -eq 65535 ] || [ ${ATTACK} -eq 7 ]; then attack_7; fi
|
||||
fi
|
||||
|
||||
fi
|
||||
fi
|
||||
|
@ -3245,9 +3427,7 @@ fi
|
|||
|
||||
# fix logfile
|
||||
if [ "${PACKAGE}" -eq 0 ]; then
|
||||
|
||||
cat -vet "${OUTD}/logfull.txt" | sed -e 's/\^M \^M//g' | sed -e 's/\$$//g' > "${OUTD}/test_report.log"
|
||||
|
||||
fi
|
||||
|
||||
rm -rf "${OUTD}/logfull.txt"
|
||||
|
@ -3261,11 +3441,13 @@ if [ "${PACKAGE}" -eq 1 ]; then
|
|||
copy_luks_dir=0
|
||||
copy_tc_dir=0
|
||||
copy_vc_dir=0
|
||||
copy_cl_dir=0
|
||||
|
||||
if [ "${HT}" -eq 65535 ]; then
|
||||
copy_luks_dir=1
|
||||
copy_tc_dir=1
|
||||
copy_vc_dir=1
|
||||
copy_cl_dir=1
|
||||
else
|
||||
for TMP_HT in $(seq "${HT_MIN}" "${HT_MAX}"); do
|
||||
if [ "${TMP_HT}" -eq "${LUKS_MODE}" ]; then
|
||||
|
@ -3274,6 +3456,8 @@ if [ "${PACKAGE}" -eq 1 ]; then
|
|||
copy_tc_dir=1
|
||||
elif is_in_array "${TMP_HT}" ${VC_MODES}; then
|
||||
copy_vc_dir=1
|
||||
elif is_in_array "${TMP_HT}" ${CL_MODES}; then
|
||||
copy_cl_dir=1
|
||||
fi
|
||||
done
|
||||
fi
|
||||
|
@ -3293,6 +3477,11 @@ if [ "${PACKAGE}" -eq 1 ]; then
|
|||
cp ${TDIR}/vc_tests/* "${OUTD}/vc_tests/"
|
||||
fi
|
||||
|
||||
if [ "${copy_cl_dir}" -eq 1 ]; then
|
||||
mkdir "${OUTD}/cl_tests/"
|
||||
cp ${TDIR}/cl_tests/* "${OUTD}/cl_tests/"
|
||||
fi
|
||||
|
||||
# if we package from a given folder, we need to check if e.g. the files needed for multi mode are there
|
||||
|
||||
if [ -n "${PACKAGE_FOLDER}" ]; then
|
||||
|
|
Loading…
Reference in New Issue