mirror of
https://github.com/hashcat/hashcat.git
synced 2024-11-21 23:58:07 +00:00
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 aes_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||||
|
|
||||||
u32 padding[64] = { 0 };
|
|
||||||
|
|
||||||
padding[0] = 0x00000041;
|
|
||||||
|
|
||||||
COPY_PW (pws[gid]);
|
COPY_PW (pws[gid]);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -121,7 +117,9 @@ KERNEL_FQ void m14511_mxx (KERN_ATTR_RULES_ESALT (cryptoapi_t))
|
|||||||
|
|
||||||
sha1_init (&ctx);
|
sha1_init (&ctx);
|
||||||
|
|
||||||
sha1_update_swap (&ctx, padding, 1);
|
ctx.w0[0] = 0x41000000;
|
||||||
|
|
||||||
|
ctx.len = 1;
|
||||||
|
|
||||||
sha1_update_swap (&ctx, w, w_len);
|
sha1_update_swap (&ctx, w, w_len);
|
||||||
|
|
||||||
@ -271,10 +269,6 @@ KERNEL_FQ void m14511_sxx (KERN_ATTR_RULES_ESALT (cryptoapi_t))
|
|||||||
* base
|
* base
|
||||||
*/
|
*/
|
||||||
|
|
||||||
u32 padding[64] = { 0 };
|
|
||||||
|
|
||||||
padding[0] = 0x00000041;
|
|
||||||
|
|
||||||
COPY_PW (pws[gid]);
|
COPY_PW (pws[gid]);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -316,7 +310,9 @@ KERNEL_FQ void m14511_sxx (KERN_ATTR_RULES_ESALT (cryptoapi_t))
|
|||||||
|
|
||||||
sha1_init (&ctx);
|
sha1_init (&ctx);
|
||||||
|
|
||||||
sha1_update_swap (&ctx, padding, 1);
|
ctx.w0[0] = 0x41000000;
|
||||||
|
|
||||||
|
ctx.len = 1;
|
||||||
|
|
||||||
sha1_update_swap (&ctx, w, w_len);
|
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 aes_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||||
|
|
||||||
u32 padding[64] = { 0 };
|
|
||||||
|
|
||||||
padding[0] = 0x00000041;
|
|
||||||
|
|
||||||
sha1_ctx_t ctx0, ctx0_padding;
|
sha1_ctx_t ctx0, ctx0_padding;
|
||||||
|
|
||||||
sha1_init (&ctx0);
|
sha1_init (&ctx0);
|
||||||
@ -94,7 +90,9 @@ KERNEL_FQ void m14511_mxx (KERN_ATTR_ESALT (cryptoapi_t))
|
|||||||
|
|
||||||
ctx0_padding = ctx0;
|
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);
|
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 aes_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||||
|
|
||||||
u32 padding[64] = { 0 };
|
|
||||||
|
|
||||||
padding[0] = 0x00000041;
|
|
||||||
|
|
||||||
sha1_ctx_t ctx0, ctx0_padding;
|
sha1_ctx_t ctx0, ctx0_padding;
|
||||||
|
|
||||||
sha1_init (&ctx0);
|
sha1_init (&ctx0);
|
||||||
@ -296,7 +290,9 @@ KERNEL_FQ void m14511_sxx (KERN_ATTR_ESALT (cryptoapi_t))
|
|||||||
|
|
||||||
ctx0_padding = ctx0;
|
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);
|
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 aes_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||||
|
|
||||||
u32 padding[64] = { 0 };
|
|
||||||
|
|
||||||
padding[0] = 0x00000041;
|
|
||||||
|
|
||||||
const u32 pw_len = pws[gid].pw_len;
|
const u32 pw_len = pws[gid].pw_len;
|
||||||
|
|
||||||
u32x w[64] = { 0 };
|
u32x w[64] = { 0 };
|
||||||
@ -101,12 +97,6 @@ KERNEL_FQ void m14511_mxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||||||
|
|
||||||
w[0] = w0;
|
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_ctx_t ctx0;
|
||||||
|
|
||||||
sha1_init (&ctx0);
|
sha1_init (&ctx0);
|
||||||
@ -130,9 +120,11 @@ KERNEL_FQ void m14511_mxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||||||
|
|
||||||
sha1_init (&ctx);
|
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);
|
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 aes_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||||
|
|
||||||
u32 padding[64] = { 0 };
|
|
||||||
|
|
||||||
padding[0] = 0x00000041;
|
|
||||||
|
|
||||||
const u32 pw_len = pws[gid].pw_len;
|
const u32 pw_len = pws[gid].pw_len;
|
||||||
|
|
||||||
u32x w[64] = { 0 };
|
u32x w[64] = { 0 };
|
||||||
@ -302,17 +290,11 @@ KERNEL_FQ void m14511_sxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||||||
|
|
||||||
w[0] = w0;
|
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_ctx_t ctx0;
|
||||||
|
|
||||||
sha1_init (&ctx0);
|
sha1_init (&ctx0);
|
||||||
|
|
||||||
sha1_update_swap(&ctx0, w, pw_len);
|
sha1_update_swap (&ctx0, w, pw_len);
|
||||||
|
|
||||||
sha1_final (&ctx0);
|
sha1_final (&ctx0);
|
||||||
|
|
||||||
@ -331,9 +313,11 @@ KERNEL_FQ void m14511_sxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||||||
|
|
||||||
sha1_init (&ctx);
|
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);
|
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 serpent_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||||
|
|
||||||
u32 padding[64] = { 0 };
|
|
||||||
|
|
||||||
padding[0] = 0x00000041;
|
|
||||||
|
|
||||||
COPY_PW (pws[gid]);
|
COPY_PW (pws[gid]);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -85,7 +81,9 @@ KERNEL_FQ void m14512_mxx (KERN_ATTR_RULES_ESALT (cryptoapi_t))
|
|||||||
|
|
||||||
sha1_init (&ctx);
|
sha1_init (&ctx);
|
||||||
|
|
||||||
sha1_update_swap (&ctx, padding, 1);
|
ctx.w0[0] = 0x41000000;
|
||||||
|
|
||||||
|
ctx.len = 1;
|
||||||
|
|
||||||
sha1_update_swap (&ctx, w, w_len);
|
sha1_update_swap (&ctx, w, w_len);
|
||||||
|
|
||||||
@ -198,10 +196,6 @@ KERNEL_FQ void m14512_sxx (KERN_ATTR_RULES_ESALT (cryptoapi_t))
|
|||||||
* base
|
* base
|
||||||
*/
|
*/
|
||||||
|
|
||||||
u32 padding[64] = { 0 };
|
|
||||||
|
|
||||||
padding[0] = 0x00000041;
|
|
||||||
|
|
||||||
COPY_PW (pws[gid]);
|
COPY_PW (pws[gid]);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -243,7 +237,10 @@ KERNEL_FQ void m14512_sxx (KERN_ATTR_RULES_ESALT (cryptoapi_t))
|
|||||||
|
|
||||||
sha1_init (&ctx);
|
sha1_init (&ctx);
|
||||||
|
|
||||||
sha1_update_swap (&ctx, padding, 1);
|
ctx.w0[0] = 0x41000000;
|
||||||
|
|
||||||
|
ctx.len = 1;
|
||||||
|
|
||||||
sha1_update_swap (&ctx, w, w_len);
|
sha1_update_swap (&ctx, w, w_len);
|
||||||
|
|
||||||
sha1_final (&ctx);
|
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 serpent_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||||
|
|
||||||
u32 padding[64] = { 0 };
|
|
||||||
|
|
||||||
padding[0] = 0x00000041;
|
|
||||||
|
|
||||||
sha1_ctx_t ctx0, ctx0_padding;
|
sha1_ctx_t ctx0, ctx0_padding;
|
||||||
|
|
||||||
sha1_init (&ctx0);
|
sha1_init (&ctx0);
|
||||||
@ -58,7 +54,9 @@ KERNEL_FQ void m14512_mxx (KERN_ATTR_ESALT (cryptoapi_t))
|
|||||||
|
|
||||||
ctx0_padding = ctx0;
|
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);
|
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 serpent_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||||
|
|
||||||
u32 padding[64] = { 0 };
|
|
||||||
|
|
||||||
padding[0] = 0x00000041;
|
|
||||||
|
|
||||||
sha1_ctx_t ctx0, ctx0_padding;
|
sha1_ctx_t ctx0, ctx0_padding;
|
||||||
|
|
||||||
sha1_init (&ctx0);
|
sha1_init (&ctx0);
|
||||||
@ -224,7 +218,9 @@ KERNEL_FQ void m14512_sxx (KERN_ATTR_ESALT (cryptoapi_t))
|
|||||||
|
|
||||||
ctx0_padding = ctx0;
|
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);
|
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 serpent_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||||
|
|
||||||
u32 padding[64] = { 0 };
|
|
||||||
|
|
||||||
padding[0] = 0x00000041;
|
|
||||||
|
|
||||||
const u32 pw_len = pws[gid].pw_len;
|
const u32 pw_len = pws[gid].pw_len;
|
||||||
|
|
||||||
u32x w[64] = { 0 };
|
u32x w[64] = { 0 };
|
||||||
@ -65,12 +61,6 @@ KERNEL_FQ void m14512_mxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||||||
|
|
||||||
w[0] = w0;
|
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_ctx_t ctx0;
|
||||||
|
|
||||||
sha1_init (&ctx0);
|
sha1_init (&ctx0);
|
||||||
@ -94,9 +84,11 @@ KERNEL_FQ void m14512_mxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||||||
|
|
||||||
sha1_init (&ctx);
|
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);
|
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 serpent_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||||
|
|
||||||
u32 padding[64] = { 0 };
|
|
||||||
|
|
||||||
padding[0] = 0x00000041;
|
|
||||||
|
|
||||||
const u32 pw_len = pws[gid].pw_len;
|
const u32 pw_len = pws[gid].pw_len;
|
||||||
|
|
||||||
u32x w[64] = { 0 };
|
u32x w[64] = { 0 };
|
||||||
@ -230,12 +218,6 @@ KERNEL_FQ void m14512_sxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||||||
|
|
||||||
w[0] = w0;
|
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_ctx_t ctx0;
|
||||||
|
|
||||||
sha1_init (&ctx0);
|
sha1_init (&ctx0);
|
||||||
@ -259,9 +241,11 @@ KERNEL_FQ void m14512_sxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||||||
|
|
||||||
sha1_init (&ctx);
|
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);
|
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 twofish_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||||
|
|
||||||
u32 padding[64] = { 0 };
|
|
||||||
|
|
||||||
padding[0] = 0x00000041;
|
|
||||||
|
|
||||||
COPY_PW (pws[gid]);
|
COPY_PW (pws[gid]);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -85,7 +81,9 @@ KERNEL_FQ void m14513_mxx (KERN_ATTR_RULES_ESALT (cryptoapi_t))
|
|||||||
|
|
||||||
sha1_init (&ctx);
|
sha1_init (&ctx);
|
||||||
|
|
||||||
sha1_update_swap (&ctx, padding, 1);
|
ctx.w0[0] = 0x41000000;
|
||||||
|
|
||||||
|
ctx.len = 1;
|
||||||
|
|
||||||
sha1_update_swap (&ctx, w, w_len);
|
sha1_update_swap (&ctx, w, w_len);
|
||||||
|
|
||||||
@ -199,10 +197,6 @@ KERNEL_FQ void m14513_sxx (KERN_ATTR_RULES_ESALT (cryptoapi_t))
|
|||||||
* base
|
* base
|
||||||
*/
|
*/
|
||||||
|
|
||||||
u32 padding[64] = { 0 };
|
|
||||||
|
|
||||||
padding[0] = 0x00000041;
|
|
||||||
|
|
||||||
COPY_PW (pws[gid]);
|
COPY_PW (pws[gid]);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -244,7 +238,9 @@ KERNEL_FQ void m14513_sxx (KERN_ATTR_RULES_ESALT (cryptoapi_t))
|
|||||||
|
|
||||||
sha1_init (&ctx);
|
sha1_init (&ctx);
|
||||||
|
|
||||||
sha1_update_swap (&ctx, padding, 1);
|
ctx.w0[0] = 0x41000000;
|
||||||
|
|
||||||
|
ctx.len = 1;
|
||||||
|
|
||||||
sha1_update_swap (&ctx, w, w_len);
|
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 twofish_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||||
|
|
||||||
u32 padding[64] = { 0 };
|
|
||||||
|
|
||||||
padding[0] = 0x00000041;
|
|
||||||
|
|
||||||
sha1_ctx_t ctx0, ctx0_padding;
|
sha1_ctx_t ctx0, ctx0_padding;
|
||||||
|
|
||||||
sha1_init (&ctx0);
|
sha1_init (&ctx0);
|
||||||
@ -58,7 +54,9 @@ KERNEL_FQ void m14513_mxx (KERN_ATTR_ESALT (cryptoapi_t))
|
|||||||
|
|
||||||
ctx0_padding = ctx0;
|
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);
|
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 twofish_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||||
|
|
||||||
u32 padding[64] = { 0 };
|
|
||||||
|
|
||||||
padding[0] = 0x00000041;
|
|
||||||
|
|
||||||
sha1_ctx_t ctx0, ctx0_padding;
|
sha1_ctx_t ctx0, ctx0_padding;
|
||||||
|
|
||||||
sha1_init (&ctx0);
|
sha1_init (&ctx0);
|
||||||
@ -225,7 +219,9 @@ KERNEL_FQ void m14513_sxx (KERN_ATTR_ESALT (cryptoapi_t))
|
|||||||
|
|
||||||
ctx0_padding = ctx0;
|
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);
|
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 twofish_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||||
|
|
||||||
u32 padding[64] = { 0 };
|
|
||||||
|
|
||||||
padding[0] = 0x00000041;
|
|
||||||
|
|
||||||
const u32 pw_len = pws[gid].pw_len;
|
const u32 pw_len = pws[gid].pw_len;
|
||||||
|
|
||||||
u32x w[64] = { 0 };
|
u32x w[64] = { 0 };
|
||||||
@ -65,12 +61,6 @@ KERNEL_FQ void m14513_mxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||||||
|
|
||||||
w[0] = w0;
|
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_ctx_t ctx0;
|
||||||
|
|
||||||
sha1_init (&ctx0);
|
sha1_init (&ctx0);
|
||||||
@ -94,9 +84,11 @@ KERNEL_FQ void m14513_mxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||||||
|
|
||||||
sha1_init (&ctx);
|
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);
|
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 twofish_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||||
|
|
||||||
u32 padding[64] = { 0 };
|
|
||||||
|
|
||||||
padding[0] = 0x00000041;
|
|
||||||
|
|
||||||
const u32 pw_len = pws[gid].pw_len;
|
const u32 pw_len = pws[gid].pw_len;
|
||||||
|
|
||||||
u32x w[64] = { 0 };
|
u32x w[64] = { 0 };
|
||||||
@ -231,12 +219,6 @@ KERNEL_FQ void m14513_sxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||||||
|
|
||||||
w[0] = w0;
|
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_ctx_t ctx0;
|
||||||
|
|
||||||
sha1_init (&ctx0);
|
sha1_init (&ctx0);
|
||||||
@ -260,9 +242,11 @@ KERNEL_FQ void m14513_sxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||||||
|
|
||||||
sha1_init (&ctx);
|
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);
|
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 aes_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||||
|
|
||||||
u32 padding[64] = { 0 };
|
|
||||||
|
|
||||||
padding[0] = 0x00000041;
|
|
||||||
|
|
||||||
COPY_PW (pws[gid]);
|
COPY_PW (pws[gid]);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -121,7 +117,9 @@ KERNEL_FQ void m14541_mxx (KERN_ATTR_RULES_ESALT (cryptoapi_t))
|
|||||||
|
|
||||||
ripemd160_init (&ctx);
|
ripemd160_init (&ctx);
|
||||||
|
|
||||||
ripemd160_update (&ctx, padding, 1);
|
ctx.w0[0] = 0x00000041;
|
||||||
|
|
||||||
|
ctx.len = 1;
|
||||||
|
|
||||||
ripemd160_update (&ctx, w, w_len);
|
ripemd160_update (&ctx, w, w_len);
|
||||||
|
|
||||||
@ -271,10 +269,6 @@ KERNEL_FQ void m14541_sxx (KERN_ATTR_RULES_ESALT (cryptoapi_t))
|
|||||||
* base
|
* base
|
||||||
*/
|
*/
|
||||||
|
|
||||||
u32 padding[64] = { 0 };
|
|
||||||
|
|
||||||
padding[0] = 0x00000041;
|
|
||||||
|
|
||||||
COPY_PW (pws[gid]);
|
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);
|
tmp.pw_len = apply_rules (rules_buf[il_pos].cmds, tmp.i, tmp.pw_len);
|
||||||
|
|
||||||
u32 w[64];
|
u32 w[64];
|
||||||
|
|
||||||
u32 w_len = tmp.pw_len;
|
u32 w_len = tmp.pw_len;
|
||||||
|
|
||||||
for (u32 i = 0; i < 64; i++) w[i] = tmp.i[i];
|
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_init (&ctx);
|
||||||
|
|
||||||
ripemd160_update (&ctx, padding, 1);
|
ctx.w0[0] = 0x00000041;
|
||||||
|
|
||||||
|
ctx.len = 1;
|
||||||
|
|
||||||
ripemd160_update (&ctx, w, w_len);
|
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 aes_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||||
|
|
||||||
u32 padding[64] = { 0 };
|
|
||||||
|
|
||||||
padding[0] = 0x00000041;
|
|
||||||
|
|
||||||
ripemd160_ctx_t ctx0, ctx0_padding;
|
ripemd160_ctx_t ctx0, ctx0_padding;
|
||||||
|
|
||||||
ripemd160_init (&ctx0);
|
ripemd160_init (&ctx0);
|
||||||
@ -94,7 +90,9 @@ KERNEL_FQ void m14541_mxx (KERN_ATTR_ESALT (cryptoapi_t))
|
|||||||
|
|
||||||
ctx0_padding = ctx0;
|
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);
|
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 aes_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||||
|
|
||||||
u32 padding[64] = { 0 };
|
|
||||||
|
|
||||||
padding[0] = 0x00000041;
|
|
||||||
|
|
||||||
ripemd160_ctx_t ctx0, ctx0_padding;
|
ripemd160_ctx_t ctx0, ctx0_padding;
|
||||||
|
|
||||||
ripemd160_init (&ctx0);
|
ripemd160_init (&ctx0);
|
||||||
@ -296,7 +290,9 @@ KERNEL_FQ void m14541_sxx (KERN_ATTR_ESALT (cryptoapi_t))
|
|||||||
|
|
||||||
ctx0_padding = ctx0;
|
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);
|
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 aes_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||||
|
|
||||||
u32 padding[64] = { 0 };
|
|
||||||
|
|
||||||
padding[0] = 0x00000041;
|
|
||||||
|
|
||||||
const u32 pw_len = pws[gid].pw_len;
|
const u32 pw_len = pws[gid].pw_len;
|
||||||
|
|
||||||
u32x w[64] = { 0 };
|
u32x w[64] = { 0 };
|
||||||
@ -101,12 +97,6 @@ KERNEL_FQ void m14541_mxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||||||
|
|
||||||
w[0] = w0;
|
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_ctx_t ctx0;
|
||||||
|
|
||||||
ripemd160_init (&ctx0);
|
ripemd160_init (&ctx0);
|
||||||
@ -130,9 +120,11 @@ KERNEL_FQ void m14541_mxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||||||
|
|
||||||
ripemd160_init (&ctx);
|
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);
|
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 aes_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||||
|
|
||||||
u32 padding[64] = { 0 };
|
|
||||||
|
|
||||||
padding[0] = 0x00000041;
|
|
||||||
|
|
||||||
const u32 pw_len = pws[gid].pw_len;
|
const u32 pw_len = pws[gid].pw_len;
|
||||||
|
|
||||||
u32x w[64] = { 0 };
|
u32x w[64] = { 0 };
|
||||||
@ -302,12 +290,6 @@ KERNEL_FQ void m14541_sxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||||||
|
|
||||||
w[0] = w0;
|
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_ctx_t ctx0;
|
||||||
|
|
||||||
ripemd160_init (&ctx0);
|
ripemd160_init (&ctx0);
|
||||||
@ -331,9 +313,11 @@ KERNEL_FQ void m14541_sxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||||||
|
|
||||||
ripemd160_init (&ctx);
|
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);
|
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 serpent_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||||
|
|
||||||
u32 padding[64] = { 0 };
|
|
||||||
|
|
||||||
padding[0] = 0x00000041;
|
|
||||||
|
|
||||||
COPY_PW (pws[gid]);
|
COPY_PW (pws[gid]);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -85,7 +81,9 @@ KERNEL_FQ void m14542_mxx (KERN_ATTR_RULES_ESALT (cryptoapi_t))
|
|||||||
|
|
||||||
ripemd160_init (&ctx);
|
ripemd160_init (&ctx);
|
||||||
|
|
||||||
ripemd160_update (&ctx, padding, 1);
|
ctx.w0[0] = 0x00000041;
|
||||||
|
|
||||||
|
ctx.len = 1;
|
||||||
|
|
||||||
ripemd160_update (&ctx, w, w_len);
|
ripemd160_update (&ctx, w, w_len);
|
||||||
|
|
||||||
@ -198,10 +196,6 @@ KERNEL_FQ void m14542_sxx (KERN_ATTR_RULES_ESALT (cryptoapi_t))
|
|||||||
* base
|
* base
|
||||||
*/
|
*/
|
||||||
|
|
||||||
u32 padding[64] = { 0 };
|
|
||||||
|
|
||||||
padding[0] = 0x00000041;
|
|
||||||
|
|
||||||
COPY_PW (pws[gid]);
|
COPY_PW (pws[gid]);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -243,7 +237,9 @@ KERNEL_FQ void m14542_sxx (KERN_ATTR_RULES_ESALT (cryptoapi_t))
|
|||||||
|
|
||||||
ripemd160_init (&ctx);
|
ripemd160_init (&ctx);
|
||||||
|
|
||||||
ripemd160_update (&ctx, padding, 1);
|
ctx.w0[0] = 0x00000041;
|
||||||
|
|
||||||
|
ctx.len = 1;
|
||||||
|
|
||||||
ripemd160_update (&ctx, w, w_len);
|
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 serpent_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||||
|
|
||||||
u32 padding[64] = { 0 };
|
|
||||||
|
|
||||||
padding[0] = 0x00000041;
|
|
||||||
|
|
||||||
ripemd160_ctx_t ctx0, ctx0_padding;
|
ripemd160_ctx_t ctx0, ctx0_padding;
|
||||||
|
|
||||||
ripemd160_init (&ctx0);
|
ripemd160_init (&ctx0);
|
||||||
@ -58,7 +54,9 @@ KERNEL_FQ void m14542_mxx (KERN_ATTR_ESALT (cryptoapi_t))
|
|||||||
|
|
||||||
ctx0_padding = ctx0;
|
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);
|
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 serpent_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||||
|
|
||||||
u32 padding[64] = { 0 };
|
|
||||||
|
|
||||||
padding[0] = 0x00000041;
|
|
||||||
|
|
||||||
ripemd160_ctx_t ctx0, ctx0_padding;
|
ripemd160_ctx_t ctx0, ctx0_padding;
|
||||||
|
|
||||||
ripemd160_init (&ctx0);
|
ripemd160_init (&ctx0);
|
||||||
@ -224,7 +218,9 @@ KERNEL_FQ void m14542_sxx (KERN_ATTR_ESALT (cryptoapi_t))
|
|||||||
|
|
||||||
ctx0_padding = ctx0;
|
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);
|
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 serpent_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||||
|
|
||||||
u32 padding[64] = { 0 };
|
|
||||||
|
|
||||||
padding[0] = 0x00000041;
|
|
||||||
|
|
||||||
const u32 pw_len = pws[gid].pw_len;
|
const u32 pw_len = pws[gid].pw_len;
|
||||||
|
|
||||||
u32x w[64] = { 0 };
|
u32x w[64] = { 0 };
|
||||||
@ -65,12 +61,6 @@ KERNEL_FQ void m14542_mxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||||||
|
|
||||||
w[0] = w0;
|
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_ctx_t ctx0;
|
||||||
|
|
||||||
ripemd160_init (&ctx0);
|
ripemd160_init (&ctx0);
|
||||||
@ -94,9 +84,11 @@ KERNEL_FQ void m14542_mxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||||||
|
|
||||||
ripemd160_init (&ctx);
|
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);
|
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 serpent_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||||
|
|
||||||
u32 padding[64] = { 0 };
|
|
||||||
|
|
||||||
padding[0] = 0x00000041;
|
|
||||||
|
|
||||||
const u32 pw_len = pws[gid].pw_len;
|
const u32 pw_len = pws[gid].pw_len;
|
||||||
|
|
||||||
u32x w[64] = { 0 };
|
u32x w[64] = { 0 };
|
||||||
@ -230,12 +218,6 @@ KERNEL_FQ void m14542_sxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||||||
|
|
||||||
w[0] = w0;
|
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_ctx_t ctx0;
|
||||||
|
|
||||||
ripemd160_init (&ctx0);
|
ripemd160_init (&ctx0);
|
||||||
@ -259,9 +241,11 @@ KERNEL_FQ void m14542_sxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||||||
|
|
||||||
ripemd160_init (&ctx);
|
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);
|
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 twofish_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||||
|
|
||||||
u32 padding[64] = { 0 };
|
|
||||||
|
|
||||||
padding[0] = 0x00000041;
|
|
||||||
|
|
||||||
COPY_PW (pws[gid]);
|
COPY_PW (pws[gid]);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -85,7 +81,9 @@ KERNEL_FQ void m14543_mxx (KERN_ATTR_RULES_ESALT (cryptoapi_t))
|
|||||||
|
|
||||||
ripemd160_init (&ctx);
|
ripemd160_init (&ctx);
|
||||||
|
|
||||||
ripemd160_update (&ctx, padding, 1);
|
ctx.w0[0] = 0x00000041;
|
||||||
|
|
||||||
|
ctx.len = 1;
|
||||||
|
|
||||||
ripemd160_update (&ctx, w, w_len);
|
ripemd160_update (&ctx, w, w_len);
|
||||||
|
|
||||||
@ -199,10 +197,6 @@ KERNEL_FQ void m14543_sxx (KERN_ATTR_RULES_ESALT (cryptoapi_t))
|
|||||||
* base
|
* base
|
||||||
*/
|
*/
|
||||||
|
|
||||||
u32 padding[64] = { 0 };
|
|
||||||
|
|
||||||
padding[0] = 0x00000041;
|
|
||||||
|
|
||||||
COPY_PW (pws[gid]);
|
COPY_PW (pws[gid]);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -244,7 +238,9 @@ KERNEL_FQ void m14543_sxx (KERN_ATTR_RULES_ESALT (cryptoapi_t))
|
|||||||
|
|
||||||
ripemd160_init (&ctx);
|
ripemd160_init (&ctx);
|
||||||
|
|
||||||
ripemd160_update (&ctx, padding, 1);
|
ctx.w0[0] = 0x00000041;
|
||||||
|
|
||||||
|
ctx.len = 1;
|
||||||
|
|
||||||
ripemd160_update (&ctx, w, w_len);
|
ripemd160_update (&ctx, w, w_len);
|
||||||
|
|
||||||
@ -260,6 +256,7 @@ KERNEL_FQ void m14543_sxx (KERN_ATTR_RULES_ESALT (cryptoapi_t))
|
|||||||
}
|
}
|
||||||
|
|
||||||
// key
|
// key
|
||||||
|
|
||||||
u32 ukey[8] = { 0 };
|
u32 ukey[8] = { 0 };
|
||||||
|
|
||||||
ukey[0] = k0;
|
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 twofish_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||||
|
|
||||||
u32 padding[64] = { 0 };
|
|
||||||
|
|
||||||
padding[0] = 0x00000041;
|
|
||||||
|
|
||||||
ripemd160_ctx_t ctx0, ctx0_padding;
|
ripemd160_ctx_t ctx0, ctx0_padding;
|
||||||
|
|
||||||
ripemd160_init (&ctx0);
|
ripemd160_init (&ctx0);
|
||||||
@ -58,7 +54,9 @@ KERNEL_FQ void m14543_mxx (KERN_ATTR_ESALT (cryptoapi_t))
|
|||||||
|
|
||||||
ctx0_padding = ctx0;
|
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);
|
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 twofish_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||||
|
|
||||||
u32 padding[64] = { 0 };
|
|
||||||
|
|
||||||
padding[0] = 0x00000041;
|
|
||||||
|
|
||||||
ripemd160_ctx_t ctx0, ctx0_padding;
|
ripemd160_ctx_t ctx0, ctx0_padding;
|
||||||
|
|
||||||
ripemd160_init (&ctx0);
|
ripemd160_init (&ctx0);
|
||||||
@ -225,7 +219,9 @@ KERNEL_FQ void m14543_sxx (KERN_ATTR_ESALT (cryptoapi_t))
|
|||||||
|
|
||||||
ctx0_padding = ctx0;
|
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);
|
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 twofish_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||||
|
|
||||||
u32 padding[64] = { 0 };
|
|
||||||
|
|
||||||
padding[0] = 0x00000041;
|
|
||||||
|
|
||||||
const u32 pw_len = pws[gid].pw_len;
|
const u32 pw_len = pws[gid].pw_len;
|
||||||
|
|
||||||
u32x w[64] = { 0 };
|
u32x w[64] = { 0 };
|
||||||
@ -65,12 +61,6 @@ KERNEL_FQ void m14543_mxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||||||
|
|
||||||
w[0] = w0;
|
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_ctx_t ctx0;
|
||||||
|
|
||||||
ripemd160_init (&ctx0);
|
ripemd160_init (&ctx0);
|
||||||
@ -94,9 +84,11 @@ KERNEL_FQ void m14543_mxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||||||
|
|
||||||
ripemd160_init (&ctx);
|
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);
|
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 twofish_key_len = esalt_bufs[DIGESTS_OFFSET].key_size;
|
||||||
|
|
||||||
u32 padding[64] = { 0 };
|
|
||||||
|
|
||||||
padding[0] = 0x00000041;
|
|
||||||
|
|
||||||
const u32 pw_len = pws[gid].pw_len;
|
const u32 pw_len = pws[gid].pw_len;
|
||||||
|
|
||||||
u32x w[64] = { 0 };
|
u32x w[64] = { 0 };
|
||||||
@ -231,12 +219,6 @@ KERNEL_FQ void m14543_sxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||||||
|
|
||||||
w[0] = w0;
|
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_ctx_t ctx0;
|
||||||
|
|
||||||
ripemd160_init (&ctx0);
|
ripemd160_init (&ctx0);
|
||||||
@ -260,9 +242,11 @@ KERNEL_FQ void m14543_sxx (KERN_ATTR_VECTOR_ESALT (cryptoapi_t))
|
|||||||
|
|
||||||
ripemd160_init (&ctx);
|
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);
|
ripemd160_final (&ctx);
|
||||||
|
|
||||||
|
BIN
tools/cl_tests/hashcat_ripemd160_aes_128.img
Normal file
BIN
tools/cl_tests/hashcat_ripemd160_aes_128.img
Normal file
Binary file not shown.
BIN
tools/cl_tests/hashcat_ripemd160_aes_192.img
Normal file
BIN
tools/cl_tests/hashcat_ripemd160_aes_192.img
Normal file
Binary file not shown.
BIN
tools/cl_tests/hashcat_ripemd160_aes_256.img
Normal file
BIN
tools/cl_tests/hashcat_ripemd160_aes_256.img
Normal file
Binary file not shown.
BIN
tools/cl_tests/hashcat_ripemd160_serpent_128.img
Normal file
BIN
tools/cl_tests/hashcat_ripemd160_serpent_128.img
Normal file
Binary file not shown.
BIN
tools/cl_tests/hashcat_ripemd160_serpent_192.img
Normal file
BIN
tools/cl_tests/hashcat_ripemd160_serpent_192.img
Normal file
Binary file not shown.
BIN
tools/cl_tests/hashcat_ripemd160_serpent_256.img
Normal file
BIN
tools/cl_tests/hashcat_ripemd160_serpent_256.img
Normal file
Binary file not shown.
BIN
tools/cl_tests/hashcat_ripemd160_twofish_128.img
Normal file
BIN
tools/cl_tests/hashcat_ripemd160_twofish_128.img
Normal file
Binary file not shown.
BIN
tools/cl_tests/hashcat_ripemd160_twofish_192.img
Normal file
BIN
tools/cl_tests/hashcat_ripemd160_twofish_192.img
Normal file
Binary file not shown.
BIN
tools/cl_tests/hashcat_ripemd160_twofish_256.img
Normal file
BIN
tools/cl_tests/hashcat_ripemd160_twofish_256.img
Normal file
Binary file not shown.
BIN
tools/cl_tests/hashcat_sha1_aes_128.img
Normal file
BIN
tools/cl_tests/hashcat_sha1_aes_128.img
Normal file
Binary file not shown.
BIN
tools/cl_tests/hashcat_sha1_aes_192.img
Normal file
BIN
tools/cl_tests/hashcat_sha1_aes_192.img
Normal file
Binary file not shown.
BIN
tools/cl_tests/hashcat_sha1_aes_256.img
Normal file
BIN
tools/cl_tests/hashcat_sha1_aes_256.img
Normal file
Binary file not shown.
BIN
tools/cl_tests/hashcat_sha1_serpent_128.img
Normal file
BIN
tools/cl_tests/hashcat_sha1_serpent_128.img
Normal file
Binary file not shown.
BIN
tools/cl_tests/hashcat_sha1_serpent_192.img
Normal file
BIN
tools/cl_tests/hashcat_sha1_serpent_192.img
Normal file
Binary file not shown.
BIN
tools/cl_tests/hashcat_sha1_serpent_256.img
Normal file
BIN
tools/cl_tests/hashcat_sha1_serpent_256.img
Normal file
Binary file not shown.
BIN
tools/cl_tests/hashcat_sha1_twofish_128.img
Normal file
BIN
tools/cl_tests/hashcat_sha1_twofish_128.img
Normal file
Binary file not shown.
BIN
tools/cl_tests/hashcat_sha1_twofish_192.img
Normal file
BIN
tools/cl_tests/hashcat_sha1_twofish_192.img
Normal file
Binary file not shown.
BIN
tools/cl_tests/hashcat_sha1_twofish_256.img
Normal file
BIN
tools/cl_tests/hashcat_sha1_twofish_256.img
Normal file
Binary file not shown.
BIN
tools/cl_tests/hashcat_sha256_aes_128.img
Normal file
BIN
tools/cl_tests/hashcat_sha256_aes_128.img
Normal file
Binary file not shown.
BIN
tools/cl_tests/hashcat_sha256_aes_192.img
Normal file
BIN
tools/cl_tests/hashcat_sha256_aes_192.img
Normal file
Binary file not shown.
BIN
tools/cl_tests/hashcat_sha256_aes_256.img
Normal file
BIN
tools/cl_tests/hashcat_sha256_aes_256.img
Normal file
Binary file not shown.
BIN
tools/cl_tests/hashcat_sha256_serpent_128.img
Normal file
BIN
tools/cl_tests/hashcat_sha256_serpent_128.img
Normal file
Binary file not shown.
BIN
tools/cl_tests/hashcat_sha256_serpent_192.img
Normal file
BIN
tools/cl_tests/hashcat_sha256_serpent_192.img
Normal file
Binary file not shown.
BIN
tools/cl_tests/hashcat_sha256_serpent_256.img
Normal file
BIN
tools/cl_tests/hashcat_sha256_serpent_256.img
Normal file
Binary file not shown.
BIN
tools/cl_tests/hashcat_sha256_twofish_128.img
Normal file
BIN
tools/cl_tests/hashcat_sha256_twofish_128.img
Normal file
Binary file not shown.
BIN
tools/cl_tests/hashcat_sha256_twofish_192.img
Normal file
BIN
tools/cl_tests/hashcat_sha256_twofish_192.img
Normal file
Binary file not shown.
BIN
tools/cl_tests/hashcat_sha256_twofish_256.img
Normal file
BIN
tools/cl_tests/hashcat_sha256_twofish_256.img
Normal file
Binary file not shown.
BIN
tools/cl_tests/hashcat_sha512_aes_128.img
Normal file
BIN
tools/cl_tests/hashcat_sha512_aes_128.img
Normal file
Binary file not shown.
BIN
tools/cl_tests/hashcat_sha512_aes_192.img
Normal file
BIN
tools/cl_tests/hashcat_sha512_aes_192.img
Normal file
Binary file not shown.
BIN
tools/cl_tests/hashcat_sha512_aes_256.img
Normal file
BIN
tools/cl_tests/hashcat_sha512_aes_256.img
Normal file
Binary file not shown.
BIN
tools/cl_tests/hashcat_sha512_serpent_128.img
Normal file
BIN
tools/cl_tests/hashcat_sha512_serpent_128.img
Normal file
Binary file not shown.
BIN
tools/cl_tests/hashcat_sha512_serpent_192.img
Normal file
BIN
tools/cl_tests/hashcat_sha512_serpent_192.img
Normal file
Binary file not shown.
BIN
tools/cl_tests/hashcat_sha512_serpent_256.img
Normal file
BIN
tools/cl_tests/hashcat_sha512_serpent_256.img
Normal file
Binary file not shown.
BIN
tools/cl_tests/hashcat_sha512_twofish_128.img
Normal file
BIN
tools/cl_tests/hashcat_sha512_twofish_128.img
Normal file
Binary file not shown.
BIN
tools/cl_tests/hashcat_sha512_twofish_192.img
Normal file
BIN
tools/cl_tests/hashcat_sha512_twofish_192.img
Normal file
Binary file not shown.
BIN
tools/cl_tests/hashcat_sha512_twofish_256.img
Normal file
BIN
tools/cl_tests/hashcat_sha512_twofish_256.img
Normal file
Binary file not shown.
BIN
tools/cl_tests/hashcat_whirlpool_aes_128.img
Normal file
BIN
tools/cl_tests/hashcat_whirlpool_aes_128.img
Normal file
Binary file not shown.
BIN
tools/cl_tests/hashcat_whirlpool_aes_192.img
Normal file
BIN
tools/cl_tests/hashcat_whirlpool_aes_192.img
Normal file
Binary file not shown.
BIN
tools/cl_tests/hashcat_whirlpool_aes_256.img
Normal file
BIN
tools/cl_tests/hashcat_whirlpool_aes_256.img
Normal file
Binary file not shown.
BIN
tools/cl_tests/hashcat_whirlpool_serpent_128.img
Normal file
BIN
tools/cl_tests/hashcat_whirlpool_serpent_128.img
Normal file
Binary file not shown.
BIN
tools/cl_tests/hashcat_whirlpool_serpent_192.img
Normal file
BIN
tools/cl_tests/hashcat_whirlpool_serpent_192.img
Normal file
Binary file not shown.
BIN
tools/cl_tests/hashcat_whirlpool_serpent_256.img
Normal file
BIN
tools/cl_tests/hashcat_whirlpool_serpent_256.img
Normal file
Binary file not shown.
BIN
tools/cl_tests/hashcat_whirlpool_twofish_128.img
Normal file
BIN
tools/cl_tests/hashcat_whirlpool_twofish_128.img
Normal file
Binary file not shown.
BIN
tools/cl_tests/hashcat_whirlpool_twofish_192.img
Normal file
BIN
tools/cl_tests/hashcat_whirlpool_twofish_192.img
Normal file
Binary file not shown.
BIN
tools/cl_tests/hashcat_whirlpool_twofish_256.img
Normal file
BIN
tools/cl_tests/hashcat_whirlpool_twofish_256.img
Normal file
Binary file not shown.
@ -98,5 +98,4 @@ else:
|
|||||||
|
|
||||||
f.close()
|
f.close()
|
||||||
|
|
||||||
print('Hashcat mode: ' + str(hash_mode))
|
print('$cryptoapi$' + str(kern_type) + '$' + str(key_size) + '$03000000000000000000000000000000$00000000000000000000000000000000$' + ct)
|
||||||
print('Hash: $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 has test containers
|
||||||
LUKS_MODE="14600"
|
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
|
# missing hash types: 5200
|
||||||
|
|
||||||
HASH_TYPES=$(ls "${TDIR}"/test_modules/*.pm | sed -E 's/.*m0*([0-9]+).pm/\1/')
|
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' ' ')
|
HASH_TYPES=$(echo -n "${HASH_TYPES}" | tr ' ' '\n' | sort -u -n | tr '\n' ' ')
|
||||||
|
|
||||||
VECTOR_WIDTHS="1 2 4 8 16"
|
VECTOR_WIDTHS="1 2 4 8 16"
|
||||||
@ -156,24 +159,23 @@ function is_in_array()
|
|||||||
function init()
|
function init()
|
||||||
{
|
{
|
||||||
if [ "${PACKAGE}" -eq 1 ]; then
|
if [ "${PACKAGE}" -eq 1 ]; then
|
||||||
|
|
||||||
echo "[ ${OUTD} ] > Generate tests for hash type $hash_type."
|
echo "[ ${OUTD} ] > Generate tests for hash type $hash_type."
|
||||||
|
|
||||||
else
|
else
|
||||||
|
|
||||||
echo "[ ${OUTD} ] > Init test for hash type $hash_type."
|
echo "[ ${OUTD} ] > Init test for hash type $hash_type."
|
||||||
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
rm -rf "${OUTD}/${hash_type}.sh" "${OUTD}/${hash_type}_passwords.txt" "${OUTD}/${hash_type}_hashes.txt"
|
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
|
if is_in_array "${hash_type}" ${TC_MODES}; then
|
||||||
return 0
|
return 0
|
||||||
fi
|
fi
|
||||||
if is_in_array "${hash_type}" ${VC_MODES}; then
|
if is_in_array "${hash_type}" ${VC_MODES}; then
|
||||||
return 0
|
return 0
|
||||||
fi
|
fi
|
||||||
|
if is_in_array "${hash_type}" ${CL_MODES}; then
|
||||||
|
return 0
|
||||||
|
fi
|
||||||
|
|
||||||
if [ "${hash_type}" -eq ${LUKS_MODE} ]; then
|
if [ "${hash_type}" -eq ${LUKS_MODE} ]; then
|
||||||
|
|
||||||
@ -2375,6 +2377,176 @@ function attack_7()
|
|||||||
fi
|
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()
|
function truecrypt_test()
|
||||||
{
|
{
|
||||||
hashType=$1
|
hashType=$1
|
||||||
@ -3072,7 +3244,9 @@ if [ "${PACKAGE}" -eq 0 ] || [ -z "${PACKAGE_FOLDER}" ]; then
|
|||||||
if [ "${TMP_HT}" -ne ${LUKS_MODE} ]; then
|
if [ "${TMP_HT}" -ne ${LUKS_MODE} ]; then
|
||||||
if ! is_in_array "${TMP_HT}" ${TC_MODES}; then
|
if ! is_in_array "${TMP_HT}" ${TC_MODES}; then
|
||||||
if ! is_in_array "${TMP_HT}" ${VC_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
|
fi
|
||||||
fi
|
fi
|
||||||
@ -3087,7 +3261,9 @@ if [ "${PACKAGE}" -eq 0 ] || [ -z "${PACKAGE_FOLDER}" ]; then
|
|||||||
# Exclude TrueCrypt and VeraCrypt testing modes
|
# Exclude TrueCrypt and VeraCrypt testing modes
|
||||||
if ! is_in_array "${TMP_HT}" ${TC_MODES}; then
|
if ! is_in_array "${TMP_HT}" ${TC_MODES}; then
|
||||||
if ! is_in_array "${TMP_HT}" ${VC_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
|
fi
|
||||||
fi
|
fi
|
||||||
@ -3197,7 +3373,6 @@ if [ "${PACKAGE}" -eq 0 ] || [ -z "${PACKAGE_FOLDER}" ]; then
|
|||||||
veracrypt_test 4 # camellia (alternative cascade)
|
veracrypt_test 4 # camellia (alternative cascade)
|
||||||
veracrypt_test 5 # kuznyechik
|
veracrypt_test 5 # kuznyechik
|
||||||
veracrypt_test 6 # kuznyechik (alternative cascade)
|
veracrypt_test 6 # kuznyechik (alternative cascade)
|
||||||
|
|
||||||
elif is_in_array "${hash_type}" ${TC_MODES}; then
|
elif is_in_array "${hash_type}" ${TC_MODES}; then
|
||||||
# run truecrypt tests
|
# run truecrypt tests
|
||||||
truecrypt_test "${hash_type}" 0
|
truecrypt_test "${hash_type}" 0
|
||||||
@ -3213,20 +3388,27 @@ if [ "${PACKAGE}" -eq 0 ] || [ -z "${PACKAGE_FOLDER}" ]; then
|
|||||||
|
|
||||||
else
|
else
|
||||||
|
|
||||||
# run attack mode 0 (stdin)
|
if is_in_array "${hash_type}" ${CL_MODES}; then
|
||||||
if [ ${ATTACK} -eq 65535 ] || [ ${ATTACK} -eq 0 ]; then attack_0; fi
|
# 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)
|
# run attack mode 1 (combinator)
|
||||||
if [ ${ATTACK} -eq 65535 ] || [ ${ATTACK} -eq 1 ]; then attack_1; fi
|
if [ ${ATTACK} -eq 65535 ] || [ ${ATTACK} -eq 1 ]; then attack_1; fi
|
||||||
|
|
||||||
# run attack mode 3 (bruteforce)
|
# run attack mode 3 (bruteforce)
|
||||||
if [ ${ATTACK} -eq 65535 ] || [ ${ATTACK} -eq 3 ]; then attack_3; fi
|
if [ ${ATTACK} -eq 65535 ] || [ ${ATTACK} -eq 3 ]; then attack_3; fi
|
||||||
|
|
||||||
# run attack mode 6 (dict+mask)
|
# run attack mode 6 (dict+mask)
|
||||||
if [ ${ATTACK} -eq 65535 ] || [ ${ATTACK} -eq 6 ]; then attack_6; fi
|
if [ ${ATTACK} -eq 65535 ] || [ ${ATTACK} -eq 6 ]; then attack_6; fi
|
||||||
|
|
||||||
# run attack mode 7 (mask+dict)
|
# run attack mode 7 (mask+dict)
|
||||||
if [ ${ATTACK} -eq 65535 ] || [ ${ATTACK} -eq 7 ]; then attack_7; fi
|
if [ ${ATTACK} -eq 65535 ] || [ ${ATTACK} -eq 7 ]; then attack_7; fi
|
||||||
|
fi
|
||||||
|
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
@ -3245,9 +3427,7 @@ fi
|
|||||||
|
|
||||||
# fix logfile
|
# fix logfile
|
||||||
if [ "${PACKAGE}" -eq 0 ]; then
|
if [ "${PACKAGE}" -eq 0 ]; then
|
||||||
|
|
||||||
cat -vet "${OUTD}/logfull.txt" | sed -e 's/\^M \^M//g' | sed -e 's/\$$//g' > "${OUTD}/test_report.log"
|
cat -vet "${OUTD}/logfull.txt" | sed -e 's/\^M \^M//g' | sed -e 's/\$$//g' > "${OUTD}/test_report.log"
|
||||||
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
rm -rf "${OUTD}/logfull.txt"
|
rm -rf "${OUTD}/logfull.txt"
|
||||||
@ -3261,11 +3441,13 @@ if [ "${PACKAGE}" -eq 1 ]; then
|
|||||||
copy_luks_dir=0
|
copy_luks_dir=0
|
||||||
copy_tc_dir=0
|
copy_tc_dir=0
|
||||||
copy_vc_dir=0
|
copy_vc_dir=0
|
||||||
|
copy_cl_dir=0
|
||||||
|
|
||||||
if [ "${HT}" -eq 65535 ]; then
|
if [ "${HT}" -eq 65535 ]; then
|
||||||
copy_luks_dir=1
|
copy_luks_dir=1
|
||||||
copy_tc_dir=1
|
copy_tc_dir=1
|
||||||
copy_vc_dir=1
|
copy_vc_dir=1
|
||||||
|
copy_cl_dir=1
|
||||||
else
|
else
|
||||||
for TMP_HT in $(seq "${HT_MIN}" "${HT_MAX}"); do
|
for TMP_HT in $(seq "${HT_MIN}" "${HT_MAX}"); do
|
||||||
if [ "${TMP_HT}" -eq "${LUKS_MODE}" ]; then
|
if [ "${TMP_HT}" -eq "${LUKS_MODE}" ]; then
|
||||||
@ -3274,6 +3456,8 @@ if [ "${PACKAGE}" -eq 1 ]; then
|
|||||||
copy_tc_dir=1
|
copy_tc_dir=1
|
||||||
elif is_in_array "${TMP_HT}" ${VC_MODES}; then
|
elif is_in_array "${TMP_HT}" ${VC_MODES}; then
|
||||||
copy_vc_dir=1
|
copy_vc_dir=1
|
||||||
|
elif is_in_array "${TMP_HT}" ${CL_MODES}; then
|
||||||
|
copy_cl_dir=1
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
fi
|
fi
|
||||||
@ -3293,6 +3477,11 @@ if [ "${PACKAGE}" -eq 1 ]; then
|
|||||||
cp ${TDIR}/vc_tests/* "${OUTD}/vc_tests/"
|
cp ${TDIR}/vc_tests/* "${OUTD}/vc_tests/"
|
||||||
fi
|
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 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
|
if [ -n "${PACKAGE_FOLDER}" ]; then
|
||||||
|
Loading…
Reference in New Issue
Block a user