1
0
mirror of https://github.com/hashcat/hashcat.git synced 2024-12-25 16:08:18 +00:00

Merge branch 'matrix-fix_m08600_a0'

This commit is contained in:
jsteube 2016-11-28 10:51:07 +01:00
commit 8f4fa3c6c8

View File

@ -65,7 +65,7 @@ __constant u32 lotus_magic_table[256] =
#define BOX1(S,i) (u32x) ((S)[(i).s0], (S)[(i).s1], (S)[(i).s2], (S)[(i).s3], (S)[(i).s4], (S)[(i).s5], (S)[(i).s6], (S)[(i).s7], (S)[(i).s8], (S)[(i).s9], (S)[(i).sa], (S)[(i).sb], (S)[(i).sc], (S)[(i).sd], (S)[(i).se], (S)[(i).sf]) #define BOX1(S,i) (u32x) ((S)[(i).s0], (S)[(i).s1], (S)[(i).s2], (S)[(i).s3], (S)[(i).s4], (S)[(i).s5], (S)[(i).s6], (S)[(i).s7], (S)[(i).s8], (S)[(i).s9], (S)[(i).sa], (S)[(i).sb], (S)[(i).sc], (S)[(i).sd], (S)[(i).se], (S)[(i).sf])
#endif #endif
void lotus_mix (u32x *in, __local u32 *s_lotus_magic_table) static void lotus_mix (u32x *in, __local u32 *s_lotus_magic_table)
{ {
u32x p = 0; u32x p = 0;
@ -88,7 +88,7 @@ void lotus_mix (u32x *in, __local u32 *s_lotus_magic_table)
} }
} }
void lotus_transform_password (u32x in[4], u32x out[4], __local u32 *s_lotus_magic_table) static void lotus_transform_password (u32x in[4], u32x out[4], __local u32 *s_lotus_magic_table)
{ {
u32x t = out[3] >> 24; u32x t = out[3] >> 24;
@ -106,7 +106,7 @@ void lotus_transform_password (u32x in[4], u32x out[4], __local u32 *s_lotus_mag
} }
} }
void pad (u32 w[4], const u32 len) static void pad (u32 w[4], const u32 len)
{ {
const u32 val = 16 - len; const u32 val = 16 - len;
@ -185,7 +185,7 @@ void pad (u32 w[4], const u32 len)
} }
} }
void mdtransform_norecalc (u32x state[4], u32x block[4], __local u32 *s_lotus_magic_table) static void mdtransform_norecalc (u32x state[4], u32x block[4], __local u32 *s_lotus_magic_table)
{ {
u32x x[12]; u32x x[12];
@ -210,14 +210,14 @@ void mdtransform_norecalc (u32x state[4], u32x block[4], __local u32 *s_lotus_ma
state[3] = x[3]; state[3] = x[3];
} }
void mdtransform (u32x state[4], u32x checksum[4], u32x block[4], __local u32 *s_lotus_magic_table) static void mdtransform (u32x state[4], u32x checksum[4], u32x block[4], __local u32 *s_lotus_magic_table)
{ {
mdtransform_norecalc (state, block, s_lotus_magic_table); mdtransform_norecalc (state, block, s_lotus_magic_table);
lotus_transform_password (block, checksum, s_lotus_magic_table); lotus_transform_password (block, checksum, s_lotus_magic_table);
} }
void domino_big_md (const u32x saved_key[4], const u32 size, u32x state[4], __local u32 *s_lotus_magic_table) static void domino_big_md (const u32x saved_key[4], const u32 size, u32x state[4], __local u32 *s_lotus_magic_table)
{ {
u32x checksum[4]; u32x checksum[4];