Fix a bug in the implementation of GOST R 34.11-94, zero length passwords were not cracked

pull/33/head
Jens Steube 9 years ago
parent bf5218c4dd
commit 0f906dcfeb

@ -850,6 +850,8 @@ __kernel void __attribute__((reqd_work_group_size (64, 1, 1))) m06900_m04 (__glo
u32 tmp[8];
if (pw_len > 0)
{
PASS0 (state, tmp, state_m, data_m, s_tables);
PASS2 (state, tmp, state_m, data_m, s_tables);
PASS4 (state, tmp, state_m, data_m, s_tables);
@ -858,6 +860,7 @@ __kernel void __attribute__((reqd_work_group_size (64, 1, 1))) m06900_m04 (__glo
SHIFT12 (state_m, data, tmp);
SHIFT16 (state, data_m, state_m);
SHIFT61 (state, data_m);
}
data[0] = w14;
data[1] = 0;
@ -1121,6 +1124,8 @@ __kernel void __attribute__((reqd_work_group_size (64, 1, 1))) m06900_s04 (__glo
u32 tmp[8];
if (pw_len > 0)
{
PASS0 (state, tmp, state_m, data_m, s_tables);
PASS2 (state, tmp, state_m, data_m, s_tables);
PASS4 (state, tmp, state_m, data_m, s_tables);
@ -1129,6 +1134,7 @@ __kernel void __attribute__((reqd_work_group_size (64, 1, 1))) m06900_s04 (__glo
SHIFT12 (state_m, data, tmp);
SHIFT16 (state, data_m, state_m);
SHIFT61 (state, data_m);
}
data[0] = w14;
data[1] = 0;

@ -902,6 +902,8 @@ __kernel void __attribute__((reqd_work_group_size (64, 1, 1))) m06900_m04 (__glo
u32 tmp[8];
if (pw_len > 0)
{
PASS0 (state, tmp, state_m, data_m, s_tables);
PASS2 (state, tmp, state_m, data_m, s_tables);
PASS4 (state, tmp, state_m, data_m, s_tables);
@ -910,6 +912,7 @@ __kernel void __attribute__((reqd_work_group_size (64, 1, 1))) m06900_m04 (__glo
SHIFT12 (state_m, data, tmp);
SHIFT16 (state, data_m, state_m);
SHIFT61 (state, data_m);
}
data[0] = w14;
data[1] = 0;
@ -1227,6 +1230,8 @@ __kernel void __attribute__((reqd_work_group_size (64, 1, 1))) m06900_s04 (__glo
u32 tmp[8];
if (pw_len > 0)
{
PASS0 (state, tmp, state_m, data_m, s_tables);
PASS2 (state, tmp, state_m, data_m, s_tables);
PASS4 (state, tmp, state_m, data_m, s_tables);
@ -1235,6 +1240,7 @@ __kernel void __attribute__((reqd_work_group_size (64, 1, 1))) m06900_s04 (__glo
SHIFT12 (state_m, data, tmp);
SHIFT16 (state, data_m, state_m);
SHIFT61 (state, data_m);
}
data[0] = w14;
data[1] = 0;

@ -775,6 +775,8 @@ static void m06900m (u32 w0[4], u32 w1[4], u32 w2[4], u32 w3[4], const u32 pw_le
u32 tmp[8];
if (pw_len > 0)
{
PASS0 (state, tmp, state_m, data_m, s_tables);
PASS2 (state, tmp, state_m, data_m, s_tables);
PASS4 (state, tmp, state_m, data_m, s_tables);
@ -783,6 +785,7 @@ static void m06900m (u32 w0[4], u32 w1[4], u32 w2[4], u32 w3[4], const u32 pw_le
SHIFT12 (state_m, data, tmp);
SHIFT16 (state, data_m, state_m);
SHIFT61 (state, data_m);
}
data[0] = w14;
data[1] = 0;
@ -964,6 +967,8 @@ static void m06900s (u32 w0[4], u32 w1[4], u32 w2[4], u32 w3[4], const u32 pw_le
u32 tmp[8];
if (pw_len > 0)
{
PASS0 (state, tmp, state_m, data_m, s_tables);
PASS2 (state, tmp, state_m, data_m, s_tables);
PASS4 (state, tmp, state_m, data_m, s_tables);
@ -972,6 +977,7 @@ static void m06900s (u32 w0[4], u32 w1[4], u32 w2[4], u32 w3[4], const u32 pw_le
SHIFT12 (state_m, data, tmp);
SHIFT16 (state, data_m, state_m);
SHIFT61 (state, data_m);
}
data[0] = w14;
data[1] = 0;

@ -19,6 +19,10 @@ File.: Host
Desc.: Fixed a bug in combination of --restore and a user immediately aborting the session after restart
Trac.: 684
Type.: Bug
File.: Kernel
Desc.: Fix a bug in the implementation of GOST R 34.11-94, zero length passwords were not cracked
* changes v2.00 -> v2.01:
Type.: Bug

Loading…
Cancel
Save