mirror of
https://github.com/hashcat/hashcat.git
synced 2025-04-07 02:06:01 +00:00
Refactored internal use of esalt from sync with number of salts to sync with number of digests
This enables a true N esalts per salt feature which is required for WPA/WPA2 handling In case we need that for a future algorithm, just make sure to have a unique value in digest in hash parser. Fixes https://github.com/hashcat/hashcat/issues/1158
This commit is contained in:
parent
5cf92de55f
commit
33a043ec63
@ -803,6 +803,8 @@ typedef struct wpa
|
||||
int essid_reuse;
|
||||
u8 essid_len;
|
||||
u8 essid[32];
|
||||
u32 keymic[4];
|
||||
u32 hash[4];
|
||||
|
||||
} wpa_t;
|
||||
|
||||
|
408
OpenCL/m02500.cl
408
OpenCL/m02500.cl
@ -827,82 +827,25 @@ __kernel void m02500_comp (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
|
||||
const u32 lid = get_local_id (0);
|
||||
|
||||
u32 w0[4];
|
||||
u32 w1[4];
|
||||
u32 w2[4];
|
||||
u32 w3[4];
|
||||
|
||||
w0[0] = tmps[gid].out[0];
|
||||
w0[1] = tmps[gid].out[1];
|
||||
w0[2] = tmps[gid].out[2];
|
||||
w0[3] = tmps[gid].out[3];
|
||||
w1[0] = tmps[gid].out[4];
|
||||
w1[1] = tmps[gid].out[5];
|
||||
w1[2] = tmps[gid].out[6];
|
||||
w1[3] = tmps[gid].out[7];
|
||||
w2[0] = 0;
|
||||
w2[1] = 0;
|
||||
w2[2] = 0;
|
||||
w2[3] = 0;
|
||||
w3[0] = 0;
|
||||
w3[1] = 0;
|
||||
w3[2] = 0;
|
||||
w3[3] = 0;
|
||||
|
||||
u32 ipad[5];
|
||||
u32 opad[5];
|
||||
|
||||
hmac_sha1_pad_S (w0, w1, w2, w3, ipad, opad);
|
||||
|
||||
w0[0] = wpa_bufs[salt_pos].pke[ 0];
|
||||
w0[1] = wpa_bufs[salt_pos].pke[ 1];
|
||||
w0[2] = wpa_bufs[salt_pos].pke[ 2];
|
||||
w0[3] = wpa_bufs[salt_pos].pke[ 3];
|
||||
w1[0] = wpa_bufs[salt_pos].pke[ 4];
|
||||
w1[1] = wpa_bufs[salt_pos].pke[ 5];
|
||||
w1[2] = wpa_bufs[salt_pos].pke[ 6];
|
||||
w1[3] = wpa_bufs[salt_pos].pke[ 7];
|
||||
w2[0] = wpa_bufs[salt_pos].pke[ 8];
|
||||
w2[1] = wpa_bufs[salt_pos].pke[ 9];
|
||||
w2[2] = wpa_bufs[salt_pos].pke[10];
|
||||
w2[3] = wpa_bufs[salt_pos].pke[11];
|
||||
w3[0] = wpa_bufs[salt_pos].pke[12];
|
||||
w3[1] = wpa_bufs[salt_pos].pke[13];
|
||||
w3[2] = wpa_bufs[salt_pos].pke[14];
|
||||
w3[3] = wpa_bufs[salt_pos].pke[15];
|
||||
|
||||
sha1_transform_S (w0, w1, w2, w3, ipad);
|
||||
|
||||
w0[0] = wpa_bufs[salt_pos].pke[16];
|
||||
w0[1] = wpa_bufs[salt_pos].pke[17];
|
||||
w0[2] = wpa_bufs[salt_pos].pke[18];
|
||||
w0[3] = wpa_bufs[salt_pos].pke[19];
|
||||
w1[0] = wpa_bufs[salt_pos].pke[20];
|
||||
w1[1] = wpa_bufs[salt_pos].pke[21];
|
||||
w1[2] = wpa_bufs[salt_pos].pke[22];
|
||||
w1[3] = wpa_bufs[salt_pos].pke[23];
|
||||
w2[0] = wpa_bufs[salt_pos].pke[24];
|
||||
w2[1] = 0x80000000;
|
||||
w2[2] = 0;
|
||||
w2[3] = 0;
|
||||
w3[0] = 0;
|
||||
w3[1] = 0;
|
||||
w3[2] = 0;
|
||||
w3[3] = (64 + 100) * 8;
|
||||
|
||||
u32 digest[5];
|
||||
|
||||
hmac_sha1_run_S (w0, w1, w2, w3, ipad, opad, digest);
|
||||
|
||||
for (u32 digest_pos = 0; digest_pos < digests_cnt; digest_pos++)
|
||||
{
|
||||
w0[0] = swap32_S (digest[0]);
|
||||
w0[1] = swap32_S (digest[1]);
|
||||
w0[2] = swap32_S (digest[2]);
|
||||
w0[3] = swap32_S (digest[3]);
|
||||
w1[0] = 0;
|
||||
w1[1] = 0;
|
||||
w1[2] = 0;
|
||||
w1[3] = 0;
|
||||
const u32 digest_cur = digests_offset + digest_pos;
|
||||
|
||||
__global wpa_t *wpa = &wpa_bufs[digest_cur];
|
||||
|
||||
u32 w0[4];
|
||||
u32 w1[4];
|
||||
u32 w2[4];
|
||||
u32 w3[4];
|
||||
|
||||
w0[0] = tmps[gid].out[0];
|
||||
w0[1] = tmps[gid].out[1];
|
||||
w0[2] = tmps[gid].out[2];
|
||||
w0[3] = tmps[gid].out[3];
|
||||
w1[0] = tmps[gid].out[4];
|
||||
w1[1] = tmps[gid].out[5];
|
||||
w1[2] = tmps[gid].out[6];
|
||||
w1[3] = tmps[gid].out[7];
|
||||
w2[0] = 0;
|
||||
w2[1] = 0;
|
||||
w2[2] = 0;
|
||||
@ -912,149 +855,200 @@ __kernel void m02500_comp (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
w3[2] = 0;
|
||||
w3[3] = 0;
|
||||
|
||||
hmac_md5_pad_S (w0, w1, w2, w3, ipad, opad);
|
||||
|
||||
int eapol_len = wpa_bufs[salt_pos].eapol_len;
|
||||
|
||||
int eapol_left;
|
||||
int eapol_off;
|
||||
|
||||
for (eapol_left = eapol_len, eapol_off = 0; eapol_left >= 56; eapol_left -= 64, eapol_off += 16)
|
||||
{
|
||||
w0[0] = wpa_bufs[salt_pos].eapol[eapol_off + 0];
|
||||
w0[1] = wpa_bufs[salt_pos].eapol[eapol_off + 1];
|
||||
w0[2] = wpa_bufs[salt_pos].eapol[eapol_off + 2];
|
||||
w0[3] = wpa_bufs[salt_pos].eapol[eapol_off + 3];
|
||||
w1[0] = wpa_bufs[salt_pos].eapol[eapol_off + 4];
|
||||
w1[1] = wpa_bufs[salt_pos].eapol[eapol_off + 5];
|
||||
w1[2] = wpa_bufs[salt_pos].eapol[eapol_off + 6];
|
||||
w1[3] = wpa_bufs[salt_pos].eapol[eapol_off + 7];
|
||||
w2[0] = wpa_bufs[salt_pos].eapol[eapol_off + 8];
|
||||
w2[1] = wpa_bufs[salt_pos].eapol[eapol_off + 9];
|
||||
w2[2] = wpa_bufs[salt_pos].eapol[eapol_off + 10];
|
||||
w2[3] = wpa_bufs[salt_pos].eapol[eapol_off + 11];
|
||||
w3[0] = wpa_bufs[salt_pos].eapol[eapol_off + 12];
|
||||
w3[1] = wpa_bufs[salt_pos].eapol[eapol_off + 13];
|
||||
w3[2] = wpa_bufs[salt_pos].eapol[eapol_off + 14];
|
||||
w3[3] = wpa_bufs[salt_pos].eapol[eapol_off + 15];
|
||||
|
||||
md5_transform_S (w0, w1, w2, w3, ipad);
|
||||
}
|
||||
|
||||
w0[0] = wpa_bufs[salt_pos].eapol[eapol_off + 0];
|
||||
w0[1] = wpa_bufs[salt_pos].eapol[eapol_off + 1];
|
||||
w0[2] = wpa_bufs[salt_pos].eapol[eapol_off + 2];
|
||||
w0[3] = wpa_bufs[salt_pos].eapol[eapol_off + 3];
|
||||
w1[0] = wpa_bufs[salt_pos].eapol[eapol_off + 4];
|
||||
w1[1] = wpa_bufs[salt_pos].eapol[eapol_off + 5];
|
||||
w1[2] = wpa_bufs[salt_pos].eapol[eapol_off + 6];
|
||||
w1[3] = wpa_bufs[salt_pos].eapol[eapol_off + 7];
|
||||
w2[0] = wpa_bufs[salt_pos].eapol[eapol_off + 8];
|
||||
w2[1] = wpa_bufs[salt_pos].eapol[eapol_off + 9];
|
||||
w2[2] = wpa_bufs[salt_pos].eapol[eapol_off + 10];
|
||||
w2[3] = wpa_bufs[salt_pos].eapol[eapol_off + 11];
|
||||
w3[0] = wpa_bufs[salt_pos].eapol[eapol_off + 12];
|
||||
w3[1] = wpa_bufs[salt_pos].eapol[eapol_off + 13];
|
||||
w3[2] = (64 + eapol_len) * 8;
|
||||
w3[3] = 0;
|
||||
|
||||
u32 digest1[4];
|
||||
|
||||
hmac_md5_run_S (w0, w1, w2, w3, ipad, opad, digest1);
|
||||
|
||||
/**
|
||||
* base
|
||||
*/
|
||||
|
||||
#define il_pos 0
|
||||
|
||||
const u32 r0 = digest1[DGST_R0];
|
||||
const u32 r1 = digest1[DGST_R1];
|
||||
const u32 r2 = digest1[DGST_R2];
|
||||
const u32 r3 = digest1[DGST_R3];
|
||||
|
||||
#include COMPARE_M
|
||||
}
|
||||
|
||||
{
|
||||
w0[0] = digest[0];
|
||||
w0[1] = digest[1];
|
||||
w0[2] = digest[2];
|
||||
w0[3] = digest[3];
|
||||
w1[0] = 0;
|
||||
w1[1] = 0;
|
||||
w1[2] = 0;
|
||||
w1[3] = 0;
|
||||
w2[0] = 0;
|
||||
w2[1] = 0;
|
||||
w2[2] = 0;
|
||||
w2[3] = 0;
|
||||
w3[0] = 0;
|
||||
w3[1] = 0;
|
||||
w3[2] = 0;
|
||||
w3[3] = 0;
|
||||
u32 ipad[5];
|
||||
u32 opad[5];
|
||||
|
||||
hmac_sha1_pad_S (w0, w1, w2, w3, ipad, opad);
|
||||
|
||||
int eapol_len = wpa_bufs[salt_pos].eapol_len;
|
||||
w0[0] = wpa->pke[ 0];
|
||||
w0[1] = wpa->pke[ 1];
|
||||
w0[2] = wpa->pke[ 2];
|
||||
w0[3] = wpa->pke[ 3];
|
||||
w1[0] = wpa->pke[ 4];
|
||||
w1[1] = wpa->pke[ 5];
|
||||
w1[2] = wpa->pke[ 6];
|
||||
w1[3] = wpa->pke[ 7];
|
||||
w2[0] = wpa->pke[ 8];
|
||||
w2[1] = wpa->pke[ 9];
|
||||
w2[2] = wpa->pke[10];
|
||||
w2[3] = wpa->pke[11];
|
||||
w3[0] = wpa->pke[12];
|
||||
w3[1] = wpa->pke[13];
|
||||
w3[2] = wpa->pke[14];
|
||||
w3[3] = wpa->pke[15];
|
||||
|
||||
int eapol_left;
|
||||
int eapol_off;
|
||||
sha1_transform_S (w0, w1, w2, w3, ipad);
|
||||
|
||||
for (eapol_left = eapol_len, eapol_off = 0; eapol_left >= 56; eapol_left -= 64, eapol_off += 16)
|
||||
w0[0] = wpa->pke[16];
|
||||
w0[1] = wpa->pke[17];
|
||||
w0[2] = wpa->pke[18];
|
||||
w0[3] = wpa->pke[19];
|
||||
w1[0] = wpa->pke[20];
|
||||
w1[1] = wpa->pke[21];
|
||||
w1[2] = wpa->pke[22];
|
||||
w1[3] = wpa->pke[23];
|
||||
w2[0] = wpa->pke[24];
|
||||
w2[1] = 0x80000000;
|
||||
w2[2] = 0;
|
||||
w2[3] = 0;
|
||||
w3[0] = 0;
|
||||
w3[1] = 0;
|
||||
w3[2] = 0;
|
||||
w3[3] = (64 + 100) * 8;
|
||||
|
||||
u32 digest[5];
|
||||
|
||||
hmac_sha1_run_S (w0, w1, w2, w3, ipad, opad, digest);
|
||||
|
||||
u32 digest_final[5];
|
||||
|
||||
if (wpa->keyver == 1)
|
||||
{
|
||||
w0[0] = wpa_bufs[salt_pos].eapol[eapol_off + 0];
|
||||
w0[1] = wpa_bufs[salt_pos].eapol[eapol_off + 1];
|
||||
w0[2] = wpa_bufs[salt_pos].eapol[eapol_off + 2];
|
||||
w0[3] = wpa_bufs[salt_pos].eapol[eapol_off + 3];
|
||||
w1[0] = wpa_bufs[salt_pos].eapol[eapol_off + 4];
|
||||
w1[1] = wpa_bufs[salt_pos].eapol[eapol_off + 5];
|
||||
w1[2] = wpa_bufs[salt_pos].eapol[eapol_off + 6];
|
||||
w1[3] = wpa_bufs[salt_pos].eapol[eapol_off + 7];
|
||||
w2[0] = wpa_bufs[salt_pos].eapol[eapol_off + 8];
|
||||
w2[1] = wpa_bufs[salt_pos].eapol[eapol_off + 9];
|
||||
w2[2] = wpa_bufs[salt_pos].eapol[eapol_off + 10];
|
||||
w2[3] = wpa_bufs[salt_pos].eapol[eapol_off + 11];
|
||||
w3[0] = wpa_bufs[salt_pos].eapol[eapol_off + 12];
|
||||
w3[1] = wpa_bufs[salt_pos].eapol[eapol_off + 13];
|
||||
w3[2] = wpa_bufs[salt_pos].eapol[eapol_off + 14];
|
||||
w3[3] = wpa_bufs[salt_pos].eapol[eapol_off + 15];
|
||||
w0[0] = swap32_S (digest[0]);
|
||||
w0[1] = swap32_S (digest[1]);
|
||||
w0[2] = swap32_S (digest[2]);
|
||||
w0[3] = swap32_S (digest[3]);
|
||||
w1[0] = 0;
|
||||
w1[1] = 0;
|
||||
w1[2] = 0;
|
||||
w1[3] = 0;
|
||||
w2[0] = 0;
|
||||
w2[1] = 0;
|
||||
w2[2] = 0;
|
||||
w2[3] = 0;
|
||||
w3[0] = 0;
|
||||
w3[1] = 0;
|
||||
w3[2] = 0;
|
||||
w3[3] = 0;
|
||||
|
||||
sha1_transform_S (w0, w1, w2, w3, ipad);
|
||||
hmac_md5_pad_S (w0, w1, w2, w3, ipad, opad);
|
||||
|
||||
int eapol_len = wpa->eapol_len;
|
||||
|
||||
int eapol_left;
|
||||
int eapol_off;
|
||||
|
||||
for (eapol_left = eapol_len, eapol_off = 0; eapol_left >= 56; eapol_left -= 64, eapol_off += 16)
|
||||
{
|
||||
w0[0] = wpa->eapol[eapol_off + 0];
|
||||
w0[1] = wpa->eapol[eapol_off + 1];
|
||||
w0[2] = wpa->eapol[eapol_off + 2];
|
||||
w0[3] = wpa->eapol[eapol_off + 3];
|
||||
w1[0] = wpa->eapol[eapol_off + 4];
|
||||
w1[1] = wpa->eapol[eapol_off + 5];
|
||||
w1[2] = wpa->eapol[eapol_off + 6];
|
||||
w1[3] = wpa->eapol[eapol_off + 7];
|
||||
w2[0] = wpa->eapol[eapol_off + 8];
|
||||
w2[1] = wpa->eapol[eapol_off + 9];
|
||||
w2[2] = wpa->eapol[eapol_off + 10];
|
||||
w2[3] = wpa->eapol[eapol_off + 11];
|
||||
w3[0] = wpa->eapol[eapol_off + 12];
|
||||
w3[1] = wpa->eapol[eapol_off + 13];
|
||||
w3[2] = wpa->eapol[eapol_off + 14];
|
||||
w3[3] = wpa->eapol[eapol_off + 15];
|
||||
|
||||
md5_transform_S (w0, w1, w2, w3, ipad);
|
||||
}
|
||||
|
||||
w0[0] = wpa->eapol[eapol_off + 0];
|
||||
w0[1] = wpa->eapol[eapol_off + 1];
|
||||
w0[2] = wpa->eapol[eapol_off + 2];
|
||||
w0[3] = wpa->eapol[eapol_off + 3];
|
||||
w1[0] = wpa->eapol[eapol_off + 4];
|
||||
w1[1] = wpa->eapol[eapol_off + 5];
|
||||
w1[2] = wpa->eapol[eapol_off + 6];
|
||||
w1[3] = wpa->eapol[eapol_off + 7];
|
||||
w2[0] = wpa->eapol[eapol_off + 8];
|
||||
w2[1] = wpa->eapol[eapol_off + 9];
|
||||
w2[2] = wpa->eapol[eapol_off + 10];
|
||||
w2[3] = wpa->eapol[eapol_off + 11];
|
||||
w3[0] = wpa->eapol[eapol_off + 12];
|
||||
w3[1] = wpa->eapol[eapol_off + 13];
|
||||
w3[2] = (64 + eapol_len) * 8;
|
||||
w3[3] = 0;
|
||||
|
||||
hmac_md5_run_S (w0, w1, w2, w3, ipad, opad, digest_final);
|
||||
}
|
||||
else
|
||||
{
|
||||
w0[0] = digest[0];
|
||||
w0[1] = digest[1];
|
||||
w0[2] = digest[2];
|
||||
w0[3] = digest[3];
|
||||
w1[0] = 0;
|
||||
w1[1] = 0;
|
||||
w1[2] = 0;
|
||||
w1[3] = 0;
|
||||
w2[0] = 0;
|
||||
w2[1] = 0;
|
||||
w2[2] = 0;
|
||||
w2[3] = 0;
|
||||
w3[0] = 0;
|
||||
w3[1] = 0;
|
||||
w3[2] = 0;
|
||||
w3[3] = 0;
|
||||
|
||||
hmac_sha1_pad_S (w0, w1, w2, w3, ipad, opad);
|
||||
|
||||
int eapol_len = wpa->eapol_len;
|
||||
|
||||
int eapol_left;
|
||||
int eapol_off;
|
||||
|
||||
for (eapol_left = eapol_len, eapol_off = 0; eapol_left >= 56; eapol_left -= 64, eapol_off += 16)
|
||||
{
|
||||
w0[0] = wpa->eapol[eapol_off + 0];
|
||||
w0[1] = wpa->eapol[eapol_off + 1];
|
||||
w0[2] = wpa->eapol[eapol_off + 2];
|
||||
w0[3] = wpa->eapol[eapol_off + 3];
|
||||
w1[0] = wpa->eapol[eapol_off + 4];
|
||||
w1[1] = wpa->eapol[eapol_off + 5];
|
||||
w1[2] = wpa->eapol[eapol_off + 6];
|
||||
w1[3] = wpa->eapol[eapol_off + 7];
|
||||
w2[0] = wpa->eapol[eapol_off + 8];
|
||||
w2[1] = wpa->eapol[eapol_off + 9];
|
||||
w2[2] = wpa->eapol[eapol_off + 10];
|
||||
w2[3] = wpa->eapol[eapol_off + 11];
|
||||
w3[0] = wpa->eapol[eapol_off + 12];
|
||||
w3[1] = wpa->eapol[eapol_off + 13];
|
||||
w3[2] = wpa->eapol[eapol_off + 14];
|
||||
w3[3] = wpa->eapol[eapol_off + 15];
|
||||
|
||||
sha1_transform_S (w0, w1, w2, w3, ipad);
|
||||
}
|
||||
|
||||
w0[0] = wpa->eapol[eapol_off + 0];
|
||||
w0[1] = wpa->eapol[eapol_off + 1];
|
||||
w0[2] = wpa->eapol[eapol_off + 2];
|
||||
w0[3] = wpa->eapol[eapol_off + 3];
|
||||
w1[0] = wpa->eapol[eapol_off + 4];
|
||||
w1[1] = wpa->eapol[eapol_off + 5];
|
||||
w1[2] = wpa->eapol[eapol_off + 6];
|
||||
w1[3] = wpa->eapol[eapol_off + 7];
|
||||
w2[0] = wpa->eapol[eapol_off + 8];
|
||||
w2[1] = wpa->eapol[eapol_off + 9];
|
||||
w2[2] = wpa->eapol[eapol_off + 10];
|
||||
w2[3] = wpa->eapol[eapol_off + 11];
|
||||
w3[0] = wpa->eapol[eapol_off + 12];
|
||||
w3[1] = wpa->eapol[eapol_off + 13];
|
||||
w3[2] = 0;
|
||||
w3[3] = (64 + eapol_len) * 8;
|
||||
|
||||
u32 digest2[5];
|
||||
|
||||
hmac_sha1_run_S (w0, w1, w2, w3, ipad, opad, digest_final);
|
||||
}
|
||||
|
||||
w0[0] = wpa_bufs[salt_pos].eapol[eapol_off + 0];
|
||||
w0[1] = wpa_bufs[salt_pos].eapol[eapol_off + 1];
|
||||
w0[2] = wpa_bufs[salt_pos].eapol[eapol_off + 2];
|
||||
w0[3] = wpa_bufs[salt_pos].eapol[eapol_off + 3];
|
||||
w1[0] = wpa_bufs[salt_pos].eapol[eapol_off + 4];
|
||||
w1[1] = wpa_bufs[salt_pos].eapol[eapol_off + 5];
|
||||
w1[2] = wpa_bufs[salt_pos].eapol[eapol_off + 6];
|
||||
w1[3] = wpa_bufs[salt_pos].eapol[eapol_off + 7];
|
||||
w2[0] = wpa_bufs[salt_pos].eapol[eapol_off + 8];
|
||||
w2[1] = wpa_bufs[salt_pos].eapol[eapol_off + 9];
|
||||
w2[2] = wpa_bufs[salt_pos].eapol[eapol_off + 10];
|
||||
w2[3] = wpa_bufs[salt_pos].eapol[eapol_off + 11];
|
||||
w3[0] = wpa_bufs[salt_pos].eapol[eapol_off + 12];
|
||||
w3[1] = wpa_bufs[salt_pos].eapol[eapol_off + 13];
|
||||
w3[2] = 0;
|
||||
w3[3] = (64 + eapol_len) * 8;
|
||||
|
||||
u32 digest2[5];
|
||||
|
||||
hmac_sha1_run_S (w0, w1, w2, w3, ipad, opad, digest2);
|
||||
|
||||
/**
|
||||
* base
|
||||
* final compare
|
||||
*/
|
||||
|
||||
#define il_pos 0
|
||||
|
||||
const u32 r0 = digest2[DGST_R0];
|
||||
const u32 r1 = digest2[DGST_R1];
|
||||
const u32 r2 = digest2[DGST_R2];
|
||||
const u32 r3 = digest2[DGST_R3];
|
||||
|
||||
#include COMPARE_M
|
||||
if ((digest_final[0] == wpa->keymic[0])
|
||||
&& (digest_final[1] == wpa->keymic[1])
|
||||
&& (digest_final[2] == wpa->keymic[2])
|
||||
&& (digest_final[3] == wpa->keymic[3]))
|
||||
{
|
||||
mark_hash (plains_buf, d_return_buf, salt_pos, digests_cnt, digest_pos, digest_cur, gid, 0);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -215,7 +215,7 @@ __kernel void m05300_m04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (u32 i = lid; i < 16; i += lsz)
|
||||
{
|
||||
w_s[i] = ikepsk_bufs[salt_pos].nr_buf[i];
|
||||
w_s[i] = ikepsk_bufs[digests_offset].nr_buf[i];
|
||||
}
|
||||
|
||||
barrier (CLK_LOCAL_MEM_FENCE);
|
||||
@ -224,7 +224,7 @@ __kernel void m05300_m04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (u32 i = lid; i < 128; i += lsz)
|
||||
{
|
||||
s_msg_buf[i] = ikepsk_bufs[salt_pos].msg_buf[i];
|
||||
s_msg_buf[i] = ikepsk_bufs[digests_offset].msg_buf[i];
|
||||
}
|
||||
|
||||
barrier (CLK_LOCAL_MEM_FENCE);
|
||||
@ -253,8 +253,8 @@ __kernel void m05300_m04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
* salt
|
||||
*/
|
||||
|
||||
const u32 nr_len = ikepsk_bufs[salt_pos].nr_len;
|
||||
const u32 msg_len = ikepsk_bufs[salt_pos].msg_len;
|
||||
const u32 nr_len = ikepsk_bufs[digests_offset].nr_len;
|
||||
const u32 msg_len = ikepsk_bufs[digests_offset].msg_len;
|
||||
|
||||
/**
|
||||
* loop
|
||||
@ -321,7 +321,7 @@ __kernel void m05300_m04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
int left;
|
||||
int off;
|
||||
|
||||
for (left = ikepsk_bufs[salt_pos].msg_len, off = 0; left >= 56; left -= 64, off += 16)
|
||||
for (left = ikepsk_bufs[digests_offset].msg_len, off = 0; left >= 56; left -= 64, off += 16)
|
||||
{
|
||||
w0[0] = s_msg_buf[off + 0];
|
||||
w0[1] = s_msg_buf[off + 1];
|
||||
@ -392,7 +392,7 @@ __kernel void m05300_s04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (u32 i = lid; i < 16; i += lsz)
|
||||
{
|
||||
w_s[i] = ikepsk_bufs[salt_pos].nr_buf[i];
|
||||
w_s[i] = ikepsk_bufs[digests_offset].nr_buf[i];
|
||||
}
|
||||
|
||||
barrier (CLK_LOCAL_MEM_FENCE);
|
||||
@ -401,7 +401,7 @@ __kernel void m05300_s04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (u32 i = lid; i < 128; i += lsz)
|
||||
{
|
||||
s_msg_buf[i] = ikepsk_bufs[salt_pos].msg_buf[i];
|
||||
s_msg_buf[i] = ikepsk_bufs[digests_offset].msg_buf[i];
|
||||
}
|
||||
|
||||
barrier (CLK_LOCAL_MEM_FENCE);
|
||||
@ -430,8 +430,8 @@ __kernel void m05300_s04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
* salt
|
||||
*/
|
||||
|
||||
const u32 nr_len = ikepsk_bufs[salt_pos].nr_len;
|
||||
const u32 msg_len = ikepsk_bufs[salt_pos].msg_len;
|
||||
const u32 nr_len = ikepsk_bufs[digests_offset].nr_len;
|
||||
const u32 msg_len = ikepsk_bufs[digests_offset].msg_len;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -510,7 +510,7 @@ __kernel void m05300_s04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
int left;
|
||||
int off;
|
||||
|
||||
for (left = ikepsk_bufs[salt_pos].msg_len, off = 0; left >= 56; left -= 64, off += 16)
|
||||
for (left = ikepsk_bufs[digests_offset].msg_len, off = 0; left >= 56; left -= 64, off += 16)
|
||||
{
|
||||
w0[0] = s_msg_buf[off + 0];
|
||||
w0[1] = s_msg_buf[off + 1];
|
||||
|
@ -213,7 +213,7 @@ __kernel void m05300_m04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (u32 i = lid; i < 16; i += lsz)
|
||||
{
|
||||
w_s[i] = ikepsk_bufs[salt_pos].nr_buf[i];
|
||||
w_s[i] = ikepsk_bufs[digests_offset].nr_buf[i];
|
||||
}
|
||||
|
||||
barrier (CLK_LOCAL_MEM_FENCE);
|
||||
@ -222,7 +222,7 @@ __kernel void m05300_m04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (u32 i = lid; i < 128; i += lsz)
|
||||
{
|
||||
s_msg_buf[i] = ikepsk_bufs[salt_pos].msg_buf[i];
|
||||
s_msg_buf[i] = ikepsk_bufs[digests_offset].msg_buf[i];
|
||||
}
|
||||
|
||||
barrier (CLK_LOCAL_MEM_FENCE);
|
||||
@ -251,8 +251,8 @@ __kernel void m05300_m04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
* salt
|
||||
*/
|
||||
|
||||
const u32 nr_len = ikepsk_bufs[salt_pos].nr_len;
|
||||
const u32 msg_len = ikepsk_bufs[salt_pos].msg_len;
|
||||
const u32 nr_len = ikepsk_bufs[digests_offset].nr_len;
|
||||
const u32 msg_len = ikepsk_bufs[digests_offset].msg_len;
|
||||
|
||||
/**
|
||||
* loop
|
||||
@ -379,7 +379,7 @@ __kernel void m05300_m04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
int left;
|
||||
int off;
|
||||
|
||||
for (left = ikepsk_bufs[salt_pos].msg_len, off = 0; left >= 56; left -= 64, off += 16)
|
||||
for (left = ikepsk_bufs[digests_offset].msg_len, off = 0; left >= 56; left -= 64, off += 16)
|
||||
{
|
||||
w0[0] = s_msg_buf[off + 0];
|
||||
w0[1] = s_msg_buf[off + 1];
|
||||
@ -450,7 +450,7 @@ __kernel void m05300_s04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (u32 i = lid; i < 16; i += lsz)
|
||||
{
|
||||
w_s[i] = ikepsk_bufs[salt_pos].nr_buf[i];
|
||||
w_s[i] = ikepsk_bufs[digests_offset].nr_buf[i];
|
||||
}
|
||||
|
||||
barrier (CLK_LOCAL_MEM_FENCE);
|
||||
@ -459,7 +459,7 @@ __kernel void m05300_s04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (u32 i = lid; i < 128; i += lsz)
|
||||
{
|
||||
s_msg_buf[i] = ikepsk_bufs[salt_pos].msg_buf[i];
|
||||
s_msg_buf[i] = ikepsk_bufs[digests_offset].msg_buf[i];
|
||||
}
|
||||
|
||||
barrier (CLK_LOCAL_MEM_FENCE);
|
||||
@ -488,8 +488,8 @@ __kernel void m05300_s04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
* salt
|
||||
*/
|
||||
|
||||
const u32 nr_len = ikepsk_bufs[salt_pos].nr_len;
|
||||
const u32 msg_len = ikepsk_bufs[salt_pos].msg_len;
|
||||
const u32 nr_len = ikepsk_bufs[digests_offset].nr_len;
|
||||
const u32 msg_len = ikepsk_bufs[digests_offset].msg_len;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -628,7 +628,7 @@ __kernel void m05300_s04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
int left;
|
||||
int off;
|
||||
|
||||
for (left = ikepsk_bufs[salt_pos].msg_len, off = 0; left >= 56; left -= 64, off += 16)
|
||||
for (left = ikepsk_bufs[digests_offset].msg_len, off = 0; left >= 56; left -= 64, off += 16)
|
||||
{
|
||||
w0[0] = s_msg_buf[off + 0];
|
||||
w0[1] = s_msg_buf[off + 1];
|
||||
|
@ -208,8 +208,8 @@ void m05300m (__local u32 *w_s, u32 w0[4], u32 w1[4], u32 w2[4], u32 w3[4], cons
|
||||
* salt
|
||||
*/
|
||||
|
||||
const u32 nr_len = ikepsk_bufs[salt_pos].nr_len;
|
||||
const u32 msg_len = ikepsk_bufs[salt_pos].msg_len;
|
||||
const u32 nr_len = ikepsk_bufs[digests_offset].nr_len;
|
||||
const u32 msg_len = ikepsk_bufs[digests_offset].msg_len;
|
||||
|
||||
/**
|
||||
* loop
|
||||
@ -297,7 +297,7 @@ void m05300m (__local u32 *w_s, u32 w0[4], u32 w1[4], u32 w2[4], u32 w3[4], cons
|
||||
int left;
|
||||
int off;
|
||||
|
||||
for (left = ikepsk_bufs[salt_pos].msg_len, off = 0; left >= 56; left -= 64, off += 16)
|
||||
for (left = ikepsk_bufs[digests_offset].msg_len, off = 0; left >= 56; left -= 64, off += 16)
|
||||
{
|
||||
w0_t[0] = s_msg_buf[off + 0];
|
||||
w0_t[1] = s_msg_buf[off + 1];
|
||||
@ -355,8 +355,8 @@ void m05300s (__local u32 *w_s, u32 w0[4], u32 w1[4], u32 w2[4], u32 w3[4], cons
|
||||
* salt
|
||||
*/
|
||||
|
||||
const u32 nr_len = ikepsk_bufs[salt_pos].nr_len;
|
||||
const u32 msg_len = ikepsk_bufs[salt_pos].msg_len;
|
||||
const u32 nr_len = ikepsk_bufs[digests_offset].nr_len;
|
||||
const u32 msg_len = ikepsk_bufs[digests_offset].msg_len;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -456,7 +456,7 @@ void m05300s (__local u32 *w_s, u32 w0[4], u32 w1[4], u32 w2[4], u32 w3[4], cons
|
||||
int left;
|
||||
int off;
|
||||
|
||||
for (left = ikepsk_bufs[salt_pos].msg_len, off = 0; left >= 56; left -= 64, off += 16)
|
||||
for (left = ikepsk_bufs[digests_offset].msg_len, off = 0; left >= 56; left -= 64, off += 16)
|
||||
{
|
||||
w0_t[0] = s_msg_buf[off + 0];
|
||||
w0_t[1] = s_msg_buf[off + 1];
|
||||
@ -519,7 +519,7 @@ __kernel void m05300_m04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (u32 i = lid; i < 16; i += lsz)
|
||||
{
|
||||
w_s[i] = ikepsk_bufs[salt_pos].nr_buf[i];
|
||||
w_s[i] = ikepsk_bufs[digests_offset].nr_buf[i];
|
||||
}
|
||||
|
||||
barrier (CLK_LOCAL_MEM_FENCE);
|
||||
@ -528,7 +528,7 @@ __kernel void m05300_m04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (u32 i = lid; i < 128; i += lsz)
|
||||
{
|
||||
s_msg_buf[i] = ikepsk_bufs[salt_pos].msg_buf[i];
|
||||
s_msg_buf[i] = ikepsk_bufs[digests_offset].msg_buf[i];
|
||||
}
|
||||
|
||||
barrier (CLK_LOCAL_MEM_FENCE);
|
||||
@ -594,7 +594,7 @@ __kernel void m05300_m08 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (u32 i = lid; i < 16; i += lsz)
|
||||
{
|
||||
w_s[i] = ikepsk_bufs[salt_pos].nr_buf[i];
|
||||
w_s[i] = ikepsk_bufs[digests_offset].nr_buf[i];
|
||||
}
|
||||
|
||||
barrier (CLK_LOCAL_MEM_FENCE);
|
||||
@ -603,7 +603,7 @@ __kernel void m05300_m08 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (u32 i = lid; i < 128; i += lsz)
|
||||
{
|
||||
s_msg_buf[i] = ikepsk_bufs[salt_pos].msg_buf[i];
|
||||
s_msg_buf[i] = ikepsk_bufs[digests_offset].msg_buf[i];
|
||||
}
|
||||
|
||||
barrier (CLK_LOCAL_MEM_FENCE);
|
||||
@ -669,7 +669,7 @@ __kernel void m05300_m16 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (u32 i = lid; i < 16; i += lsz)
|
||||
{
|
||||
w_s[i] = ikepsk_bufs[salt_pos].nr_buf[i];
|
||||
w_s[i] = ikepsk_bufs[digests_offset].nr_buf[i];
|
||||
}
|
||||
|
||||
barrier (CLK_LOCAL_MEM_FENCE);
|
||||
@ -678,7 +678,7 @@ __kernel void m05300_m16 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (u32 i = lid; i < 128; i += lsz)
|
||||
{
|
||||
s_msg_buf[i] = ikepsk_bufs[salt_pos].msg_buf[i];
|
||||
s_msg_buf[i] = ikepsk_bufs[digests_offset].msg_buf[i];
|
||||
}
|
||||
|
||||
barrier (CLK_LOCAL_MEM_FENCE);
|
||||
@ -744,7 +744,7 @@ __kernel void m05300_s04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (u32 i = lid; i < 16; i += lsz)
|
||||
{
|
||||
w_s[i] = ikepsk_bufs[salt_pos].nr_buf[i];
|
||||
w_s[i] = ikepsk_bufs[digests_offset].nr_buf[i];
|
||||
}
|
||||
|
||||
barrier (CLK_LOCAL_MEM_FENCE);
|
||||
@ -753,7 +753,7 @@ __kernel void m05300_s04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (u32 i = lid; i < 128; i += lsz)
|
||||
{
|
||||
s_msg_buf[i] = ikepsk_bufs[salt_pos].msg_buf[i];
|
||||
s_msg_buf[i] = ikepsk_bufs[digests_offset].msg_buf[i];
|
||||
}
|
||||
|
||||
barrier (CLK_LOCAL_MEM_FENCE);
|
||||
@ -819,7 +819,7 @@ __kernel void m05300_s08 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (u32 i = lid; i < 16; i += lsz)
|
||||
{
|
||||
w_s[i] = ikepsk_bufs[salt_pos].nr_buf[i];
|
||||
w_s[i] = ikepsk_bufs[digests_offset].nr_buf[i];
|
||||
}
|
||||
|
||||
barrier (CLK_LOCAL_MEM_FENCE);
|
||||
@ -828,7 +828,7 @@ __kernel void m05300_s08 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (u32 i = lid; i < 128; i += lsz)
|
||||
{
|
||||
s_msg_buf[i] = ikepsk_bufs[salt_pos].msg_buf[i];
|
||||
s_msg_buf[i] = ikepsk_bufs[digests_offset].msg_buf[i];
|
||||
}
|
||||
|
||||
barrier (CLK_LOCAL_MEM_FENCE);
|
||||
@ -894,7 +894,7 @@ __kernel void m05300_s16 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (u32 i = lid; i < 16; i += lsz)
|
||||
{
|
||||
w_s[i] = ikepsk_bufs[salt_pos].nr_buf[i];
|
||||
w_s[i] = ikepsk_bufs[digests_offset].nr_buf[i];
|
||||
}
|
||||
|
||||
barrier (CLK_LOCAL_MEM_FENCE);
|
||||
@ -903,7 +903,7 @@ __kernel void m05300_s16 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (u32 i = lid; i < 128; i += lsz)
|
||||
{
|
||||
s_msg_buf[i] = ikepsk_bufs[salt_pos].msg_buf[i];
|
||||
s_msg_buf[i] = ikepsk_bufs[digests_offset].msg_buf[i];
|
||||
}
|
||||
|
||||
barrier (CLK_LOCAL_MEM_FENCE);
|
||||
|
@ -249,7 +249,7 @@ __kernel void m05400_m04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (u32 i = lid; i < 16; i += lsz)
|
||||
{
|
||||
w_s[i] = swap32_S (ikepsk_bufs[salt_pos].nr_buf[i]);
|
||||
w_s[i] = swap32_S (ikepsk_bufs[digests_offset].nr_buf[i]);
|
||||
}
|
||||
|
||||
barrier (CLK_LOCAL_MEM_FENCE);
|
||||
@ -258,7 +258,7 @@ __kernel void m05400_m04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (u32 i = lid; i < 128; i += lsz)
|
||||
{
|
||||
s_msg_buf[i] = swap32_S (ikepsk_bufs[salt_pos].msg_buf[i]);
|
||||
s_msg_buf[i] = swap32_S (ikepsk_bufs[digests_offset].msg_buf[i]);
|
||||
}
|
||||
|
||||
barrier (CLK_LOCAL_MEM_FENCE);
|
||||
@ -287,8 +287,8 @@ __kernel void m05400_m04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
* salt
|
||||
*/
|
||||
|
||||
const u32 nr_len = ikepsk_bufs[salt_pos].nr_len;
|
||||
const u32 msg_len = ikepsk_bufs[salt_pos].msg_len;
|
||||
const u32 nr_len = ikepsk_bufs[digests_offset].nr_len;
|
||||
const u32 msg_len = ikepsk_bufs[digests_offset].msg_len;
|
||||
|
||||
/**
|
||||
* loop
|
||||
@ -364,7 +364,7 @@ __kernel void m05400_m04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
int left;
|
||||
int off;
|
||||
|
||||
for (left = ikepsk_bufs[salt_pos].msg_len, off = 0; left >= 56; left -= 64, off += 16)
|
||||
for (left = ikepsk_bufs[digests_offset].msg_len, off = 0; left >= 56; left -= 64, off += 16)
|
||||
{
|
||||
w0[0] = s_msg_buf[off + 0];
|
||||
w0[1] = s_msg_buf[off + 1];
|
||||
@ -435,7 +435,7 @@ __kernel void m05400_s04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (u32 i = lid; i < 16; i += lsz)
|
||||
{
|
||||
w_s[i] = swap32_S (ikepsk_bufs[salt_pos].nr_buf[i]);
|
||||
w_s[i] = swap32_S (ikepsk_bufs[digests_offset].nr_buf[i]);
|
||||
}
|
||||
|
||||
barrier (CLK_LOCAL_MEM_FENCE);
|
||||
@ -444,7 +444,7 @@ __kernel void m05400_s04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (u32 i = lid; i < 128; i += lsz)
|
||||
{
|
||||
s_msg_buf[i] = swap32_S (ikepsk_bufs[salt_pos].msg_buf[i]);
|
||||
s_msg_buf[i] = swap32_S (ikepsk_bufs[digests_offset].msg_buf[i]);
|
||||
}
|
||||
|
||||
barrier (CLK_LOCAL_MEM_FENCE);
|
||||
@ -473,8 +473,8 @@ __kernel void m05400_s04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
* salt
|
||||
*/
|
||||
|
||||
const u32 nr_len = ikepsk_bufs[salt_pos].nr_len;
|
||||
const u32 msg_len = ikepsk_bufs[salt_pos].msg_len;
|
||||
const u32 nr_len = ikepsk_bufs[digests_offset].nr_len;
|
||||
const u32 msg_len = ikepsk_bufs[digests_offset].msg_len;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -562,7 +562,7 @@ __kernel void m05400_s04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
int left;
|
||||
int off;
|
||||
|
||||
for (left = ikepsk_bufs[salt_pos].msg_len, off = 0; left >= 56; left -= 64, off += 16)
|
||||
for (left = ikepsk_bufs[digests_offset].msg_len, off = 0; left >= 56; left -= 64, off += 16)
|
||||
{
|
||||
w0[0] = s_msg_buf[off + 0];
|
||||
w0[1] = s_msg_buf[off + 1];
|
||||
|
@ -247,7 +247,7 @@ __kernel void m05400_m04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (u32 i = lid; i < 16; i += lsz)
|
||||
{
|
||||
w_s[i] = swap32_S (ikepsk_bufs[salt_pos].nr_buf[i]);
|
||||
w_s[i] = swap32_S (ikepsk_bufs[digests_offset].nr_buf[i]);
|
||||
}
|
||||
|
||||
barrier (CLK_LOCAL_MEM_FENCE);
|
||||
@ -256,7 +256,7 @@ __kernel void m05400_m04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (u32 i = lid; i < 128; i += lsz)
|
||||
{
|
||||
s_msg_buf[i] = swap32_S (ikepsk_bufs[salt_pos].msg_buf[i]);
|
||||
s_msg_buf[i] = swap32_S (ikepsk_bufs[digests_offset].msg_buf[i]);
|
||||
}
|
||||
|
||||
barrier (CLK_LOCAL_MEM_FENCE);
|
||||
@ -285,8 +285,8 @@ __kernel void m05400_m04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
* salt
|
||||
*/
|
||||
|
||||
const u32 nr_len = ikepsk_bufs[salt_pos].nr_len;
|
||||
const u32 msg_len = ikepsk_bufs[salt_pos].msg_len;
|
||||
const u32 nr_len = ikepsk_bufs[digests_offset].nr_len;
|
||||
const u32 msg_len = ikepsk_bufs[digests_offset].msg_len;
|
||||
|
||||
/**
|
||||
* loop
|
||||
@ -430,7 +430,7 @@ __kernel void m05400_m04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
int left;
|
||||
int off;
|
||||
|
||||
for (left = ikepsk_bufs[salt_pos].msg_len, off = 0; left >= 56; left -= 64, off += 16)
|
||||
for (left = ikepsk_bufs[digests_offset].msg_len, off = 0; left >= 56; left -= 64, off += 16)
|
||||
{
|
||||
w0[0] = s_msg_buf[off + 0];
|
||||
w0[1] = s_msg_buf[off + 1];
|
||||
@ -501,7 +501,7 @@ __kernel void m05400_s04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (u32 i = lid; i < 16; i += lsz)
|
||||
{
|
||||
w_s[i] = swap32_S (ikepsk_bufs[salt_pos].nr_buf[i]);
|
||||
w_s[i] = swap32_S (ikepsk_bufs[digests_offset].nr_buf[i]);
|
||||
}
|
||||
|
||||
barrier (CLK_LOCAL_MEM_FENCE);
|
||||
@ -510,7 +510,7 @@ __kernel void m05400_s04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (u32 i = lid; i < 128; i += lsz)
|
||||
{
|
||||
s_msg_buf[i] = swap32_S (ikepsk_bufs[salt_pos].msg_buf[i]);
|
||||
s_msg_buf[i] = swap32_S (ikepsk_bufs[digests_offset].msg_buf[i]);
|
||||
}
|
||||
|
||||
barrier (CLK_LOCAL_MEM_FENCE);
|
||||
@ -539,8 +539,8 @@ __kernel void m05400_s04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
* salt
|
||||
*/
|
||||
|
||||
const u32 nr_len = ikepsk_bufs[salt_pos].nr_len;
|
||||
const u32 msg_len = ikepsk_bufs[salt_pos].msg_len;
|
||||
const u32 nr_len = ikepsk_bufs[digests_offset].nr_len;
|
||||
const u32 msg_len = ikepsk_bufs[digests_offset].msg_len;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -696,7 +696,7 @@ __kernel void m05400_s04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
int left;
|
||||
int off;
|
||||
|
||||
for (left = ikepsk_bufs[salt_pos].msg_len, off = 0; left >= 56; left -= 64, off += 16)
|
||||
for (left = ikepsk_bufs[digests_offset].msg_len, off = 0; left >= 56; left -= 64, off += 16)
|
||||
{
|
||||
w0[0] = s_msg_buf[off + 0];
|
||||
w0[1] = s_msg_buf[off + 1];
|
||||
|
@ -242,8 +242,8 @@ void m05400m (__local u32 *w_s, u32 w0[4], u32 w1[4], u32 w2[4], u32 w3[4], cons
|
||||
* salt
|
||||
*/
|
||||
|
||||
const u32 nr_len = ikepsk_bufs[salt_pos].nr_len;
|
||||
const u32 msg_len = ikepsk_bufs[salt_pos].msg_len;
|
||||
const u32 nr_len = ikepsk_bufs[digests_offset].nr_len;
|
||||
const u32 msg_len = ikepsk_bufs[digests_offset].msg_len;
|
||||
|
||||
/**
|
||||
* loop
|
||||
@ -331,7 +331,7 @@ void m05400m (__local u32 *w_s, u32 w0[4], u32 w1[4], u32 w2[4], u32 w3[4], cons
|
||||
int left;
|
||||
int off;
|
||||
|
||||
for (left = ikepsk_bufs[salt_pos].msg_len, off = 0; left >= 56; left -= 64, off += 16)
|
||||
for (left = ikepsk_bufs[digests_offset].msg_len, off = 0; left >= 56; left -= 64, off += 16)
|
||||
{
|
||||
w0_t[0] = s_msg_buf[off + 0];
|
||||
w0_t[1] = s_msg_buf[off + 1];
|
||||
@ -389,8 +389,8 @@ void m05400s (__local u32 *w_s, u32 w0[4], u32 w1[4], u32 w2[4], u32 w3[4], cons
|
||||
* salt
|
||||
*/
|
||||
|
||||
const u32 nr_len = ikepsk_bufs[salt_pos].nr_len;
|
||||
const u32 msg_len = ikepsk_bufs[salt_pos].msg_len;
|
||||
const u32 nr_len = ikepsk_bufs[digests_offset].nr_len;
|
||||
const u32 msg_len = ikepsk_bufs[digests_offset].msg_len;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -490,7 +490,7 @@ void m05400s (__local u32 *w_s, u32 w0[4], u32 w1[4], u32 w2[4], u32 w3[4], cons
|
||||
int left;
|
||||
int off;
|
||||
|
||||
for (left = ikepsk_bufs[salt_pos].msg_len, off = 0; left >= 56; left -= 64, off += 16)
|
||||
for (left = ikepsk_bufs[digests_offset].msg_len, off = 0; left >= 56; left -= 64, off += 16)
|
||||
{
|
||||
w0_t[0] = s_msg_buf[off + 0];
|
||||
w0_t[1] = s_msg_buf[off + 1];
|
||||
@ -553,7 +553,7 @@ __kernel void m05400_m04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (u32 i = lid; i < 16; i += lsz)
|
||||
{
|
||||
w_s[i] = swap32_S (ikepsk_bufs[salt_pos].nr_buf[i]);
|
||||
w_s[i] = swap32_S (ikepsk_bufs[digests_offset].nr_buf[i]);
|
||||
}
|
||||
|
||||
barrier (CLK_LOCAL_MEM_FENCE);
|
||||
@ -562,7 +562,7 @@ __kernel void m05400_m04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (u32 i = lid; i < 128; i += lsz)
|
||||
{
|
||||
s_msg_buf[i] = swap32_S (ikepsk_bufs[salt_pos].msg_buf[i]);
|
||||
s_msg_buf[i] = swap32_S (ikepsk_bufs[digests_offset].msg_buf[i]);
|
||||
}
|
||||
|
||||
barrier (CLK_LOCAL_MEM_FENCE);
|
||||
@ -628,7 +628,7 @@ __kernel void m05400_m08 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (u32 i = lid; i < 16; i += lsz)
|
||||
{
|
||||
w_s[i] = swap32_S (ikepsk_bufs[salt_pos].nr_buf[i]);
|
||||
w_s[i] = swap32_S (ikepsk_bufs[digests_offset].nr_buf[i]);
|
||||
}
|
||||
|
||||
barrier (CLK_LOCAL_MEM_FENCE);
|
||||
@ -637,7 +637,7 @@ __kernel void m05400_m08 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (u32 i = lid; i < 128; i += lsz)
|
||||
{
|
||||
s_msg_buf[i] = swap32_S (ikepsk_bufs[salt_pos].msg_buf[i]);
|
||||
s_msg_buf[i] = swap32_S (ikepsk_bufs[digests_offset].msg_buf[i]);
|
||||
}
|
||||
|
||||
barrier (CLK_LOCAL_MEM_FENCE);
|
||||
@ -703,7 +703,7 @@ __kernel void m05400_m16 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (u32 i = lid; i < 16; i += lsz)
|
||||
{
|
||||
w_s[i] = swap32_S (ikepsk_bufs[salt_pos].nr_buf[i]);
|
||||
w_s[i] = swap32_S (ikepsk_bufs[digests_offset].nr_buf[i]);
|
||||
}
|
||||
|
||||
barrier (CLK_LOCAL_MEM_FENCE);
|
||||
@ -712,7 +712,7 @@ __kernel void m05400_m16 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (u32 i = lid; i < 128; i += lsz)
|
||||
{
|
||||
s_msg_buf[i] = swap32_S (ikepsk_bufs[salt_pos].msg_buf[i]);
|
||||
s_msg_buf[i] = swap32_S (ikepsk_bufs[digests_offset].msg_buf[i]);
|
||||
}
|
||||
|
||||
barrier (CLK_LOCAL_MEM_FENCE);
|
||||
@ -778,7 +778,7 @@ __kernel void m05400_s04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (u32 i = lid; i < 16; i += lsz)
|
||||
{
|
||||
w_s[i] = swap32_S (ikepsk_bufs[salt_pos].nr_buf[i]);
|
||||
w_s[i] = swap32_S (ikepsk_bufs[digests_offset].nr_buf[i]);
|
||||
}
|
||||
|
||||
barrier (CLK_LOCAL_MEM_FENCE);
|
||||
@ -787,7 +787,7 @@ __kernel void m05400_s04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (u32 i = lid; i < 128; i += lsz)
|
||||
{
|
||||
s_msg_buf[i] = swap32_S (ikepsk_bufs[salt_pos].msg_buf[i]);
|
||||
s_msg_buf[i] = swap32_S (ikepsk_bufs[digests_offset].msg_buf[i]);
|
||||
}
|
||||
|
||||
barrier (CLK_LOCAL_MEM_FENCE);
|
||||
@ -853,7 +853,7 @@ __kernel void m05400_s08 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (u32 i = lid; i < 16; i += lsz)
|
||||
{
|
||||
w_s[i] = swap32_S (ikepsk_bufs[salt_pos].nr_buf[i]);
|
||||
w_s[i] = swap32_S (ikepsk_bufs[digests_offset].nr_buf[i]);
|
||||
}
|
||||
|
||||
barrier (CLK_LOCAL_MEM_FENCE);
|
||||
@ -862,7 +862,7 @@ __kernel void m05400_s08 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (u32 i = lid; i < 128; i += lsz)
|
||||
{
|
||||
s_msg_buf[i] = swap32_S (ikepsk_bufs[salt_pos].msg_buf[i]);
|
||||
s_msg_buf[i] = swap32_S (ikepsk_bufs[digests_offset].msg_buf[i]);
|
||||
}
|
||||
|
||||
barrier (CLK_LOCAL_MEM_FENCE);
|
||||
@ -928,7 +928,7 @@ __kernel void m05400_s16 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (u32 i = lid; i < 16; i += lsz)
|
||||
{
|
||||
w_s[i] = swap32_S (ikepsk_bufs[salt_pos].nr_buf[i]);
|
||||
w_s[i] = swap32_S (ikepsk_bufs[digests_offset].nr_buf[i]);
|
||||
}
|
||||
|
||||
barrier (CLK_LOCAL_MEM_FENCE);
|
||||
@ -937,7 +937,7 @@ __kernel void m05400_s16 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (u32 i = lid; i < 128; i += lsz)
|
||||
{
|
||||
s_msg_buf[i] = swap32_S (ikepsk_bufs[salt_pos].msg_buf[i]);
|
||||
s_msg_buf[i] = swap32_S (ikepsk_bufs[digests_offset].msg_buf[i]);
|
||||
}
|
||||
|
||||
barrier (CLK_LOCAL_MEM_FENCE);
|
||||
|
@ -296,25 +296,25 @@ __kernel void m05600_m04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (u32 i = lid; i < 64; i += lsz)
|
||||
{
|
||||
s_userdomain_buf[i] = netntlm_bufs[salt_pos].userdomain_buf[i];
|
||||
s_userdomain_buf[i] = netntlm_bufs[digests_offset].userdomain_buf[i];
|
||||
}
|
||||
|
||||
__local u32 s_chall_buf[256];
|
||||
|
||||
for (u32 i = lid; i < 256; i += lsz)
|
||||
{
|
||||
s_chall_buf[i] = netntlm_bufs[salt_pos].chall_buf[i];
|
||||
s_chall_buf[i] = netntlm_bufs[digests_offset].chall_buf[i];
|
||||
}
|
||||
|
||||
barrier (CLK_LOCAL_MEM_FENCE);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
|
||||
const u32 userdomain_len = netntlm_bufs[salt_pos].user_len
|
||||
+ netntlm_bufs[salt_pos].domain_len;
|
||||
const u32 userdomain_len = netntlm_bufs[digests_offset].user_len
|
||||
+ netntlm_bufs[digests_offset].domain_len;
|
||||
|
||||
const u32 chall_len = netntlm_bufs[salt_pos].srvchall_len
|
||||
+ netntlm_bufs[salt_pos].clichall_len;
|
||||
const u32 chall_len = netntlm_bufs[digests_offset].srvchall_len
|
||||
+ netntlm_bufs[digests_offset].clichall_len;
|
||||
|
||||
/**
|
||||
* base
|
||||
@ -535,25 +535,25 @@ __kernel void m05600_s04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (u32 i = lid; i < 64; i += lsz)
|
||||
{
|
||||
s_userdomain_buf[i] = netntlm_bufs[salt_pos].userdomain_buf[i];
|
||||
s_userdomain_buf[i] = netntlm_bufs[digests_offset].userdomain_buf[i];
|
||||
}
|
||||
|
||||
__local u32 s_chall_buf[256];
|
||||
|
||||
for (u32 i = lid; i < 256; i += lsz)
|
||||
{
|
||||
s_chall_buf[i] = netntlm_bufs[salt_pos].chall_buf[i];
|
||||
s_chall_buf[i] = netntlm_bufs[digests_offset].chall_buf[i];
|
||||
}
|
||||
|
||||
barrier (CLK_LOCAL_MEM_FENCE);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
|
||||
const u32 userdomain_len = netntlm_bufs[salt_pos].user_len
|
||||
+ netntlm_bufs[salt_pos].domain_len;
|
||||
const u32 userdomain_len = netntlm_bufs[digests_offset].user_len
|
||||
+ netntlm_bufs[digests_offset].domain_len;
|
||||
|
||||
const u32 chall_len = netntlm_bufs[salt_pos].srvchall_len
|
||||
+ netntlm_bufs[salt_pos].clichall_len;
|
||||
const u32 chall_len = netntlm_bufs[digests_offset].srvchall_len
|
||||
+ netntlm_bufs[digests_offset].clichall_len;
|
||||
|
||||
/**
|
||||
* base
|
||||
|
@ -294,25 +294,25 @@ __kernel void m05600_m04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (u32 i = lid; i < 64; i += lsz)
|
||||
{
|
||||
s_userdomain_buf[i] = netntlm_bufs[salt_pos].userdomain_buf[i];
|
||||
s_userdomain_buf[i] = netntlm_bufs[digests_offset].userdomain_buf[i];
|
||||
}
|
||||
|
||||
__local u32 s_chall_buf[256];
|
||||
|
||||
for (u32 i = lid; i < 256; i += lsz)
|
||||
{
|
||||
s_chall_buf[i] = netntlm_bufs[salt_pos].chall_buf[i];
|
||||
s_chall_buf[i] = netntlm_bufs[digests_offset].chall_buf[i];
|
||||
}
|
||||
|
||||
barrier (CLK_LOCAL_MEM_FENCE);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
|
||||
const u32 userdomain_len = netntlm_bufs[salt_pos].user_len
|
||||
+ netntlm_bufs[salt_pos].domain_len;
|
||||
const u32 userdomain_len = netntlm_bufs[digests_offset].user_len
|
||||
+ netntlm_bufs[digests_offset].domain_len;
|
||||
|
||||
const u32 chall_len = netntlm_bufs[salt_pos].srvchall_len
|
||||
+ netntlm_bufs[salt_pos].clichall_len;
|
||||
const u32 chall_len = netntlm_bufs[digests_offset].srvchall_len
|
||||
+ netntlm_bufs[digests_offset].clichall_len;
|
||||
|
||||
/**
|
||||
* base
|
||||
@ -591,25 +591,25 @@ __kernel void m05600_s04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (u32 i = lid; i < 64; i += lsz)
|
||||
{
|
||||
s_userdomain_buf[i] = netntlm_bufs[salt_pos].userdomain_buf[i];
|
||||
s_userdomain_buf[i] = netntlm_bufs[digests_offset].userdomain_buf[i];
|
||||
}
|
||||
|
||||
__local u32 s_chall_buf[256];
|
||||
|
||||
for (u32 i = lid; i < 256; i += lsz)
|
||||
{
|
||||
s_chall_buf[i] = netntlm_bufs[salt_pos].chall_buf[i];
|
||||
s_chall_buf[i] = netntlm_bufs[digests_offset].chall_buf[i];
|
||||
}
|
||||
|
||||
barrier (CLK_LOCAL_MEM_FENCE);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
|
||||
const u32 userdomain_len = netntlm_bufs[salt_pos].user_len
|
||||
+ netntlm_bufs[salt_pos].domain_len;
|
||||
const u32 userdomain_len = netntlm_bufs[digests_offset].user_len
|
||||
+ netntlm_bufs[digests_offset].domain_len;
|
||||
|
||||
const u32 chall_len = netntlm_bufs[salt_pos].srvchall_len
|
||||
+ netntlm_bufs[salt_pos].clichall_len;
|
||||
const u32 chall_len = netntlm_bufs[digests_offset].srvchall_len
|
||||
+ netntlm_bufs[digests_offset].clichall_len;
|
||||
|
||||
/**
|
||||
* base
|
||||
|
@ -289,11 +289,11 @@ void m05600m (u32 w0[4], u32 w1[4], u32 w2[4], u32 w3[4], const u32 pw_len, __gl
|
||||
* prepare
|
||||
*/
|
||||
|
||||
const u32 userdomain_len = netntlm_bufs[salt_pos].user_len
|
||||
+ netntlm_bufs[salt_pos].domain_len;
|
||||
const u32 userdomain_len = netntlm_bufs[digests_offset].user_len
|
||||
+ netntlm_bufs[digests_offset].domain_len;
|
||||
|
||||
const u32 chall_len = netntlm_bufs[salt_pos].srvchall_len
|
||||
+ netntlm_bufs[salt_pos].clichall_len;
|
||||
const u32 chall_len = netntlm_bufs[digests_offset].srvchall_len
|
||||
+ netntlm_bufs[digests_offset].clichall_len;
|
||||
|
||||
/**
|
||||
* loop
|
||||
@ -495,11 +495,11 @@ void m05600s (u32 w0[4], u32 w1[4], u32 w2[4], u32 w3[4], const u32 pw_len, __gl
|
||||
* prepare
|
||||
*/
|
||||
|
||||
const u32 userdomain_len = netntlm_bufs[salt_pos].user_len
|
||||
+ netntlm_bufs[salt_pos].domain_len;
|
||||
const u32 userdomain_len = netntlm_bufs[digests_offset].user_len
|
||||
+ netntlm_bufs[digests_offset].domain_len;
|
||||
|
||||
const u32 chall_len = netntlm_bufs[salt_pos].srvchall_len
|
||||
+ netntlm_bufs[salt_pos].clichall_len;
|
||||
const u32 chall_len = netntlm_bufs[digests_offset].srvchall_len
|
||||
+ netntlm_bufs[digests_offset].clichall_len;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -718,25 +718,25 @@ __kernel void m05600_m04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (u32 i = lid; i < 64; i += lsz)
|
||||
{
|
||||
s_userdomain_buf[i] = netntlm_bufs[salt_pos].userdomain_buf[i];
|
||||
s_userdomain_buf[i] = netntlm_bufs[digests_offset].userdomain_buf[i];
|
||||
}
|
||||
|
||||
__local u32 s_chall_buf[256];
|
||||
|
||||
for (u32 i = lid; i < 256; i += lsz)
|
||||
{
|
||||
s_chall_buf[i] = netntlm_bufs[salt_pos].chall_buf[i];
|
||||
s_chall_buf[i] = netntlm_bufs[digests_offset].chall_buf[i];
|
||||
}
|
||||
|
||||
barrier (CLK_LOCAL_MEM_FENCE);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
|
||||
const u32 userdomain_len = netntlm_bufs[salt_pos].user_len
|
||||
+ netntlm_bufs[salt_pos].domain_len;
|
||||
const u32 userdomain_len = netntlm_bufs[digests_offset].user_len
|
||||
+ netntlm_bufs[digests_offset].domain_len;
|
||||
|
||||
const u32 chall_len = netntlm_bufs[salt_pos].srvchall_len
|
||||
+ netntlm_bufs[salt_pos].clichall_len;
|
||||
const u32 chall_len = netntlm_bufs[digests_offset].srvchall_len
|
||||
+ netntlm_bufs[digests_offset].clichall_len;
|
||||
|
||||
/**
|
||||
* base
|
||||
@ -797,25 +797,25 @@ __kernel void m05600_m08 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (u32 i = lid; i < 64; i += lsz)
|
||||
{
|
||||
s_userdomain_buf[i] = netntlm_bufs[salt_pos].userdomain_buf[i];
|
||||
s_userdomain_buf[i] = netntlm_bufs[digests_offset].userdomain_buf[i];
|
||||
}
|
||||
|
||||
__local u32 s_chall_buf[256];
|
||||
|
||||
for (u32 i = lid; i < 256; i += lsz)
|
||||
{
|
||||
s_chall_buf[i] = netntlm_bufs[salt_pos].chall_buf[i];
|
||||
s_chall_buf[i] = netntlm_bufs[digests_offset].chall_buf[i];
|
||||
}
|
||||
|
||||
barrier (CLK_LOCAL_MEM_FENCE);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
|
||||
const u32 userdomain_len = netntlm_bufs[salt_pos].user_len
|
||||
+ netntlm_bufs[salt_pos].domain_len;
|
||||
const u32 userdomain_len = netntlm_bufs[digests_offset].user_len
|
||||
+ netntlm_bufs[digests_offset].domain_len;
|
||||
|
||||
const u32 chall_len = netntlm_bufs[salt_pos].srvchall_len
|
||||
+ netntlm_bufs[salt_pos].clichall_len;
|
||||
const u32 chall_len = netntlm_bufs[digests_offset].srvchall_len
|
||||
+ netntlm_bufs[digests_offset].clichall_len;
|
||||
|
||||
/**
|
||||
* base
|
||||
@ -880,25 +880,25 @@ __kernel void m05600_s04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (u32 i = lid; i < 64; i += lsz)
|
||||
{
|
||||
s_userdomain_buf[i] = netntlm_bufs[salt_pos].userdomain_buf[i];
|
||||
s_userdomain_buf[i] = netntlm_bufs[digests_offset].userdomain_buf[i];
|
||||
}
|
||||
|
||||
__local u32 s_chall_buf[256];
|
||||
|
||||
for (u32 i = lid; i < 256; i += lsz)
|
||||
{
|
||||
s_chall_buf[i] = netntlm_bufs[salt_pos].chall_buf[i];
|
||||
s_chall_buf[i] = netntlm_bufs[digests_offset].chall_buf[i];
|
||||
}
|
||||
|
||||
barrier (CLK_LOCAL_MEM_FENCE);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
|
||||
const u32 userdomain_len = netntlm_bufs[salt_pos].user_len
|
||||
+ netntlm_bufs[salt_pos].domain_len;
|
||||
const u32 userdomain_len = netntlm_bufs[digests_offset].user_len
|
||||
+ netntlm_bufs[digests_offset].domain_len;
|
||||
|
||||
const u32 chall_len = netntlm_bufs[salt_pos].srvchall_len
|
||||
+ netntlm_bufs[salt_pos].clichall_len;
|
||||
const u32 chall_len = netntlm_bufs[digests_offset].srvchall_len
|
||||
+ netntlm_bufs[digests_offset].clichall_len;
|
||||
|
||||
/**
|
||||
* base
|
||||
@ -959,25 +959,25 @@ __kernel void m05600_s08 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (u32 i = lid; i < 64; i += lsz)
|
||||
{
|
||||
s_userdomain_buf[i] = netntlm_bufs[salt_pos].userdomain_buf[i];
|
||||
s_userdomain_buf[i] = netntlm_bufs[digests_offset].userdomain_buf[i];
|
||||
}
|
||||
|
||||
__local u32 s_chall_buf[256];
|
||||
|
||||
for (u32 i = lid; i < 256; i += lsz)
|
||||
{
|
||||
s_chall_buf[i] = netntlm_bufs[salt_pos].chall_buf[i];
|
||||
s_chall_buf[i] = netntlm_bufs[digests_offset].chall_buf[i];
|
||||
}
|
||||
|
||||
barrier (CLK_LOCAL_MEM_FENCE);
|
||||
|
||||
if (gid >= gid_max) return;
|
||||
|
||||
const u32 userdomain_len = netntlm_bufs[salt_pos].user_len
|
||||
+ netntlm_bufs[salt_pos].domain_len;
|
||||
const u32 userdomain_len = netntlm_bufs[digests_offset].user_len
|
||||
+ netntlm_bufs[digests_offset].domain_len;
|
||||
|
||||
const u32 chall_len = netntlm_bufs[salt_pos].srvchall_len
|
||||
+ netntlm_bufs[salt_pos].clichall_len;
|
||||
const u32 chall_len = netntlm_bufs[digests_offset].srvchall_len
|
||||
+ netntlm_bufs[digests_offset].clichall_len;
|
||||
|
||||
/**
|
||||
* base
|
||||
|
@ -408,22 +408,22 @@ __kernel void m06211_init (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
* keyfile
|
||||
*/
|
||||
|
||||
w0[0] = u8add (w0[0], esalt_bufs[salt_pos].keyfile_buf[ 0]);
|
||||
w0[1] = u8add (w0[1], esalt_bufs[salt_pos].keyfile_buf[ 1]);
|
||||
w0[2] = u8add (w0[2], esalt_bufs[salt_pos].keyfile_buf[ 2]);
|
||||
w0[3] = u8add (w0[3], esalt_bufs[salt_pos].keyfile_buf[ 3]);
|
||||
w1[0] = u8add (w1[0], esalt_bufs[salt_pos].keyfile_buf[ 4]);
|
||||
w1[1] = u8add (w1[1], esalt_bufs[salt_pos].keyfile_buf[ 5]);
|
||||
w1[2] = u8add (w1[2], esalt_bufs[salt_pos].keyfile_buf[ 6]);
|
||||
w1[3] = u8add (w1[3], esalt_bufs[salt_pos].keyfile_buf[ 7]);
|
||||
w2[0] = u8add (w2[0], esalt_bufs[salt_pos].keyfile_buf[ 8]);
|
||||
w2[1] = u8add (w2[1], esalt_bufs[salt_pos].keyfile_buf[ 9]);
|
||||
w2[2] = u8add (w2[2], esalt_bufs[salt_pos].keyfile_buf[10]);
|
||||
w2[3] = u8add (w2[3], esalt_bufs[salt_pos].keyfile_buf[11]);
|
||||
w3[0] = u8add (w3[0], esalt_bufs[salt_pos].keyfile_buf[12]);
|
||||
w3[1] = u8add (w3[1], esalt_bufs[salt_pos].keyfile_buf[13]);
|
||||
w3[2] = u8add (w3[2], esalt_bufs[salt_pos].keyfile_buf[14]);
|
||||
w3[3] = u8add (w3[3], esalt_bufs[salt_pos].keyfile_buf[15]);
|
||||
w0[0] = u8add (w0[0], esalt_bufs[digests_offset].keyfile_buf[ 0]);
|
||||
w0[1] = u8add (w0[1], esalt_bufs[digests_offset].keyfile_buf[ 1]);
|
||||
w0[2] = u8add (w0[2], esalt_bufs[digests_offset].keyfile_buf[ 2]);
|
||||
w0[3] = u8add (w0[3], esalt_bufs[digests_offset].keyfile_buf[ 3]);
|
||||
w1[0] = u8add (w1[0], esalt_bufs[digests_offset].keyfile_buf[ 4]);
|
||||
w1[1] = u8add (w1[1], esalt_bufs[digests_offset].keyfile_buf[ 5]);
|
||||
w1[2] = u8add (w1[2], esalt_bufs[digests_offset].keyfile_buf[ 6]);
|
||||
w1[3] = u8add (w1[3], esalt_bufs[digests_offset].keyfile_buf[ 7]);
|
||||
w2[0] = u8add (w2[0], esalt_bufs[digests_offset].keyfile_buf[ 8]);
|
||||
w2[1] = u8add (w2[1], esalt_bufs[digests_offset].keyfile_buf[ 9]);
|
||||
w2[2] = u8add (w2[2], esalt_bufs[digests_offset].keyfile_buf[10]);
|
||||
w2[3] = u8add (w2[3], esalt_bufs[digests_offset].keyfile_buf[11]);
|
||||
w3[0] = u8add (w3[0], esalt_bufs[digests_offset].keyfile_buf[12]);
|
||||
w3[1] = u8add (w3[1], esalt_bufs[digests_offset].keyfile_buf[13]);
|
||||
w3[2] = u8add (w3[2], esalt_bufs[digests_offset].keyfile_buf[14]);
|
||||
w3[3] = u8add (w3[3], esalt_bufs[digests_offset].keyfile_buf[15]);
|
||||
|
||||
/**
|
||||
* salt
|
||||
@ -431,22 +431,22 @@ __kernel void m06211_init (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
|
||||
u32 salt_buf1[16];
|
||||
|
||||
salt_buf1[ 0] = esalt_bufs[salt_pos].salt_buf[ 0];
|
||||
salt_buf1[ 1] = esalt_bufs[salt_pos].salt_buf[ 1];
|
||||
salt_buf1[ 2] = esalt_bufs[salt_pos].salt_buf[ 2];
|
||||
salt_buf1[ 3] = esalt_bufs[salt_pos].salt_buf[ 3];
|
||||
salt_buf1[ 4] = esalt_bufs[salt_pos].salt_buf[ 4];
|
||||
salt_buf1[ 5] = esalt_bufs[salt_pos].salt_buf[ 5];
|
||||
salt_buf1[ 6] = esalt_bufs[salt_pos].salt_buf[ 6];
|
||||
salt_buf1[ 7] = esalt_bufs[salt_pos].salt_buf[ 7];
|
||||
salt_buf1[ 8] = esalt_bufs[salt_pos].salt_buf[ 8];
|
||||
salt_buf1[ 9] = esalt_bufs[salt_pos].salt_buf[ 9];
|
||||
salt_buf1[10] = esalt_bufs[salt_pos].salt_buf[10];
|
||||
salt_buf1[11] = esalt_bufs[salt_pos].salt_buf[11];
|
||||
salt_buf1[12] = esalt_bufs[salt_pos].salt_buf[12];
|
||||
salt_buf1[13] = esalt_bufs[salt_pos].salt_buf[13];
|
||||
salt_buf1[14] = esalt_bufs[salt_pos].salt_buf[14];
|
||||
salt_buf1[15] = esalt_bufs[salt_pos].salt_buf[15];
|
||||
salt_buf1[ 0] = esalt_bufs[digests_offset].salt_buf[ 0];
|
||||
salt_buf1[ 1] = esalt_bufs[digests_offset].salt_buf[ 1];
|
||||
salt_buf1[ 2] = esalt_bufs[digests_offset].salt_buf[ 2];
|
||||
salt_buf1[ 3] = esalt_bufs[digests_offset].salt_buf[ 3];
|
||||
salt_buf1[ 4] = esalt_bufs[digests_offset].salt_buf[ 4];
|
||||
salt_buf1[ 5] = esalt_bufs[digests_offset].salt_buf[ 5];
|
||||
salt_buf1[ 6] = esalt_bufs[digests_offset].salt_buf[ 6];
|
||||
salt_buf1[ 7] = esalt_bufs[digests_offset].salt_buf[ 7];
|
||||
salt_buf1[ 8] = esalt_bufs[digests_offset].salt_buf[ 8];
|
||||
salt_buf1[ 9] = esalt_bufs[digests_offset].salt_buf[ 9];
|
||||
salt_buf1[10] = esalt_bufs[digests_offset].salt_buf[10];
|
||||
salt_buf1[11] = esalt_bufs[digests_offset].salt_buf[11];
|
||||
salt_buf1[12] = esalt_bufs[digests_offset].salt_buf[12];
|
||||
salt_buf1[13] = esalt_bufs[digests_offset].salt_buf[13];
|
||||
salt_buf1[14] = esalt_bufs[digests_offset].salt_buf[14];
|
||||
salt_buf1[15] = esalt_bufs[digests_offset].salt_buf[15];
|
||||
|
||||
u32 salt_buf2[16];
|
||||
|
||||
|
@ -408,22 +408,22 @@ __kernel void m06212_init (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
* keyfile
|
||||
*/
|
||||
|
||||
w0[0] = u8add (w0[0], esalt_bufs[salt_pos].keyfile_buf[ 0]);
|
||||
w0[1] = u8add (w0[1], esalt_bufs[salt_pos].keyfile_buf[ 1]);
|
||||
w0[2] = u8add (w0[2], esalt_bufs[salt_pos].keyfile_buf[ 2]);
|
||||
w0[3] = u8add (w0[3], esalt_bufs[salt_pos].keyfile_buf[ 3]);
|
||||
w1[0] = u8add (w1[0], esalt_bufs[salt_pos].keyfile_buf[ 4]);
|
||||
w1[1] = u8add (w1[1], esalt_bufs[salt_pos].keyfile_buf[ 5]);
|
||||
w1[2] = u8add (w1[2], esalt_bufs[salt_pos].keyfile_buf[ 6]);
|
||||
w1[3] = u8add (w1[3], esalt_bufs[salt_pos].keyfile_buf[ 7]);
|
||||
w2[0] = u8add (w2[0], esalt_bufs[salt_pos].keyfile_buf[ 8]);
|
||||
w2[1] = u8add (w2[1], esalt_bufs[salt_pos].keyfile_buf[ 9]);
|
||||
w2[2] = u8add (w2[2], esalt_bufs[salt_pos].keyfile_buf[10]);
|
||||
w2[3] = u8add (w2[3], esalt_bufs[salt_pos].keyfile_buf[11]);
|
||||
w3[0] = u8add (w3[0], esalt_bufs[salt_pos].keyfile_buf[12]);
|
||||
w3[1] = u8add (w3[1], esalt_bufs[salt_pos].keyfile_buf[13]);
|
||||
w3[2] = u8add (w3[2], esalt_bufs[salt_pos].keyfile_buf[14]);
|
||||
w3[3] = u8add (w3[3], esalt_bufs[salt_pos].keyfile_buf[15]);
|
||||
w0[0] = u8add (w0[0], esalt_bufs[digests_offset].keyfile_buf[ 0]);
|
||||
w0[1] = u8add (w0[1], esalt_bufs[digests_offset].keyfile_buf[ 1]);
|
||||
w0[2] = u8add (w0[2], esalt_bufs[digests_offset].keyfile_buf[ 2]);
|
||||
w0[3] = u8add (w0[3], esalt_bufs[digests_offset].keyfile_buf[ 3]);
|
||||
w1[0] = u8add (w1[0], esalt_bufs[digests_offset].keyfile_buf[ 4]);
|
||||
w1[1] = u8add (w1[1], esalt_bufs[digests_offset].keyfile_buf[ 5]);
|
||||
w1[2] = u8add (w1[2], esalt_bufs[digests_offset].keyfile_buf[ 6]);
|
||||
w1[3] = u8add (w1[3], esalt_bufs[digests_offset].keyfile_buf[ 7]);
|
||||
w2[0] = u8add (w2[0], esalt_bufs[digests_offset].keyfile_buf[ 8]);
|
||||
w2[1] = u8add (w2[1], esalt_bufs[digests_offset].keyfile_buf[ 9]);
|
||||
w2[2] = u8add (w2[2], esalt_bufs[digests_offset].keyfile_buf[10]);
|
||||
w2[3] = u8add (w2[3], esalt_bufs[digests_offset].keyfile_buf[11]);
|
||||
w3[0] = u8add (w3[0], esalt_bufs[digests_offset].keyfile_buf[12]);
|
||||
w3[1] = u8add (w3[1], esalt_bufs[digests_offset].keyfile_buf[13]);
|
||||
w3[2] = u8add (w3[2], esalt_bufs[digests_offset].keyfile_buf[14]);
|
||||
w3[3] = u8add (w3[3], esalt_bufs[digests_offset].keyfile_buf[15]);
|
||||
|
||||
/**
|
||||
* salt
|
||||
@ -431,22 +431,22 @@ __kernel void m06212_init (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
|
||||
u32 salt_buf1[16];
|
||||
|
||||
salt_buf1[ 0] = esalt_bufs[salt_pos].salt_buf[ 0];
|
||||
salt_buf1[ 1] = esalt_bufs[salt_pos].salt_buf[ 1];
|
||||
salt_buf1[ 2] = esalt_bufs[salt_pos].salt_buf[ 2];
|
||||
salt_buf1[ 3] = esalt_bufs[salt_pos].salt_buf[ 3];
|
||||
salt_buf1[ 4] = esalt_bufs[salt_pos].salt_buf[ 4];
|
||||
salt_buf1[ 5] = esalt_bufs[salt_pos].salt_buf[ 5];
|
||||
salt_buf1[ 6] = esalt_bufs[salt_pos].salt_buf[ 6];
|
||||
salt_buf1[ 7] = esalt_bufs[salt_pos].salt_buf[ 7];
|
||||
salt_buf1[ 8] = esalt_bufs[salt_pos].salt_buf[ 8];
|
||||
salt_buf1[ 9] = esalt_bufs[salt_pos].salt_buf[ 9];
|
||||
salt_buf1[10] = esalt_bufs[salt_pos].salt_buf[10];
|
||||
salt_buf1[11] = esalt_bufs[salt_pos].salt_buf[11];
|
||||
salt_buf1[12] = esalt_bufs[salt_pos].salt_buf[12];
|
||||
salt_buf1[13] = esalt_bufs[salt_pos].salt_buf[13];
|
||||
salt_buf1[14] = esalt_bufs[salt_pos].salt_buf[14];
|
||||
salt_buf1[15] = esalt_bufs[salt_pos].salt_buf[15];
|
||||
salt_buf1[ 0] = esalt_bufs[digests_offset].salt_buf[ 0];
|
||||
salt_buf1[ 1] = esalt_bufs[digests_offset].salt_buf[ 1];
|
||||
salt_buf1[ 2] = esalt_bufs[digests_offset].salt_buf[ 2];
|
||||
salt_buf1[ 3] = esalt_bufs[digests_offset].salt_buf[ 3];
|
||||
salt_buf1[ 4] = esalt_bufs[digests_offset].salt_buf[ 4];
|
||||
salt_buf1[ 5] = esalt_bufs[digests_offset].salt_buf[ 5];
|
||||
salt_buf1[ 6] = esalt_bufs[digests_offset].salt_buf[ 6];
|
||||
salt_buf1[ 7] = esalt_bufs[digests_offset].salt_buf[ 7];
|
||||
salt_buf1[ 8] = esalt_bufs[digests_offset].salt_buf[ 8];
|
||||
salt_buf1[ 9] = esalt_bufs[digests_offset].salt_buf[ 9];
|
||||
salt_buf1[10] = esalt_bufs[digests_offset].salt_buf[10];
|
||||
salt_buf1[11] = esalt_bufs[digests_offset].salt_buf[11];
|
||||
salt_buf1[12] = esalt_bufs[digests_offset].salt_buf[12];
|
||||
salt_buf1[13] = esalt_bufs[digests_offset].salt_buf[13];
|
||||
salt_buf1[14] = esalt_bufs[digests_offset].salt_buf[14];
|
||||
salt_buf1[15] = esalt_bufs[digests_offset].salt_buf[15];
|
||||
|
||||
u32 salt_buf2[16];
|
||||
|
||||
|
@ -408,22 +408,22 @@ __kernel void m06213_init (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
* keyfile
|
||||
*/
|
||||
|
||||
w0[0] = u8add (w0[0], esalt_bufs[salt_pos].keyfile_buf[ 0]);
|
||||
w0[1] = u8add (w0[1], esalt_bufs[salt_pos].keyfile_buf[ 1]);
|
||||
w0[2] = u8add (w0[2], esalt_bufs[salt_pos].keyfile_buf[ 2]);
|
||||
w0[3] = u8add (w0[3], esalt_bufs[salt_pos].keyfile_buf[ 3]);
|
||||
w1[0] = u8add (w1[0], esalt_bufs[salt_pos].keyfile_buf[ 4]);
|
||||
w1[1] = u8add (w1[1], esalt_bufs[salt_pos].keyfile_buf[ 5]);
|
||||
w1[2] = u8add (w1[2], esalt_bufs[salt_pos].keyfile_buf[ 6]);
|
||||
w1[3] = u8add (w1[3], esalt_bufs[salt_pos].keyfile_buf[ 7]);
|
||||
w2[0] = u8add (w2[0], esalt_bufs[salt_pos].keyfile_buf[ 8]);
|
||||
w2[1] = u8add (w2[1], esalt_bufs[salt_pos].keyfile_buf[ 9]);
|
||||
w2[2] = u8add (w2[2], esalt_bufs[salt_pos].keyfile_buf[10]);
|
||||
w2[3] = u8add (w2[3], esalt_bufs[salt_pos].keyfile_buf[11]);
|
||||
w3[0] = u8add (w3[0], esalt_bufs[salt_pos].keyfile_buf[12]);
|
||||
w3[1] = u8add (w3[1], esalt_bufs[salt_pos].keyfile_buf[13]);
|
||||
w3[2] = u8add (w3[2], esalt_bufs[salt_pos].keyfile_buf[14]);
|
||||
w3[3] = u8add (w3[3], esalt_bufs[salt_pos].keyfile_buf[15]);
|
||||
w0[0] = u8add (w0[0], esalt_bufs[digests_offset].keyfile_buf[ 0]);
|
||||
w0[1] = u8add (w0[1], esalt_bufs[digests_offset].keyfile_buf[ 1]);
|
||||
w0[2] = u8add (w0[2], esalt_bufs[digests_offset].keyfile_buf[ 2]);
|
||||
w0[3] = u8add (w0[3], esalt_bufs[digests_offset].keyfile_buf[ 3]);
|
||||
w1[0] = u8add (w1[0], esalt_bufs[digests_offset].keyfile_buf[ 4]);
|
||||
w1[1] = u8add (w1[1], esalt_bufs[digests_offset].keyfile_buf[ 5]);
|
||||
w1[2] = u8add (w1[2], esalt_bufs[digests_offset].keyfile_buf[ 6]);
|
||||
w1[3] = u8add (w1[3], esalt_bufs[digests_offset].keyfile_buf[ 7]);
|
||||
w2[0] = u8add (w2[0], esalt_bufs[digests_offset].keyfile_buf[ 8]);
|
||||
w2[1] = u8add (w2[1], esalt_bufs[digests_offset].keyfile_buf[ 9]);
|
||||
w2[2] = u8add (w2[2], esalt_bufs[digests_offset].keyfile_buf[10]);
|
||||
w2[3] = u8add (w2[3], esalt_bufs[digests_offset].keyfile_buf[11]);
|
||||
w3[0] = u8add (w3[0], esalt_bufs[digests_offset].keyfile_buf[12]);
|
||||
w3[1] = u8add (w3[1], esalt_bufs[digests_offset].keyfile_buf[13]);
|
||||
w3[2] = u8add (w3[2], esalt_bufs[digests_offset].keyfile_buf[14]);
|
||||
w3[3] = u8add (w3[3], esalt_bufs[digests_offset].keyfile_buf[15]);
|
||||
|
||||
/**
|
||||
* salt
|
||||
@ -431,22 +431,22 @@ __kernel void m06213_init (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
|
||||
u32 salt_buf1[16];
|
||||
|
||||
salt_buf1[ 0] = esalt_bufs[salt_pos].salt_buf[ 0];
|
||||
salt_buf1[ 1] = esalt_bufs[salt_pos].salt_buf[ 1];
|
||||
salt_buf1[ 2] = esalt_bufs[salt_pos].salt_buf[ 2];
|
||||
salt_buf1[ 3] = esalt_bufs[salt_pos].salt_buf[ 3];
|
||||
salt_buf1[ 4] = esalt_bufs[salt_pos].salt_buf[ 4];
|
||||
salt_buf1[ 5] = esalt_bufs[salt_pos].salt_buf[ 5];
|
||||
salt_buf1[ 6] = esalt_bufs[salt_pos].salt_buf[ 6];
|
||||
salt_buf1[ 7] = esalt_bufs[salt_pos].salt_buf[ 7];
|
||||
salt_buf1[ 8] = esalt_bufs[salt_pos].salt_buf[ 8];
|
||||
salt_buf1[ 9] = esalt_bufs[salt_pos].salt_buf[ 9];
|
||||
salt_buf1[10] = esalt_bufs[salt_pos].salt_buf[10];
|
||||
salt_buf1[11] = esalt_bufs[salt_pos].salt_buf[11];
|
||||
salt_buf1[12] = esalt_bufs[salt_pos].salt_buf[12];
|
||||
salt_buf1[13] = esalt_bufs[salt_pos].salt_buf[13];
|
||||
salt_buf1[14] = esalt_bufs[salt_pos].salt_buf[14];
|
||||
salt_buf1[15] = esalt_bufs[salt_pos].salt_buf[15];
|
||||
salt_buf1[ 0] = esalt_bufs[digests_offset].salt_buf[ 0];
|
||||
salt_buf1[ 1] = esalt_bufs[digests_offset].salt_buf[ 1];
|
||||
salt_buf1[ 2] = esalt_bufs[digests_offset].salt_buf[ 2];
|
||||
salt_buf1[ 3] = esalt_bufs[digests_offset].salt_buf[ 3];
|
||||
salt_buf1[ 4] = esalt_bufs[digests_offset].salt_buf[ 4];
|
||||
salt_buf1[ 5] = esalt_bufs[digests_offset].salt_buf[ 5];
|
||||
salt_buf1[ 6] = esalt_bufs[digests_offset].salt_buf[ 6];
|
||||
salt_buf1[ 7] = esalt_bufs[digests_offset].salt_buf[ 7];
|
||||
salt_buf1[ 8] = esalt_bufs[digests_offset].salt_buf[ 8];
|
||||
salt_buf1[ 9] = esalt_bufs[digests_offset].salt_buf[ 9];
|
||||
salt_buf1[10] = esalt_bufs[digests_offset].salt_buf[10];
|
||||
salt_buf1[11] = esalt_bufs[digests_offset].salt_buf[11];
|
||||
salt_buf1[12] = esalt_bufs[digests_offset].salt_buf[12];
|
||||
salt_buf1[13] = esalt_bufs[digests_offset].salt_buf[13];
|
||||
salt_buf1[14] = esalt_bufs[digests_offset].salt_buf[14];
|
||||
salt_buf1[15] = esalt_bufs[digests_offset].salt_buf[15];
|
||||
|
||||
u32 salt_buf2[16];
|
||||
|
||||
|
@ -298,22 +298,22 @@ __kernel void m06221_init (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
* keyfile
|
||||
*/
|
||||
|
||||
w0[0] = u8add (w0[0], esalt_bufs[salt_pos].keyfile_buf[ 0]);
|
||||
w0[1] = u8add (w0[1], esalt_bufs[salt_pos].keyfile_buf[ 1]);
|
||||
w0[2] = u8add (w0[2], esalt_bufs[salt_pos].keyfile_buf[ 2]);
|
||||
w0[3] = u8add (w0[3], esalt_bufs[salt_pos].keyfile_buf[ 3]);
|
||||
w1[0] = u8add (w1[0], esalt_bufs[salt_pos].keyfile_buf[ 4]);
|
||||
w1[1] = u8add (w1[1], esalt_bufs[salt_pos].keyfile_buf[ 5]);
|
||||
w1[2] = u8add (w1[2], esalt_bufs[salt_pos].keyfile_buf[ 6]);
|
||||
w1[3] = u8add (w1[3], esalt_bufs[salt_pos].keyfile_buf[ 7]);
|
||||
w2[0] = u8add (w2[0], esalt_bufs[salt_pos].keyfile_buf[ 8]);
|
||||
w2[1] = u8add (w2[1], esalt_bufs[salt_pos].keyfile_buf[ 9]);
|
||||
w2[2] = u8add (w2[2], esalt_bufs[salt_pos].keyfile_buf[10]);
|
||||
w2[3] = u8add (w2[3], esalt_bufs[salt_pos].keyfile_buf[11]);
|
||||
w3[0] = u8add (w3[0], esalt_bufs[salt_pos].keyfile_buf[12]);
|
||||
w3[1] = u8add (w3[1], esalt_bufs[salt_pos].keyfile_buf[13]);
|
||||
w3[2] = u8add (w3[2], esalt_bufs[salt_pos].keyfile_buf[14]);
|
||||
w3[3] = u8add (w3[3], esalt_bufs[salt_pos].keyfile_buf[15]);
|
||||
w0[0] = u8add (w0[0], esalt_bufs[digests_offset].keyfile_buf[ 0]);
|
||||
w0[1] = u8add (w0[1], esalt_bufs[digests_offset].keyfile_buf[ 1]);
|
||||
w0[2] = u8add (w0[2], esalt_bufs[digests_offset].keyfile_buf[ 2]);
|
||||
w0[3] = u8add (w0[3], esalt_bufs[digests_offset].keyfile_buf[ 3]);
|
||||
w1[0] = u8add (w1[0], esalt_bufs[digests_offset].keyfile_buf[ 4]);
|
||||
w1[1] = u8add (w1[1], esalt_bufs[digests_offset].keyfile_buf[ 5]);
|
||||
w1[2] = u8add (w1[2], esalt_bufs[digests_offset].keyfile_buf[ 6]);
|
||||
w1[3] = u8add (w1[3], esalt_bufs[digests_offset].keyfile_buf[ 7]);
|
||||
w2[0] = u8add (w2[0], esalt_bufs[digests_offset].keyfile_buf[ 8]);
|
||||
w2[1] = u8add (w2[1], esalt_bufs[digests_offset].keyfile_buf[ 9]);
|
||||
w2[2] = u8add (w2[2], esalt_bufs[digests_offset].keyfile_buf[10]);
|
||||
w2[3] = u8add (w2[3], esalt_bufs[digests_offset].keyfile_buf[11]);
|
||||
w3[0] = u8add (w3[0], esalt_bufs[digests_offset].keyfile_buf[12]);
|
||||
w3[1] = u8add (w3[1], esalt_bufs[digests_offset].keyfile_buf[13]);
|
||||
w3[2] = u8add (w3[2], esalt_bufs[digests_offset].keyfile_buf[14]);
|
||||
w3[3] = u8add (w3[3], esalt_bufs[digests_offset].keyfile_buf[15]);
|
||||
|
||||
/**
|
||||
* salt
|
||||
@ -323,14 +323,14 @@ __kernel void m06221_init (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
|
||||
// swap fehlt
|
||||
|
||||
salt_buf[ 0] = ((u64) swap32 (esalt_bufs[salt_pos].salt_buf[ 0])) << 32 | (u64) swap32 (esalt_bufs[salt_pos].salt_buf[ 1]);
|
||||
salt_buf[ 1] = ((u64) swap32 (esalt_bufs[salt_pos].salt_buf[ 2])) << 32 | (u64) swap32 (esalt_bufs[salt_pos].salt_buf[ 3]);
|
||||
salt_buf[ 2] = ((u64) swap32 (esalt_bufs[salt_pos].salt_buf[ 4])) << 32 | (u64) swap32 (esalt_bufs[salt_pos].salt_buf[ 5]);
|
||||
salt_buf[ 3] = ((u64) swap32 (esalt_bufs[salt_pos].salt_buf[ 6])) << 32 | (u64) swap32 (esalt_bufs[salt_pos].salt_buf[ 7]);
|
||||
salt_buf[ 4] = ((u64) swap32 (esalt_bufs[salt_pos].salt_buf[ 8])) << 32 | (u64) swap32 (esalt_bufs[salt_pos].salt_buf[ 9]);
|
||||
salt_buf[ 5] = ((u64) swap32 (esalt_bufs[salt_pos].salt_buf[10])) << 32 | (u64) swap32 (esalt_bufs[salt_pos].salt_buf[11]);
|
||||
salt_buf[ 6] = ((u64) swap32 (esalt_bufs[salt_pos].salt_buf[12])) << 32 | (u64) swap32 (esalt_bufs[salt_pos].salt_buf[13]);
|
||||
salt_buf[ 7] = ((u64) swap32 (esalt_bufs[salt_pos].salt_buf[14])) << 32 | (u64) swap32 (esalt_bufs[salt_pos].salt_buf[15]);
|
||||
salt_buf[ 0] = ((u64) swap32 (esalt_bufs[digests_offset].salt_buf[ 0])) << 32 | (u64) swap32 (esalt_bufs[digests_offset].salt_buf[ 1]);
|
||||
salt_buf[ 1] = ((u64) swap32 (esalt_bufs[digests_offset].salt_buf[ 2])) << 32 | (u64) swap32 (esalt_bufs[digests_offset].salt_buf[ 3]);
|
||||
salt_buf[ 2] = ((u64) swap32 (esalt_bufs[digests_offset].salt_buf[ 4])) << 32 | (u64) swap32 (esalt_bufs[digests_offset].salt_buf[ 5]);
|
||||
salt_buf[ 3] = ((u64) swap32 (esalt_bufs[digests_offset].salt_buf[ 6])) << 32 | (u64) swap32 (esalt_bufs[digests_offset].salt_buf[ 7]);
|
||||
salt_buf[ 4] = ((u64) swap32 (esalt_bufs[digests_offset].salt_buf[ 8])) << 32 | (u64) swap32 (esalt_bufs[digests_offset].salt_buf[ 9]);
|
||||
salt_buf[ 5] = ((u64) swap32 (esalt_bufs[digests_offset].salt_buf[10])) << 32 | (u64) swap32 (esalt_bufs[digests_offset].salt_buf[11]);
|
||||
salt_buf[ 6] = ((u64) swap32 (esalt_bufs[digests_offset].salt_buf[12])) << 32 | (u64) swap32 (esalt_bufs[digests_offset].salt_buf[13]);
|
||||
salt_buf[ 7] = ((u64) swap32 (esalt_bufs[digests_offset].salt_buf[14])) << 32 | (u64) swap32 (esalt_bufs[digests_offset].salt_buf[15]);
|
||||
salt_buf[ 8] = 0;
|
||||
salt_buf[ 9] = 0;
|
||||
salt_buf[10] = 0;
|
||||
|
@ -298,22 +298,22 @@ __kernel void m06222_init (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
* keyfile
|
||||
*/
|
||||
|
||||
w0[0] = u8add (w0[0], esalt_bufs[salt_pos].keyfile_buf[ 0]);
|
||||
w0[1] = u8add (w0[1], esalt_bufs[salt_pos].keyfile_buf[ 1]);
|
||||
w0[2] = u8add (w0[2], esalt_bufs[salt_pos].keyfile_buf[ 2]);
|
||||
w0[3] = u8add (w0[3], esalt_bufs[salt_pos].keyfile_buf[ 3]);
|
||||
w1[0] = u8add (w1[0], esalt_bufs[salt_pos].keyfile_buf[ 4]);
|
||||
w1[1] = u8add (w1[1], esalt_bufs[salt_pos].keyfile_buf[ 5]);
|
||||
w1[2] = u8add (w1[2], esalt_bufs[salt_pos].keyfile_buf[ 6]);
|
||||
w1[3] = u8add (w1[3], esalt_bufs[salt_pos].keyfile_buf[ 7]);
|
||||
w2[0] = u8add (w2[0], esalt_bufs[salt_pos].keyfile_buf[ 8]);
|
||||
w2[1] = u8add (w2[1], esalt_bufs[salt_pos].keyfile_buf[ 9]);
|
||||
w2[2] = u8add (w2[2], esalt_bufs[salt_pos].keyfile_buf[10]);
|
||||
w2[3] = u8add (w2[3], esalt_bufs[salt_pos].keyfile_buf[11]);
|
||||
w3[0] = u8add (w3[0], esalt_bufs[salt_pos].keyfile_buf[12]);
|
||||
w3[1] = u8add (w3[1], esalt_bufs[salt_pos].keyfile_buf[13]);
|
||||
w3[2] = u8add (w3[2], esalt_bufs[salt_pos].keyfile_buf[14]);
|
||||
w3[3] = u8add (w3[3], esalt_bufs[salt_pos].keyfile_buf[15]);
|
||||
w0[0] = u8add (w0[0], esalt_bufs[digests_offset].keyfile_buf[ 0]);
|
||||
w0[1] = u8add (w0[1], esalt_bufs[digests_offset].keyfile_buf[ 1]);
|
||||
w0[2] = u8add (w0[2], esalt_bufs[digests_offset].keyfile_buf[ 2]);
|
||||
w0[3] = u8add (w0[3], esalt_bufs[digests_offset].keyfile_buf[ 3]);
|
||||
w1[0] = u8add (w1[0], esalt_bufs[digests_offset].keyfile_buf[ 4]);
|
||||
w1[1] = u8add (w1[1], esalt_bufs[digests_offset].keyfile_buf[ 5]);
|
||||
w1[2] = u8add (w1[2], esalt_bufs[digests_offset].keyfile_buf[ 6]);
|
||||
w1[3] = u8add (w1[3], esalt_bufs[digests_offset].keyfile_buf[ 7]);
|
||||
w2[0] = u8add (w2[0], esalt_bufs[digests_offset].keyfile_buf[ 8]);
|
||||
w2[1] = u8add (w2[1], esalt_bufs[digests_offset].keyfile_buf[ 9]);
|
||||
w2[2] = u8add (w2[2], esalt_bufs[digests_offset].keyfile_buf[10]);
|
||||
w2[3] = u8add (w2[3], esalt_bufs[digests_offset].keyfile_buf[11]);
|
||||
w3[0] = u8add (w3[0], esalt_bufs[digests_offset].keyfile_buf[12]);
|
||||
w3[1] = u8add (w3[1], esalt_bufs[digests_offset].keyfile_buf[13]);
|
||||
w3[2] = u8add (w3[2], esalt_bufs[digests_offset].keyfile_buf[14]);
|
||||
w3[3] = u8add (w3[3], esalt_bufs[digests_offset].keyfile_buf[15]);
|
||||
|
||||
/**
|
||||
* salt
|
||||
@ -323,14 +323,14 @@ __kernel void m06222_init (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
|
||||
// swap fehlt
|
||||
|
||||
salt_buf[ 0] = ((u64) swap32 (esalt_bufs[salt_pos].salt_buf[ 0])) << 32 | (u64) swap32 (esalt_bufs[salt_pos].salt_buf[ 1]);
|
||||
salt_buf[ 1] = ((u64) swap32 (esalt_bufs[salt_pos].salt_buf[ 2])) << 32 | (u64) swap32 (esalt_bufs[salt_pos].salt_buf[ 3]);
|
||||
salt_buf[ 2] = ((u64) swap32 (esalt_bufs[salt_pos].salt_buf[ 4])) << 32 | (u64) swap32 (esalt_bufs[salt_pos].salt_buf[ 5]);
|
||||
salt_buf[ 3] = ((u64) swap32 (esalt_bufs[salt_pos].salt_buf[ 6])) << 32 | (u64) swap32 (esalt_bufs[salt_pos].salt_buf[ 7]);
|
||||
salt_buf[ 4] = ((u64) swap32 (esalt_bufs[salt_pos].salt_buf[ 8])) << 32 | (u64) swap32 (esalt_bufs[salt_pos].salt_buf[ 9]);
|
||||
salt_buf[ 5] = ((u64) swap32 (esalt_bufs[salt_pos].salt_buf[10])) << 32 | (u64) swap32 (esalt_bufs[salt_pos].salt_buf[11]);
|
||||
salt_buf[ 6] = ((u64) swap32 (esalt_bufs[salt_pos].salt_buf[12])) << 32 | (u64) swap32 (esalt_bufs[salt_pos].salt_buf[13]);
|
||||
salt_buf[ 7] = ((u64) swap32 (esalt_bufs[salt_pos].salt_buf[14])) << 32 | (u64) swap32 (esalt_bufs[salt_pos].salt_buf[15]);
|
||||
salt_buf[ 0] = ((u64) swap32 (esalt_bufs[digests_offset].salt_buf[ 0])) << 32 | (u64) swap32 (esalt_bufs[digests_offset].salt_buf[ 1]);
|
||||
salt_buf[ 1] = ((u64) swap32 (esalt_bufs[digests_offset].salt_buf[ 2])) << 32 | (u64) swap32 (esalt_bufs[digests_offset].salt_buf[ 3]);
|
||||
salt_buf[ 2] = ((u64) swap32 (esalt_bufs[digests_offset].salt_buf[ 4])) << 32 | (u64) swap32 (esalt_bufs[digests_offset].salt_buf[ 5]);
|
||||
salt_buf[ 3] = ((u64) swap32 (esalt_bufs[digests_offset].salt_buf[ 6])) << 32 | (u64) swap32 (esalt_bufs[digests_offset].salt_buf[ 7]);
|
||||
salt_buf[ 4] = ((u64) swap32 (esalt_bufs[digests_offset].salt_buf[ 8])) << 32 | (u64) swap32 (esalt_bufs[digests_offset].salt_buf[ 9]);
|
||||
salt_buf[ 5] = ((u64) swap32 (esalt_bufs[digests_offset].salt_buf[10])) << 32 | (u64) swap32 (esalt_bufs[digests_offset].salt_buf[11]);
|
||||
salt_buf[ 6] = ((u64) swap32 (esalt_bufs[digests_offset].salt_buf[12])) << 32 | (u64) swap32 (esalt_bufs[digests_offset].salt_buf[13]);
|
||||
salt_buf[ 7] = ((u64) swap32 (esalt_bufs[digests_offset].salt_buf[14])) << 32 | (u64) swap32 (esalt_bufs[digests_offset].salt_buf[15]);
|
||||
salt_buf[ 8] = 0;
|
||||
salt_buf[ 9] = 0;
|
||||
salt_buf[10] = 0;
|
||||
|
@ -347,22 +347,22 @@ __kernel void m06223_init (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
* keyfile
|
||||
*/
|
||||
|
||||
w0[0] = u8add (w0[0], esalt_bufs[salt_pos].keyfile_buf[ 0]);
|
||||
w0[1] = u8add (w0[1], esalt_bufs[salt_pos].keyfile_buf[ 1]);
|
||||
w0[2] = u8add (w0[2], esalt_bufs[salt_pos].keyfile_buf[ 2]);
|
||||
w0[3] = u8add (w0[3], esalt_bufs[salt_pos].keyfile_buf[ 3]);
|
||||
w1[0] = u8add (w1[0], esalt_bufs[salt_pos].keyfile_buf[ 4]);
|
||||
w1[1] = u8add (w1[1], esalt_bufs[salt_pos].keyfile_buf[ 5]);
|
||||
w1[2] = u8add (w1[2], esalt_bufs[salt_pos].keyfile_buf[ 6]);
|
||||
w1[3] = u8add (w1[3], esalt_bufs[salt_pos].keyfile_buf[ 7]);
|
||||
w2[0] = u8add (w2[0], esalt_bufs[salt_pos].keyfile_buf[ 8]);
|
||||
w2[1] = u8add (w2[1], esalt_bufs[salt_pos].keyfile_buf[ 9]);
|
||||
w2[2] = u8add (w2[2], esalt_bufs[salt_pos].keyfile_buf[10]);
|
||||
w2[3] = u8add (w2[3], esalt_bufs[salt_pos].keyfile_buf[11]);
|
||||
w3[0] = u8add (w3[0], esalt_bufs[salt_pos].keyfile_buf[12]);
|
||||
w3[1] = u8add (w3[1], esalt_bufs[salt_pos].keyfile_buf[13]);
|
||||
w3[2] = u8add (w3[2], esalt_bufs[salt_pos].keyfile_buf[14]);
|
||||
w3[3] = u8add (w3[3], esalt_bufs[salt_pos].keyfile_buf[15]);
|
||||
w0[0] = u8add (w0[0], esalt_bufs[digests_offset].keyfile_buf[ 0]);
|
||||
w0[1] = u8add (w0[1], esalt_bufs[digests_offset].keyfile_buf[ 1]);
|
||||
w0[2] = u8add (w0[2], esalt_bufs[digests_offset].keyfile_buf[ 2]);
|
||||
w0[3] = u8add (w0[3], esalt_bufs[digests_offset].keyfile_buf[ 3]);
|
||||
w1[0] = u8add (w1[0], esalt_bufs[digests_offset].keyfile_buf[ 4]);
|
||||
w1[1] = u8add (w1[1], esalt_bufs[digests_offset].keyfile_buf[ 5]);
|
||||
w1[2] = u8add (w1[2], esalt_bufs[digests_offset].keyfile_buf[ 6]);
|
||||
w1[3] = u8add (w1[3], esalt_bufs[digests_offset].keyfile_buf[ 7]);
|
||||
w2[0] = u8add (w2[0], esalt_bufs[digests_offset].keyfile_buf[ 8]);
|
||||
w2[1] = u8add (w2[1], esalt_bufs[digests_offset].keyfile_buf[ 9]);
|
||||
w2[2] = u8add (w2[2], esalt_bufs[digests_offset].keyfile_buf[10]);
|
||||
w2[3] = u8add (w2[3], esalt_bufs[digests_offset].keyfile_buf[11]);
|
||||
w3[0] = u8add (w3[0], esalt_bufs[digests_offset].keyfile_buf[12]);
|
||||
w3[1] = u8add (w3[1], esalt_bufs[digests_offset].keyfile_buf[13]);
|
||||
w3[2] = u8add (w3[2], esalt_bufs[digests_offset].keyfile_buf[14]);
|
||||
w3[3] = u8add (w3[3], esalt_bufs[digests_offset].keyfile_buf[15]);
|
||||
|
||||
/**
|
||||
* salt
|
||||
@ -372,14 +372,14 @@ __kernel void m06223_init (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
|
||||
// swap fehlt
|
||||
|
||||
salt_buf[ 0] = ((u64) swap32 (esalt_bufs[salt_pos].salt_buf[ 0])) << 32 | (u64) swap32 (esalt_bufs[salt_pos].salt_buf[ 1]);
|
||||
salt_buf[ 1] = ((u64) swap32 (esalt_bufs[salt_pos].salt_buf[ 2])) << 32 | (u64) swap32 (esalt_bufs[salt_pos].salt_buf[ 3]);
|
||||
salt_buf[ 2] = ((u64) swap32 (esalt_bufs[salt_pos].salt_buf[ 4])) << 32 | (u64) swap32 (esalt_bufs[salt_pos].salt_buf[ 5]);
|
||||
salt_buf[ 3] = ((u64) swap32 (esalt_bufs[salt_pos].salt_buf[ 6])) << 32 | (u64) swap32 (esalt_bufs[salt_pos].salt_buf[ 7]);
|
||||
salt_buf[ 4] = ((u64) swap32 (esalt_bufs[salt_pos].salt_buf[ 8])) << 32 | (u64) swap32 (esalt_bufs[salt_pos].salt_buf[ 9]);
|
||||
salt_buf[ 5] = ((u64) swap32 (esalt_bufs[salt_pos].salt_buf[10])) << 32 | (u64) swap32 (esalt_bufs[salt_pos].salt_buf[11]);
|
||||
salt_buf[ 6] = ((u64) swap32 (esalt_bufs[salt_pos].salt_buf[12])) << 32 | (u64) swap32 (esalt_bufs[salt_pos].salt_buf[13]);
|
||||
salt_buf[ 7] = ((u64) swap32 (esalt_bufs[salt_pos].salt_buf[14])) << 32 | (u64) swap32 (esalt_bufs[salt_pos].salt_buf[15]);
|
||||
salt_buf[ 0] = ((u64) swap32 (esalt_bufs[digests_offset].salt_buf[ 0])) << 32 | (u64) swap32 (esalt_bufs[digests_offset].salt_buf[ 1]);
|
||||
salt_buf[ 1] = ((u64) swap32 (esalt_bufs[digests_offset].salt_buf[ 2])) << 32 | (u64) swap32 (esalt_bufs[digests_offset].salt_buf[ 3]);
|
||||
salt_buf[ 2] = ((u64) swap32 (esalt_bufs[digests_offset].salt_buf[ 4])) << 32 | (u64) swap32 (esalt_bufs[digests_offset].salt_buf[ 5]);
|
||||
salt_buf[ 3] = ((u64) swap32 (esalt_bufs[digests_offset].salt_buf[ 6])) << 32 | (u64) swap32 (esalt_bufs[digests_offset].salt_buf[ 7]);
|
||||
salt_buf[ 4] = ((u64) swap32 (esalt_bufs[digests_offset].salt_buf[ 8])) << 32 | (u64) swap32 (esalt_bufs[digests_offset].salt_buf[ 9]);
|
||||
salt_buf[ 5] = ((u64) swap32 (esalt_bufs[digests_offset].salt_buf[10])) << 32 | (u64) swap32 (esalt_bufs[digests_offset].salt_buf[11]);
|
||||
salt_buf[ 6] = ((u64) swap32 (esalt_bufs[digests_offset].salt_buf[12])) << 32 | (u64) swap32 (esalt_bufs[digests_offset].salt_buf[13]);
|
||||
salt_buf[ 7] = ((u64) swap32 (esalt_bufs[digests_offset].salt_buf[14])) << 32 | (u64) swap32 (esalt_bufs[digests_offset].salt_buf[15]);
|
||||
salt_buf[ 8] = 0;
|
||||
salt_buf[ 9] = 0;
|
||||
salt_buf[10] = 0;
|
||||
|
@ -1792,22 +1792,22 @@ __kernel void m06231_init (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
* keyfile
|
||||
*/
|
||||
|
||||
w0[0] = u8add (w0[0], esalt_bufs[salt_pos].keyfile_buf[ 0]);
|
||||
w0[1] = u8add (w0[1], esalt_bufs[salt_pos].keyfile_buf[ 1]);
|
||||
w0[2] = u8add (w0[2], esalt_bufs[salt_pos].keyfile_buf[ 2]);
|
||||
w0[3] = u8add (w0[3], esalt_bufs[salt_pos].keyfile_buf[ 3]);
|
||||
w1[0] = u8add (w1[0], esalt_bufs[salt_pos].keyfile_buf[ 4]);
|
||||
w1[1] = u8add (w1[1], esalt_bufs[salt_pos].keyfile_buf[ 5]);
|
||||
w1[2] = u8add (w1[2], esalt_bufs[salt_pos].keyfile_buf[ 6]);
|
||||
w1[3] = u8add (w1[3], esalt_bufs[salt_pos].keyfile_buf[ 7]);
|
||||
w2[0] = u8add (w2[0], esalt_bufs[salt_pos].keyfile_buf[ 8]);
|
||||
w2[1] = u8add (w2[1], esalt_bufs[salt_pos].keyfile_buf[ 9]);
|
||||
w2[2] = u8add (w2[2], esalt_bufs[salt_pos].keyfile_buf[10]);
|
||||
w2[3] = u8add (w2[3], esalt_bufs[salt_pos].keyfile_buf[11]);
|
||||
w3[0] = u8add (w3[0], esalt_bufs[salt_pos].keyfile_buf[12]);
|
||||
w3[1] = u8add (w3[1], esalt_bufs[salt_pos].keyfile_buf[13]);
|
||||
w3[2] = u8add (w3[2], esalt_bufs[salt_pos].keyfile_buf[14]);
|
||||
w3[3] = u8add (w3[3], esalt_bufs[salt_pos].keyfile_buf[15]);
|
||||
w0[0] = u8add (w0[0], esalt_bufs[digests_offset].keyfile_buf[ 0]);
|
||||
w0[1] = u8add (w0[1], esalt_bufs[digests_offset].keyfile_buf[ 1]);
|
||||
w0[2] = u8add (w0[2], esalt_bufs[digests_offset].keyfile_buf[ 2]);
|
||||
w0[3] = u8add (w0[3], esalt_bufs[digests_offset].keyfile_buf[ 3]);
|
||||
w1[0] = u8add (w1[0], esalt_bufs[digests_offset].keyfile_buf[ 4]);
|
||||
w1[1] = u8add (w1[1], esalt_bufs[digests_offset].keyfile_buf[ 5]);
|
||||
w1[2] = u8add (w1[2], esalt_bufs[digests_offset].keyfile_buf[ 6]);
|
||||
w1[3] = u8add (w1[3], esalt_bufs[digests_offset].keyfile_buf[ 7]);
|
||||
w2[0] = u8add (w2[0], esalt_bufs[digests_offset].keyfile_buf[ 8]);
|
||||
w2[1] = u8add (w2[1], esalt_bufs[digests_offset].keyfile_buf[ 9]);
|
||||
w2[2] = u8add (w2[2], esalt_bufs[digests_offset].keyfile_buf[10]);
|
||||
w2[3] = u8add (w2[3], esalt_bufs[digests_offset].keyfile_buf[11]);
|
||||
w3[0] = u8add (w3[0], esalt_bufs[digests_offset].keyfile_buf[12]);
|
||||
w3[1] = u8add (w3[1], esalt_bufs[digests_offset].keyfile_buf[13]);
|
||||
w3[2] = u8add (w3[2], esalt_bufs[digests_offset].keyfile_buf[14]);
|
||||
w3[3] = u8add (w3[3], esalt_bufs[digests_offset].keyfile_buf[15]);
|
||||
|
||||
/**
|
||||
* salt
|
||||
@ -1815,22 +1815,22 @@ __kernel void m06231_init (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
|
||||
u32 salt_buf1[16];
|
||||
|
||||
salt_buf1[ 0] = swap32 (esalt_bufs[salt_pos].salt_buf[ 0]);
|
||||
salt_buf1[ 1] = swap32 (esalt_bufs[salt_pos].salt_buf[ 1]);
|
||||
salt_buf1[ 2] = swap32 (esalt_bufs[salt_pos].salt_buf[ 2]);
|
||||
salt_buf1[ 3] = swap32 (esalt_bufs[salt_pos].salt_buf[ 3]);
|
||||
salt_buf1[ 4] = swap32 (esalt_bufs[salt_pos].salt_buf[ 4]);
|
||||
salt_buf1[ 5] = swap32 (esalt_bufs[salt_pos].salt_buf[ 5]);
|
||||
salt_buf1[ 6] = swap32 (esalt_bufs[salt_pos].salt_buf[ 6]);
|
||||
salt_buf1[ 7] = swap32 (esalt_bufs[salt_pos].salt_buf[ 7]);
|
||||
salt_buf1[ 8] = swap32 (esalt_bufs[salt_pos].salt_buf[ 8]);
|
||||
salt_buf1[ 9] = swap32 (esalt_bufs[salt_pos].salt_buf[ 9]);
|
||||
salt_buf1[10] = swap32 (esalt_bufs[salt_pos].salt_buf[10]);
|
||||
salt_buf1[11] = swap32 (esalt_bufs[salt_pos].salt_buf[11]);
|
||||
salt_buf1[12] = swap32 (esalt_bufs[salt_pos].salt_buf[12]);
|
||||
salt_buf1[13] = swap32 (esalt_bufs[salt_pos].salt_buf[13]);
|
||||
salt_buf1[14] = swap32 (esalt_bufs[salt_pos].salt_buf[14]);
|
||||
salt_buf1[15] = swap32 (esalt_bufs[salt_pos].salt_buf[15]);
|
||||
salt_buf1[ 0] = swap32 (esalt_bufs[digests_offset].salt_buf[ 0]);
|
||||
salt_buf1[ 1] = swap32 (esalt_bufs[digests_offset].salt_buf[ 1]);
|
||||
salt_buf1[ 2] = swap32 (esalt_bufs[digests_offset].salt_buf[ 2]);
|
||||
salt_buf1[ 3] = swap32 (esalt_bufs[digests_offset].salt_buf[ 3]);
|
||||
salt_buf1[ 4] = swap32 (esalt_bufs[digests_offset].salt_buf[ 4]);
|
||||
salt_buf1[ 5] = swap32 (esalt_bufs[digests_offset].salt_buf[ 5]);
|
||||
salt_buf1[ 6] = swap32 (esalt_bufs[digests_offset].salt_buf[ 6]);
|
||||
salt_buf1[ 7] = swap32 (esalt_bufs[digests_offset].salt_buf[ 7]);
|
||||
salt_buf1[ 8] = swap32 (esalt_bufs[digests_offset].salt_buf[ 8]);
|
||||
salt_buf1[ 9] = swap32 (esalt_bufs[digests_offset].salt_buf[ 9]);
|
||||
salt_buf1[10] = swap32 (esalt_bufs[digests_offset].salt_buf[10]);
|
||||
salt_buf1[11] = swap32 (esalt_bufs[digests_offset].salt_buf[11]);
|
||||
salt_buf1[12] = swap32 (esalt_bufs[digests_offset].salt_buf[12]);
|
||||
salt_buf1[13] = swap32 (esalt_bufs[digests_offset].salt_buf[13]);
|
||||
salt_buf1[14] = swap32 (esalt_bufs[digests_offset].salt_buf[14]);
|
||||
salt_buf1[15] = swap32 (esalt_bufs[digests_offset].salt_buf[15]);
|
||||
|
||||
u32 salt_buf2[16];
|
||||
|
||||
|
@ -1542,22 +1542,22 @@ __kernel void m06232_init (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
* keyfile
|
||||
*/
|
||||
|
||||
w0[0] = u8add (w0[0], esalt_bufs[salt_pos].keyfile_buf[ 0]);
|
||||
w0[1] = u8add (w0[1], esalt_bufs[salt_pos].keyfile_buf[ 1]);
|
||||
w0[2] = u8add (w0[2], esalt_bufs[salt_pos].keyfile_buf[ 2]);
|
||||
w0[3] = u8add (w0[3], esalt_bufs[salt_pos].keyfile_buf[ 3]);
|
||||
w1[0] = u8add (w1[0], esalt_bufs[salt_pos].keyfile_buf[ 4]);
|
||||
w1[1] = u8add (w1[1], esalt_bufs[salt_pos].keyfile_buf[ 5]);
|
||||
w1[2] = u8add (w1[2], esalt_bufs[salt_pos].keyfile_buf[ 6]);
|
||||
w1[3] = u8add (w1[3], esalt_bufs[salt_pos].keyfile_buf[ 7]);
|
||||
w2[0] = u8add (w2[0], esalt_bufs[salt_pos].keyfile_buf[ 8]);
|
||||
w2[1] = u8add (w2[1], esalt_bufs[salt_pos].keyfile_buf[ 9]);
|
||||
w2[2] = u8add (w2[2], esalt_bufs[salt_pos].keyfile_buf[10]);
|
||||
w2[3] = u8add (w2[3], esalt_bufs[salt_pos].keyfile_buf[11]);
|
||||
w3[0] = u8add (w3[0], esalt_bufs[salt_pos].keyfile_buf[12]);
|
||||
w3[1] = u8add (w3[1], esalt_bufs[salt_pos].keyfile_buf[13]);
|
||||
w3[2] = u8add (w3[2], esalt_bufs[salt_pos].keyfile_buf[14]);
|
||||
w3[3] = u8add (w3[3], esalt_bufs[salt_pos].keyfile_buf[15]);
|
||||
w0[0] = u8add (w0[0], esalt_bufs[digests_offset].keyfile_buf[ 0]);
|
||||
w0[1] = u8add (w0[1], esalt_bufs[digests_offset].keyfile_buf[ 1]);
|
||||
w0[2] = u8add (w0[2], esalt_bufs[digests_offset].keyfile_buf[ 2]);
|
||||
w0[3] = u8add (w0[3], esalt_bufs[digests_offset].keyfile_buf[ 3]);
|
||||
w1[0] = u8add (w1[0], esalt_bufs[digests_offset].keyfile_buf[ 4]);
|
||||
w1[1] = u8add (w1[1], esalt_bufs[digests_offset].keyfile_buf[ 5]);
|
||||
w1[2] = u8add (w1[2], esalt_bufs[digests_offset].keyfile_buf[ 6]);
|
||||
w1[3] = u8add (w1[3], esalt_bufs[digests_offset].keyfile_buf[ 7]);
|
||||
w2[0] = u8add (w2[0], esalt_bufs[digests_offset].keyfile_buf[ 8]);
|
||||
w2[1] = u8add (w2[1], esalt_bufs[digests_offset].keyfile_buf[ 9]);
|
||||
w2[2] = u8add (w2[2], esalt_bufs[digests_offset].keyfile_buf[10]);
|
||||
w2[3] = u8add (w2[3], esalt_bufs[digests_offset].keyfile_buf[11]);
|
||||
w3[0] = u8add (w3[0], esalt_bufs[digests_offset].keyfile_buf[12]);
|
||||
w3[1] = u8add (w3[1], esalt_bufs[digests_offset].keyfile_buf[13]);
|
||||
w3[2] = u8add (w3[2], esalt_bufs[digests_offset].keyfile_buf[14]);
|
||||
w3[3] = u8add (w3[3], esalt_bufs[digests_offset].keyfile_buf[15]);
|
||||
|
||||
/**
|
||||
* salt
|
||||
@ -1565,22 +1565,22 @@ __kernel void m06232_init (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
|
||||
u32 salt_buf1[16];
|
||||
|
||||
salt_buf1[ 0] = swap32 (esalt_bufs[salt_pos].salt_buf[ 0]);
|
||||
salt_buf1[ 1] = swap32 (esalt_bufs[salt_pos].salt_buf[ 1]);
|
||||
salt_buf1[ 2] = swap32 (esalt_bufs[salt_pos].salt_buf[ 2]);
|
||||
salt_buf1[ 3] = swap32 (esalt_bufs[salt_pos].salt_buf[ 3]);
|
||||
salt_buf1[ 4] = swap32 (esalt_bufs[salt_pos].salt_buf[ 4]);
|
||||
salt_buf1[ 5] = swap32 (esalt_bufs[salt_pos].salt_buf[ 5]);
|
||||
salt_buf1[ 6] = swap32 (esalt_bufs[salt_pos].salt_buf[ 6]);
|
||||
salt_buf1[ 7] = swap32 (esalt_bufs[salt_pos].salt_buf[ 7]);
|
||||
salt_buf1[ 8] = swap32 (esalt_bufs[salt_pos].salt_buf[ 8]);
|
||||
salt_buf1[ 9] = swap32 (esalt_bufs[salt_pos].salt_buf[ 9]);
|
||||
salt_buf1[10] = swap32 (esalt_bufs[salt_pos].salt_buf[10]);
|
||||
salt_buf1[11] = swap32 (esalt_bufs[salt_pos].salt_buf[11]);
|
||||
salt_buf1[12] = swap32 (esalt_bufs[salt_pos].salt_buf[12]);
|
||||
salt_buf1[13] = swap32 (esalt_bufs[salt_pos].salt_buf[13]);
|
||||
salt_buf1[14] = swap32 (esalt_bufs[salt_pos].salt_buf[14]);
|
||||
salt_buf1[15] = swap32 (esalt_bufs[salt_pos].salt_buf[15]);
|
||||
salt_buf1[ 0] = swap32 (esalt_bufs[digests_offset].salt_buf[ 0]);
|
||||
salt_buf1[ 1] = swap32 (esalt_bufs[digests_offset].salt_buf[ 1]);
|
||||
salt_buf1[ 2] = swap32 (esalt_bufs[digests_offset].salt_buf[ 2]);
|
||||
salt_buf1[ 3] = swap32 (esalt_bufs[digests_offset].salt_buf[ 3]);
|
||||
salt_buf1[ 4] = swap32 (esalt_bufs[digests_offset].salt_buf[ 4]);
|
||||
salt_buf1[ 5] = swap32 (esalt_bufs[digests_offset].salt_buf[ 5]);
|
||||
salt_buf1[ 6] = swap32 (esalt_bufs[digests_offset].salt_buf[ 6]);
|
||||
salt_buf1[ 7] = swap32 (esalt_bufs[digests_offset].salt_buf[ 7]);
|
||||
salt_buf1[ 8] = swap32 (esalt_bufs[digests_offset].salt_buf[ 8]);
|
||||
salt_buf1[ 9] = swap32 (esalt_bufs[digests_offset].salt_buf[ 9]);
|
||||
salt_buf1[10] = swap32 (esalt_bufs[digests_offset].salt_buf[10]);
|
||||
salt_buf1[11] = swap32 (esalt_bufs[digests_offset].salt_buf[11]);
|
||||
salt_buf1[12] = swap32 (esalt_bufs[digests_offset].salt_buf[12]);
|
||||
salt_buf1[13] = swap32 (esalt_bufs[digests_offset].salt_buf[13]);
|
||||
salt_buf1[14] = swap32 (esalt_bufs[digests_offset].salt_buf[14]);
|
||||
salt_buf1[15] = swap32 (esalt_bufs[digests_offset].salt_buf[15]);
|
||||
|
||||
u32 salt_buf2[16];
|
||||
|
||||
|
@ -1542,22 +1542,22 @@ __kernel void m06233_init (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
* keyfile
|
||||
*/
|
||||
|
||||
w0[0] = u8add (w0[0], esalt_bufs[salt_pos].keyfile_buf[ 0]);
|
||||
w0[1] = u8add (w0[1], esalt_bufs[salt_pos].keyfile_buf[ 1]);
|
||||
w0[2] = u8add (w0[2], esalt_bufs[salt_pos].keyfile_buf[ 2]);
|
||||
w0[3] = u8add (w0[3], esalt_bufs[salt_pos].keyfile_buf[ 3]);
|
||||
w1[0] = u8add (w1[0], esalt_bufs[salt_pos].keyfile_buf[ 4]);
|
||||
w1[1] = u8add (w1[1], esalt_bufs[salt_pos].keyfile_buf[ 5]);
|
||||
w1[2] = u8add (w1[2], esalt_bufs[salt_pos].keyfile_buf[ 6]);
|
||||
w1[3] = u8add (w1[3], esalt_bufs[salt_pos].keyfile_buf[ 7]);
|
||||
w2[0] = u8add (w2[0], esalt_bufs[salt_pos].keyfile_buf[ 8]);
|
||||
w2[1] = u8add (w2[1], esalt_bufs[salt_pos].keyfile_buf[ 9]);
|
||||
w2[2] = u8add (w2[2], esalt_bufs[salt_pos].keyfile_buf[10]);
|
||||
w2[3] = u8add (w2[3], esalt_bufs[salt_pos].keyfile_buf[11]);
|
||||
w3[0] = u8add (w3[0], esalt_bufs[salt_pos].keyfile_buf[12]);
|
||||
w3[1] = u8add (w3[1], esalt_bufs[salt_pos].keyfile_buf[13]);
|
||||
w3[2] = u8add (w3[2], esalt_bufs[salt_pos].keyfile_buf[14]);
|
||||
w3[3] = u8add (w3[3], esalt_bufs[salt_pos].keyfile_buf[15]);
|
||||
w0[0] = u8add (w0[0], esalt_bufs[digests_offset].keyfile_buf[ 0]);
|
||||
w0[1] = u8add (w0[1], esalt_bufs[digests_offset].keyfile_buf[ 1]);
|
||||
w0[2] = u8add (w0[2], esalt_bufs[digests_offset].keyfile_buf[ 2]);
|
||||
w0[3] = u8add (w0[3], esalt_bufs[digests_offset].keyfile_buf[ 3]);
|
||||
w1[0] = u8add (w1[0], esalt_bufs[digests_offset].keyfile_buf[ 4]);
|
||||
w1[1] = u8add (w1[1], esalt_bufs[digests_offset].keyfile_buf[ 5]);
|
||||
w1[2] = u8add (w1[2], esalt_bufs[digests_offset].keyfile_buf[ 6]);
|
||||
w1[3] = u8add (w1[3], esalt_bufs[digests_offset].keyfile_buf[ 7]);
|
||||
w2[0] = u8add (w2[0], esalt_bufs[digests_offset].keyfile_buf[ 8]);
|
||||
w2[1] = u8add (w2[1], esalt_bufs[digests_offset].keyfile_buf[ 9]);
|
||||
w2[2] = u8add (w2[2], esalt_bufs[digests_offset].keyfile_buf[10]);
|
||||
w2[3] = u8add (w2[3], esalt_bufs[digests_offset].keyfile_buf[11]);
|
||||
w3[0] = u8add (w3[0], esalt_bufs[digests_offset].keyfile_buf[12]);
|
||||
w3[1] = u8add (w3[1], esalt_bufs[digests_offset].keyfile_buf[13]);
|
||||
w3[2] = u8add (w3[2], esalt_bufs[digests_offset].keyfile_buf[14]);
|
||||
w3[3] = u8add (w3[3], esalt_bufs[digests_offset].keyfile_buf[15]);
|
||||
|
||||
/**
|
||||
* salt
|
||||
@ -1565,22 +1565,22 @@ __kernel void m06233_init (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
|
||||
u32 salt_buf1[16];
|
||||
|
||||
salt_buf1[ 0] = swap32 (esalt_bufs[salt_pos].salt_buf[ 0]);
|
||||
salt_buf1[ 1] = swap32 (esalt_bufs[salt_pos].salt_buf[ 1]);
|
||||
salt_buf1[ 2] = swap32 (esalt_bufs[salt_pos].salt_buf[ 2]);
|
||||
salt_buf1[ 3] = swap32 (esalt_bufs[salt_pos].salt_buf[ 3]);
|
||||
salt_buf1[ 4] = swap32 (esalt_bufs[salt_pos].salt_buf[ 4]);
|
||||
salt_buf1[ 5] = swap32 (esalt_bufs[salt_pos].salt_buf[ 5]);
|
||||
salt_buf1[ 6] = swap32 (esalt_bufs[salt_pos].salt_buf[ 6]);
|
||||
salt_buf1[ 7] = swap32 (esalt_bufs[salt_pos].salt_buf[ 7]);
|
||||
salt_buf1[ 8] = swap32 (esalt_bufs[salt_pos].salt_buf[ 8]);
|
||||
salt_buf1[ 9] = swap32 (esalt_bufs[salt_pos].salt_buf[ 9]);
|
||||
salt_buf1[10] = swap32 (esalt_bufs[salt_pos].salt_buf[10]);
|
||||
salt_buf1[11] = swap32 (esalt_bufs[salt_pos].salt_buf[11]);
|
||||
salt_buf1[12] = swap32 (esalt_bufs[salt_pos].salt_buf[12]);
|
||||
salt_buf1[13] = swap32 (esalt_bufs[salt_pos].salt_buf[13]);
|
||||
salt_buf1[14] = swap32 (esalt_bufs[salt_pos].salt_buf[14]);
|
||||
salt_buf1[15] = swap32 (esalt_bufs[salt_pos].salt_buf[15]);
|
||||
salt_buf1[ 0] = swap32 (esalt_bufs[digests_offset].salt_buf[ 0]);
|
||||
salt_buf1[ 1] = swap32 (esalt_bufs[digests_offset].salt_buf[ 1]);
|
||||
salt_buf1[ 2] = swap32 (esalt_bufs[digests_offset].salt_buf[ 2]);
|
||||
salt_buf1[ 3] = swap32 (esalt_bufs[digests_offset].salt_buf[ 3]);
|
||||
salt_buf1[ 4] = swap32 (esalt_bufs[digests_offset].salt_buf[ 4]);
|
||||
salt_buf1[ 5] = swap32 (esalt_bufs[digests_offset].salt_buf[ 5]);
|
||||
salt_buf1[ 6] = swap32 (esalt_bufs[digests_offset].salt_buf[ 6]);
|
||||
salt_buf1[ 7] = swap32 (esalt_bufs[digests_offset].salt_buf[ 7]);
|
||||
salt_buf1[ 8] = swap32 (esalt_bufs[digests_offset].salt_buf[ 8]);
|
||||
salt_buf1[ 9] = swap32 (esalt_bufs[digests_offset].salt_buf[ 9]);
|
||||
salt_buf1[10] = swap32 (esalt_bufs[digests_offset].salt_buf[10]);
|
||||
salt_buf1[11] = swap32 (esalt_bufs[digests_offset].salt_buf[11]);
|
||||
salt_buf1[12] = swap32 (esalt_bufs[digests_offset].salt_buf[12]);
|
||||
salt_buf1[13] = swap32 (esalt_bufs[digests_offset].salt_buf[13]);
|
||||
salt_buf1[14] = swap32 (esalt_bufs[digests_offset].salt_buf[14]);
|
||||
salt_buf1[15] = swap32 (esalt_bufs[digests_offset].salt_buf[15]);
|
||||
|
||||
u32 salt_buf2[16];
|
||||
|
||||
|
@ -520,20 +520,20 @@ __kernel void m07100_init (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
|
||||
u32 salt_len = salt_bufs[salt_pos].salt_len;
|
||||
|
||||
esalt_buf[ 0] = hl32_to_64_S (swap32_S (esalt_bufs[salt_pos].salt_buf[ 0]), swap32_S (esalt_bufs[salt_pos].salt_buf[ 1]));
|
||||
esalt_buf[ 1] = hl32_to_64_S (swap32_S (esalt_bufs[salt_pos].salt_buf[ 2]), swap32_S (esalt_bufs[salt_pos].salt_buf[ 3]));
|
||||
esalt_buf[ 2] = hl32_to_64_S (swap32_S (esalt_bufs[salt_pos].salt_buf[ 4]), swap32_S (esalt_bufs[salt_pos].salt_buf[ 5]));
|
||||
esalt_buf[ 3] = hl32_to_64_S (swap32_S (esalt_bufs[salt_pos].salt_buf[ 6]), swap32_S (esalt_bufs[salt_pos].salt_buf[ 7]));
|
||||
esalt_buf[ 4] = hl32_to_64_S (swap32_S (esalt_bufs[salt_pos].salt_buf[ 8]), swap32_S (esalt_bufs[salt_pos].salt_buf[ 9]));
|
||||
esalt_buf[ 5] = hl32_to_64_S (swap32_S (esalt_bufs[salt_pos].salt_buf[10]), swap32_S (esalt_bufs[salt_pos].salt_buf[11]));
|
||||
esalt_buf[ 6] = hl32_to_64_S (swap32_S (esalt_bufs[salt_pos].salt_buf[12]), swap32_S (esalt_bufs[salt_pos].salt_buf[13]));
|
||||
esalt_buf[ 7] = hl32_to_64_S (swap32_S (esalt_bufs[salt_pos].salt_buf[14]), swap32_S (esalt_bufs[salt_pos].salt_buf[15]));
|
||||
esalt_buf[ 8] = hl32_to_64_S (swap32_S (esalt_bufs[salt_pos].salt_buf[16]), swap32_S (esalt_bufs[salt_pos].salt_buf[17]));
|
||||
esalt_buf[ 9] = hl32_to_64_S (swap32_S (esalt_bufs[salt_pos].salt_buf[18]), swap32_S (esalt_bufs[salt_pos].salt_buf[19]));
|
||||
esalt_buf[10] = hl32_to_64_S (swap32_S (esalt_bufs[salt_pos].salt_buf[20]), swap32_S (esalt_bufs[salt_pos].salt_buf[21]));
|
||||
esalt_buf[11] = hl32_to_64_S (swap32_S (esalt_bufs[salt_pos].salt_buf[22]), swap32_S (esalt_bufs[salt_pos].salt_buf[23]));
|
||||
esalt_buf[12] = hl32_to_64_S (swap32_S (esalt_bufs[salt_pos].salt_buf[24]), swap32_S (esalt_bufs[salt_pos].salt_buf[25]));
|
||||
esalt_buf[13] = hl32_to_64_S (swap32_S (esalt_bufs[salt_pos].salt_buf[26]), swap32_S (esalt_bufs[salt_pos].salt_buf[27]));
|
||||
esalt_buf[ 0] = hl32_to_64_S (swap32_S (esalt_bufs[digests_offset].salt_buf[ 0]), swap32_S (esalt_bufs[digests_offset].salt_buf[ 1]));
|
||||
esalt_buf[ 1] = hl32_to_64_S (swap32_S (esalt_bufs[digests_offset].salt_buf[ 2]), swap32_S (esalt_bufs[digests_offset].salt_buf[ 3]));
|
||||
esalt_buf[ 2] = hl32_to_64_S (swap32_S (esalt_bufs[digests_offset].salt_buf[ 4]), swap32_S (esalt_bufs[digests_offset].salt_buf[ 5]));
|
||||
esalt_buf[ 3] = hl32_to_64_S (swap32_S (esalt_bufs[digests_offset].salt_buf[ 6]), swap32_S (esalt_bufs[digests_offset].salt_buf[ 7]));
|
||||
esalt_buf[ 4] = hl32_to_64_S (swap32_S (esalt_bufs[digests_offset].salt_buf[ 8]), swap32_S (esalt_bufs[digests_offset].salt_buf[ 9]));
|
||||
esalt_buf[ 5] = hl32_to_64_S (swap32_S (esalt_bufs[digests_offset].salt_buf[10]), swap32_S (esalt_bufs[digests_offset].salt_buf[11]));
|
||||
esalt_buf[ 6] = hl32_to_64_S (swap32_S (esalt_bufs[digests_offset].salt_buf[12]), swap32_S (esalt_bufs[digests_offset].salt_buf[13]));
|
||||
esalt_buf[ 7] = hl32_to_64_S (swap32_S (esalt_bufs[digests_offset].salt_buf[14]), swap32_S (esalt_bufs[digests_offset].salt_buf[15]));
|
||||
esalt_buf[ 8] = hl32_to_64_S (swap32_S (esalt_bufs[digests_offset].salt_buf[16]), swap32_S (esalt_bufs[digests_offset].salt_buf[17]));
|
||||
esalt_buf[ 9] = hl32_to_64_S (swap32_S (esalt_bufs[digests_offset].salt_buf[18]), swap32_S (esalt_bufs[digests_offset].salt_buf[19]));
|
||||
esalt_buf[10] = hl32_to_64_S (swap32_S (esalt_bufs[digests_offset].salt_buf[20]), swap32_S (esalt_bufs[digests_offset].salt_buf[21]));
|
||||
esalt_buf[11] = hl32_to_64_S (swap32_S (esalt_bufs[digests_offset].salt_buf[22]), swap32_S (esalt_bufs[digests_offset].salt_buf[23]));
|
||||
esalt_buf[12] = hl32_to_64_S (swap32_S (esalt_bufs[digests_offset].salt_buf[24]), swap32_S (esalt_bufs[digests_offset].salt_buf[25]));
|
||||
esalt_buf[13] = hl32_to_64_S (swap32_S (esalt_bufs[digests_offset].salt_buf[26]), swap32_S (esalt_bufs[digests_offset].salt_buf[27]));
|
||||
esalt_buf[14] = 0;
|
||||
esalt_buf[15] = (128 + salt_len + 4) * 8;
|
||||
|
||||
|
@ -265,7 +265,7 @@ __kernel void m07300_m04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
* salt
|
||||
*/
|
||||
|
||||
const u32 esalt_len = rakp_bufs[salt_pos].salt_len;
|
||||
const u32 esalt_len = rakp_bufs[digests_offset].salt_len;
|
||||
|
||||
/**
|
||||
* loop
|
||||
@ -305,40 +305,40 @@ __kernel void m07300_m04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (esalt_left = esalt_size, esalt_off = 0; esalt_left >= 56; esalt_left -= 64, esalt_off += 16)
|
||||
{
|
||||
w0[0] = rakp_bufs[salt_pos].salt_buf[esalt_off + 0];
|
||||
w0[1] = rakp_bufs[salt_pos].salt_buf[esalt_off + 1];
|
||||
w0[2] = rakp_bufs[salt_pos].salt_buf[esalt_off + 2];
|
||||
w0[3] = rakp_bufs[salt_pos].salt_buf[esalt_off + 3];
|
||||
w1[0] = rakp_bufs[salt_pos].salt_buf[esalt_off + 4];
|
||||
w1[1] = rakp_bufs[salt_pos].salt_buf[esalt_off + 5];
|
||||
w1[2] = rakp_bufs[salt_pos].salt_buf[esalt_off + 6];
|
||||
w1[3] = rakp_bufs[salt_pos].salt_buf[esalt_off + 7];
|
||||
w2[0] = rakp_bufs[salt_pos].salt_buf[esalt_off + 8];
|
||||
w2[1] = rakp_bufs[salt_pos].salt_buf[esalt_off + 9];
|
||||
w2[2] = rakp_bufs[salt_pos].salt_buf[esalt_off + 10];
|
||||
w2[3] = rakp_bufs[salt_pos].salt_buf[esalt_off + 11];
|
||||
w3[0] = rakp_bufs[salt_pos].salt_buf[esalt_off + 12];
|
||||
w3[1] = rakp_bufs[salt_pos].salt_buf[esalt_off + 13];
|
||||
w3[2] = rakp_bufs[salt_pos].salt_buf[esalt_off + 14];
|
||||
w3[3] = rakp_bufs[salt_pos].salt_buf[esalt_off + 15];
|
||||
w0[0] = rakp_bufs[digests_offset].salt_buf[esalt_off + 0];
|
||||
w0[1] = rakp_bufs[digests_offset].salt_buf[esalt_off + 1];
|
||||
w0[2] = rakp_bufs[digests_offset].salt_buf[esalt_off + 2];
|
||||
w0[3] = rakp_bufs[digests_offset].salt_buf[esalt_off + 3];
|
||||
w1[0] = rakp_bufs[digests_offset].salt_buf[esalt_off + 4];
|
||||
w1[1] = rakp_bufs[digests_offset].salt_buf[esalt_off + 5];
|
||||
w1[2] = rakp_bufs[digests_offset].salt_buf[esalt_off + 6];
|
||||
w1[3] = rakp_bufs[digests_offset].salt_buf[esalt_off + 7];
|
||||
w2[0] = rakp_bufs[digests_offset].salt_buf[esalt_off + 8];
|
||||
w2[1] = rakp_bufs[digests_offset].salt_buf[esalt_off + 9];
|
||||
w2[2] = rakp_bufs[digests_offset].salt_buf[esalt_off + 10];
|
||||
w2[3] = rakp_bufs[digests_offset].salt_buf[esalt_off + 11];
|
||||
w3[0] = rakp_bufs[digests_offset].salt_buf[esalt_off + 12];
|
||||
w3[1] = rakp_bufs[digests_offset].salt_buf[esalt_off + 13];
|
||||
w3[2] = rakp_bufs[digests_offset].salt_buf[esalt_off + 14];
|
||||
w3[3] = rakp_bufs[digests_offset].salt_buf[esalt_off + 15];
|
||||
|
||||
sha1_transform (w0, w1, w2, w3, ipad);
|
||||
}
|
||||
|
||||
w0[0] = rakp_bufs[salt_pos].salt_buf[esalt_off + 0];
|
||||
w0[1] = rakp_bufs[salt_pos].salt_buf[esalt_off + 1];
|
||||
w0[2] = rakp_bufs[salt_pos].salt_buf[esalt_off + 2];
|
||||
w0[3] = rakp_bufs[salt_pos].salt_buf[esalt_off + 3];
|
||||
w1[0] = rakp_bufs[salt_pos].salt_buf[esalt_off + 4];
|
||||
w1[1] = rakp_bufs[salt_pos].salt_buf[esalt_off + 5];
|
||||
w1[2] = rakp_bufs[salt_pos].salt_buf[esalt_off + 6];
|
||||
w1[3] = rakp_bufs[salt_pos].salt_buf[esalt_off + 7];
|
||||
w2[0] = rakp_bufs[salt_pos].salt_buf[esalt_off + 8];
|
||||
w2[1] = rakp_bufs[salt_pos].salt_buf[esalt_off + 9];
|
||||
w2[2] = rakp_bufs[salt_pos].salt_buf[esalt_off + 10];
|
||||
w2[3] = rakp_bufs[salt_pos].salt_buf[esalt_off + 11];
|
||||
w3[0] = rakp_bufs[salt_pos].salt_buf[esalt_off + 12];
|
||||
w3[1] = rakp_bufs[salt_pos].salt_buf[esalt_off + 13];
|
||||
w0[0] = rakp_bufs[digests_offset].salt_buf[esalt_off + 0];
|
||||
w0[1] = rakp_bufs[digests_offset].salt_buf[esalt_off + 1];
|
||||
w0[2] = rakp_bufs[digests_offset].salt_buf[esalt_off + 2];
|
||||
w0[3] = rakp_bufs[digests_offset].salt_buf[esalt_off + 3];
|
||||
w1[0] = rakp_bufs[digests_offset].salt_buf[esalt_off + 4];
|
||||
w1[1] = rakp_bufs[digests_offset].salt_buf[esalt_off + 5];
|
||||
w1[2] = rakp_bufs[digests_offset].salt_buf[esalt_off + 6];
|
||||
w1[3] = rakp_bufs[digests_offset].salt_buf[esalt_off + 7];
|
||||
w2[0] = rakp_bufs[digests_offset].salt_buf[esalt_off + 8];
|
||||
w2[1] = rakp_bufs[digests_offset].salt_buf[esalt_off + 9];
|
||||
w2[2] = rakp_bufs[digests_offset].salt_buf[esalt_off + 10];
|
||||
w2[3] = rakp_bufs[digests_offset].salt_buf[esalt_off + 11];
|
||||
w3[0] = rakp_bufs[digests_offset].salt_buf[esalt_off + 12];
|
||||
w3[1] = rakp_bufs[digests_offset].salt_buf[esalt_off + 13];
|
||||
w3[2] = 0;
|
||||
w3[3] = (64 + esalt_size) * 8;
|
||||
|
||||
@ -392,7 +392,7 @@ __kernel void m07300_s04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
* salt
|
||||
*/
|
||||
|
||||
const u32 esalt_len = rakp_bufs[salt_pos].salt_len;
|
||||
const u32 esalt_len = rakp_bufs[digests_offset].salt_len;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -444,40 +444,40 @@ __kernel void m07300_s04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (esalt_left = esalt_size, esalt_off = 0; esalt_left >= 56; esalt_left -= 64, esalt_off += 16)
|
||||
{
|
||||
w0[0] = rakp_bufs[salt_pos].salt_buf[esalt_off + 0];
|
||||
w0[1] = rakp_bufs[salt_pos].salt_buf[esalt_off + 1];
|
||||
w0[2] = rakp_bufs[salt_pos].salt_buf[esalt_off + 2];
|
||||
w0[3] = rakp_bufs[salt_pos].salt_buf[esalt_off + 3];
|
||||
w1[0] = rakp_bufs[salt_pos].salt_buf[esalt_off + 4];
|
||||
w1[1] = rakp_bufs[salt_pos].salt_buf[esalt_off + 5];
|
||||
w1[2] = rakp_bufs[salt_pos].salt_buf[esalt_off + 6];
|
||||
w1[3] = rakp_bufs[salt_pos].salt_buf[esalt_off + 7];
|
||||
w2[0] = rakp_bufs[salt_pos].salt_buf[esalt_off + 8];
|
||||
w2[1] = rakp_bufs[salt_pos].salt_buf[esalt_off + 9];
|
||||
w2[2] = rakp_bufs[salt_pos].salt_buf[esalt_off + 10];
|
||||
w2[3] = rakp_bufs[salt_pos].salt_buf[esalt_off + 11];
|
||||
w3[0] = rakp_bufs[salt_pos].salt_buf[esalt_off + 12];
|
||||
w3[1] = rakp_bufs[salt_pos].salt_buf[esalt_off + 13];
|
||||
w3[2] = rakp_bufs[salt_pos].salt_buf[esalt_off + 14];
|
||||
w3[3] = rakp_bufs[salt_pos].salt_buf[esalt_off + 15];
|
||||
w0[0] = rakp_bufs[digests_offset].salt_buf[esalt_off + 0];
|
||||
w0[1] = rakp_bufs[digests_offset].salt_buf[esalt_off + 1];
|
||||
w0[2] = rakp_bufs[digests_offset].salt_buf[esalt_off + 2];
|
||||
w0[3] = rakp_bufs[digests_offset].salt_buf[esalt_off + 3];
|
||||
w1[0] = rakp_bufs[digests_offset].salt_buf[esalt_off + 4];
|
||||
w1[1] = rakp_bufs[digests_offset].salt_buf[esalt_off + 5];
|
||||
w1[2] = rakp_bufs[digests_offset].salt_buf[esalt_off + 6];
|
||||
w1[3] = rakp_bufs[digests_offset].salt_buf[esalt_off + 7];
|
||||
w2[0] = rakp_bufs[digests_offset].salt_buf[esalt_off + 8];
|
||||
w2[1] = rakp_bufs[digests_offset].salt_buf[esalt_off + 9];
|
||||
w2[2] = rakp_bufs[digests_offset].salt_buf[esalt_off + 10];
|
||||
w2[3] = rakp_bufs[digests_offset].salt_buf[esalt_off + 11];
|
||||
w3[0] = rakp_bufs[digests_offset].salt_buf[esalt_off + 12];
|
||||
w3[1] = rakp_bufs[digests_offset].salt_buf[esalt_off + 13];
|
||||
w3[2] = rakp_bufs[digests_offset].salt_buf[esalt_off + 14];
|
||||
w3[3] = rakp_bufs[digests_offset].salt_buf[esalt_off + 15];
|
||||
|
||||
sha1_transform (w0, w1, w2, w3, ipad);
|
||||
}
|
||||
|
||||
w0[0] = rakp_bufs[salt_pos].salt_buf[esalt_off + 0];
|
||||
w0[1] = rakp_bufs[salt_pos].salt_buf[esalt_off + 1];
|
||||
w0[2] = rakp_bufs[salt_pos].salt_buf[esalt_off + 2];
|
||||
w0[3] = rakp_bufs[salt_pos].salt_buf[esalt_off + 3];
|
||||
w1[0] = rakp_bufs[salt_pos].salt_buf[esalt_off + 4];
|
||||
w1[1] = rakp_bufs[salt_pos].salt_buf[esalt_off + 5];
|
||||
w1[2] = rakp_bufs[salt_pos].salt_buf[esalt_off + 6];
|
||||
w1[3] = rakp_bufs[salt_pos].salt_buf[esalt_off + 7];
|
||||
w2[0] = rakp_bufs[salt_pos].salt_buf[esalt_off + 8];
|
||||
w2[1] = rakp_bufs[salt_pos].salt_buf[esalt_off + 9];
|
||||
w2[2] = rakp_bufs[salt_pos].salt_buf[esalt_off + 10];
|
||||
w2[3] = rakp_bufs[salt_pos].salt_buf[esalt_off + 11];
|
||||
w3[0] = rakp_bufs[salt_pos].salt_buf[esalt_off + 12];
|
||||
w3[1] = rakp_bufs[salt_pos].salt_buf[esalt_off + 13];
|
||||
w0[0] = rakp_bufs[digests_offset].salt_buf[esalt_off + 0];
|
||||
w0[1] = rakp_bufs[digests_offset].salt_buf[esalt_off + 1];
|
||||
w0[2] = rakp_bufs[digests_offset].salt_buf[esalt_off + 2];
|
||||
w0[3] = rakp_bufs[digests_offset].salt_buf[esalt_off + 3];
|
||||
w1[0] = rakp_bufs[digests_offset].salt_buf[esalt_off + 4];
|
||||
w1[1] = rakp_bufs[digests_offset].salt_buf[esalt_off + 5];
|
||||
w1[2] = rakp_bufs[digests_offset].salt_buf[esalt_off + 6];
|
||||
w1[3] = rakp_bufs[digests_offset].salt_buf[esalt_off + 7];
|
||||
w2[0] = rakp_bufs[digests_offset].salt_buf[esalt_off + 8];
|
||||
w2[1] = rakp_bufs[digests_offset].salt_buf[esalt_off + 9];
|
||||
w2[2] = rakp_bufs[digests_offset].salt_buf[esalt_off + 10];
|
||||
w2[3] = rakp_bufs[digests_offset].salt_buf[esalt_off + 11];
|
||||
w3[0] = rakp_bufs[digests_offset].salt_buf[esalt_off + 12];
|
||||
w3[1] = rakp_bufs[digests_offset].salt_buf[esalt_off + 13];
|
||||
w3[2] = 0;
|
||||
w3[3] = (64 + esalt_size) * 8;
|
||||
|
||||
|
@ -263,7 +263,7 @@ __kernel void m07300_m04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
* salt
|
||||
*/
|
||||
|
||||
const u32 esalt_len = rakp_bufs[salt_pos].salt_len;
|
||||
const u32 esalt_len = rakp_bufs[digests_offset].salt_len;
|
||||
|
||||
/**
|
||||
* loop
|
||||
@ -371,40 +371,40 @@ __kernel void m07300_m04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (esalt_left = esalt_size, esalt_off = 0; esalt_left >= 56; esalt_left -= 64, esalt_off += 16)
|
||||
{
|
||||
w0[0] = rakp_bufs[salt_pos].salt_buf[esalt_off + 0];
|
||||
w0[1] = rakp_bufs[salt_pos].salt_buf[esalt_off + 1];
|
||||
w0[2] = rakp_bufs[salt_pos].salt_buf[esalt_off + 2];
|
||||
w0[3] = rakp_bufs[salt_pos].salt_buf[esalt_off + 3];
|
||||
w1[0] = rakp_bufs[salt_pos].salt_buf[esalt_off + 4];
|
||||
w1[1] = rakp_bufs[salt_pos].salt_buf[esalt_off + 5];
|
||||
w1[2] = rakp_bufs[salt_pos].salt_buf[esalt_off + 6];
|
||||
w1[3] = rakp_bufs[salt_pos].salt_buf[esalt_off + 7];
|
||||
w2[0] = rakp_bufs[salt_pos].salt_buf[esalt_off + 8];
|
||||
w2[1] = rakp_bufs[salt_pos].salt_buf[esalt_off + 9];
|
||||
w2[2] = rakp_bufs[salt_pos].salt_buf[esalt_off + 10];
|
||||
w2[3] = rakp_bufs[salt_pos].salt_buf[esalt_off + 11];
|
||||
w3[0] = rakp_bufs[salt_pos].salt_buf[esalt_off + 12];
|
||||
w3[1] = rakp_bufs[salt_pos].salt_buf[esalt_off + 13];
|
||||
w3[2] = rakp_bufs[salt_pos].salt_buf[esalt_off + 14];
|
||||
w3[3] = rakp_bufs[salt_pos].salt_buf[esalt_off + 15];
|
||||
w0[0] = rakp_bufs[digests_offset].salt_buf[esalt_off + 0];
|
||||
w0[1] = rakp_bufs[digests_offset].salt_buf[esalt_off + 1];
|
||||
w0[2] = rakp_bufs[digests_offset].salt_buf[esalt_off + 2];
|
||||
w0[3] = rakp_bufs[digests_offset].salt_buf[esalt_off + 3];
|
||||
w1[0] = rakp_bufs[digests_offset].salt_buf[esalt_off + 4];
|
||||
w1[1] = rakp_bufs[digests_offset].salt_buf[esalt_off + 5];
|
||||
w1[2] = rakp_bufs[digests_offset].salt_buf[esalt_off + 6];
|
||||
w1[3] = rakp_bufs[digests_offset].salt_buf[esalt_off + 7];
|
||||
w2[0] = rakp_bufs[digests_offset].salt_buf[esalt_off + 8];
|
||||
w2[1] = rakp_bufs[digests_offset].salt_buf[esalt_off + 9];
|
||||
w2[2] = rakp_bufs[digests_offset].salt_buf[esalt_off + 10];
|
||||
w2[3] = rakp_bufs[digests_offset].salt_buf[esalt_off + 11];
|
||||
w3[0] = rakp_bufs[digests_offset].salt_buf[esalt_off + 12];
|
||||
w3[1] = rakp_bufs[digests_offset].salt_buf[esalt_off + 13];
|
||||
w3[2] = rakp_bufs[digests_offset].salt_buf[esalt_off + 14];
|
||||
w3[3] = rakp_bufs[digests_offset].salt_buf[esalt_off + 15];
|
||||
|
||||
sha1_transform (w0, w1, w2, w3, ipad);
|
||||
}
|
||||
|
||||
w0[0] = rakp_bufs[salt_pos].salt_buf[esalt_off + 0];
|
||||
w0[1] = rakp_bufs[salt_pos].salt_buf[esalt_off + 1];
|
||||
w0[2] = rakp_bufs[salt_pos].salt_buf[esalt_off + 2];
|
||||
w0[3] = rakp_bufs[salt_pos].salt_buf[esalt_off + 3];
|
||||
w1[0] = rakp_bufs[salt_pos].salt_buf[esalt_off + 4];
|
||||
w1[1] = rakp_bufs[salt_pos].salt_buf[esalt_off + 5];
|
||||
w1[2] = rakp_bufs[salt_pos].salt_buf[esalt_off + 6];
|
||||
w1[3] = rakp_bufs[salt_pos].salt_buf[esalt_off + 7];
|
||||
w2[0] = rakp_bufs[salt_pos].salt_buf[esalt_off + 8];
|
||||
w2[1] = rakp_bufs[salt_pos].salt_buf[esalt_off + 9];
|
||||
w2[2] = rakp_bufs[salt_pos].salt_buf[esalt_off + 10];
|
||||
w2[3] = rakp_bufs[salt_pos].salt_buf[esalt_off + 11];
|
||||
w3[0] = rakp_bufs[salt_pos].salt_buf[esalt_off + 12];
|
||||
w3[1] = rakp_bufs[salt_pos].salt_buf[esalt_off + 13];
|
||||
w0[0] = rakp_bufs[digests_offset].salt_buf[esalt_off + 0];
|
||||
w0[1] = rakp_bufs[digests_offset].salt_buf[esalt_off + 1];
|
||||
w0[2] = rakp_bufs[digests_offset].salt_buf[esalt_off + 2];
|
||||
w0[3] = rakp_bufs[digests_offset].salt_buf[esalt_off + 3];
|
||||
w1[0] = rakp_bufs[digests_offset].salt_buf[esalt_off + 4];
|
||||
w1[1] = rakp_bufs[digests_offset].salt_buf[esalt_off + 5];
|
||||
w1[2] = rakp_bufs[digests_offset].salt_buf[esalt_off + 6];
|
||||
w1[3] = rakp_bufs[digests_offset].salt_buf[esalt_off + 7];
|
||||
w2[0] = rakp_bufs[digests_offset].salt_buf[esalt_off + 8];
|
||||
w2[1] = rakp_bufs[digests_offset].salt_buf[esalt_off + 9];
|
||||
w2[2] = rakp_bufs[digests_offset].salt_buf[esalt_off + 10];
|
||||
w2[3] = rakp_bufs[digests_offset].salt_buf[esalt_off + 11];
|
||||
w3[0] = rakp_bufs[digests_offset].salt_buf[esalt_off + 12];
|
||||
w3[1] = rakp_bufs[digests_offset].salt_buf[esalt_off + 13];
|
||||
w3[2] = 0;
|
||||
w3[3] = (64 + esalt_size) * 8;
|
||||
|
||||
@ -458,7 +458,7 @@ __kernel void m07300_s04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
* salt
|
||||
*/
|
||||
|
||||
const u32 esalt_len = rakp_bufs[salt_pos].salt_len;
|
||||
const u32 esalt_len = rakp_bufs[digests_offset].salt_len;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -578,40 +578,40 @@ __kernel void m07300_s04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (esalt_left = esalt_size, esalt_off = 0; esalt_left >= 56; esalt_left -= 64, esalt_off += 16)
|
||||
{
|
||||
w0[0] = rakp_bufs[salt_pos].salt_buf[esalt_off + 0];
|
||||
w0[1] = rakp_bufs[salt_pos].salt_buf[esalt_off + 1];
|
||||
w0[2] = rakp_bufs[salt_pos].salt_buf[esalt_off + 2];
|
||||
w0[3] = rakp_bufs[salt_pos].salt_buf[esalt_off + 3];
|
||||
w1[0] = rakp_bufs[salt_pos].salt_buf[esalt_off + 4];
|
||||
w1[1] = rakp_bufs[salt_pos].salt_buf[esalt_off + 5];
|
||||
w1[2] = rakp_bufs[salt_pos].salt_buf[esalt_off + 6];
|
||||
w1[3] = rakp_bufs[salt_pos].salt_buf[esalt_off + 7];
|
||||
w2[0] = rakp_bufs[salt_pos].salt_buf[esalt_off + 8];
|
||||
w2[1] = rakp_bufs[salt_pos].salt_buf[esalt_off + 9];
|
||||
w2[2] = rakp_bufs[salt_pos].salt_buf[esalt_off + 10];
|
||||
w2[3] = rakp_bufs[salt_pos].salt_buf[esalt_off + 11];
|
||||
w3[0] = rakp_bufs[salt_pos].salt_buf[esalt_off + 12];
|
||||
w3[1] = rakp_bufs[salt_pos].salt_buf[esalt_off + 13];
|
||||
w3[2] = rakp_bufs[salt_pos].salt_buf[esalt_off + 14];
|
||||
w3[3] = rakp_bufs[salt_pos].salt_buf[esalt_off + 15];
|
||||
w0[0] = rakp_bufs[digests_offset].salt_buf[esalt_off + 0];
|
||||
w0[1] = rakp_bufs[digests_offset].salt_buf[esalt_off + 1];
|
||||
w0[2] = rakp_bufs[digests_offset].salt_buf[esalt_off + 2];
|
||||
w0[3] = rakp_bufs[digests_offset].salt_buf[esalt_off + 3];
|
||||
w1[0] = rakp_bufs[digests_offset].salt_buf[esalt_off + 4];
|
||||
w1[1] = rakp_bufs[digests_offset].salt_buf[esalt_off + 5];
|
||||
w1[2] = rakp_bufs[digests_offset].salt_buf[esalt_off + 6];
|
||||
w1[3] = rakp_bufs[digests_offset].salt_buf[esalt_off + 7];
|
||||
w2[0] = rakp_bufs[digests_offset].salt_buf[esalt_off + 8];
|
||||
w2[1] = rakp_bufs[digests_offset].salt_buf[esalt_off + 9];
|
||||
w2[2] = rakp_bufs[digests_offset].salt_buf[esalt_off + 10];
|
||||
w2[3] = rakp_bufs[digests_offset].salt_buf[esalt_off + 11];
|
||||
w3[0] = rakp_bufs[digests_offset].salt_buf[esalt_off + 12];
|
||||
w3[1] = rakp_bufs[digests_offset].salt_buf[esalt_off + 13];
|
||||
w3[2] = rakp_bufs[digests_offset].salt_buf[esalt_off + 14];
|
||||
w3[3] = rakp_bufs[digests_offset].salt_buf[esalt_off + 15];
|
||||
|
||||
sha1_transform (w0, w1, w2, w3, ipad);
|
||||
}
|
||||
|
||||
w0[0] = rakp_bufs[salt_pos].salt_buf[esalt_off + 0];
|
||||
w0[1] = rakp_bufs[salt_pos].salt_buf[esalt_off + 1];
|
||||
w0[2] = rakp_bufs[salt_pos].salt_buf[esalt_off + 2];
|
||||
w0[3] = rakp_bufs[salt_pos].salt_buf[esalt_off + 3];
|
||||
w1[0] = rakp_bufs[salt_pos].salt_buf[esalt_off + 4];
|
||||
w1[1] = rakp_bufs[salt_pos].salt_buf[esalt_off + 5];
|
||||
w1[2] = rakp_bufs[salt_pos].salt_buf[esalt_off + 6];
|
||||
w1[3] = rakp_bufs[salt_pos].salt_buf[esalt_off + 7];
|
||||
w2[0] = rakp_bufs[salt_pos].salt_buf[esalt_off + 8];
|
||||
w2[1] = rakp_bufs[salt_pos].salt_buf[esalt_off + 9];
|
||||
w2[2] = rakp_bufs[salt_pos].salt_buf[esalt_off + 10];
|
||||
w2[3] = rakp_bufs[salt_pos].salt_buf[esalt_off + 11];
|
||||
w3[0] = rakp_bufs[salt_pos].salt_buf[esalt_off + 12];
|
||||
w3[1] = rakp_bufs[salt_pos].salt_buf[esalt_off + 13];
|
||||
w0[0] = rakp_bufs[digests_offset].salt_buf[esalt_off + 0];
|
||||
w0[1] = rakp_bufs[digests_offset].salt_buf[esalt_off + 1];
|
||||
w0[2] = rakp_bufs[digests_offset].salt_buf[esalt_off + 2];
|
||||
w0[3] = rakp_bufs[digests_offset].salt_buf[esalt_off + 3];
|
||||
w1[0] = rakp_bufs[digests_offset].salt_buf[esalt_off + 4];
|
||||
w1[1] = rakp_bufs[digests_offset].salt_buf[esalt_off + 5];
|
||||
w1[2] = rakp_bufs[digests_offset].salt_buf[esalt_off + 6];
|
||||
w1[3] = rakp_bufs[digests_offset].salt_buf[esalt_off + 7];
|
||||
w2[0] = rakp_bufs[digests_offset].salt_buf[esalt_off + 8];
|
||||
w2[1] = rakp_bufs[digests_offset].salt_buf[esalt_off + 9];
|
||||
w2[2] = rakp_bufs[digests_offset].salt_buf[esalt_off + 10];
|
||||
w2[3] = rakp_bufs[digests_offset].salt_buf[esalt_off + 11];
|
||||
w3[0] = rakp_bufs[digests_offset].salt_buf[esalt_off + 12];
|
||||
w3[1] = rakp_bufs[digests_offset].salt_buf[esalt_off + 13];
|
||||
w3[2] = 0;
|
||||
w3[3] = (64 + esalt_size) * 8;
|
||||
|
||||
|
@ -242,7 +242,7 @@ void m07300m (u32 w0[4], u32 w1[4], u32 w2[4], u32 w3[4], const u32 pw_len, __gl
|
||||
* salt
|
||||
*/
|
||||
|
||||
const u32 esalt_len = rakp_bufs[salt_pos].salt_len;
|
||||
const u32 esalt_len = rakp_bufs[digests_offset].salt_len;
|
||||
|
||||
/**
|
||||
* loop
|
||||
@ -294,40 +294,40 @@ void m07300m (u32 w0[4], u32 w1[4], u32 w2[4], u32 w3[4], const u32 pw_len, __gl
|
||||
|
||||
for (esalt_left = esalt_size, esalt_off = 0; esalt_left >= 56; esalt_left -= 64, esalt_off += 16)
|
||||
{
|
||||
w0_t[0] = rakp_bufs[salt_pos].salt_buf[esalt_off + 0];
|
||||
w0_t[1] = rakp_bufs[salt_pos].salt_buf[esalt_off + 1];
|
||||
w0_t[2] = rakp_bufs[salt_pos].salt_buf[esalt_off + 2];
|
||||
w0_t[3] = rakp_bufs[salt_pos].salt_buf[esalt_off + 3];
|
||||
w1_t[0] = rakp_bufs[salt_pos].salt_buf[esalt_off + 4];
|
||||
w1_t[1] = rakp_bufs[salt_pos].salt_buf[esalt_off + 5];
|
||||
w1_t[2] = rakp_bufs[salt_pos].salt_buf[esalt_off + 6];
|
||||
w1_t[3] = rakp_bufs[salt_pos].salt_buf[esalt_off + 7];
|
||||
w2_t[0] = rakp_bufs[salt_pos].salt_buf[esalt_off + 8];
|
||||
w2_t[1] = rakp_bufs[salt_pos].salt_buf[esalt_off + 9];
|
||||
w2_t[2] = rakp_bufs[salt_pos].salt_buf[esalt_off + 10];
|
||||
w2_t[3] = rakp_bufs[salt_pos].salt_buf[esalt_off + 11];
|
||||
w3_t[0] = rakp_bufs[salt_pos].salt_buf[esalt_off + 12];
|
||||
w3_t[1] = rakp_bufs[salt_pos].salt_buf[esalt_off + 13];
|
||||
w3_t[2] = rakp_bufs[salt_pos].salt_buf[esalt_off + 14];
|
||||
w3_t[3] = rakp_bufs[salt_pos].salt_buf[esalt_off + 15];
|
||||
w0_t[0] = rakp_bufs[digests_offset].salt_buf[esalt_off + 0];
|
||||
w0_t[1] = rakp_bufs[digests_offset].salt_buf[esalt_off + 1];
|
||||
w0_t[2] = rakp_bufs[digests_offset].salt_buf[esalt_off + 2];
|
||||
w0_t[3] = rakp_bufs[digests_offset].salt_buf[esalt_off + 3];
|
||||
w1_t[0] = rakp_bufs[digests_offset].salt_buf[esalt_off + 4];
|
||||
w1_t[1] = rakp_bufs[digests_offset].salt_buf[esalt_off + 5];
|
||||
w1_t[2] = rakp_bufs[digests_offset].salt_buf[esalt_off + 6];
|
||||
w1_t[3] = rakp_bufs[digests_offset].salt_buf[esalt_off + 7];
|
||||
w2_t[0] = rakp_bufs[digests_offset].salt_buf[esalt_off + 8];
|
||||
w2_t[1] = rakp_bufs[digests_offset].salt_buf[esalt_off + 9];
|
||||
w2_t[2] = rakp_bufs[digests_offset].salt_buf[esalt_off + 10];
|
||||
w2_t[3] = rakp_bufs[digests_offset].salt_buf[esalt_off + 11];
|
||||
w3_t[0] = rakp_bufs[digests_offset].salt_buf[esalt_off + 12];
|
||||
w3_t[1] = rakp_bufs[digests_offset].salt_buf[esalt_off + 13];
|
||||
w3_t[2] = rakp_bufs[digests_offset].salt_buf[esalt_off + 14];
|
||||
w3_t[3] = rakp_bufs[digests_offset].salt_buf[esalt_off + 15];
|
||||
|
||||
sha1_transform (w0_t, w1_t, w2_t, w3_t, ipad);
|
||||
}
|
||||
|
||||
w0_t[0] = rakp_bufs[salt_pos].salt_buf[esalt_off + 0];
|
||||
w0_t[1] = rakp_bufs[salt_pos].salt_buf[esalt_off + 1];
|
||||
w0_t[2] = rakp_bufs[salt_pos].salt_buf[esalt_off + 2];
|
||||
w0_t[3] = rakp_bufs[salt_pos].salt_buf[esalt_off + 3];
|
||||
w1_t[0] = rakp_bufs[salt_pos].salt_buf[esalt_off + 4];
|
||||
w1_t[1] = rakp_bufs[salt_pos].salt_buf[esalt_off + 5];
|
||||
w1_t[2] = rakp_bufs[salt_pos].salt_buf[esalt_off + 6];
|
||||
w1_t[3] = rakp_bufs[salt_pos].salt_buf[esalt_off + 7];
|
||||
w2_t[0] = rakp_bufs[salt_pos].salt_buf[esalt_off + 8];
|
||||
w2_t[1] = rakp_bufs[salt_pos].salt_buf[esalt_off + 9];
|
||||
w2_t[2] = rakp_bufs[salt_pos].salt_buf[esalt_off + 10];
|
||||
w2_t[3] = rakp_bufs[salt_pos].salt_buf[esalt_off + 11];
|
||||
w3_t[0] = rakp_bufs[salt_pos].salt_buf[esalt_off + 12];
|
||||
w3_t[1] = rakp_bufs[salt_pos].salt_buf[esalt_off + 13];
|
||||
w0_t[0] = rakp_bufs[digests_offset].salt_buf[esalt_off + 0];
|
||||
w0_t[1] = rakp_bufs[digests_offset].salt_buf[esalt_off + 1];
|
||||
w0_t[2] = rakp_bufs[digests_offset].salt_buf[esalt_off + 2];
|
||||
w0_t[3] = rakp_bufs[digests_offset].salt_buf[esalt_off + 3];
|
||||
w1_t[0] = rakp_bufs[digests_offset].salt_buf[esalt_off + 4];
|
||||
w1_t[1] = rakp_bufs[digests_offset].salt_buf[esalt_off + 5];
|
||||
w1_t[2] = rakp_bufs[digests_offset].salt_buf[esalt_off + 6];
|
||||
w1_t[3] = rakp_bufs[digests_offset].salt_buf[esalt_off + 7];
|
||||
w2_t[0] = rakp_bufs[digests_offset].salt_buf[esalt_off + 8];
|
||||
w2_t[1] = rakp_bufs[digests_offset].salt_buf[esalt_off + 9];
|
||||
w2_t[2] = rakp_bufs[digests_offset].salt_buf[esalt_off + 10];
|
||||
w2_t[3] = rakp_bufs[digests_offset].salt_buf[esalt_off + 11];
|
||||
w3_t[0] = rakp_bufs[digests_offset].salt_buf[esalt_off + 12];
|
||||
w3_t[1] = rakp_bufs[digests_offset].salt_buf[esalt_off + 13];
|
||||
w3_t[2] = 0;
|
||||
w3_t[3] = (64 + esalt_size) * 8;
|
||||
|
||||
@ -352,7 +352,7 @@ void m07300s (u32 w0[4], u32 w1[4], u32 w2[4], u32 w3[4], const u32 pw_len, __gl
|
||||
* salt
|
||||
*/
|
||||
|
||||
const u32 esalt_len = rakp_bufs[salt_pos].salt_len;
|
||||
const u32 esalt_len = rakp_bufs[digests_offset].salt_len;
|
||||
|
||||
/**
|
||||
* digest
|
||||
@ -416,40 +416,40 @@ void m07300s (u32 w0[4], u32 w1[4], u32 w2[4], u32 w3[4], const u32 pw_len, __gl
|
||||
|
||||
for (esalt_left = esalt_size, esalt_off = 0; esalt_left >= 56; esalt_left -= 64, esalt_off += 16)
|
||||
{
|
||||
w0_t[0] = rakp_bufs[salt_pos].salt_buf[esalt_off + 0];
|
||||
w0_t[1] = rakp_bufs[salt_pos].salt_buf[esalt_off + 1];
|
||||
w0_t[2] = rakp_bufs[salt_pos].salt_buf[esalt_off + 2];
|
||||
w0_t[3] = rakp_bufs[salt_pos].salt_buf[esalt_off + 3];
|
||||
w1_t[0] = rakp_bufs[salt_pos].salt_buf[esalt_off + 4];
|
||||
w1_t[1] = rakp_bufs[salt_pos].salt_buf[esalt_off + 5];
|
||||
w1_t[2] = rakp_bufs[salt_pos].salt_buf[esalt_off + 6];
|
||||
w1_t[3] = rakp_bufs[salt_pos].salt_buf[esalt_off + 7];
|
||||
w2_t[0] = rakp_bufs[salt_pos].salt_buf[esalt_off + 8];
|
||||
w2_t[1] = rakp_bufs[salt_pos].salt_buf[esalt_off + 9];
|
||||
w2_t[2] = rakp_bufs[salt_pos].salt_buf[esalt_off + 10];
|
||||
w2_t[3] = rakp_bufs[salt_pos].salt_buf[esalt_off + 11];
|
||||
w3_t[0] = rakp_bufs[salt_pos].salt_buf[esalt_off + 12];
|
||||
w3_t[1] = rakp_bufs[salt_pos].salt_buf[esalt_off + 13];
|
||||
w3_t[2] = rakp_bufs[salt_pos].salt_buf[esalt_off + 14];
|
||||
w3_t[3] = rakp_bufs[salt_pos].salt_buf[esalt_off + 15];
|
||||
w0_t[0] = rakp_bufs[digests_offset].salt_buf[esalt_off + 0];
|
||||
w0_t[1] = rakp_bufs[digests_offset].salt_buf[esalt_off + 1];
|
||||
w0_t[2] = rakp_bufs[digests_offset].salt_buf[esalt_off + 2];
|
||||
w0_t[3] = rakp_bufs[digests_offset].salt_buf[esalt_off + 3];
|
||||
w1_t[0] = rakp_bufs[digests_offset].salt_buf[esalt_off + 4];
|
||||
w1_t[1] = rakp_bufs[digests_offset].salt_buf[esalt_off + 5];
|
||||
w1_t[2] = rakp_bufs[digests_offset].salt_buf[esalt_off + 6];
|
||||
w1_t[3] = rakp_bufs[digests_offset].salt_buf[esalt_off + 7];
|
||||
w2_t[0] = rakp_bufs[digests_offset].salt_buf[esalt_off + 8];
|
||||
w2_t[1] = rakp_bufs[digests_offset].salt_buf[esalt_off + 9];
|
||||
w2_t[2] = rakp_bufs[digests_offset].salt_buf[esalt_off + 10];
|
||||
w2_t[3] = rakp_bufs[digests_offset].salt_buf[esalt_off + 11];
|
||||
w3_t[0] = rakp_bufs[digests_offset].salt_buf[esalt_off + 12];
|
||||
w3_t[1] = rakp_bufs[digests_offset].salt_buf[esalt_off + 13];
|
||||
w3_t[2] = rakp_bufs[digests_offset].salt_buf[esalt_off + 14];
|
||||
w3_t[3] = rakp_bufs[digests_offset].salt_buf[esalt_off + 15];
|
||||
|
||||
sha1_transform (w0_t, w1_t, w2_t, w3_t, ipad);
|
||||
}
|
||||
|
||||
w0_t[0] = rakp_bufs[salt_pos].salt_buf[esalt_off + 0];
|
||||
w0_t[1] = rakp_bufs[salt_pos].salt_buf[esalt_off + 1];
|
||||
w0_t[2] = rakp_bufs[salt_pos].salt_buf[esalt_off + 2];
|
||||
w0_t[3] = rakp_bufs[salt_pos].salt_buf[esalt_off + 3];
|
||||
w1_t[0] = rakp_bufs[salt_pos].salt_buf[esalt_off + 4];
|
||||
w1_t[1] = rakp_bufs[salt_pos].salt_buf[esalt_off + 5];
|
||||
w1_t[2] = rakp_bufs[salt_pos].salt_buf[esalt_off + 6];
|
||||
w1_t[3] = rakp_bufs[salt_pos].salt_buf[esalt_off + 7];
|
||||
w2_t[0] = rakp_bufs[salt_pos].salt_buf[esalt_off + 8];
|
||||
w2_t[1] = rakp_bufs[salt_pos].salt_buf[esalt_off + 9];
|
||||
w2_t[2] = rakp_bufs[salt_pos].salt_buf[esalt_off + 10];
|
||||
w2_t[3] = rakp_bufs[salt_pos].salt_buf[esalt_off + 11];
|
||||
w3_t[0] = rakp_bufs[salt_pos].salt_buf[esalt_off + 12];
|
||||
w3_t[1] = rakp_bufs[salt_pos].salt_buf[esalt_off + 13];
|
||||
w0_t[0] = rakp_bufs[digests_offset].salt_buf[esalt_off + 0];
|
||||
w0_t[1] = rakp_bufs[digests_offset].salt_buf[esalt_off + 1];
|
||||
w0_t[2] = rakp_bufs[digests_offset].salt_buf[esalt_off + 2];
|
||||
w0_t[3] = rakp_bufs[digests_offset].salt_buf[esalt_off + 3];
|
||||
w1_t[0] = rakp_bufs[digests_offset].salt_buf[esalt_off + 4];
|
||||
w1_t[1] = rakp_bufs[digests_offset].salt_buf[esalt_off + 5];
|
||||
w1_t[2] = rakp_bufs[digests_offset].salt_buf[esalt_off + 6];
|
||||
w1_t[3] = rakp_bufs[digests_offset].salt_buf[esalt_off + 7];
|
||||
w2_t[0] = rakp_bufs[digests_offset].salt_buf[esalt_off + 8];
|
||||
w2_t[1] = rakp_bufs[digests_offset].salt_buf[esalt_off + 9];
|
||||
w2_t[2] = rakp_bufs[digests_offset].salt_buf[esalt_off + 10];
|
||||
w2_t[3] = rakp_bufs[digests_offset].salt_buf[esalt_off + 11];
|
||||
w3_t[0] = rakp_bufs[digests_offset].salt_buf[esalt_off + 12];
|
||||
w3_t[1] = rakp_bufs[digests_offset].salt_buf[esalt_off + 13];
|
||||
w3_t[2] = 0;
|
||||
w3_t[3] = (64 + esalt_size) * 8;
|
||||
|
||||
|
@ -580,21 +580,21 @@ __kernel void m07500_m04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
u32 checksum[4];
|
||||
|
||||
checksum[0] = krb5pa_bufs[salt_pos].checksum[0];
|
||||
checksum[1] = krb5pa_bufs[salt_pos].checksum[1];
|
||||
checksum[2] = krb5pa_bufs[salt_pos].checksum[2];
|
||||
checksum[3] = krb5pa_bufs[salt_pos].checksum[3];
|
||||
checksum[0] = krb5pa_bufs[digests_offset].checksum[0];
|
||||
checksum[1] = krb5pa_bufs[digests_offset].checksum[1];
|
||||
checksum[2] = krb5pa_bufs[digests_offset].checksum[2];
|
||||
checksum[3] = krb5pa_bufs[digests_offset].checksum[3];
|
||||
|
||||
u32 timestamp_ct[8];
|
||||
|
||||
timestamp_ct[0] = krb5pa_bufs[salt_pos].timestamp[0];
|
||||
timestamp_ct[1] = krb5pa_bufs[salt_pos].timestamp[1];
|
||||
timestamp_ct[2] = krb5pa_bufs[salt_pos].timestamp[2];
|
||||
timestamp_ct[3] = krb5pa_bufs[salt_pos].timestamp[3];
|
||||
timestamp_ct[4] = krb5pa_bufs[salt_pos].timestamp[4];
|
||||
timestamp_ct[5] = krb5pa_bufs[salt_pos].timestamp[5];
|
||||
timestamp_ct[6] = krb5pa_bufs[salt_pos].timestamp[6];
|
||||
timestamp_ct[7] = krb5pa_bufs[salt_pos].timestamp[7];
|
||||
timestamp_ct[0] = krb5pa_bufs[digests_offset].timestamp[0];
|
||||
timestamp_ct[1] = krb5pa_bufs[digests_offset].timestamp[1];
|
||||
timestamp_ct[2] = krb5pa_bufs[digests_offset].timestamp[2];
|
||||
timestamp_ct[3] = krb5pa_bufs[digests_offset].timestamp[3];
|
||||
timestamp_ct[4] = krb5pa_bufs[digests_offset].timestamp[4];
|
||||
timestamp_ct[5] = krb5pa_bufs[digests_offset].timestamp[5];
|
||||
timestamp_ct[6] = krb5pa_bufs[digests_offset].timestamp[6];
|
||||
timestamp_ct[7] = krb5pa_bufs[digests_offset].timestamp[7];
|
||||
|
||||
/**
|
||||
* shared
|
||||
@ -681,21 +681,21 @@ __kernel void m07500_s04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
u32 checksum[4];
|
||||
|
||||
checksum[0] = krb5pa_bufs[salt_pos].checksum[0];
|
||||
checksum[1] = krb5pa_bufs[salt_pos].checksum[1];
|
||||
checksum[2] = krb5pa_bufs[salt_pos].checksum[2];
|
||||
checksum[3] = krb5pa_bufs[salt_pos].checksum[3];
|
||||
checksum[0] = krb5pa_bufs[digests_offset].checksum[0];
|
||||
checksum[1] = krb5pa_bufs[digests_offset].checksum[1];
|
||||
checksum[2] = krb5pa_bufs[digests_offset].checksum[2];
|
||||
checksum[3] = krb5pa_bufs[digests_offset].checksum[3];
|
||||
|
||||
u32 timestamp_ct[8];
|
||||
|
||||
timestamp_ct[0] = krb5pa_bufs[salt_pos].timestamp[0];
|
||||
timestamp_ct[1] = krb5pa_bufs[salt_pos].timestamp[1];
|
||||
timestamp_ct[2] = krb5pa_bufs[salt_pos].timestamp[2];
|
||||
timestamp_ct[3] = krb5pa_bufs[salt_pos].timestamp[3];
|
||||
timestamp_ct[4] = krb5pa_bufs[salt_pos].timestamp[4];
|
||||
timestamp_ct[5] = krb5pa_bufs[salt_pos].timestamp[5];
|
||||
timestamp_ct[6] = krb5pa_bufs[salt_pos].timestamp[6];
|
||||
timestamp_ct[7] = krb5pa_bufs[salt_pos].timestamp[7];
|
||||
timestamp_ct[0] = krb5pa_bufs[digests_offset].timestamp[0];
|
||||
timestamp_ct[1] = krb5pa_bufs[digests_offset].timestamp[1];
|
||||
timestamp_ct[2] = krb5pa_bufs[digests_offset].timestamp[2];
|
||||
timestamp_ct[3] = krb5pa_bufs[digests_offset].timestamp[3];
|
||||
timestamp_ct[4] = krb5pa_bufs[digests_offset].timestamp[4];
|
||||
timestamp_ct[5] = krb5pa_bufs[digests_offset].timestamp[5];
|
||||
timestamp_ct[6] = krb5pa_bufs[digests_offset].timestamp[6];
|
||||
timestamp_ct[7] = krb5pa_bufs[digests_offset].timestamp[7];
|
||||
|
||||
/**
|
||||
* shared
|
||||
|
@ -578,21 +578,21 @@ __kernel void m07500_m04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
u32 checksum[4];
|
||||
|
||||
checksum[0] = krb5pa_bufs[salt_pos].checksum[0];
|
||||
checksum[1] = krb5pa_bufs[salt_pos].checksum[1];
|
||||
checksum[2] = krb5pa_bufs[salt_pos].checksum[2];
|
||||
checksum[3] = krb5pa_bufs[salt_pos].checksum[3];
|
||||
checksum[0] = krb5pa_bufs[digests_offset].checksum[0];
|
||||
checksum[1] = krb5pa_bufs[digests_offset].checksum[1];
|
||||
checksum[2] = krb5pa_bufs[digests_offset].checksum[2];
|
||||
checksum[3] = krb5pa_bufs[digests_offset].checksum[3];
|
||||
|
||||
u32 timestamp_ct[8];
|
||||
|
||||
timestamp_ct[0] = krb5pa_bufs[salt_pos].timestamp[0];
|
||||
timestamp_ct[1] = krb5pa_bufs[salt_pos].timestamp[1];
|
||||
timestamp_ct[2] = krb5pa_bufs[salt_pos].timestamp[2];
|
||||
timestamp_ct[3] = krb5pa_bufs[salt_pos].timestamp[3];
|
||||
timestamp_ct[4] = krb5pa_bufs[salt_pos].timestamp[4];
|
||||
timestamp_ct[5] = krb5pa_bufs[salt_pos].timestamp[5];
|
||||
timestamp_ct[6] = krb5pa_bufs[salt_pos].timestamp[6];
|
||||
timestamp_ct[7] = krb5pa_bufs[salt_pos].timestamp[7];
|
||||
timestamp_ct[0] = krb5pa_bufs[digests_offset].timestamp[0];
|
||||
timestamp_ct[1] = krb5pa_bufs[digests_offset].timestamp[1];
|
||||
timestamp_ct[2] = krb5pa_bufs[digests_offset].timestamp[2];
|
||||
timestamp_ct[3] = krb5pa_bufs[digests_offset].timestamp[3];
|
||||
timestamp_ct[4] = krb5pa_bufs[digests_offset].timestamp[4];
|
||||
timestamp_ct[5] = krb5pa_bufs[digests_offset].timestamp[5];
|
||||
timestamp_ct[6] = krb5pa_bufs[digests_offset].timestamp[6];
|
||||
timestamp_ct[7] = krb5pa_bufs[digests_offset].timestamp[7];
|
||||
|
||||
/**
|
||||
* shared
|
||||
@ -729,21 +729,21 @@ __kernel void m07500_s04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
u32 checksum[4];
|
||||
|
||||
checksum[0] = krb5pa_bufs[salt_pos].checksum[0];
|
||||
checksum[1] = krb5pa_bufs[salt_pos].checksum[1];
|
||||
checksum[2] = krb5pa_bufs[salt_pos].checksum[2];
|
||||
checksum[3] = krb5pa_bufs[salt_pos].checksum[3];
|
||||
checksum[0] = krb5pa_bufs[digests_offset].checksum[0];
|
||||
checksum[1] = krb5pa_bufs[digests_offset].checksum[1];
|
||||
checksum[2] = krb5pa_bufs[digests_offset].checksum[2];
|
||||
checksum[3] = krb5pa_bufs[digests_offset].checksum[3];
|
||||
|
||||
u32 timestamp_ct[8];
|
||||
|
||||
timestamp_ct[0] = krb5pa_bufs[salt_pos].timestamp[0];
|
||||
timestamp_ct[1] = krb5pa_bufs[salt_pos].timestamp[1];
|
||||
timestamp_ct[2] = krb5pa_bufs[salt_pos].timestamp[2];
|
||||
timestamp_ct[3] = krb5pa_bufs[salt_pos].timestamp[3];
|
||||
timestamp_ct[4] = krb5pa_bufs[salt_pos].timestamp[4];
|
||||
timestamp_ct[5] = krb5pa_bufs[salt_pos].timestamp[5];
|
||||
timestamp_ct[6] = krb5pa_bufs[salt_pos].timestamp[6];
|
||||
timestamp_ct[7] = krb5pa_bufs[salt_pos].timestamp[7];
|
||||
timestamp_ct[0] = krb5pa_bufs[digests_offset].timestamp[0];
|
||||
timestamp_ct[1] = krb5pa_bufs[digests_offset].timestamp[1];
|
||||
timestamp_ct[2] = krb5pa_bufs[digests_offset].timestamp[2];
|
||||
timestamp_ct[3] = krb5pa_bufs[digests_offset].timestamp[3];
|
||||
timestamp_ct[4] = krb5pa_bufs[digests_offset].timestamp[4];
|
||||
timestamp_ct[5] = krb5pa_bufs[digests_offset].timestamp[5];
|
||||
timestamp_ct[6] = krb5pa_bufs[digests_offset].timestamp[6];
|
||||
timestamp_ct[7] = krb5pa_bufs[digests_offset].timestamp[7];
|
||||
|
||||
/**
|
||||
* shared
|
||||
|
@ -557,21 +557,21 @@ void m07500 (__local RC4_KEY *rc4_keys, u32 w0[4], u32 w1[4], u32 w2[4], u32 w3[
|
||||
|
||||
u32 checksum[4];
|
||||
|
||||
checksum[0] = krb5pa_bufs[salt_pos].checksum[0];
|
||||
checksum[1] = krb5pa_bufs[salt_pos].checksum[1];
|
||||
checksum[2] = krb5pa_bufs[salt_pos].checksum[2];
|
||||
checksum[3] = krb5pa_bufs[salt_pos].checksum[3];
|
||||
checksum[0] = krb5pa_bufs[digests_offset].checksum[0];
|
||||
checksum[1] = krb5pa_bufs[digests_offset].checksum[1];
|
||||
checksum[2] = krb5pa_bufs[digests_offset].checksum[2];
|
||||
checksum[3] = krb5pa_bufs[digests_offset].checksum[3];
|
||||
|
||||
u32 timestamp_ct[8];
|
||||
|
||||
timestamp_ct[0] = krb5pa_bufs[salt_pos].timestamp[0];
|
||||
timestamp_ct[1] = krb5pa_bufs[salt_pos].timestamp[1];
|
||||
timestamp_ct[2] = krb5pa_bufs[salt_pos].timestamp[2];
|
||||
timestamp_ct[3] = krb5pa_bufs[salt_pos].timestamp[3];
|
||||
timestamp_ct[4] = krb5pa_bufs[salt_pos].timestamp[4];
|
||||
timestamp_ct[5] = krb5pa_bufs[salt_pos].timestamp[5];
|
||||
timestamp_ct[6] = krb5pa_bufs[salt_pos].timestamp[6];
|
||||
timestamp_ct[7] = krb5pa_bufs[salt_pos].timestamp[7];
|
||||
timestamp_ct[0] = krb5pa_bufs[digests_offset].timestamp[0];
|
||||
timestamp_ct[1] = krb5pa_bufs[digests_offset].timestamp[1];
|
||||
timestamp_ct[2] = krb5pa_bufs[digests_offset].timestamp[2];
|
||||
timestamp_ct[3] = krb5pa_bufs[digests_offset].timestamp[3];
|
||||
timestamp_ct[4] = krb5pa_bufs[digests_offset].timestamp[4];
|
||||
timestamp_ct[5] = krb5pa_bufs[digests_offset].timestamp[5];
|
||||
timestamp_ct[6] = krb5pa_bufs[digests_offset].timestamp[6];
|
||||
timestamp_ct[7] = krb5pa_bufs[digests_offset].timestamp[7];
|
||||
|
||||
/**
|
||||
* loop
|
||||
|
@ -736,47 +736,47 @@ __kernel void m08200_comp (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
|
||||
hmac_sha256_pad (w0, w1, w2, w3, ipad, opad);
|
||||
|
||||
int size = esalt_bufs[salt_pos].data_len;
|
||||
int size = esalt_bufs[digests_offset].data_len;
|
||||
|
||||
int left;
|
||||
int off;
|
||||
|
||||
for (left = size, off = 0; left >= 56; left -= 64, off += 16)
|
||||
{
|
||||
w0[0] = esalt_bufs[salt_pos].data_buf[off + 0];
|
||||
w0[1] = esalt_bufs[salt_pos].data_buf[off + 1];
|
||||
w0[2] = esalt_bufs[salt_pos].data_buf[off + 2];
|
||||
w0[3] = esalt_bufs[salt_pos].data_buf[off + 3];
|
||||
w1[0] = esalt_bufs[salt_pos].data_buf[off + 4];
|
||||
w1[1] = esalt_bufs[salt_pos].data_buf[off + 5];
|
||||
w1[2] = esalt_bufs[salt_pos].data_buf[off + 6];
|
||||
w1[3] = esalt_bufs[salt_pos].data_buf[off + 7];
|
||||
w2[0] = esalt_bufs[salt_pos].data_buf[off + 8];
|
||||
w2[1] = esalt_bufs[salt_pos].data_buf[off + 9];
|
||||
w2[2] = esalt_bufs[salt_pos].data_buf[off + 10];
|
||||
w2[3] = esalt_bufs[salt_pos].data_buf[off + 11];
|
||||
w3[0] = esalt_bufs[salt_pos].data_buf[off + 12];
|
||||
w3[1] = esalt_bufs[salt_pos].data_buf[off + 13];
|
||||
w3[2] = esalt_bufs[salt_pos].data_buf[off + 14];
|
||||
w3[3] = esalt_bufs[salt_pos].data_buf[off + 15];
|
||||
w0[0] = esalt_bufs[digests_offset].data_buf[off + 0];
|
||||
w0[1] = esalt_bufs[digests_offset].data_buf[off + 1];
|
||||
w0[2] = esalt_bufs[digests_offset].data_buf[off + 2];
|
||||
w0[3] = esalt_bufs[digests_offset].data_buf[off + 3];
|
||||
w1[0] = esalt_bufs[digests_offset].data_buf[off + 4];
|
||||
w1[1] = esalt_bufs[digests_offset].data_buf[off + 5];
|
||||
w1[2] = esalt_bufs[digests_offset].data_buf[off + 6];
|
||||
w1[3] = esalt_bufs[digests_offset].data_buf[off + 7];
|
||||
w2[0] = esalt_bufs[digests_offset].data_buf[off + 8];
|
||||
w2[1] = esalt_bufs[digests_offset].data_buf[off + 9];
|
||||
w2[2] = esalt_bufs[digests_offset].data_buf[off + 10];
|
||||
w2[3] = esalt_bufs[digests_offset].data_buf[off + 11];
|
||||
w3[0] = esalt_bufs[digests_offset].data_buf[off + 12];
|
||||
w3[1] = esalt_bufs[digests_offset].data_buf[off + 13];
|
||||
w3[2] = esalt_bufs[digests_offset].data_buf[off + 14];
|
||||
w3[3] = esalt_bufs[digests_offset].data_buf[off + 15];
|
||||
|
||||
sha256_transform (w0, w1, w2, w3, ipad);
|
||||
}
|
||||
|
||||
w0[0] = esalt_bufs[salt_pos].data_buf[off + 0];
|
||||
w0[1] = esalt_bufs[salt_pos].data_buf[off + 1];
|
||||
w0[2] = esalt_bufs[salt_pos].data_buf[off + 2];
|
||||
w0[3] = esalt_bufs[salt_pos].data_buf[off + 3];
|
||||
w1[0] = esalt_bufs[salt_pos].data_buf[off + 4];
|
||||
w1[1] = esalt_bufs[salt_pos].data_buf[off + 5];
|
||||
w1[2] = esalt_bufs[salt_pos].data_buf[off + 6];
|
||||
w1[3] = esalt_bufs[salt_pos].data_buf[off + 7];
|
||||
w2[0] = esalt_bufs[salt_pos].data_buf[off + 8];
|
||||
w2[1] = esalt_bufs[salt_pos].data_buf[off + 9];
|
||||
w2[2] = esalt_bufs[salt_pos].data_buf[off + 10];
|
||||
w2[3] = esalt_bufs[salt_pos].data_buf[off + 11];
|
||||
w3[0] = esalt_bufs[salt_pos].data_buf[off + 12];
|
||||
w3[1] = esalt_bufs[salt_pos].data_buf[off + 13];
|
||||
w0[0] = esalt_bufs[digests_offset].data_buf[off + 0];
|
||||
w0[1] = esalt_bufs[digests_offset].data_buf[off + 1];
|
||||
w0[2] = esalt_bufs[digests_offset].data_buf[off + 2];
|
||||
w0[3] = esalt_bufs[digests_offset].data_buf[off + 3];
|
||||
w1[0] = esalt_bufs[digests_offset].data_buf[off + 4];
|
||||
w1[1] = esalt_bufs[digests_offset].data_buf[off + 5];
|
||||
w1[2] = esalt_bufs[digests_offset].data_buf[off + 6];
|
||||
w1[3] = esalt_bufs[digests_offset].data_buf[off + 7];
|
||||
w2[0] = esalt_bufs[digests_offset].data_buf[off + 8];
|
||||
w2[1] = esalt_bufs[digests_offset].data_buf[off + 9];
|
||||
w2[2] = esalt_bufs[digests_offset].data_buf[off + 10];
|
||||
w2[3] = esalt_bufs[digests_offset].data_buf[off + 11];
|
||||
w3[0] = esalt_bufs[digests_offset].data_buf[off + 12];
|
||||
w3[1] = esalt_bufs[digests_offset].data_buf[off + 13];
|
||||
w3[2] = 0;
|
||||
w3[3] = (64 + size) * 8;
|
||||
|
||||
|
@ -1843,10 +1843,10 @@ __kernel void m08800_comp (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
|
||||
// 3. decrypt real data, xor essiv afterwards
|
||||
|
||||
data[0] = androidfde_bufs[salt_pos].data[0];
|
||||
data[1] = androidfde_bufs[salt_pos].data[1];
|
||||
data[2] = androidfde_bufs[salt_pos].data[2];
|
||||
data[3] = androidfde_bufs[salt_pos].data[3];
|
||||
data[0] = androidfde_bufs[digests_offset].data[0];
|
||||
data[1] = androidfde_bufs[digests_offset].data[1];
|
||||
data[2] = androidfde_bufs[digests_offset].data[2];
|
||||
data[3] = androidfde_bufs[digests_offset].data[3];
|
||||
|
||||
iv[0] = essiv[0];
|
||||
iv[1] = essiv[1];
|
||||
@ -1920,15 +1920,15 @@ __kernel void m08800_comp (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
|
||||
for (u32 i = 4; i < 16; i += 4)
|
||||
{
|
||||
data[0] = androidfde_bufs[salt_pos].data[256 + i + 0];
|
||||
data[1] = androidfde_bufs[salt_pos].data[256 + i + 1];
|
||||
data[2] = androidfde_bufs[salt_pos].data[256 + i + 2];
|
||||
data[3] = androidfde_bufs[salt_pos].data[256 + i + 3];
|
||||
data[0] = androidfde_bufs[digests_offset].data[256 + i + 0];
|
||||
data[1] = androidfde_bufs[digests_offset].data[256 + i + 1];
|
||||
data[2] = androidfde_bufs[digests_offset].data[256 + i + 2];
|
||||
data[3] = androidfde_bufs[digests_offset].data[256 + i + 3];
|
||||
|
||||
iv[0] = androidfde_bufs[salt_pos].data[256 + i + 0 - 4];
|
||||
iv[1] = androidfde_bufs[salt_pos].data[256 + i + 1 - 4];
|
||||
iv[2] = androidfde_bufs[salt_pos].data[256 + i + 2 - 4];
|
||||
iv[3] = androidfde_bufs[salt_pos].data[256 + i + 3 - 4];
|
||||
iv[0] = androidfde_bufs[digests_offset].data[256 + i + 0 - 4];
|
||||
iv[1] = androidfde_bufs[digests_offset].data[256 + i + 1 - 4];
|
||||
iv[2] = androidfde_bufs[digests_offset].data[256 + i + 2 - 4];
|
||||
iv[3] = androidfde_bufs[digests_offset].data[256 + i + 3 - 4];
|
||||
|
||||
AES128_decrypt (data, out, rdk, s_td0, s_td1, s_td2, s_td3, s_td4);
|
||||
|
||||
|
@ -1630,10 +1630,10 @@ __kernel void m09400_comp (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
|
||||
u32 verifier[4];
|
||||
|
||||
verifier[0] = office2007_bufs[salt_pos].encryptedVerifier[0];
|
||||
verifier[1] = office2007_bufs[salt_pos].encryptedVerifier[1];
|
||||
verifier[2] = office2007_bufs[salt_pos].encryptedVerifier[2];
|
||||
verifier[3] = office2007_bufs[salt_pos].encryptedVerifier[3];
|
||||
verifier[0] = office2007_bufs[digests_offset].encryptedVerifier[0];
|
||||
verifier[1] = office2007_bufs[digests_offset].encryptedVerifier[1];
|
||||
verifier[2] = office2007_bufs[digests_offset].encryptedVerifier[2];
|
||||
verifier[3] = office2007_bufs[digests_offset].encryptedVerifier[3];
|
||||
|
||||
u32 data[8];
|
||||
|
||||
|
@ -1328,10 +1328,10 @@ __kernel void m09500_comp (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
|
||||
u32 data[4];
|
||||
|
||||
data[0] = office2010_bufs[salt_pos].encryptedVerifier[0];
|
||||
data[1] = office2010_bufs[salt_pos].encryptedVerifier[1];
|
||||
data[2] = office2010_bufs[salt_pos].encryptedVerifier[2];
|
||||
data[3] = office2010_bufs[salt_pos].encryptedVerifier[3];
|
||||
data[0] = office2010_bufs[digests_offset].encryptedVerifier[0];
|
||||
data[1] = office2010_bufs[digests_offset].encryptedVerifier[1];
|
||||
data[2] = office2010_bufs[digests_offset].encryptedVerifier[2];
|
||||
data[3] = office2010_bufs[digests_offset].encryptedVerifier[3];
|
||||
|
||||
u32 ukeyx[4];
|
||||
|
||||
|
@ -1390,10 +1390,10 @@ __kernel void m09600_comp (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
|
||||
u32 data[4];
|
||||
|
||||
data[0] = office2013_bufs[salt_pos].encryptedVerifier[0];
|
||||
data[1] = office2013_bufs[salt_pos].encryptedVerifier[1];
|
||||
data[2] = office2013_bufs[salt_pos].encryptedVerifier[2];
|
||||
data[3] = office2013_bufs[salt_pos].encryptedVerifier[3];
|
||||
data[0] = office2013_bufs[digests_offset].encryptedVerifier[0];
|
||||
data[1] = office2013_bufs[digests_offset].encryptedVerifier[1];
|
||||
data[2] = office2013_bufs[digests_offset].encryptedVerifier[2];
|
||||
data[3] = office2013_bufs[digests_offset].encryptedVerifier[3];
|
||||
|
||||
u32 ukeyx[8];
|
||||
|
||||
|
@ -633,14 +633,14 @@ __kernel void m09700_m04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
* esalt
|
||||
*/
|
||||
|
||||
const u32 version = oldoffice01_bufs[salt_pos].version;
|
||||
const u32 version = oldoffice01_bufs[digests_offset].version;
|
||||
|
||||
u32 encryptedVerifier[4];
|
||||
|
||||
encryptedVerifier[0] = oldoffice01_bufs[salt_pos].encryptedVerifier[0];
|
||||
encryptedVerifier[1] = oldoffice01_bufs[salt_pos].encryptedVerifier[1];
|
||||
encryptedVerifier[2] = oldoffice01_bufs[salt_pos].encryptedVerifier[2];
|
||||
encryptedVerifier[3] = oldoffice01_bufs[salt_pos].encryptedVerifier[3];
|
||||
encryptedVerifier[0] = oldoffice01_bufs[digests_offset].encryptedVerifier[0];
|
||||
encryptedVerifier[1] = oldoffice01_bufs[digests_offset].encryptedVerifier[1];
|
||||
encryptedVerifier[2] = oldoffice01_bufs[digests_offset].encryptedVerifier[2];
|
||||
encryptedVerifier[3] = oldoffice01_bufs[digests_offset].encryptedVerifier[3];
|
||||
|
||||
/**
|
||||
* loop
|
||||
@ -822,14 +822,14 @@ __kernel void m09700_s04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
* esalt
|
||||
*/
|
||||
|
||||
const u32 version = oldoffice01_bufs[salt_pos].version;
|
||||
const u32 version = oldoffice01_bufs[digests_offset].version;
|
||||
|
||||
u32 encryptedVerifier[4];
|
||||
|
||||
encryptedVerifier[0] = oldoffice01_bufs[salt_pos].encryptedVerifier[0];
|
||||
encryptedVerifier[1] = oldoffice01_bufs[salt_pos].encryptedVerifier[1];
|
||||
encryptedVerifier[2] = oldoffice01_bufs[salt_pos].encryptedVerifier[2];
|
||||
encryptedVerifier[3] = oldoffice01_bufs[salt_pos].encryptedVerifier[3];
|
||||
encryptedVerifier[0] = oldoffice01_bufs[digests_offset].encryptedVerifier[0];
|
||||
encryptedVerifier[1] = oldoffice01_bufs[digests_offset].encryptedVerifier[1];
|
||||
encryptedVerifier[2] = oldoffice01_bufs[digests_offset].encryptedVerifier[2];
|
||||
encryptedVerifier[3] = oldoffice01_bufs[digests_offset].encryptedVerifier[3];
|
||||
|
||||
/**
|
||||
* digest
|
||||
|
@ -631,14 +631,14 @@ __kernel void m09700_m04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
* esalt
|
||||
*/
|
||||
|
||||
const u32 version = oldoffice01_bufs[salt_pos].version;
|
||||
const u32 version = oldoffice01_bufs[digests_offset].version;
|
||||
|
||||
u32 encryptedVerifier[4];
|
||||
|
||||
encryptedVerifier[0] = oldoffice01_bufs[salt_pos].encryptedVerifier[0];
|
||||
encryptedVerifier[1] = oldoffice01_bufs[salt_pos].encryptedVerifier[1];
|
||||
encryptedVerifier[2] = oldoffice01_bufs[salt_pos].encryptedVerifier[2];
|
||||
encryptedVerifier[3] = oldoffice01_bufs[salt_pos].encryptedVerifier[3];
|
||||
encryptedVerifier[0] = oldoffice01_bufs[digests_offset].encryptedVerifier[0];
|
||||
encryptedVerifier[1] = oldoffice01_bufs[digests_offset].encryptedVerifier[1];
|
||||
encryptedVerifier[2] = oldoffice01_bufs[digests_offset].encryptedVerifier[2];
|
||||
encryptedVerifier[3] = oldoffice01_bufs[digests_offset].encryptedVerifier[3];
|
||||
|
||||
/**
|
||||
* loop
|
||||
@ -878,14 +878,14 @@ __kernel void m09700_s04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
* esalt
|
||||
*/
|
||||
|
||||
const u32 version = oldoffice01_bufs[salt_pos].version;
|
||||
const u32 version = oldoffice01_bufs[digests_offset].version;
|
||||
|
||||
u32 encryptedVerifier[4];
|
||||
|
||||
encryptedVerifier[0] = oldoffice01_bufs[salt_pos].encryptedVerifier[0];
|
||||
encryptedVerifier[1] = oldoffice01_bufs[salt_pos].encryptedVerifier[1];
|
||||
encryptedVerifier[2] = oldoffice01_bufs[salt_pos].encryptedVerifier[2];
|
||||
encryptedVerifier[3] = oldoffice01_bufs[salt_pos].encryptedVerifier[3];
|
||||
encryptedVerifier[0] = oldoffice01_bufs[digests_offset].encryptedVerifier[0];
|
||||
encryptedVerifier[1] = oldoffice01_bufs[digests_offset].encryptedVerifier[1];
|
||||
encryptedVerifier[2] = oldoffice01_bufs[digests_offset].encryptedVerifier[2];
|
||||
encryptedVerifier[3] = oldoffice01_bufs[digests_offset].encryptedVerifier[3];
|
||||
|
||||
/**
|
||||
* digest
|
||||
|
@ -287,14 +287,14 @@ void m09700m (__local RC4_KEY *rc4_keys, u32 w0[4], u32 w1[4], u32 w2[4], u32 w3
|
||||
* esalt
|
||||
*/
|
||||
|
||||
const u32 version = oldoffice01_bufs[salt_pos].version;
|
||||
const u32 version = oldoffice01_bufs[digests_offset].version;
|
||||
|
||||
u32 encryptedVerifier[4];
|
||||
|
||||
encryptedVerifier[0] = oldoffice01_bufs[salt_pos].encryptedVerifier[0];
|
||||
encryptedVerifier[1] = oldoffice01_bufs[salt_pos].encryptedVerifier[1];
|
||||
encryptedVerifier[2] = oldoffice01_bufs[salt_pos].encryptedVerifier[2];
|
||||
encryptedVerifier[3] = oldoffice01_bufs[salt_pos].encryptedVerifier[3];
|
||||
encryptedVerifier[0] = oldoffice01_bufs[digests_offset].encryptedVerifier[0];
|
||||
encryptedVerifier[1] = oldoffice01_bufs[digests_offset].encryptedVerifier[1];
|
||||
encryptedVerifier[2] = oldoffice01_bufs[digests_offset].encryptedVerifier[2];
|
||||
encryptedVerifier[3] = oldoffice01_bufs[digests_offset].encryptedVerifier[3];
|
||||
|
||||
/**
|
||||
* loop
|
||||
@ -697,14 +697,14 @@ void m09700s (__local RC4_KEY *rc4_keys, u32 w0[4], u32 w1[4], u32 w2[4], u32 w3
|
||||
* esalt
|
||||
*/
|
||||
|
||||
const u32 version = oldoffice01_bufs[salt_pos].version;
|
||||
const u32 version = oldoffice01_bufs[digests_offset].version;
|
||||
|
||||
u32 encryptedVerifier[4];
|
||||
|
||||
encryptedVerifier[0] = oldoffice01_bufs[salt_pos].encryptedVerifier[0];
|
||||
encryptedVerifier[1] = oldoffice01_bufs[salt_pos].encryptedVerifier[1];
|
||||
encryptedVerifier[2] = oldoffice01_bufs[salt_pos].encryptedVerifier[2];
|
||||
encryptedVerifier[3] = oldoffice01_bufs[salt_pos].encryptedVerifier[3];
|
||||
encryptedVerifier[0] = oldoffice01_bufs[digests_offset].encryptedVerifier[0];
|
||||
encryptedVerifier[1] = oldoffice01_bufs[digests_offset].encryptedVerifier[1];
|
||||
encryptedVerifier[2] = oldoffice01_bufs[digests_offset].encryptedVerifier[2];
|
||||
encryptedVerifier[3] = oldoffice01_bufs[digests_offset].encryptedVerifier[3];
|
||||
|
||||
/**
|
||||
* digest
|
||||
|
@ -278,14 +278,14 @@ __kernel void m09710_m04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
* esalt
|
||||
*/
|
||||
|
||||
const u32 version = oldoffice01_bufs[salt_pos].version;
|
||||
const u32 version = oldoffice01_bufs[digests_offset].version;
|
||||
|
||||
u32 encryptedVerifier[4];
|
||||
|
||||
encryptedVerifier[0] = oldoffice01_bufs[salt_pos].encryptedVerifier[0];
|
||||
encryptedVerifier[1] = oldoffice01_bufs[salt_pos].encryptedVerifier[1];
|
||||
encryptedVerifier[2] = oldoffice01_bufs[salt_pos].encryptedVerifier[2];
|
||||
encryptedVerifier[3] = oldoffice01_bufs[salt_pos].encryptedVerifier[3];
|
||||
encryptedVerifier[0] = oldoffice01_bufs[digests_offset].encryptedVerifier[0];
|
||||
encryptedVerifier[1] = oldoffice01_bufs[digests_offset].encryptedVerifier[1];
|
||||
encryptedVerifier[2] = oldoffice01_bufs[digests_offset].encryptedVerifier[2];
|
||||
encryptedVerifier[3] = oldoffice01_bufs[digests_offset].encryptedVerifier[3];
|
||||
|
||||
/**
|
||||
* loop
|
||||
@ -418,14 +418,14 @@ __kernel void m09710_s04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
* esalt
|
||||
*/
|
||||
|
||||
const u32 version = oldoffice01_bufs[salt_pos].version;
|
||||
const u32 version = oldoffice01_bufs[digests_offset].version;
|
||||
|
||||
u32 encryptedVerifier[4];
|
||||
|
||||
encryptedVerifier[0] = oldoffice01_bufs[salt_pos].encryptedVerifier[0];
|
||||
encryptedVerifier[1] = oldoffice01_bufs[salt_pos].encryptedVerifier[1];
|
||||
encryptedVerifier[2] = oldoffice01_bufs[salt_pos].encryptedVerifier[2];
|
||||
encryptedVerifier[3] = oldoffice01_bufs[salt_pos].encryptedVerifier[3];
|
||||
encryptedVerifier[0] = oldoffice01_bufs[digests_offset].encryptedVerifier[0];
|
||||
encryptedVerifier[1] = oldoffice01_bufs[digests_offset].encryptedVerifier[1];
|
||||
encryptedVerifier[2] = oldoffice01_bufs[digests_offset].encryptedVerifier[2];
|
||||
encryptedVerifier[3] = oldoffice01_bufs[digests_offset].encryptedVerifier[3];
|
||||
|
||||
/**
|
||||
* digest
|
||||
|
@ -276,14 +276,14 @@ __kernel void m09710_m04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
* esalt
|
||||
*/
|
||||
|
||||
const u32 version = oldoffice01_bufs[salt_pos].version;
|
||||
const u32 version = oldoffice01_bufs[digests_offset].version;
|
||||
|
||||
u32 encryptedVerifier[4];
|
||||
|
||||
encryptedVerifier[0] = oldoffice01_bufs[salt_pos].encryptedVerifier[0];
|
||||
encryptedVerifier[1] = oldoffice01_bufs[salt_pos].encryptedVerifier[1];
|
||||
encryptedVerifier[2] = oldoffice01_bufs[salt_pos].encryptedVerifier[2];
|
||||
encryptedVerifier[3] = oldoffice01_bufs[salt_pos].encryptedVerifier[3];
|
||||
encryptedVerifier[0] = oldoffice01_bufs[digests_offset].encryptedVerifier[0];
|
||||
encryptedVerifier[1] = oldoffice01_bufs[digests_offset].encryptedVerifier[1];
|
||||
encryptedVerifier[2] = oldoffice01_bufs[digests_offset].encryptedVerifier[2];
|
||||
encryptedVerifier[3] = oldoffice01_bufs[digests_offset].encryptedVerifier[3];
|
||||
|
||||
/**
|
||||
* loop
|
||||
@ -462,14 +462,14 @@ __kernel void m09710_s04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
* esalt
|
||||
*/
|
||||
|
||||
const u32 version = oldoffice01_bufs[salt_pos].version;
|
||||
const u32 version = oldoffice01_bufs[digests_offset].version;
|
||||
|
||||
u32 encryptedVerifier[4];
|
||||
|
||||
encryptedVerifier[0] = oldoffice01_bufs[salt_pos].encryptedVerifier[0];
|
||||
encryptedVerifier[1] = oldoffice01_bufs[salt_pos].encryptedVerifier[1];
|
||||
encryptedVerifier[2] = oldoffice01_bufs[salt_pos].encryptedVerifier[2];
|
||||
encryptedVerifier[3] = oldoffice01_bufs[salt_pos].encryptedVerifier[3];
|
||||
encryptedVerifier[0] = oldoffice01_bufs[digests_offset].encryptedVerifier[0];
|
||||
encryptedVerifier[1] = oldoffice01_bufs[digests_offset].encryptedVerifier[1];
|
||||
encryptedVerifier[2] = oldoffice01_bufs[digests_offset].encryptedVerifier[2];
|
||||
encryptedVerifier[3] = oldoffice01_bufs[digests_offset].encryptedVerifier[3];
|
||||
|
||||
/**
|
||||
* digest
|
||||
|
@ -253,14 +253,14 @@ void m09710m (__local RC4_KEY *rc4_keys, u32 w0[4], u32 w1[4], u32 w2[4], u32 w3
|
||||
* esalt
|
||||
*/
|
||||
|
||||
const u32 version = oldoffice01_bufs[salt_pos].version;
|
||||
const u32 version = oldoffice01_bufs[digests_offset].version;
|
||||
|
||||
u32 encryptedVerifier[4];
|
||||
|
||||
encryptedVerifier[0] = oldoffice01_bufs[salt_pos].encryptedVerifier[0];
|
||||
encryptedVerifier[1] = oldoffice01_bufs[salt_pos].encryptedVerifier[1];
|
||||
encryptedVerifier[2] = oldoffice01_bufs[salt_pos].encryptedVerifier[2];
|
||||
encryptedVerifier[3] = oldoffice01_bufs[salt_pos].encryptedVerifier[3];
|
||||
encryptedVerifier[0] = oldoffice01_bufs[digests_offset].encryptedVerifier[0];
|
||||
encryptedVerifier[1] = oldoffice01_bufs[digests_offset].encryptedVerifier[1];
|
||||
encryptedVerifier[2] = oldoffice01_bufs[digests_offset].encryptedVerifier[2];
|
||||
encryptedVerifier[3] = oldoffice01_bufs[digests_offset].encryptedVerifier[3];
|
||||
|
||||
/**
|
||||
* loop
|
||||
@ -364,14 +364,14 @@ void m09710s (__local RC4_KEY *rc4_keys, u32 w0[4], u32 w1[4], u32 w2[4], u32 w3
|
||||
* esalt
|
||||
*/
|
||||
|
||||
const u32 version = oldoffice01_bufs[salt_pos].version;
|
||||
const u32 version = oldoffice01_bufs[digests_offset].version;
|
||||
|
||||
u32 encryptedVerifier[4];
|
||||
|
||||
encryptedVerifier[0] = oldoffice01_bufs[salt_pos].encryptedVerifier[0];
|
||||
encryptedVerifier[1] = oldoffice01_bufs[salt_pos].encryptedVerifier[1];
|
||||
encryptedVerifier[2] = oldoffice01_bufs[salt_pos].encryptedVerifier[2];
|
||||
encryptedVerifier[3] = oldoffice01_bufs[salt_pos].encryptedVerifier[3];
|
||||
encryptedVerifier[0] = oldoffice01_bufs[digests_offset].encryptedVerifier[0];
|
||||
encryptedVerifier[1] = oldoffice01_bufs[digests_offset].encryptedVerifier[1];
|
||||
encryptedVerifier[2] = oldoffice01_bufs[digests_offset].encryptedVerifier[2];
|
||||
encryptedVerifier[3] = oldoffice01_bufs[digests_offset].encryptedVerifier[3];
|
||||
|
||||
/**
|
||||
* digest
|
||||
|
@ -319,14 +319,14 @@ __kernel void m09800_m04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
* esalt
|
||||
*/
|
||||
|
||||
const u32 version = oldoffice34_bufs[salt_pos].version;
|
||||
const u32 version = oldoffice34_bufs[digests_offset].version;
|
||||
|
||||
u32 encryptedVerifier[4];
|
||||
|
||||
encryptedVerifier[0] = oldoffice34_bufs[salt_pos].encryptedVerifier[0];
|
||||
encryptedVerifier[1] = oldoffice34_bufs[salt_pos].encryptedVerifier[1];
|
||||
encryptedVerifier[2] = oldoffice34_bufs[salt_pos].encryptedVerifier[2];
|
||||
encryptedVerifier[3] = oldoffice34_bufs[salt_pos].encryptedVerifier[3];
|
||||
encryptedVerifier[0] = oldoffice34_bufs[digests_offset].encryptedVerifier[0];
|
||||
encryptedVerifier[1] = oldoffice34_bufs[digests_offset].encryptedVerifier[1];
|
||||
encryptedVerifier[2] = oldoffice34_bufs[digests_offset].encryptedVerifier[2];
|
||||
encryptedVerifier[3] = oldoffice34_bufs[digests_offset].encryptedVerifier[3];
|
||||
|
||||
/**
|
||||
* loop
|
||||
@ -519,14 +519,14 @@ __kernel void m09800_s04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
* esalt
|
||||
*/
|
||||
|
||||
const u32 version = oldoffice34_bufs[salt_pos].version;
|
||||
const u32 version = oldoffice34_bufs[digests_offset].version;
|
||||
|
||||
u32 encryptedVerifier[4];
|
||||
|
||||
encryptedVerifier[0] = oldoffice34_bufs[salt_pos].encryptedVerifier[0];
|
||||
encryptedVerifier[1] = oldoffice34_bufs[salt_pos].encryptedVerifier[1];
|
||||
encryptedVerifier[2] = oldoffice34_bufs[salt_pos].encryptedVerifier[2];
|
||||
encryptedVerifier[3] = oldoffice34_bufs[salt_pos].encryptedVerifier[3];
|
||||
encryptedVerifier[0] = oldoffice34_bufs[digests_offset].encryptedVerifier[0];
|
||||
encryptedVerifier[1] = oldoffice34_bufs[digests_offset].encryptedVerifier[1];
|
||||
encryptedVerifier[2] = oldoffice34_bufs[digests_offset].encryptedVerifier[2];
|
||||
encryptedVerifier[3] = oldoffice34_bufs[digests_offset].encryptedVerifier[3];
|
||||
|
||||
/**
|
||||
* digest
|
||||
|
@ -317,14 +317,14 @@ __kernel void m09800_m04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
* esalt
|
||||
*/
|
||||
|
||||
const u32 version = oldoffice34_bufs[salt_pos].version;
|
||||
const u32 version = oldoffice34_bufs[digests_offset].version;
|
||||
|
||||
u32 encryptedVerifier[4];
|
||||
|
||||
encryptedVerifier[0] = oldoffice34_bufs[salt_pos].encryptedVerifier[0];
|
||||
encryptedVerifier[1] = oldoffice34_bufs[salt_pos].encryptedVerifier[1];
|
||||
encryptedVerifier[2] = oldoffice34_bufs[salt_pos].encryptedVerifier[2];
|
||||
encryptedVerifier[3] = oldoffice34_bufs[salt_pos].encryptedVerifier[3];
|
||||
encryptedVerifier[0] = oldoffice34_bufs[digests_offset].encryptedVerifier[0];
|
||||
encryptedVerifier[1] = oldoffice34_bufs[digests_offset].encryptedVerifier[1];
|
||||
encryptedVerifier[2] = oldoffice34_bufs[digests_offset].encryptedVerifier[2];
|
||||
encryptedVerifier[3] = oldoffice34_bufs[digests_offset].encryptedVerifier[3];
|
||||
|
||||
/**
|
||||
* loop
|
||||
@ -567,14 +567,14 @@ __kernel void m09800_s04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
* esalt
|
||||
*/
|
||||
|
||||
const u32 version = oldoffice34_bufs[salt_pos].version;
|
||||
const u32 version = oldoffice34_bufs[digests_offset].version;
|
||||
|
||||
u32 encryptedVerifier[4];
|
||||
|
||||
encryptedVerifier[0] = oldoffice34_bufs[salt_pos].encryptedVerifier[0];
|
||||
encryptedVerifier[1] = oldoffice34_bufs[salt_pos].encryptedVerifier[1];
|
||||
encryptedVerifier[2] = oldoffice34_bufs[salt_pos].encryptedVerifier[2];
|
||||
encryptedVerifier[3] = oldoffice34_bufs[salt_pos].encryptedVerifier[3];
|
||||
encryptedVerifier[0] = oldoffice34_bufs[digests_offset].encryptedVerifier[0];
|
||||
encryptedVerifier[1] = oldoffice34_bufs[digests_offset].encryptedVerifier[1];
|
||||
encryptedVerifier[2] = oldoffice34_bufs[digests_offset].encryptedVerifier[2];
|
||||
encryptedVerifier[3] = oldoffice34_bufs[digests_offset].encryptedVerifier[3];
|
||||
|
||||
/**
|
||||
* digest
|
||||
|
@ -291,14 +291,14 @@ void m09800m (__local RC4_KEY *rc4_keys, u32 w0[4], u32 w1[4], u32 w2[4], u32 w3
|
||||
* esalt
|
||||
*/
|
||||
|
||||
const u32 version = oldoffice34_bufs[salt_pos].version;
|
||||
const u32 version = oldoffice34_bufs[digests_offset].version;
|
||||
|
||||
u32 encryptedVerifier[4];
|
||||
|
||||
encryptedVerifier[0] = oldoffice34_bufs[salt_pos].encryptedVerifier[0];
|
||||
encryptedVerifier[1] = oldoffice34_bufs[salt_pos].encryptedVerifier[1];
|
||||
encryptedVerifier[2] = oldoffice34_bufs[salt_pos].encryptedVerifier[2];
|
||||
encryptedVerifier[3] = oldoffice34_bufs[salt_pos].encryptedVerifier[3];
|
||||
encryptedVerifier[0] = oldoffice34_bufs[digests_offset].encryptedVerifier[0];
|
||||
encryptedVerifier[1] = oldoffice34_bufs[digests_offset].encryptedVerifier[1];
|
||||
encryptedVerifier[2] = oldoffice34_bufs[digests_offset].encryptedVerifier[2];
|
||||
encryptedVerifier[3] = oldoffice34_bufs[digests_offset].encryptedVerifier[3];
|
||||
|
||||
/**
|
||||
* loop
|
||||
@ -459,14 +459,14 @@ void m09800s (__local RC4_KEY *rc4_keys, u32 w0[4], u32 w1[4], u32 w2[4], u32 w3
|
||||
* esalt
|
||||
*/
|
||||
|
||||
const u32 version = oldoffice34_bufs[salt_pos].version;
|
||||
const u32 version = oldoffice34_bufs[digests_offset].version;
|
||||
|
||||
u32 encryptedVerifier[4];
|
||||
|
||||
encryptedVerifier[0] = oldoffice34_bufs[salt_pos].encryptedVerifier[0];
|
||||
encryptedVerifier[1] = oldoffice34_bufs[salt_pos].encryptedVerifier[1];
|
||||
encryptedVerifier[2] = oldoffice34_bufs[salt_pos].encryptedVerifier[2];
|
||||
encryptedVerifier[3] = oldoffice34_bufs[salt_pos].encryptedVerifier[3];
|
||||
encryptedVerifier[0] = oldoffice34_bufs[digests_offset].encryptedVerifier[0];
|
||||
encryptedVerifier[1] = oldoffice34_bufs[digests_offset].encryptedVerifier[1];
|
||||
encryptedVerifier[2] = oldoffice34_bufs[digests_offset].encryptedVerifier[2];
|
||||
encryptedVerifier[3] = oldoffice34_bufs[digests_offset].encryptedVerifier[3];
|
||||
|
||||
/**
|
||||
* digest
|
||||
|
@ -308,14 +308,14 @@ __kernel void m09810_m04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
* esalt
|
||||
*/
|
||||
|
||||
const u32 version = oldoffice34_bufs[salt_pos].version;
|
||||
const u32 version = oldoffice34_bufs[digests_offset].version;
|
||||
|
||||
u32 encryptedVerifier[4];
|
||||
|
||||
encryptedVerifier[0] = oldoffice34_bufs[salt_pos].encryptedVerifier[0];
|
||||
encryptedVerifier[1] = oldoffice34_bufs[salt_pos].encryptedVerifier[1];
|
||||
encryptedVerifier[2] = oldoffice34_bufs[salt_pos].encryptedVerifier[2];
|
||||
encryptedVerifier[3] = oldoffice34_bufs[salt_pos].encryptedVerifier[3];
|
||||
encryptedVerifier[0] = oldoffice34_bufs[digests_offset].encryptedVerifier[0];
|
||||
encryptedVerifier[1] = oldoffice34_bufs[digests_offset].encryptedVerifier[1];
|
||||
encryptedVerifier[2] = oldoffice34_bufs[digests_offset].encryptedVerifier[2];
|
||||
encryptedVerifier[3] = oldoffice34_bufs[digests_offset].encryptedVerifier[3];
|
||||
|
||||
/**
|
||||
* loop
|
||||
@ -435,14 +435,14 @@ __kernel void m09810_s04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
* esalt
|
||||
*/
|
||||
|
||||
const u32 version = oldoffice34_bufs[salt_pos].version;
|
||||
const u32 version = oldoffice34_bufs[digests_offset].version;
|
||||
|
||||
u32 encryptedVerifier[4];
|
||||
|
||||
encryptedVerifier[0] = oldoffice34_bufs[salt_pos].encryptedVerifier[0];
|
||||
encryptedVerifier[1] = oldoffice34_bufs[salt_pos].encryptedVerifier[1];
|
||||
encryptedVerifier[2] = oldoffice34_bufs[salt_pos].encryptedVerifier[2];
|
||||
encryptedVerifier[3] = oldoffice34_bufs[salt_pos].encryptedVerifier[3];
|
||||
encryptedVerifier[0] = oldoffice34_bufs[digests_offset].encryptedVerifier[0];
|
||||
encryptedVerifier[1] = oldoffice34_bufs[digests_offset].encryptedVerifier[1];
|
||||
encryptedVerifier[2] = oldoffice34_bufs[digests_offset].encryptedVerifier[2];
|
||||
encryptedVerifier[3] = oldoffice34_bufs[digests_offset].encryptedVerifier[3];
|
||||
|
||||
/**
|
||||
* digest
|
||||
|
@ -306,14 +306,14 @@ __kernel void m09810_m04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
* esalt
|
||||
*/
|
||||
|
||||
const u32 version = oldoffice34_bufs[salt_pos].version;
|
||||
const u32 version = oldoffice34_bufs[digests_offset].version;
|
||||
|
||||
u32 encryptedVerifier[4];
|
||||
|
||||
encryptedVerifier[0] = oldoffice34_bufs[salt_pos].encryptedVerifier[0];
|
||||
encryptedVerifier[1] = oldoffice34_bufs[salt_pos].encryptedVerifier[1];
|
||||
encryptedVerifier[2] = oldoffice34_bufs[salt_pos].encryptedVerifier[2];
|
||||
encryptedVerifier[3] = oldoffice34_bufs[salt_pos].encryptedVerifier[3];
|
||||
encryptedVerifier[0] = oldoffice34_bufs[digests_offset].encryptedVerifier[0];
|
||||
encryptedVerifier[1] = oldoffice34_bufs[digests_offset].encryptedVerifier[1];
|
||||
encryptedVerifier[2] = oldoffice34_bufs[digests_offset].encryptedVerifier[2];
|
||||
encryptedVerifier[3] = oldoffice34_bufs[digests_offset].encryptedVerifier[3];
|
||||
|
||||
/**
|
||||
* loop
|
||||
@ -479,14 +479,14 @@ __kernel void m09810_s04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
* esalt
|
||||
*/
|
||||
|
||||
const u32 version = oldoffice34_bufs[salt_pos].version;
|
||||
const u32 version = oldoffice34_bufs[digests_offset].version;
|
||||
|
||||
u32 encryptedVerifier[4];
|
||||
|
||||
encryptedVerifier[0] = oldoffice34_bufs[salt_pos].encryptedVerifier[0];
|
||||
encryptedVerifier[1] = oldoffice34_bufs[salt_pos].encryptedVerifier[1];
|
||||
encryptedVerifier[2] = oldoffice34_bufs[salt_pos].encryptedVerifier[2];
|
||||
encryptedVerifier[3] = oldoffice34_bufs[salt_pos].encryptedVerifier[3];
|
||||
encryptedVerifier[0] = oldoffice34_bufs[digests_offset].encryptedVerifier[0];
|
||||
encryptedVerifier[1] = oldoffice34_bufs[digests_offset].encryptedVerifier[1];
|
||||
encryptedVerifier[2] = oldoffice34_bufs[digests_offset].encryptedVerifier[2];
|
||||
encryptedVerifier[3] = oldoffice34_bufs[digests_offset].encryptedVerifier[3];
|
||||
|
||||
/**
|
||||
* digest
|
||||
|
@ -283,14 +283,14 @@ void m09810m (__local RC4_KEY *rc4_keys, u32 w0[4], u32 w1[4], u32 w2[4], u32 w3
|
||||
* esalt
|
||||
*/
|
||||
|
||||
const u32 version = oldoffice34_bufs[salt_pos].version;
|
||||
const u32 version = oldoffice34_bufs[digests_offset].version;
|
||||
|
||||
u32 encryptedVerifier[4];
|
||||
|
||||
encryptedVerifier[0] = oldoffice34_bufs[salt_pos].encryptedVerifier[0];
|
||||
encryptedVerifier[1] = oldoffice34_bufs[salt_pos].encryptedVerifier[1];
|
||||
encryptedVerifier[2] = oldoffice34_bufs[salt_pos].encryptedVerifier[2];
|
||||
encryptedVerifier[3] = oldoffice34_bufs[salt_pos].encryptedVerifier[3];
|
||||
encryptedVerifier[0] = oldoffice34_bufs[digests_offset].encryptedVerifier[0];
|
||||
encryptedVerifier[1] = oldoffice34_bufs[digests_offset].encryptedVerifier[1];
|
||||
encryptedVerifier[2] = oldoffice34_bufs[digests_offset].encryptedVerifier[2];
|
||||
encryptedVerifier[3] = oldoffice34_bufs[digests_offset].encryptedVerifier[3];
|
||||
|
||||
/**
|
||||
* loop
|
||||
@ -379,14 +379,14 @@ void m09810s (__local RC4_KEY *rc4_keys, u32 w0[4], u32 w1[4], u32 w2[4], u32 w3
|
||||
* esalt
|
||||
*/
|
||||
|
||||
const u32 version = oldoffice34_bufs[salt_pos].version;
|
||||
const u32 version = oldoffice34_bufs[digests_offset].version;
|
||||
|
||||
u32 encryptedVerifier[4];
|
||||
|
||||
encryptedVerifier[0] = oldoffice34_bufs[salt_pos].encryptedVerifier[0];
|
||||
encryptedVerifier[1] = oldoffice34_bufs[salt_pos].encryptedVerifier[1];
|
||||
encryptedVerifier[2] = oldoffice34_bufs[salt_pos].encryptedVerifier[2];
|
||||
encryptedVerifier[3] = oldoffice34_bufs[salt_pos].encryptedVerifier[3];
|
||||
encryptedVerifier[0] = oldoffice34_bufs[digests_offset].encryptedVerifier[0];
|
||||
encryptedVerifier[1] = oldoffice34_bufs[digests_offset].encryptedVerifier[1];
|
||||
encryptedVerifier[2] = oldoffice34_bufs[digests_offset].encryptedVerifier[2];
|
||||
encryptedVerifier[3] = oldoffice34_bufs[digests_offset].encryptedVerifier[3];
|
||||
|
||||
/**
|
||||
* digest
|
||||
|
@ -277,23 +277,23 @@ __kernel void m10400_m04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
u32 o_buf[8];
|
||||
|
||||
o_buf[0] = pdf_bufs[salt_pos].o_buf[0];
|
||||
o_buf[1] = pdf_bufs[salt_pos].o_buf[1];
|
||||
o_buf[2] = pdf_bufs[salt_pos].o_buf[2];
|
||||
o_buf[3] = pdf_bufs[salt_pos].o_buf[3];
|
||||
o_buf[4] = pdf_bufs[salt_pos].o_buf[4];
|
||||
o_buf[5] = pdf_bufs[salt_pos].o_buf[5];
|
||||
o_buf[6] = pdf_bufs[salt_pos].o_buf[6];
|
||||
o_buf[7] = pdf_bufs[salt_pos].o_buf[7];
|
||||
o_buf[0] = pdf_bufs[digests_offset].o_buf[0];
|
||||
o_buf[1] = pdf_bufs[digests_offset].o_buf[1];
|
||||
o_buf[2] = pdf_bufs[digests_offset].o_buf[2];
|
||||
o_buf[3] = pdf_bufs[digests_offset].o_buf[3];
|
||||
o_buf[4] = pdf_bufs[digests_offset].o_buf[4];
|
||||
o_buf[5] = pdf_bufs[digests_offset].o_buf[5];
|
||||
o_buf[6] = pdf_bufs[digests_offset].o_buf[6];
|
||||
o_buf[7] = pdf_bufs[digests_offset].o_buf[7];
|
||||
|
||||
u32 P = pdf_bufs[salt_pos].P;
|
||||
u32 P = pdf_bufs[digests_offset].P;
|
||||
|
||||
u32 id_buf[4];
|
||||
|
||||
id_buf[0] = pdf_bufs[salt_pos].id_buf[0];
|
||||
id_buf[1] = pdf_bufs[salt_pos].id_buf[1];
|
||||
id_buf[2] = pdf_bufs[salt_pos].id_buf[2];
|
||||
id_buf[3] = pdf_bufs[salt_pos].id_buf[3];
|
||||
id_buf[0] = pdf_bufs[digests_offset].id_buf[0];
|
||||
id_buf[1] = pdf_bufs[digests_offset].id_buf[1];
|
||||
id_buf[2] = pdf_bufs[digests_offset].id_buf[2];
|
||||
id_buf[3] = pdf_bufs[digests_offset].id_buf[3];
|
||||
|
||||
/**
|
||||
* loop
|
||||
@ -453,23 +453,23 @@ __kernel void m10400_s04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
u32 o_buf[8];
|
||||
|
||||
o_buf[0] = pdf_bufs[salt_pos].o_buf[0];
|
||||
o_buf[1] = pdf_bufs[salt_pos].o_buf[1];
|
||||
o_buf[2] = pdf_bufs[salt_pos].o_buf[2];
|
||||
o_buf[3] = pdf_bufs[salt_pos].o_buf[3];
|
||||
o_buf[4] = pdf_bufs[salt_pos].o_buf[4];
|
||||
o_buf[5] = pdf_bufs[salt_pos].o_buf[5];
|
||||
o_buf[6] = pdf_bufs[salt_pos].o_buf[6];
|
||||
o_buf[7] = pdf_bufs[salt_pos].o_buf[7];
|
||||
o_buf[0] = pdf_bufs[digests_offset].o_buf[0];
|
||||
o_buf[1] = pdf_bufs[digests_offset].o_buf[1];
|
||||
o_buf[2] = pdf_bufs[digests_offset].o_buf[2];
|
||||
o_buf[3] = pdf_bufs[digests_offset].o_buf[3];
|
||||
o_buf[4] = pdf_bufs[digests_offset].o_buf[4];
|
||||
o_buf[5] = pdf_bufs[digests_offset].o_buf[5];
|
||||
o_buf[6] = pdf_bufs[digests_offset].o_buf[6];
|
||||
o_buf[7] = pdf_bufs[digests_offset].o_buf[7];
|
||||
|
||||
u32 P = pdf_bufs[salt_pos].P;
|
||||
u32 P = pdf_bufs[digests_offset].P;
|
||||
|
||||
u32 id_buf[4];
|
||||
|
||||
id_buf[0] = pdf_bufs[salt_pos].id_buf[0];
|
||||
id_buf[1] = pdf_bufs[salt_pos].id_buf[1];
|
||||
id_buf[2] = pdf_bufs[salt_pos].id_buf[2];
|
||||
id_buf[3] = pdf_bufs[salt_pos].id_buf[3];
|
||||
id_buf[0] = pdf_bufs[digests_offset].id_buf[0];
|
||||
id_buf[1] = pdf_bufs[digests_offset].id_buf[1];
|
||||
id_buf[2] = pdf_bufs[digests_offset].id_buf[2];
|
||||
id_buf[3] = pdf_bufs[digests_offset].id_buf[3];
|
||||
|
||||
/**
|
||||
* digest
|
||||
|
@ -275,23 +275,23 @@ __kernel void m10400_m04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
u32 o_buf[8];
|
||||
|
||||
o_buf[0] = pdf_bufs[salt_pos].o_buf[0];
|
||||
o_buf[1] = pdf_bufs[salt_pos].o_buf[1];
|
||||
o_buf[2] = pdf_bufs[salt_pos].o_buf[2];
|
||||
o_buf[3] = pdf_bufs[salt_pos].o_buf[3];
|
||||
o_buf[4] = pdf_bufs[salt_pos].o_buf[4];
|
||||
o_buf[5] = pdf_bufs[salt_pos].o_buf[5];
|
||||
o_buf[6] = pdf_bufs[salt_pos].o_buf[6];
|
||||
o_buf[7] = pdf_bufs[salt_pos].o_buf[7];
|
||||
o_buf[0] = pdf_bufs[digests_offset].o_buf[0];
|
||||
o_buf[1] = pdf_bufs[digests_offset].o_buf[1];
|
||||
o_buf[2] = pdf_bufs[digests_offset].o_buf[2];
|
||||
o_buf[3] = pdf_bufs[digests_offset].o_buf[3];
|
||||
o_buf[4] = pdf_bufs[digests_offset].o_buf[4];
|
||||
o_buf[5] = pdf_bufs[digests_offset].o_buf[5];
|
||||
o_buf[6] = pdf_bufs[digests_offset].o_buf[6];
|
||||
o_buf[7] = pdf_bufs[digests_offset].o_buf[7];
|
||||
|
||||
u32 P = pdf_bufs[salt_pos].P;
|
||||
u32 P = pdf_bufs[digests_offset].P;
|
||||
|
||||
u32 id_buf[4];
|
||||
|
||||
id_buf[0] = pdf_bufs[salt_pos].id_buf[0];
|
||||
id_buf[1] = pdf_bufs[salt_pos].id_buf[1];
|
||||
id_buf[2] = pdf_bufs[salt_pos].id_buf[2];
|
||||
id_buf[3] = pdf_bufs[salt_pos].id_buf[3];
|
||||
id_buf[0] = pdf_bufs[digests_offset].id_buf[0];
|
||||
id_buf[1] = pdf_bufs[digests_offset].id_buf[1];
|
||||
id_buf[2] = pdf_bufs[digests_offset].id_buf[2];
|
||||
id_buf[3] = pdf_bufs[digests_offset].id_buf[3];
|
||||
|
||||
/**
|
||||
* loop
|
||||
@ -511,23 +511,23 @@ __kernel void m10400_s04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
u32 o_buf[8];
|
||||
|
||||
o_buf[0] = pdf_bufs[salt_pos].o_buf[0];
|
||||
o_buf[1] = pdf_bufs[salt_pos].o_buf[1];
|
||||
o_buf[2] = pdf_bufs[salt_pos].o_buf[2];
|
||||
o_buf[3] = pdf_bufs[salt_pos].o_buf[3];
|
||||
o_buf[4] = pdf_bufs[salt_pos].o_buf[4];
|
||||
o_buf[5] = pdf_bufs[salt_pos].o_buf[5];
|
||||
o_buf[6] = pdf_bufs[salt_pos].o_buf[6];
|
||||
o_buf[7] = pdf_bufs[salt_pos].o_buf[7];
|
||||
o_buf[0] = pdf_bufs[digests_offset].o_buf[0];
|
||||
o_buf[1] = pdf_bufs[digests_offset].o_buf[1];
|
||||
o_buf[2] = pdf_bufs[digests_offset].o_buf[2];
|
||||
o_buf[3] = pdf_bufs[digests_offset].o_buf[3];
|
||||
o_buf[4] = pdf_bufs[digests_offset].o_buf[4];
|
||||
o_buf[5] = pdf_bufs[digests_offset].o_buf[5];
|
||||
o_buf[6] = pdf_bufs[digests_offset].o_buf[6];
|
||||
o_buf[7] = pdf_bufs[digests_offset].o_buf[7];
|
||||
|
||||
u32 P = pdf_bufs[salt_pos].P;
|
||||
u32 P = pdf_bufs[digests_offset].P;
|
||||
|
||||
u32 id_buf[4];
|
||||
|
||||
id_buf[0] = pdf_bufs[salt_pos].id_buf[0];
|
||||
id_buf[1] = pdf_bufs[salt_pos].id_buf[1];
|
||||
id_buf[2] = pdf_bufs[salt_pos].id_buf[2];
|
||||
id_buf[3] = pdf_bufs[salt_pos].id_buf[3];
|
||||
id_buf[0] = pdf_bufs[digests_offset].id_buf[0];
|
||||
id_buf[1] = pdf_bufs[digests_offset].id_buf[1];
|
||||
id_buf[2] = pdf_bufs[digests_offset].id_buf[2];
|
||||
id_buf[3] = pdf_bufs[digests_offset].id_buf[3];
|
||||
|
||||
/**
|
||||
* digest
|
||||
|
@ -252,23 +252,23 @@ void m10400m (__local RC4_KEY *rc4_keys, u32 w0[4], u32 w1[4], u32 w2[4], u32 w3
|
||||
|
||||
u32 o_buf[8];
|
||||
|
||||
o_buf[0] = pdf_bufs[salt_pos].o_buf[0];
|
||||
o_buf[1] = pdf_bufs[salt_pos].o_buf[1];
|
||||
o_buf[2] = pdf_bufs[salt_pos].o_buf[2];
|
||||
o_buf[3] = pdf_bufs[salt_pos].o_buf[3];
|
||||
o_buf[4] = pdf_bufs[salt_pos].o_buf[4];
|
||||
o_buf[5] = pdf_bufs[salt_pos].o_buf[5];
|
||||
o_buf[6] = pdf_bufs[salt_pos].o_buf[6];
|
||||
o_buf[7] = pdf_bufs[salt_pos].o_buf[7];
|
||||
o_buf[0] = pdf_bufs[digests_offset].o_buf[0];
|
||||
o_buf[1] = pdf_bufs[digests_offset].o_buf[1];
|
||||
o_buf[2] = pdf_bufs[digests_offset].o_buf[2];
|
||||
o_buf[3] = pdf_bufs[digests_offset].o_buf[3];
|
||||
o_buf[4] = pdf_bufs[digests_offset].o_buf[4];
|
||||
o_buf[5] = pdf_bufs[digests_offset].o_buf[5];
|
||||
o_buf[6] = pdf_bufs[digests_offset].o_buf[6];
|
||||
o_buf[7] = pdf_bufs[digests_offset].o_buf[7];
|
||||
|
||||
u32 P = pdf_bufs[salt_pos].P;
|
||||
u32 P = pdf_bufs[digests_offset].P;
|
||||
|
||||
u32 id_buf[4];
|
||||
|
||||
id_buf[0] = pdf_bufs[salt_pos].id_buf[0];
|
||||
id_buf[1] = pdf_bufs[salt_pos].id_buf[1];
|
||||
id_buf[2] = pdf_bufs[salt_pos].id_buf[2];
|
||||
id_buf[3] = pdf_bufs[salt_pos].id_buf[3];
|
||||
id_buf[0] = pdf_bufs[digests_offset].id_buf[0];
|
||||
id_buf[1] = pdf_bufs[digests_offset].id_buf[1];
|
||||
id_buf[2] = pdf_bufs[digests_offset].id_buf[2];
|
||||
id_buf[3] = pdf_bufs[digests_offset].id_buf[3];
|
||||
|
||||
u32 p0[4];
|
||||
u32 p1[4];
|
||||
@ -418,23 +418,23 @@ void m10400s (__local RC4_KEY *rc4_keys, u32 w0[4], u32 w1[4], u32 w2[4], u32 w3
|
||||
|
||||
u32 o_buf[8];
|
||||
|
||||
o_buf[0] = pdf_bufs[salt_pos].o_buf[0];
|
||||
o_buf[1] = pdf_bufs[salt_pos].o_buf[1];
|
||||
o_buf[2] = pdf_bufs[salt_pos].o_buf[2];
|
||||
o_buf[3] = pdf_bufs[salt_pos].o_buf[3];
|
||||
o_buf[4] = pdf_bufs[salt_pos].o_buf[4];
|
||||
o_buf[5] = pdf_bufs[salt_pos].o_buf[5];
|
||||
o_buf[6] = pdf_bufs[salt_pos].o_buf[6];
|
||||
o_buf[7] = pdf_bufs[salt_pos].o_buf[7];
|
||||
o_buf[0] = pdf_bufs[digests_offset].o_buf[0];
|
||||
o_buf[1] = pdf_bufs[digests_offset].o_buf[1];
|
||||
o_buf[2] = pdf_bufs[digests_offset].o_buf[2];
|
||||
o_buf[3] = pdf_bufs[digests_offset].o_buf[3];
|
||||
o_buf[4] = pdf_bufs[digests_offset].o_buf[4];
|
||||
o_buf[5] = pdf_bufs[digests_offset].o_buf[5];
|
||||
o_buf[6] = pdf_bufs[digests_offset].o_buf[6];
|
||||
o_buf[7] = pdf_bufs[digests_offset].o_buf[7];
|
||||
|
||||
u32 P = pdf_bufs[salt_pos].P;
|
||||
u32 P = pdf_bufs[digests_offset].P;
|
||||
|
||||
u32 id_buf[4];
|
||||
|
||||
id_buf[0] = pdf_bufs[salt_pos].id_buf[0];
|
||||
id_buf[1] = pdf_bufs[salt_pos].id_buf[1];
|
||||
id_buf[2] = pdf_bufs[salt_pos].id_buf[2];
|
||||
id_buf[3] = pdf_bufs[salt_pos].id_buf[3];
|
||||
id_buf[0] = pdf_bufs[digests_offset].id_buf[0];
|
||||
id_buf[1] = pdf_bufs[digests_offset].id_buf[1];
|
||||
id_buf[2] = pdf_bufs[digests_offset].id_buf[2];
|
||||
id_buf[3] = pdf_bufs[digests_offset].id_buf[3];
|
||||
|
||||
u32 p0[4];
|
||||
u32 p1[4];
|
||||
|
@ -177,23 +177,23 @@ __kernel void m10410_m04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
u32 o_buf[8];
|
||||
|
||||
o_buf[0] = pdf_bufs[salt_pos].o_buf[0];
|
||||
o_buf[1] = pdf_bufs[salt_pos].o_buf[1];
|
||||
o_buf[2] = pdf_bufs[salt_pos].o_buf[2];
|
||||
o_buf[3] = pdf_bufs[salt_pos].o_buf[3];
|
||||
o_buf[4] = pdf_bufs[salt_pos].o_buf[4];
|
||||
o_buf[5] = pdf_bufs[salt_pos].o_buf[5];
|
||||
o_buf[6] = pdf_bufs[salt_pos].o_buf[6];
|
||||
o_buf[7] = pdf_bufs[salt_pos].o_buf[7];
|
||||
o_buf[0] = pdf_bufs[digests_offset].o_buf[0];
|
||||
o_buf[1] = pdf_bufs[digests_offset].o_buf[1];
|
||||
o_buf[2] = pdf_bufs[digests_offset].o_buf[2];
|
||||
o_buf[3] = pdf_bufs[digests_offset].o_buf[3];
|
||||
o_buf[4] = pdf_bufs[digests_offset].o_buf[4];
|
||||
o_buf[5] = pdf_bufs[digests_offset].o_buf[5];
|
||||
o_buf[6] = pdf_bufs[digests_offset].o_buf[6];
|
||||
o_buf[7] = pdf_bufs[digests_offset].o_buf[7];
|
||||
|
||||
u32 P = pdf_bufs[salt_pos].P;
|
||||
u32 P = pdf_bufs[digests_offset].P;
|
||||
|
||||
u32 id_buf[4];
|
||||
|
||||
id_buf[0] = pdf_bufs[salt_pos].id_buf[0];
|
||||
id_buf[1] = pdf_bufs[salt_pos].id_buf[1];
|
||||
id_buf[2] = pdf_bufs[salt_pos].id_buf[2];
|
||||
id_buf[3] = pdf_bufs[salt_pos].id_buf[3];
|
||||
id_buf[0] = pdf_bufs[digests_offset].id_buf[0];
|
||||
id_buf[1] = pdf_bufs[digests_offset].id_buf[1];
|
||||
id_buf[2] = pdf_bufs[digests_offset].id_buf[2];
|
||||
id_buf[3] = pdf_bufs[digests_offset].id_buf[3];
|
||||
|
||||
/**
|
||||
* loop
|
||||
@ -319,23 +319,23 @@ __kernel void m10410_s04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
u32 o_buf[8];
|
||||
|
||||
o_buf[0] = pdf_bufs[salt_pos].o_buf[0];
|
||||
o_buf[1] = pdf_bufs[salt_pos].o_buf[1];
|
||||
o_buf[2] = pdf_bufs[salt_pos].o_buf[2];
|
||||
o_buf[3] = pdf_bufs[salt_pos].o_buf[3];
|
||||
o_buf[4] = pdf_bufs[salt_pos].o_buf[4];
|
||||
o_buf[5] = pdf_bufs[salt_pos].o_buf[5];
|
||||
o_buf[6] = pdf_bufs[salt_pos].o_buf[6];
|
||||
o_buf[7] = pdf_bufs[salt_pos].o_buf[7];
|
||||
o_buf[0] = pdf_bufs[digests_offset].o_buf[0];
|
||||
o_buf[1] = pdf_bufs[digests_offset].o_buf[1];
|
||||
o_buf[2] = pdf_bufs[digests_offset].o_buf[2];
|
||||
o_buf[3] = pdf_bufs[digests_offset].o_buf[3];
|
||||
o_buf[4] = pdf_bufs[digests_offset].o_buf[4];
|
||||
o_buf[5] = pdf_bufs[digests_offset].o_buf[5];
|
||||
o_buf[6] = pdf_bufs[digests_offset].o_buf[6];
|
||||
o_buf[7] = pdf_bufs[digests_offset].o_buf[7];
|
||||
|
||||
u32 P = pdf_bufs[salt_pos].P;
|
||||
u32 P = pdf_bufs[digests_offset].P;
|
||||
|
||||
u32 id_buf[4];
|
||||
|
||||
id_buf[0] = pdf_bufs[salt_pos].id_buf[0];
|
||||
id_buf[1] = pdf_bufs[salt_pos].id_buf[1];
|
||||
id_buf[2] = pdf_bufs[salt_pos].id_buf[2];
|
||||
id_buf[3] = pdf_bufs[salt_pos].id_buf[3];
|
||||
id_buf[0] = pdf_bufs[digests_offset].id_buf[0];
|
||||
id_buf[1] = pdf_bufs[digests_offset].id_buf[1];
|
||||
id_buf[2] = pdf_bufs[digests_offset].id_buf[2];
|
||||
id_buf[3] = pdf_bufs[digests_offset].id_buf[3];
|
||||
|
||||
/**
|
||||
* digest
|
||||
|
@ -160,23 +160,23 @@ __kernel void m10420_m04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
u32 o_buf[8];
|
||||
|
||||
o_buf[0] = pdf_bufs[salt_pos].o_buf[0];
|
||||
o_buf[1] = pdf_bufs[salt_pos].o_buf[1];
|
||||
o_buf[2] = pdf_bufs[salt_pos].o_buf[2];
|
||||
o_buf[3] = pdf_bufs[salt_pos].o_buf[3];
|
||||
o_buf[4] = pdf_bufs[salt_pos].o_buf[4];
|
||||
o_buf[5] = pdf_bufs[salt_pos].o_buf[5];
|
||||
o_buf[6] = pdf_bufs[salt_pos].o_buf[6];
|
||||
o_buf[7] = pdf_bufs[salt_pos].o_buf[7];
|
||||
o_buf[0] = pdf_bufs[digests_offset].o_buf[0];
|
||||
o_buf[1] = pdf_bufs[digests_offset].o_buf[1];
|
||||
o_buf[2] = pdf_bufs[digests_offset].o_buf[2];
|
||||
o_buf[3] = pdf_bufs[digests_offset].o_buf[3];
|
||||
o_buf[4] = pdf_bufs[digests_offset].o_buf[4];
|
||||
o_buf[5] = pdf_bufs[digests_offset].o_buf[5];
|
||||
o_buf[6] = pdf_bufs[digests_offset].o_buf[6];
|
||||
o_buf[7] = pdf_bufs[digests_offset].o_buf[7];
|
||||
|
||||
u32 P = pdf_bufs[salt_pos].P;
|
||||
u32 P = pdf_bufs[digests_offset].P;
|
||||
|
||||
u32 id_buf[4];
|
||||
|
||||
id_buf[0] = pdf_bufs[salt_pos].id_buf[0];
|
||||
id_buf[1] = pdf_bufs[salt_pos].id_buf[1];
|
||||
id_buf[2] = pdf_bufs[salt_pos].id_buf[2];
|
||||
id_buf[3] = pdf_bufs[salt_pos].id_buf[3];
|
||||
id_buf[0] = pdf_bufs[digests_offset].id_buf[0];
|
||||
id_buf[1] = pdf_bufs[digests_offset].id_buf[1];
|
||||
id_buf[2] = pdf_bufs[digests_offset].id_buf[2];
|
||||
id_buf[3] = pdf_bufs[digests_offset].id_buf[3];
|
||||
|
||||
/**
|
||||
* loop
|
||||
@ -321,23 +321,23 @@ __kernel void m10420_s04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
u32 o_buf[8];
|
||||
|
||||
o_buf[0] = pdf_bufs[salt_pos].o_buf[0];
|
||||
o_buf[1] = pdf_bufs[salt_pos].o_buf[1];
|
||||
o_buf[2] = pdf_bufs[salt_pos].o_buf[2];
|
||||
o_buf[3] = pdf_bufs[salt_pos].o_buf[3];
|
||||
o_buf[4] = pdf_bufs[salt_pos].o_buf[4];
|
||||
o_buf[5] = pdf_bufs[salt_pos].o_buf[5];
|
||||
o_buf[6] = pdf_bufs[salt_pos].o_buf[6];
|
||||
o_buf[7] = pdf_bufs[salt_pos].o_buf[7];
|
||||
o_buf[0] = pdf_bufs[digests_offset].o_buf[0];
|
||||
o_buf[1] = pdf_bufs[digests_offset].o_buf[1];
|
||||
o_buf[2] = pdf_bufs[digests_offset].o_buf[2];
|
||||
o_buf[3] = pdf_bufs[digests_offset].o_buf[3];
|
||||
o_buf[4] = pdf_bufs[digests_offset].o_buf[4];
|
||||
o_buf[5] = pdf_bufs[digests_offset].o_buf[5];
|
||||
o_buf[6] = pdf_bufs[digests_offset].o_buf[6];
|
||||
o_buf[7] = pdf_bufs[digests_offset].o_buf[7];
|
||||
|
||||
u32 P = pdf_bufs[salt_pos].P;
|
||||
u32 P = pdf_bufs[digests_offset].P;
|
||||
|
||||
u32 id_buf[4];
|
||||
|
||||
id_buf[0] = pdf_bufs[salt_pos].id_buf[0];
|
||||
id_buf[1] = pdf_bufs[salt_pos].id_buf[1];
|
||||
id_buf[2] = pdf_bufs[salt_pos].id_buf[2];
|
||||
id_buf[3] = pdf_bufs[salt_pos].id_buf[3];
|
||||
id_buf[0] = pdf_bufs[digests_offset].id_buf[0];
|
||||
id_buf[1] = pdf_bufs[digests_offset].id_buf[1];
|
||||
id_buf[2] = pdf_bufs[digests_offset].id_buf[2];
|
||||
id_buf[3] = pdf_bufs[digests_offset].id_buf[3];
|
||||
|
||||
/**
|
||||
* digest
|
||||
|
@ -158,23 +158,23 @@ __kernel void m10420_m04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
u32 o_buf[8];
|
||||
|
||||
o_buf[0] = pdf_bufs[salt_pos].o_buf[0];
|
||||
o_buf[1] = pdf_bufs[salt_pos].o_buf[1];
|
||||
o_buf[2] = pdf_bufs[salt_pos].o_buf[2];
|
||||
o_buf[3] = pdf_bufs[salt_pos].o_buf[3];
|
||||
o_buf[4] = pdf_bufs[salt_pos].o_buf[4];
|
||||
o_buf[5] = pdf_bufs[salt_pos].o_buf[5];
|
||||
o_buf[6] = pdf_bufs[salt_pos].o_buf[6];
|
||||
o_buf[7] = pdf_bufs[salt_pos].o_buf[7];
|
||||
o_buf[0] = pdf_bufs[digests_offset].o_buf[0];
|
||||
o_buf[1] = pdf_bufs[digests_offset].o_buf[1];
|
||||
o_buf[2] = pdf_bufs[digests_offset].o_buf[2];
|
||||
o_buf[3] = pdf_bufs[digests_offset].o_buf[3];
|
||||
o_buf[4] = pdf_bufs[digests_offset].o_buf[4];
|
||||
o_buf[5] = pdf_bufs[digests_offset].o_buf[5];
|
||||
o_buf[6] = pdf_bufs[digests_offset].o_buf[6];
|
||||
o_buf[7] = pdf_bufs[digests_offset].o_buf[7];
|
||||
|
||||
u32 P = pdf_bufs[salt_pos].P;
|
||||
u32 P = pdf_bufs[digests_offset].P;
|
||||
|
||||
u32 id_buf[4];
|
||||
|
||||
id_buf[0] = pdf_bufs[salt_pos].id_buf[0];
|
||||
id_buf[1] = pdf_bufs[salt_pos].id_buf[1];
|
||||
id_buf[2] = pdf_bufs[salt_pos].id_buf[2];
|
||||
id_buf[3] = pdf_bufs[salt_pos].id_buf[3];
|
||||
id_buf[0] = pdf_bufs[digests_offset].id_buf[0];
|
||||
id_buf[1] = pdf_bufs[digests_offset].id_buf[1];
|
||||
id_buf[2] = pdf_bufs[digests_offset].id_buf[2];
|
||||
id_buf[3] = pdf_bufs[digests_offset].id_buf[3];
|
||||
|
||||
/**
|
||||
* loop
|
||||
@ -379,23 +379,23 @@ __kernel void m10420_s04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
u32 o_buf[8];
|
||||
|
||||
o_buf[0] = pdf_bufs[salt_pos].o_buf[0];
|
||||
o_buf[1] = pdf_bufs[salt_pos].o_buf[1];
|
||||
o_buf[2] = pdf_bufs[salt_pos].o_buf[2];
|
||||
o_buf[3] = pdf_bufs[salt_pos].o_buf[3];
|
||||
o_buf[4] = pdf_bufs[salt_pos].o_buf[4];
|
||||
o_buf[5] = pdf_bufs[salt_pos].o_buf[5];
|
||||
o_buf[6] = pdf_bufs[salt_pos].o_buf[6];
|
||||
o_buf[7] = pdf_bufs[salt_pos].o_buf[7];
|
||||
o_buf[0] = pdf_bufs[digests_offset].o_buf[0];
|
||||
o_buf[1] = pdf_bufs[digests_offset].o_buf[1];
|
||||
o_buf[2] = pdf_bufs[digests_offset].o_buf[2];
|
||||
o_buf[3] = pdf_bufs[digests_offset].o_buf[3];
|
||||
o_buf[4] = pdf_bufs[digests_offset].o_buf[4];
|
||||
o_buf[5] = pdf_bufs[digests_offset].o_buf[5];
|
||||
o_buf[6] = pdf_bufs[digests_offset].o_buf[6];
|
||||
o_buf[7] = pdf_bufs[digests_offset].o_buf[7];
|
||||
|
||||
u32 P = pdf_bufs[salt_pos].P;
|
||||
u32 P = pdf_bufs[digests_offset].P;
|
||||
|
||||
u32 id_buf[4];
|
||||
|
||||
id_buf[0] = pdf_bufs[salt_pos].id_buf[0];
|
||||
id_buf[1] = pdf_bufs[salt_pos].id_buf[1];
|
||||
id_buf[2] = pdf_bufs[salt_pos].id_buf[2];
|
||||
id_buf[3] = pdf_bufs[salt_pos].id_buf[3];
|
||||
id_buf[0] = pdf_bufs[digests_offset].id_buf[0];
|
||||
id_buf[1] = pdf_bufs[digests_offset].id_buf[1];
|
||||
id_buf[2] = pdf_bufs[digests_offset].id_buf[2];
|
||||
id_buf[3] = pdf_bufs[digests_offset].id_buf[3];
|
||||
|
||||
/**
|
||||
* digest
|
||||
|
@ -137,23 +137,23 @@ void m10420m (u32 w0[4], u32 w1[4], u32 w2[4], u32 w3[4], const u32 pw_len, __gl
|
||||
|
||||
u32 o_buf[8];
|
||||
|
||||
o_buf[0] = pdf_bufs[salt_pos].o_buf[0];
|
||||
o_buf[1] = pdf_bufs[salt_pos].o_buf[1];
|
||||
o_buf[2] = pdf_bufs[salt_pos].o_buf[2];
|
||||
o_buf[3] = pdf_bufs[salt_pos].o_buf[3];
|
||||
o_buf[4] = pdf_bufs[salt_pos].o_buf[4];
|
||||
o_buf[5] = pdf_bufs[salt_pos].o_buf[5];
|
||||
o_buf[6] = pdf_bufs[salt_pos].o_buf[6];
|
||||
o_buf[7] = pdf_bufs[salt_pos].o_buf[7];
|
||||
o_buf[0] = pdf_bufs[digests_offset].o_buf[0];
|
||||
o_buf[1] = pdf_bufs[digests_offset].o_buf[1];
|
||||
o_buf[2] = pdf_bufs[digests_offset].o_buf[2];
|
||||
o_buf[3] = pdf_bufs[digests_offset].o_buf[3];
|
||||
o_buf[4] = pdf_bufs[digests_offset].o_buf[4];
|
||||
o_buf[5] = pdf_bufs[digests_offset].o_buf[5];
|
||||
o_buf[6] = pdf_bufs[digests_offset].o_buf[6];
|
||||
o_buf[7] = pdf_bufs[digests_offset].o_buf[7];
|
||||
|
||||
u32 P = pdf_bufs[salt_pos].P;
|
||||
u32 P = pdf_bufs[digests_offset].P;
|
||||
|
||||
u32 id_buf[4];
|
||||
|
||||
id_buf[0] = pdf_bufs[salt_pos].id_buf[0];
|
||||
id_buf[1] = pdf_bufs[salt_pos].id_buf[1];
|
||||
id_buf[2] = pdf_bufs[salt_pos].id_buf[2];
|
||||
id_buf[3] = pdf_bufs[salt_pos].id_buf[3];
|
||||
id_buf[0] = pdf_bufs[digests_offset].id_buf[0];
|
||||
id_buf[1] = pdf_bufs[digests_offset].id_buf[1];
|
||||
id_buf[2] = pdf_bufs[digests_offset].id_buf[2];
|
||||
id_buf[3] = pdf_bufs[digests_offset].id_buf[3];
|
||||
|
||||
u32 p0[4];
|
||||
u32 p1[4];
|
||||
@ -290,23 +290,23 @@ void m10420s (u32 w0[4], u32 w1[4], u32 w2[4], u32 w3[4], const u32 pw_len, __gl
|
||||
|
||||
u32 o_buf[8];
|
||||
|
||||
o_buf[0] = pdf_bufs[salt_pos].o_buf[0];
|
||||
o_buf[1] = pdf_bufs[salt_pos].o_buf[1];
|
||||
o_buf[2] = pdf_bufs[salt_pos].o_buf[2];
|
||||
o_buf[3] = pdf_bufs[salt_pos].o_buf[3];
|
||||
o_buf[4] = pdf_bufs[salt_pos].o_buf[4];
|
||||
o_buf[5] = pdf_bufs[salt_pos].o_buf[5];
|
||||
o_buf[6] = pdf_bufs[salt_pos].o_buf[6];
|
||||
o_buf[7] = pdf_bufs[salt_pos].o_buf[7];
|
||||
o_buf[0] = pdf_bufs[digests_offset].o_buf[0];
|
||||
o_buf[1] = pdf_bufs[digests_offset].o_buf[1];
|
||||
o_buf[2] = pdf_bufs[digests_offset].o_buf[2];
|
||||
o_buf[3] = pdf_bufs[digests_offset].o_buf[3];
|
||||
o_buf[4] = pdf_bufs[digests_offset].o_buf[4];
|
||||
o_buf[5] = pdf_bufs[digests_offset].o_buf[5];
|
||||
o_buf[6] = pdf_bufs[digests_offset].o_buf[6];
|
||||
o_buf[7] = pdf_bufs[digests_offset].o_buf[7];
|
||||
|
||||
u32 P = pdf_bufs[salt_pos].P;
|
||||
u32 P = pdf_bufs[digests_offset].P;
|
||||
|
||||
u32 id_buf[4];
|
||||
|
||||
id_buf[0] = pdf_bufs[salt_pos].id_buf[0];
|
||||
id_buf[1] = pdf_bufs[salt_pos].id_buf[1];
|
||||
id_buf[2] = pdf_bufs[salt_pos].id_buf[2];
|
||||
id_buf[3] = pdf_bufs[salt_pos].id_buf[3];
|
||||
id_buf[0] = pdf_bufs[digests_offset].id_buf[0];
|
||||
id_buf[1] = pdf_bufs[digests_offset].id_buf[1];
|
||||
id_buf[2] = pdf_bufs[digests_offset].id_buf[2];
|
||||
id_buf[3] = pdf_bufs[digests_offset].id_buf[3];
|
||||
|
||||
u32 p0[4];
|
||||
u32 p1[4];
|
||||
|
@ -295,48 +295,48 @@ __kernel void m10500_init (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
|
||||
u32 o_buf[8];
|
||||
|
||||
o_buf[0] = pdf_bufs[salt_pos].o_buf[0];
|
||||
o_buf[1] = pdf_bufs[salt_pos].o_buf[1];
|
||||
o_buf[2] = pdf_bufs[salt_pos].o_buf[2];
|
||||
o_buf[3] = pdf_bufs[salt_pos].o_buf[3];
|
||||
o_buf[4] = pdf_bufs[salt_pos].o_buf[4];
|
||||
o_buf[5] = pdf_bufs[salt_pos].o_buf[5];
|
||||
o_buf[6] = pdf_bufs[salt_pos].o_buf[6];
|
||||
o_buf[7] = pdf_bufs[salt_pos].o_buf[7];
|
||||
o_buf[0] = pdf_bufs[digests_offset].o_buf[0];
|
||||
o_buf[1] = pdf_bufs[digests_offset].o_buf[1];
|
||||
o_buf[2] = pdf_bufs[digests_offset].o_buf[2];
|
||||
o_buf[3] = pdf_bufs[digests_offset].o_buf[3];
|
||||
o_buf[4] = pdf_bufs[digests_offset].o_buf[4];
|
||||
o_buf[5] = pdf_bufs[digests_offset].o_buf[5];
|
||||
o_buf[6] = pdf_bufs[digests_offset].o_buf[6];
|
||||
o_buf[7] = pdf_bufs[digests_offset].o_buf[7];
|
||||
|
||||
u32 P = pdf_bufs[salt_pos].P;
|
||||
u32 P = pdf_bufs[digests_offset].P;
|
||||
|
||||
u32 id_buf[12];
|
||||
|
||||
id_buf[ 0] = pdf_bufs[salt_pos].id_buf[0];
|
||||
id_buf[ 1] = pdf_bufs[salt_pos].id_buf[1];
|
||||
id_buf[ 2] = pdf_bufs[salt_pos].id_buf[2];
|
||||
id_buf[ 3] = pdf_bufs[salt_pos].id_buf[3];
|
||||
id_buf[ 0] = pdf_bufs[digests_offset].id_buf[0];
|
||||
id_buf[ 1] = pdf_bufs[digests_offset].id_buf[1];
|
||||
id_buf[ 2] = pdf_bufs[digests_offset].id_buf[2];
|
||||
id_buf[ 3] = pdf_bufs[digests_offset].id_buf[3];
|
||||
|
||||
id_buf[ 4] = pdf_bufs[salt_pos].id_buf[4];
|
||||
id_buf[ 5] = pdf_bufs[salt_pos].id_buf[5];
|
||||
id_buf[ 6] = pdf_bufs[salt_pos].id_buf[6];
|
||||
id_buf[ 7] = pdf_bufs[salt_pos].id_buf[7];
|
||||
id_buf[ 4] = pdf_bufs[digests_offset].id_buf[4];
|
||||
id_buf[ 5] = pdf_bufs[digests_offset].id_buf[5];
|
||||
id_buf[ 6] = pdf_bufs[digests_offset].id_buf[6];
|
||||
id_buf[ 7] = pdf_bufs[digests_offset].id_buf[7];
|
||||
|
||||
id_buf[ 8] = 0;
|
||||
id_buf[ 9] = 0;
|
||||
id_buf[10] = 0;
|
||||
id_buf[11] = 0;
|
||||
|
||||
u32 id_len = pdf_bufs[salt_pos].id_len;
|
||||
u32 id_len = pdf_bufs[digests_offset].id_len;
|
||||
u32 id_len4 = id_len / 4;
|
||||
|
||||
u32 rc4data[2];
|
||||
|
||||
rc4data[0] = pdf_bufs[salt_pos].rc4data[0];
|
||||
rc4data[1] = pdf_bufs[salt_pos].rc4data[1];
|
||||
rc4data[0] = pdf_bufs[digests_offset].rc4data[0];
|
||||
rc4data[1] = pdf_bufs[digests_offset].rc4data[1];
|
||||
|
||||
u32 final_length = 68 + id_len;
|
||||
|
||||
u32 w11 = 0x80;
|
||||
u32 w12 = 0;
|
||||
|
||||
if (pdf_bufs[salt_pos].enc_md != 1)
|
||||
if (pdf_bufs[digests_offset].enc_md != 1)
|
||||
{
|
||||
w11 = 0xffffffff;
|
||||
w12 = 0x80;
|
||||
|
@ -462,20 +462,20 @@ __kernel void m10900_init (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
u32 esalt_buf2[4];
|
||||
u32 esalt_buf3[4];
|
||||
|
||||
esalt_buf0[0] = swap32_S (esalt_bufs[salt_pos].salt_buf[ 0]);
|
||||
esalt_buf0[1] = swap32_S (esalt_bufs[salt_pos].salt_buf[ 1]);
|
||||
esalt_buf0[2] = swap32_S (esalt_bufs[salt_pos].salt_buf[ 2]);
|
||||
esalt_buf0[3] = swap32_S (esalt_bufs[salt_pos].salt_buf[ 3]);
|
||||
esalt_buf1[0] = swap32_S (esalt_bufs[salt_pos].salt_buf[ 4]);
|
||||
esalt_buf1[1] = swap32_S (esalt_bufs[salt_pos].salt_buf[ 5]);
|
||||
esalt_buf1[2] = swap32_S (esalt_bufs[salt_pos].salt_buf[ 6]);
|
||||
esalt_buf1[3] = swap32_S (esalt_bufs[salt_pos].salt_buf[ 7]);
|
||||
esalt_buf2[0] = swap32_S (esalt_bufs[salt_pos].salt_buf[ 8]);
|
||||
esalt_buf2[1] = swap32_S (esalt_bufs[salt_pos].salt_buf[ 9]);
|
||||
esalt_buf2[2] = swap32_S (esalt_bufs[salt_pos].salt_buf[10]);
|
||||
esalt_buf2[3] = swap32_S (esalt_bufs[salt_pos].salt_buf[11]);
|
||||
esalt_buf3[0] = swap32_S (esalt_bufs[salt_pos].salt_buf[12]);
|
||||
esalt_buf3[1] = swap32_S (esalt_bufs[salt_pos].salt_buf[13]);
|
||||
esalt_buf0[0] = swap32_S (esalt_bufs[digests_offset].salt_buf[ 0]);
|
||||
esalt_buf0[1] = swap32_S (esalt_bufs[digests_offset].salt_buf[ 1]);
|
||||
esalt_buf0[2] = swap32_S (esalt_bufs[digests_offset].salt_buf[ 2]);
|
||||
esalt_buf0[3] = swap32_S (esalt_bufs[digests_offset].salt_buf[ 3]);
|
||||
esalt_buf1[0] = swap32_S (esalt_bufs[digests_offset].salt_buf[ 4]);
|
||||
esalt_buf1[1] = swap32_S (esalt_bufs[digests_offset].salt_buf[ 5]);
|
||||
esalt_buf1[2] = swap32_S (esalt_bufs[digests_offset].salt_buf[ 6]);
|
||||
esalt_buf1[3] = swap32_S (esalt_bufs[digests_offset].salt_buf[ 7]);
|
||||
esalt_buf2[0] = swap32_S (esalt_bufs[digests_offset].salt_buf[ 8]);
|
||||
esalt_buf2[1] = swap32_S (esalt_bufs[digests_offset].salt_buf[ 9]);
|
||||
esalt_buf2[2] = swap32_S (esalt_bufs[digests_offset].salt_buf[10]);
|
||||
esalt_buf2[3] = swap32_S (esalt_bufs[digests_offset].salt_buf[11]);
|
||||
esalt_buf3[0] = swap32_S (esalt_bufs[digests_offset].salt_buf[12]);
|
||||
esalt_buf3[1] = swap32_S (esalt_bufs[digests_offset].salt_buf[13]);
|
||||
esalt_buf3[2] = 0;
|
||||
esalt_buf3[3] = (64 + salt_len + 4) * 8;
|
||||
|
||||
|
@ -1312,14 +1312,14 @@ __kernel void m11300_comp (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
|
||||
u32 out[4];
|
||||
|
||||
for (u32 i = 0; i < esalt_bufs[salt_pos].cry_master_len; i += 16)
|
||||
for (u32 i = 0; i < esalt_bufs[digests_offset].cry_master_len; i += 16)
|
||||
{
|
||||
u32 data[4];
|
||||
|
||||
data[0] = swap32 (esalt_bufs[salt_pos].cry_master_buf[(i / 4) + 0]);
|
||||
data[1] = swap32 (esalt_bufs[salt_pos].cry_master_buf[(i / 4) + 1]);
|
||||
data[2] = swap32 (esalt_bufs[salt_pos].cry_master_buf[(i / 4) + 2]);
|
||||
data[3] = swap32 (esalt_bufs[salt_pos].cry_master_buf[(i / 4) + 3]);
|
||||
data[0] = swap32 (esalt_bufs[digests_offset].cry_master_buf[(i / 4) + 0]);
|
||||
data[1] = swap32 (esalt_bufs[digests_offset].cry_master_buf[(i / 4) + 1]);
|
||||
data[2] = swap32 (esalt_bufs[digests_offset].cry_master_buf[(i / 4) + 2]);
|
||||
data[3] = swap32 (esalt_bufs[digests_offset].cry_master_buf[(i / 4) + 3]);
|
||||
|
||||
AES256_decrypt (data, out, rk, s_td0, s_td1, s_td2, s_td3, s_td4);
|
||||
|
||||
|
@ -799,41 +799,41 @@ __kernel void m11400_m04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
* salt
|
||||
*/
|
||||
|
||||
const u32 salt_len = esalt_bufs[salt_pos].salt_len; // not a bug, we need to get it from the esalt
|
||||
const u32 salt_len = esalt_bufs[digests_offset].salt_len; // not a bug, we need to get it from the esalt
|
||||
|
||||
u32 salt_buf0[16];
|
||||
u32 salt_buf1[16];
|
||||
|
||||
salt_buf0[ 0] = esalt_bufs[salt_pos].salt_buf[ 0];
|
||||
salt_buf0[ 1] = esalt_bufs[salt_pos].salt_buf[ 1];
|
||||
salt_buf0[ 2] = esalt_bufs[salt_pos].salt_buf[ 2];
|
||||
salt_buf0[ 3] = esalt_bufs[salt_pos].salt_buf[ 3];
|
||||
salt_buf0[ 4] = esalt_bufs[salt_pos].salt_buf[ 4];
|
||||
salt_buf0[ 5] = esalt_bufs[salt_pos].salt_buf[ 5];
|
||||
salt_buf0[ 6] = esalt_bufs[salt_pos].salt_buf[ 6];
|
||||
salt_buf0[ 7] = esalt_bufs[salt_pos].salt_buf[ 7];
|
||||
salt_buf0[ 8] = esalt_bufs[salt_pos].salt_buf[ 8];
|
||||
salt_buf0[ 9] = esalt_bufs[salt_pos].salt_buf[ 9];
|
||||
salt_buf0[10] = esalt_bufs[salt_pos].salt_buf[10];
|
||||
salt_buf0[11] = esalt_bufs[salt_pos].salt_buf[11];
|
||||
salt_buf0[12] = esalt_bufs[salt_pos].salt_buf[12];
|
||||
salt_buf0[13] = esalt_bufs[salt_pos].salt_buf[13];
|
||||
salt_buf0[14] = esalt_bufs[salt_pos].salt_buf[14];
|
||||
salt_buf0[15] = esalt_bufs[salt_pos].salt_buf[15];
|
||||
salt_buf1[ 0] = esalt_bufs[salt_pos].salt_buf[16];
|
||||
salt_buf1[ 1] = esalt_bufs[salt_pos].salt_buf[17];
|
||||
salt_buf1[ 2] = esalt_bufs[salt_pos].salt_buf[18];
|
||||
salt_buf1[ 3] = esalt_bufs[salt_pos].salt_buf[19];
|
||||
salt_buf1[ 4] = esalt_bufs[salt_pos].salt_buf[20];
|
||||
salt_buf1[ 5] = esalt_bufs[salt_pos].salt_buf[21];
|
||||
salt_buf1[ 6] = esalt_bufs[salt_pos].salt_buf[22];
|
||||
salt_buf1[ 7] = esalt_bufs[salt_pos].salt_buf[23];
|
||||
salt_buf1[ 8] = esalt_bufs[salt_pos].salt_buf[24];
|
||||
salt_buf1[ 9] = esalt_bufs[salt_pos].salt_buf[25];
|
||||
salt_buf1[10] = esalt_bufs[salt_pos].salt_buf[26];
|
||||
salt_buf1[11] = esalt_bufs[salt_pos].salt_buf[27];
|
||||
salt_buf1[12] = esalt_bufs[salt_pos].salt_buf[28];
|
||||
salt_buf1[13] = esalt_bufs[salt_pos].salt_buf[29];
|
||||
salt_buf0[ 0] = esalt_bufs[digests_offset].salt_buf[ 0];
|
||||
salt_buf0[ 1] = esalt_bufs[digests_offset].salt_buf[ 1];
|
||||
salt_buf0[ 2] = esalt_bufs[digests_offset].salt_buf[ 2];
|
||||
salt_buf0[ 3] = esalt_bufs[digests_offset].salt_buf[ 3];
|
||||
salt_buf0[ 4] = esalt_bufs[digests_offset].salt_buf[ 4];
|
||||
salt_buf0[ 5] = esalt_bufs[digests_offset].salt_buf[ 5];
|
||||
salt_buf0[ 6] = esalt_bufs[digests_offset].salt_buf[ 6];
|
||||
salt_buf0[ 7] = esalt_bufs[digests_offset].salt_buf[ 7];
|
||||
salt_buf0[ 8] = esalt_bufs[digests_offset].salt_buf[ 8];
|
||||
salt_buf0[ 9] = esalt_bufs[digests_offset].salt_buf[ 9];
|
||||
salt_buf0[10] = esalt_bufs[digests_offset].salt_buf[10];
|
||||
salt_buf0[11] = esalt_bufs[digests_offset].salt_buf[11];
|
||||
salt_buf0[12] = esalt_bufs[digests_offset].salt_buf[12];
|
||||
salt_buf0[13] = esalt_bufs[digests_offset].salt_buf[13];
|
||||
salt_buf0[14] = esalt_bufs[digests_offset].salt_buf[14];
|
||||
salt_buf0[15] = esalt_bufs[digests_offset].salt_buf[15];
|
||||
salt_buf1[ 0] = esalt_bufs[digests_offset].salt_buf[16];
|
||||
salt_buf1[ 1] = esalt_bufs[digests_offset].salt_buf[17];
|
||||
salt_buf1[ 2] = esalt_bufs[digests_offset].salt_buf[18];
|
||||
salt_buf1[ 3] = esalt_bufs[digests_offset].salt_buf[19];
|
||||
salt_buf1[ 4] = esalt_bufs[digests_offset].salt_buf[20];
|
||||
salt_buf1[ 5] = esalt_bufs[digests_offset].salt_buf[21];
|
||||
salt_buf1[ 6] = esalt_bufs[digests_offset].salt_buf[22];
|
||||
salt_buf1[ 7] = esalt_bufs[digests_offset].salt_buf[23];
|
||||
salt_buf1[ 8] = esalt_bufs[digests_offset].salt_buf[24];
|
||||
salt_buf1[ 9] = esalt_bufs[digests_offset].salt_buf[25];
|
||||
salt_buf1[10] = esalt_bufs[digests_offset].salt_buf[26];
|
||||
salt_buf1[11] = esalt_bufs[digests_offset].salt_buf[27];
|
||||
salt_buf1[12] = esalt_bufs[digests_offset].salt_buf[28];
|
||||
salt_buf1[13] = esalt_bufs[digests_offset].salt_buf[29];
|
||||
salt_buf1[14] = 0;
|
||||
salt_buf1[15] = 0;
|
||||
|
||||
@ -841,50 +841,50 @@ __kernel void m11400_m04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
* esalt
|
||||
*/
|
||||
|
||||
const u32 esalt_len = esalt_bufs[salt_pos].esalt_len;
|
||||
const u32 esalt_len = esalt_bufs[digests_offset].esalt_len;
|
||||
|
||||
u32 esalt_buf0[16];
|
||||
u32 esalt_buf1[16];
|
||||
u32 esalt_buf2[16];
|
||||
|
||||
esalt_buf0[ 0] = esalt_bufs[salt_pos].esalt_buf[ 0];
|
||||
esalt_buf0[ 1] = esalt_bufs[salt_pos].esalt_buf[ 1];
|
||||
esalt_buf0[ 2] = esalt_bufs[salt_pos].esalt_buf[ 2];
|
||||
esalt_buf0[ 3] = esalt_bufs[salt_pos].esalt_buf[ 3];
|
||||
esalt_buf0[ 4] = esalt_bufs[salt_pos].esalt_buf[ 4];
|
||||
esalt_buf0[ 5] = esalt_bufs[salt_pos].esalt_buf[ 5];
|
||||
esalt_buf0[ 6] = esalt_bufs[salt_pos].esalt_buf[ 6];
|
||||
esalt_buf0[ 7] = esalt_bufs[salt_pos].esalt_buf[ 7];
|
||||
esalt_buf0[ 8] = esalt_bufs[salt_pos].esalt_buf[ 8];
|
||||
esalt_buf0[ 9] = esalt_bufs[salt_pos].esalt_buf[ 9];
|
||||
esalt_buf0[10] = esalt_bufs[salt_pos].esalt_buf[10];
|
||||
esalt_buf0[11] = esalt_bufs[salt_pos].esalt_buf[11];
|
||||
esalt_buf0[12] = esalt_bufs[salt_pos].esalt_buf[12];
|
||||
esalt_buf0[13] = esalt_bufs[salt_pos].esalt_buf[13];
|
||||
esalt_buf0[14] = esalt_bufs[salt_pos].esalt_buf[14];
|
||||
esalt_buf0[15] = esalt_bufs[salt_pos].esalt_buf[15];
|
||||
esalt_buf1[ 0] = esalt_bufs[salt_pos].esalt_buf[16];
|
||||
esalt_buf1[ 1] = esalt_bufs[salt_pos].esalt_buf[17];
|
||||
esalt_buf1[ 2] = esalt_bufs[salt_pos].esalt_buf[18];
|
||||
esalt_buf1[ 3] = esalt_bufs[salt_pos].esalt_buf[19];
|
||||
esalt_buf1[ 4] = esalt_bufs[salt_pos].esalt_buf[20];
|
||||
esalt_buf1[ 5] = esalt_bufs[salt_pos].esalt_buf[21];
|
||||
esalt_buf1[ 6] = esalt_bufs[salt_pos].esalt_buf[22];
|
||||
esalt_buf1[ 7] = esalt_bufs[salt_pos].esalt_buf[23];
|
||||
esalt_buf1[ 8] = esalt_bufs[salt_pos].esalt_buf[24];
|
||||
esalt_buf1[ 9] = esalt_bufs[salt_pos].esalt_buf[25];
|
||||
esalt_buf1[10] = esalt_bufs[salt_pos].esalt_buf[26];
|
||||
esalt_buf1[11] = esalt_bufs[salt_pos].esalt_buf[27];
|
||||
esalt_buf1[12] = esalt_bufs[salt_pos].esalt_buf[28];
|
||||
esalt_buf1[13] = esalt_bufs[salt_pos].esalt_buf[29];
|
||||
esalt_buf1[14] = esalt_bufs[salt_pos].esalt_buf[30];
|
||||
esalt_buf1[15] = esalt_bufs[salt_pos].esalt_buf[31];
|
||||
esalt_buf2[ 0] = esalt_bufs[salt_pos].esalt_buf[32];
|
||||
esalt_buf2[ 1] = esalt_bufs[salt_pos].esalt_buf[33];
|
||||
esalt_buf2[ 2] = esalt_bufs[salt_pos].esalt_buf[34];
|
||||
esalt_buf2[ 3] = esalt_bufs[salt_pos].esalt_buf[35];
|
||||
esalt_buf2[ 4] = esalt_bufs[salt_pos].esalt_buf[36];
|
||||
esalt_buf2[ 5] = esalt_bufs[salt_pos].esalt_buf[37];
|
||||
esalt_buf0[ 0] = esalt_bufs[digests_offset].esalt_buf[ 0];
|
||||
esalt_buf0[ 1] = esalt_bufs[digests_offset].esalt_buf[ 1];
|
||||
esalt_buf0[ 2] = esalt_bufs[digests_offset].esalt_buf[ 2];
|
||||
esalt_buf0[ 3] = esalt_bufs[digests_offset].esalt_buf[ 3];
|
||||
esalt_buf0[ 4] = esalt_bufs[digests_offset].esalt_buf[ 4];
|
||||
esalt_buf0[ 5] = esalt_bufs[digests_offset].esalt_buf[ 5];
|
||||
esalt_buf0[ 6] = esalt_bufs[digests_offset].esalt_buf[ 6];
|
||||
esalt_buf0[ 7] = esalt_bufs[digests_offset].esalt_buf[ 7];
|
||||
esalt_buf0[ 8] = esalt_bufs[digests_offset].esalt_buf[ 8];
|
||||
esalt_buf0[ 9] = esalt_bufs[digests_offset].esalt_buf[ 9];
|
||||
esalt_buf0[10] = esalt_bufs[digests_offset].esalt_buf[10];
|
||||
esalt_buf0[11] = esalt_bufs[digests_offset].esalt_buf[11];
|
||||
esalt_buf0[12] = esalt_bufs[digests_offset].esalt_buf[12];
|
||||
esalt_buf0[13] = esalt_bufs[digests_offset].esalt_buf[13];
|
||||
esalt_buf0[14] = esalt_bufs[digests_offset].esalt_buf[14];
|
||||
esalt_buf0[15] = esalt_bufs[digests_offset].esalt_buf[15];
|
||||
esalt_buf1[ 0] = esalt_bufs[digests_offset].esalt_buf[16];
|
||||
esalt_buf1[ 1] = esalt_bufs[digests_offset].esalt_buf[17];
|
||||
esalt_buf1[ 2] = esalt_bufs[digests_offset].esalt_buf[18];
|
||||
esalt_buf1[ 3] = esalt_bufs[digests_offset].esalt_buf[19];
|
||||
esalt_buf1[ 4] = esalt_bufs[digests_offset].esalt_buf[20];
|
||||
esalt_buf1[ 5] = esalt_bufs[digests_offset].esalt_buf[21];
|
||||
esalt_buf1[ 6] = esalt_bufs[digests_offset].esalt_buf[22];
|
||||
esalt_buf1[ 7] = esalt_bufs[digests_offset].esalt_buf[23];
|
||||
esalt_buf1[ 8] = esalt_bufs[digests_offset].esalt_buf[24];
|
||||
esalt_buf1[ 9] = esalt_bufs[digests_offset].esalt_buf[25];
|
||||
esalt_buf1[10] = esalt_bufs[digests_offset].esalt_buf[26];
|
||||
esalt_buf1[11] = esalt_bufs[digests_offset].esalt_buf[27];
|
||||
esalt_buf1[12] = esalt_bufs[digests_offset].esalt_buf[28];
|
||||
esalt_buf1[13] = esalt_bufs[digests_offset].esalt_buf[29];
|
||||
esalt_buf1[14] = esalt_bufs[digests_offset].esalt_buf[30];
|
||||
esalt_buf1[15] = esalt_bufs[digests_offset].esalt_buf[31];
|
||||
esalt_buf2[ 0] = esalt_bufs[digests_offset].esalt_buf[32];
|
||||
esalt_buf2[ 1] = esalt_bufs[digests_offset].esalt_buf[33];
|
||||
esalt_buf2[ 2] = esalt_bufs[digests_offset].esalt_buf[34];
|
||||
esalt_buf2[ 3] = esalt_bufs[digests_offset].esalt_buf[35];
|
||||
esalt_buf2[ 4] = esalt_bufs[digests_offset].esalt_buf[36];
|
||||
esalt_buf2[ 5] = esalt_bufs[digests_offset].esalt_buf[37];
|
||||
esalt_buf2[ 6] = 0;
|
||||
esalt_buf2[ 7] = 0;
|
||||
esalt_buf2[ 8] = 0;
|
||||
@ -1549,41 +1549,41 @@ __kernel void m11400_s04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
* salt
|
||||
*/
|
||||
|
||||
const u32 salt_len = esalt_bufs[salt_pos].salt_len; // not a bug, we need to get it from the esalt
|
||||
const u32 salt_len = esalt_bufs[digests_offset].salt_len; // not a bug, we need to get it from the esalt
|
||||
|
||||
u32 salt_buf0[16];
|
||||
u32 salt_buf1[16];
|
||||
|
||||
salt_buf0[ 0] = esalt_bufs[salt_pos].salt_buf[ 0];
|
||||
salt_buf0[ 1] = esalt_bufs[salt_pos].salt_buf[ 1];
|
||||
salt_buf0[ 2] = esalt_bufs[salt_pos].salt_buf[ 2];
|
||||
salt_buf0[ 3] = esalt_bufs[salt_pos].salt_buf[ 3];
|
||||
salt_buf0[ 4] = esalt_bufs[salt_pos].salt_buf[ 4];
|
||||
salt_buf0[ 5] = esalt_bufs[salt_pos].salt_buf[ 5];
|
||||
salt_buf0[ 6] = esalt_bufs[salt_pos].salt_buf[ 6];
|
||||
salt_buf0[ 7] = esalt_bufs[salt_pos].salt_buf[ 7];
|
||||
salt_buf0[ 8] = esalt_bufs[salt_pos].salt_buf[ 8];
|
||||
salt_buf0[ 9] = esalt_bufs[salt_pos].salt_buf[ 9];
|
||||
salt_buf0[10] = esalt_bufs[salt_pos].salt_buf[10];
|
||||
salt_buf0[11] = esalt_bufs[salt_pos].salt_buf[11];
|
||||
salt_buf0[12] = esalt_bufs[salt_pos].salt_buf[12];
|
||||
salt_buf0[13] = esalt_bufs[salt_pos].salt_buf[13];
|
||||
salt_buf0[14] = esalt_bufs[salt_pos].salt_buf[14];
|
||||
salt_buf0[15] = esalt_bufs[salt_pos].salt_buf[15];
|
||||
salt_buf1[ 0] = esalt_bufs[salt_pos].salt_buf[16];
|
||||
salt_buf1[ 1] = esalt_bufs[salt_pos].salt_buf[17];
|
||||
salt_buf1[ 2] = esalt_bufs[salt_pos].salt_buf[18];
|
||||
salt_buf1[ 3] = esalt_bufs[salt_pos].salt_buf[19];
|
||||
salt_buf1[ 4] = esalt_bufs[salt_pos].salt_buf[20];
|
||||
salt_buf1[ 5] = esalt_bufs[salt_pos].salt_buf[21];
|
||||
salt_buf1[ 6] = esalt_bufs[salt_pos].salt_buf[22];
|
||||
salt_buf1[ 7] = esalt_bufs[salt_pos].salt_buf[23];
|
||||
salt_buf1[ 8] = esalt_bufs[salt_pos].salt_buf[24];
|
||||
salt_buf1[ 9] = esalt_bufs[salt_pos].salt_buf[25];
|
||||
salt_buf1[10] = esalt_bufs[salt_pos].salt_buf[26];
|
||||
salt_buf1[11] = esalt_bufs[salt_pos].salt_buf[27];
|
||||
salt_buf1[12] = esalt_bufs[salt_pos].salt_buf[28];
|
||||
salt_buf1[13] = esalt_bufs[salt_pos].salt_buf[29];
|
||||
salt_buf0[ 0] = esalt_bufs[digests_offset].salt_buf[ 0];
|
||||
salt_buf0[ 1] = esalt_bufs[digests_offset].salt_buf[ 1];
|
||||
salt_buf0[ 2] = esalt_bufs[digests_offset].salt_buf[ 2];
|
||||
salt_buf0[ 3] = esalt_bufs[digests_offset].salt_buf[ 3];
|
||||
salt_buf0[ 4] = esalt_bufs[digests_offset].salt_buf[ 4];
|
||||
salt_buf0[ 5] = esalt_bufs[digests_offset].salt_buf[ 5];
|
||||
salt_buf0[ 6] = esalt_bufs[digests_offset].salt_buf[ 6];
|
||||
salt_buf0[ 7] = esalt_bufs[digests_offset].salt_buf[ 7];
|
||||
salt_buf0[ 8] = esalt_bufs[digests_offset].salt_buf[ 8];
|
||||
salt_buf0[ 9] = esalt_bufs[digests_offset].salt_buf[ 9];
|
||||
salt_buf0[10] = esalt_bufs[digests_offset].salt_buf[10];
|
||||
salt_buf0[11] = esalt_bufs[digests_offset].salt_buf[11];
|
||||
salt_buf0[12] = esalt_bufs[digests_offset].salt_buf[12];
|
||||
salt_buf0[13] = esalt_bufs[digests_offset].salt_buf[13];
|
||||
salt_buf0[14] = esalt_bufs[digests_offset].salt_buf[14];
|
||||
salt_buf0[15] = esalt_bufs[digests_offset].salt_buf[15];
|
||||
salt_buf1[ 0] = esalt_bufs[digests_offset].salt_buf[16];
|
||||
salt_buf1[ 1] = esalt_bufs[digests_offset].salt_buf[17];
|
||||
salt_buf1[ 2] = esalt_bufs[digests_offset].salt_buf[18];
|
||||
salt_buf1[ 3] = esalt_bufs[digests_offset].salt_buf[19];
|
||||
salt_buf1[ 4] = esalt_bufs[digests_offset].salt_buf[20];
|
||||
salt_buf1[ 5] = esalt_bufs[digests_offset].salt_buf[21];
|
||||
salt_buf1[ 6] = esalt_bufs[digests_offset].salt_buf[22];
|
||||
salt_buf1[ 7] = esalt_bufs[digests_offset].salt_buf[23];
|
||||
salt_buf1[ 8] = esalt_bufs[digests_offset].salt_buf[24];
|
||||
salt_buf1[ 9] = esalt_bufs[digests_offset].salt_buf[25];
|
||||
salt_buf1[10] = esalt_bufs[digests_offset].salt_buf[26];
|
||||
salt_buf1[11] = esalt_bufs[digests_offset].salt_buf[27];
|
||||
salt_buf1[12] = esalt_bufs[digests_offset].salt_buf[28];
|
||||
salt_buf1[13] = esalt_bufs[digests_offset].salt_buf[29];
|
||||
salt_buf1[14] = 0;
|
||||
salt_buf1[15] = 0;
|
||||
|
||||
@ -1591,50 +1591,50 @@ __kernel void m11400_s04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
* esalt
|
||||
*/
|
||||
|
||||
const u32 esalt_len = esalt_bufs[salt_pos].esalt_len;
|
||||
const u32 esalt_len = esalt_bufs[digests_offset].esalt_len;
|
||||
|
||||
u32 esalt_buf0[16];
|
||||
u32 esalt_buf1[16];
|
||||
u32 esalt_buf2[16];
|
||||
|
||||
esalt_buf0[ 0] = esalt_bufs[salt_pos].esalt_buf[ 0];
|
||||
esalt_buf0[ 1] = esalt_bufs[salt_pos].esalt_buf[ 1];
|
||||
esalt_buf0[ 2] = esalt_bufs[salt_pos].esalt_buf[ 2];
|
||||
esalt_buf0[ 3] = esalt_bufs[salt_pos].esalt_buf[ 3];
|
||||
esalt_buf0[ 4] = esalt_bufs[salt_pos].esalt_buf[ 4];
|
||||
esalt_buf0[ 5] = esalt_bufs[salt_pos].esalt_buf[ 5];
|
||||
esalt_buf0[ 6] = esalt_bufs[salt_pos].esalt_buf[ 6];
|
||||
esalt_buf0[ 7] = esalt_bufs[salt_pos].esalt_buf[ 7];
|
||||
esalt_buf0[ 8] = esalt_bufs[salt_pos].esalt_buf[ 8];
|
||||
esalt_buf0[ 9] = esalt_bufs[salt_pos].esalt_buf[ 9];
|
||||
esalt_buf0[10] = esalt_bufs[salt_pos].esalt_buf[10];
|
||||
esalt_buf0[11] = esalt_bufs[salt_pos].esalt_buf[11];
|
||||
esalt_buf0[12] = esalt_bufs[salt_pos].esalt_buf[12];
|
||||
esalt_buf0[13] = esalt_bufs[salt_pos].esalt_buf[13];
|
||||
esalt_buf0[14] = esalt_bufs[salt_pos].esalt_buf[14];
|
||||
esalt_buf0[15] = esalt_bufs[salt_pos].esalt_buf[15];
|
||||
esalt_buf1[ 0] = esalt_bufs[salt_pos].esalt_buf[16];
|
||||
esalt_buf1[ 1] = esalt_bufs[salt_pos].esalt_buf[17];
|
||||
esalt_buf1[ 2] = esalt_bufs[salt_pos].esalt_buf[18];
|
||||
esalt_buf1[ 3] = esalt_bufs[salt_pos].esalt_buf[19];
|
||||
esalt_buf1[ 4] = esalt_bufs[salt_pos].esalt_buf[20];
|
||||
esalt_buf1[ 5] = esalt_bufs[salt_pos].esalt_buf[21];
|
||||
esalt_buf1[ 6] = esalt_bufs[salt_pos].esalt_buf[22];
|
||||
esalt_buf1[ 7] = esalt_bufs[salt_pos].esalt_buf[23];
|
||||
esalt_buf1[ 8] = esalt_bufs[salt_pos].esalt_buf[24];
|
||||
esalt_buf1[ 9] = esalt_bufs[salt_pos].esalt_buf[25];
|
||||
esalt_buf1[10] = esalt_bufs[salt_pos].esalt_buf[26];
|
||||
esalt_buf1[11] = esalt_bufs[salt_pos].esalt_buf[27];
|
||||
esalt_buf1[12] = esalt_bufs[salt_pos].esalt_buf[28];
|
||||
esalt_buf1[13] = esalt_bufs[salt_pos].esalt_buf[29];
|
||||
esalt_buf1[14] = esalt_bufs[salt_pos].esalt_buf[30];
|
||||
esalt_buf1[15] = esalt_bufs[salt_pos].esalt_buf[31];
|
||||
esalt_buf2[ 0] = esalt_bufs[salt_pos].esalt_buf[32];
|
||||
esalt_buf2[ 1] = esalt_bufs[salt_pos].esalt_buf[33];
|
||||
esalt_buf2[ 2] = esalt_bufs[salt_pos].esalt_buf[34];
|
||||
esalt_buf2[ 3] = esalt_bufs[salt_pos].esalt_buf[35];
|
||||
esalt_buf2[ 4] = esalt_bufs[salt_pos].esalt_buf[36];
|
||||
esalt_buf2[ 5] = esalt_bufs[salt_pos].esalt_buf[37];
|
||||
esalt_buf0[ 0] = esalt_bufs[digests_offset].esalt_buf[ 0];
|
||||
esalt_buf0[ 1] = esalt_bufs[digests_offset].esalt_buf[ 1];
|
||||
esalt_buf0[ 2] = esalt_bufs[digests_offset].esalt_buf[ 2];
|
||||
esalt_buf0[ 3] = esalt_bufs[digests_offset].esalt_buf[ 3];
|
||||
esalt_buf0[ 4] = esalt_bufs[digests_offset].esalt_buf[ 4];
|
||||
esalt_buf0[ 5] = esalt_bufs[digests_offset].esalt_buf[ 5];
|
||||
esalt_buf0[ 6] = esalt_bufs[digests_offset].esalt_buf[ 6];
|
||||
esalt_buf0[ 7] = esalt_bufs[digests_offset].esalt_buf[ 7];
|
||||
esalt_buf0[ 8] = esalt_bufs[digests_offset].esalt_buf[ 8];
|
||||
esalt_buf0[ 9] = esalt_bufs[digests_offset].esalt_buf[ 9];
|
||||
esalt_buf0[10] = esalt_bufs[digests_offset].esalt_buf[10];
|
||||
esalt_buf0[11] = esalt_bufs[digests_offset].esalt_buf[11];
|
||||
esalt_buf0[12] = esalt_bufs[digests_offset].esalt_buf[12];
|
||||
esalt_buf0[13] = esalt_bufs[digests_offset].esalt_buf[13];
|
||||
esalt_buf0[14] = esalt_bufs[digests_offset].esalt_buf[14];
|
||||
esalt_buf0[15] = esalt_bufs[digests_offset].esalt_buf[15];
|
||||
esalt_buf1[ 0] = esalt_bufs[digests_offset].esalt_buf[16];
|
||||
esalt_buf1[ 1] = esalt_bufs[digests_offset].esalt_buf[17];
|
||||
esalt_buf1[ 2] = esalt_bufs[digests_offset].esalt_buf[18];
|
||||
esalt_buf1[ 3] = esalt_bufs[digests_offset].esalt_buf[19];
|
||||
esalt_buf1[ 4] = esalt_bufs[digests_offset].esalt_buf[20];
|
||||
esalt_buf1[ 5] = esalt_bufs[digests_offset].esalt_buf[21];
|
||||
esalt_buf1[ 6] = esalt_bufs[digests_offset].esalt_buf[22];
|
||||
esalt_buf1[ 7] = esalt_bufs[digests_offset].esalt_buf[23];
|
||||
esalt_buf1[ 8] = esalt_bufs[digests_offset].esalt_buf[24];
|
||||
esalt_buf1[ 9] = esalt_bufs[digests_offset].esalt_buf[25];
|
||||
esalt_buf1[10] = esalt_bufs[digests_offset].esalt_buf[26];
|
||||
esalt_buf1[11] = esalt_bufs[digests_offset].esalt_buf[27];
|
||||
esalt_buf1[12] = esalt_bufs[digests_offset].esalt_buf[28];
|
||||
esalt_buf1[13] = esalt_bufs[digests_offset].esalt_buf[29];
|
||||
esalt_buf1[14] = esalt_bufs[digests_offset].esalt_buf[30];
|
||||
esalt_buf1[15] = esalt_bufs[digests_offset].esalt_buf[31];
|
||||
esalt_buf2[ 0] = esalt_bufs[digests_offset].esalt_buf[32];
|
||||
esalt_buf2[ 1] = esalt_bufs[digests_offset].esalt_buf[33];
|
||||
esalt_buf2[ 2] = esalt_bufs[digests_offset].esalt_buf[34];
|
||||
esalt_buf2[ 3] = esalt_bufs[digests_offset].esalt_buf[35];
|
||||
esalt_buf2[ 4] = esalt_bufs[digests_offset].esalt_buf[36];
|
||||
esalt_buf2[ 5] = esalt_bufs[digests_offset].esalt_buf[37];
|
||||
esalt_buf2[ 6] = 0;
|
||||
esalt_buf2[ 7] = 0;
|
||||
esalt_buf2[ 8] = 0;
|
||||
|
@ -797,41 +797,41 @@ __kernel void m11400_m04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
* salt
|
||||
*/
|
||||
|
||||
const u32 salt_len = esalt_bufs[salt_pos].salt_len; // not a bug, we need to get it from the esalt
|
||||
const u32 salt_len = esalt_bufs[digests_offset].salt_len; // not a bug, we need to get it from the esalt
|
||||
|
||||
u32 salt_buf0[16];
|
||||
u32 salt_buf1[16];
|
||||
|
||||
salt_buf0[ 0] = esalt_bufs[salt_pos].salt_buf[ 0];
|
||||
salt_buf0[ 1] = esalt_bufs[salt_pos].salt_buf[ 1];
|
||||
salt_buf0[ 2] = esalt_bufs[salt_pos].salt_buf[ 2];
|
||||
salt_buf0[ 3] = esalt_bufs[salt_pos].salt_buf[ 3];
|
||||
salt_buf0[ 4] = esalt_bufs[salt_pos].salt_buf[ 4];
|
||||
salt_buf0[ 5] = esalt_bufs[salt_pos].salt_buf[ 5];
|
||||
salt_buf0[ 6] = esalt_bufs[salt_pos].salt_buf[ 6];
|
||||
salt_buf0[ 7] = esalt_bufs[salt_pos].salt_buf[ 7];
|
||||
salt_buf0[ 8] = esalt_bufs[salt_pos].salt_buf[ 8];
|
||||
salt_buf0[ 9] = esalt_bufs[salt_pos].salt_buf[ 9];
|
||||
salt_buf0[10] = esalt_bufs[salt_pos].salt_buf[10];
|
||||
salt_buf0[11] = esalt_bufs[salt_pos].salt_buf[11];
|
||||
salt_buf0[12] = esalt_bufs[salt_pos].salt_buf[12];
|
||||
salt_buf0[13] = esalt_bufs[salt_pos].salt_buf[13];
|
||||
salt_buf0[14] = esalt_bufs[salt_pos].salt_buf[14];
|
||||
salt_buf0[15] = esalt_bufs[salt_pos].salt_buf[15];
|
||||
salt_buf1[ 0] = esalt_bufs[salt_pos].salt_buf[16];
|
||||
salt_buf1[ 1] = esalt_bufs[salt_pos].salt_buf[17];
|
||||
salt_buf1[ 2] = esalt_bufs[salt_pos].salt_buf[18];
|
||||
salt_buf1[ 3] = esalt_bufs[salt_pos].salt_buf[19];
|
||||
salt_buf1[ 4] = esalt_bufs[salt_pos].salt_buf[20];
|
||||
salt_buf1[ 5] = esalt_bufs[salt_pos].salt_buf[21];
|
||||
salt_buf1[ 6] = esalt_bufs[salt_pos].salt_buf[22];
|
||||
salt_buf1[ 7] = esalt_bufs[salt_pos].salt_buf[23];
|
||||
salt_buf1[ 8] = esalt_bufs[salt_pos].salt_buf[24];
|
||||
salt_buf1[ 9] = esalt_bufs[salt_pos].salt_buf[25];
|
||||
salt_buf1[10] = esalt_bufs[salt_pos].salt_buf[26];
|
||||
salt_buf1[11] = esalt_bufs[salt_pos].salt_buf[27];
|
||||
salt_buf1[12] = esalt_bufs[salt_pos].salt_buf[28];
|
||||
salt_buf1[13] = esalt_bufs[salt_pos].salt_buf[29];
|
||||
salt_buf0[ 0] = esalt_bufs[digests_offset].salt_buf[ 0];
|
||||
salt_buf0[ 1] = esalt_bufs[digests_offset].salt_buf[ 1];
|
||||
salt_buf0[ 2] = esalt_bufs[digests_offset].salt_buf[ 2];
|
||||
salt_buf0[ 3] = esalt_bufs[digests_offset].salt_buf[ 3];
|
||||
salt_buf0[ 4] = esalt_bufs[digests_offset].salt_buf[ 4];
|
||||
salt_buf0[ 5] = esalt_bufs[digests_offset].salt_buf[ 5];
|
||||
salt_buf0[ 6] = esalt_bufs[digests_offset].salt_buf[ 6];
|
||||
salt_buf0[ 7] = esalt_bufs[digests_offset].salt_buf[ 7];
|
||||
salt_buf0[ 8] = esalt_bufs[digests_offset].salt_buf[ 8];
|
||||
salt_buf0[ 9] = esalt_bufs[digests_offset].salt_buf[ 9];
|
||||
salt_buf0[10] = esalt_bufs[digests_offset].salt_buf[10];
|
||||
salt_buf0[11] = esalt_bufs[digests_offset].salt_buf[11];
|
||||
salt_buf0[12] = esalt_bufs[digests_offset].salt_buf[12];
|
||||
salt_buf0[13] = esalt_bufs[digests_offset].salt_buf[13];
|
||||
salt_buf0[14] = esalt_bufs[digests_offset].salt_buf[14];
|
||||
salt_buf0[15] = esalt_bufs[digests_offset].salt_buf[15];
|
||||
salt_buf1[ 0] = esalt_bufs[digests_offset].salt_buf[16];
|
||||
salt_buf1[ 1] = esalt_bufs[digests_offset].salt_buf[17];
|
||||
salt_buf1[ 2] = esalt_bufs[digests_offset].salt_buf[18];
|
||||
salt_buf1[ 3] = esalt_bufs[digests_offset].salt_buf[19];
|
||||
salt_buf1[ 4] = esalt_bufs[digests_offset].salt_buf[20];
|
||||
salt_buf1[ 5] = esalt_bufs[digests_offset].salt_buf[21];
|
||||
salt_buf1[ 6] = esalt_bufs[digests_offset].salt_buf[22];
|
||||
salt_buf1[ 7] = esalt_bufs[digests_offset].salt_buf[23];
|
||||
salt_buf1[ 8] = esalt_bufs[digests_offset].salt_buf[24];
|
||||
salt_buf1[ 9] = esalt_bufs[digests_offset].salt_buf[25];
|
||||
salt_buf1[10] = esalt_bufs[digests_offset].salt_buf[26];
|
||||
salt_buf1[11] = esalt_bufs[digests_offset].salt_buf[27];
|
||||
salt_buf1[12] = esalt_bufs[digests_offset].salt_buf[28];
|
||||
salt_buf1[13] = esalt_bufs[digests_offset].salt_buf[29];
|
||||
salt_buf1[14] = 0;
|
||||
salt_buf1[15] = 0;
|
||||
|
||||
@ -839,50 +839,50 @@ __kernel void m11400_m04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
* esalt
|
||||
*/
|
||||
|
||||
const u32 esalt_len = esalt_bufs[salt_pos].esalt_len;
|
||||
const u32 esalt_len = esalt_bufs[digests_offset].esalt_len;
|
||||
|
||||
u32 esalt_buf0[16];
|
||||
u32 esalt_buf1[16];
|
||||
u32 esalt_buf2[16];
|
||||
|
||||
esalt_buf0[ 0] = esalt_bufs[salt_pos].esalt_buf[ 0];
|
||||
esalt_buf0[ 1] = esalt_bufs[salt_pos].esalt_buf[ 1];
|
||||
esalt_buf0[ 2] = esalt_bufs[salt_pos].esalt_buf[ 2];
|
||||
esalt_buf0[ 3] = esalt_bufs[salt_pos].esalt_buf[ 3];
|
||||
esalt_buf0[ 4] = esalt_bufs[salt_pos].esalt_buf[ 4];
|
||||
esalt_buf0[ 5] = esalt_bufs[salt_pos].esalt_buf[ 5];
|
||||
esalt_buf0[ 6] = esalt_bufs[salt_pos].esalt_buf[ 6];
|
||||
esalt_buf0[ 7] = esalt_bufs[salt_pos].esalt_buf[ 7];
|
||||
esalt_buf0[ 8] = esalt_bufs[salt_pos].esalt_buf[ 8];
|
||||
esalt_buf0[ 9] = esalt_bufs[salt_pos].esalt_buf[ 9];
|
||||
esalt_buf0[10] = esalt_bufs[salt_pos].esalt_buf[10];
|
||||
esalt_buf0[11] = esalt_bufs[salt_pos].esalt_buf[11];
|
||||
esalt_buf0[12] = esalt_bufs[salt_pos].esalt_buf[12];
|
||||
esalt_buf0[13] = esalt_bufs[salt_pos].esalt_buf[13];
|
||||
esalt_buf0[14] = esalt_bufs[salt_pos].esalt_buf[14];
|
||||
esalt_buf0[15] = esalt_bufs[salt_pos].esalt_buf[15];
|
||||
esalt_buf1[ 0] = esalt_bufs[salt_pos].esalt_buf[16];
|
||||
esalt_buf1[ 1] = esalt_bufs[salt_pos].esalt_buf[17];
|
||||
esalt_buf1[ 2] = esalt_bufs[salt_pos].esalt_buf[18];
|
||||
esalt_buf1[ 3] = esalt_bufs[salt_pos].esalt_buf[19];
|
||||
esalt_buf1[ 4] = esalt_bufs[salt_pos].esalt_buf[20];
|
||||
esalt_buf1[ 5] = esalt_bufs[salt_pos].esalt_buf[21];
|
||||
esalt_buf1[ 6] = esalt_bufs[salt_pos].esalt_buf[22];
|
||||
esalt_buf1[ 7] = esalt_bufs[salt_pos].esalt_buf[23];
|
||||
esalt_buf1[ 8] = esalt_bufs[salt_pos].esalt_buf[24];
|
||||
esalt_buf1[ 9] = esalt_bufs[salt_pos].esalt_buf[25];
|
||||
esalt_buf1[10] = esalt_bufs[salt_pos].esalt_buf[26];
|
||||
esalt_buf1[11] = esalt_bufs[salt_pos].esalt_buf[27];
|
||||
esalt_buf1[12] = esalt_bufs[salt_pos].esalt_buf[28];
|
||||
esalt_buf1[13] = esalt_bufs[salt_pos].esalt_buf[29];
|
||||
esalt_buf1[14] = esalt_bufs[salt_pos].esalt_buf[30];
|
||||
esalt_buf1[15] = esalt_bufs[salt_pos].esalt_buf[31];
|
||||
esalt_buf2[ 0] = esalt_bufs[salt_pos].esalt_buf[32];
|
||||
esalt_buf2[ 1] = esalt_bufs[salt_pos].esalt_buf[33];
|
||||
esalt_buf2[ 2] = esalt_bufs[salt_pos].esalt_buf[34];
|
||||
esalt_buf2[ 3] = esalt_bufs[salt_pos].esalt_buf[35];
|
||||
esalt_buf2[ 4] = esalt_bufs[salt_pos].esalt_buf[36];
|
||||
esalt_buf2[ 5] = esalt_bufs[salt_pos].esalt_buf[37];
|
||||
esalt_buf0[ 0] = esalt_bufs[digests_offset].esalt_buf[ 0];
|
||||
esalt_buf0[ 1] = esalt_bufs[digests_offset].esalt_buf[ 1];
|
||||
esalt_buf0[ 2] = esalt_bufs[digests_offset].esalt_buf[ 2];
|
||||
esalt_buf0[ 3] = esalt_bufs[digests_offset].esalt_buf[ 3];
|
||||
esalt_buf0[ 4] = esalt_bufs[digests_offset].esalt_buf[ 4];
|
||||
esalt_buf0[ 5] = esalt_bufs[digests_offset].esalt_buf[ 5];
|
||||
esalt_buf0[ 6] = esalt_bufs[digests_offset].esalt_buf[ 6];
|
||||
esalt_buf0[ 7] = esalt_bufs[digests_offset].esalt_buf[ 7];
|
||||
esalt_buf0[ 8] = esalt_bufs[digests_offset].esalt_buf[ 8];
|
||||
esalt_buf0[ 9] = esalt_bufs[digests_offset].esalt_buf[ 9];
|
||||
esalt_buf0[10] = esalt_bufs[digests_offset].esalt_buf[10];
|
||||
esalt_buf0[11] = esalt_bufs[digests_offset].esalt_buf[11];
|
||||
esalt_buf0[12] = esalt_bufs[digests_offset].esalt_buf[12];
|
||||
esalt_buf0[13] = esalt_bufs[digests_offset].esalt_buf[13];
|
||||
esalt_buf0[14] = esalt_bufs[digests_offset].esalt_buf[14];
|
||||
esalt_buf0[15] = esalt_bufs[digests_offset].esalt_buf[15];
|
||||
esalt_buf1[ 0] = esalt_bufs[digests_offset].esalt_buf[16];
|
||||
esalt_buf1[ 1] = esalt_bufs[digests_offset].esalt_buf[17];
|
||||
esalt_buf1[ 2] = esalt_bufs[digests_offset].esalt_buf[18];
|
||||
esalt_buf1[ 3] = esalt_bufs[digests_offset].esalt_buf[19];
|
||||
esalt_buf1[ 4] = esalt_bufs[digests_offset].esalt_buf[20];
|
||||
esalt_buf1[ 5] = esalt_bufs[digests_offset].esalt_buf[21];
|
||||
esalt_buf1[ 6] = esalt_bufs[digests_offset].esalt_buf[22];
|
||||
esalt_buf1[ 7] = esalt_bufs[digests_offset].esalt_buf[23];
|
||||
esalt_buf1[ 8] = esalt_bufs[digests_offset].esalt_buf[24];
|
||||
esalt_buf1[ 9] = esalt_bufs[digests_offset].esalt_buf[25];
|
||||
esalt_buf1[10] = esalt_bufs[digests_offset].esalt_buf[26];
|
||||
esalt_buf1[11] = esalt_bufs[digests_offset].esalt_buf[27];
|
||||
esalt_buf1[12] = esalt_bufs[digests_offset].esalt_buf[28];
|
||||
esalt_buf1[13] = esalt_bufs[digests_offset].esalt_buf[29];
|
||||
esalt_buf1[14] = esalt_bufs[digests_offset].esalt_buf[30];
|
||||
esalt_buf1[15] = esalt_bufs[digests_offset].esalt_buf[31];
|
||||
esalt_buf2[ 0] = esalt_bufs[digests_offset].esalt_buf[32];
|
||||
esalt_buf2[ 1] = esalt_bufs[digests_offset].esalt_buf[33];
|
||||
esalt_buf2[ 2] = esalt_bufs[digests_offset].esalt_buf[34];
|
||||
esalt_buf2[ 3] = esalt_bufs[digests_offset].esalt_buf[35];
|
||||
esalt_buf2[ 4] = esalt_bufs[digests_offset].esalt_buf[36];
|
||||
esalt_buf2[ 5] = esalt_bufs[digests_offset].esalt_buf[37];
|
||||
esalt_buf2[ 6] = 0;
|
||||
esalt_buf2[ 7] = 0;
|
||||
esalt_buf2[ 8] = 0;
|
||||
@ -1605,41 +1605,41 @@ __kernel void m11400_s04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
* salt
|
||||
*/
|
||||
|
||||
const u32 salt_len = esalt_bufs[salt_pos].salt_len; // not a bug, we need to get it from the esalt
|
||||
const u32 salt_len = esalt_bufs[digests_offset].salt_len; // not a bug, we need to get it from the esalt
|
||||
|
||||
u32 salt_buf0[16];
|
||||
u32 salt_buf1[16];
|
||||
|
||||
salt_buf0[ 0] = esalt_bufs[salt_pos].salt_buf[ 0];
|
||||
salt_buf0[ 1] = esalt_bufs[salt_pos].salt_buf[ 1];
|
||||
salt_buf0[ 2] = esalt_bufs[salt_pos].salt_buf[ 2];
|
||||
salt_buf0[ 3] = esalt_bufs[salt_pos].salt_buf[ 3];
|
||||
salt_buf0[ 4] = esalt_bufs[salt_pos].salt_buf[ 4];
|
||||
salt_buf0[ 5] = esalt_bufs[salt_pos].salt_buf[ 5];
|
||||
salt_buf0[ 6] = esalt_bufs[salt_pos].salt_buf[ 6];
|
||||
salt_buf0[ 7] = esalt_bufs[salt_pos].salt_buf[ 7];
|
||||
salt_buf0[ 8] = esalt_bufs[salt_pos].salt_buf[ 8];
|
||||
salt_buf0[ 9] = esalt_bufs[salt_pos].salt_buf[ 9];
|
||||
salt_buf0[10] = esalt_bufs[salt_pos].salt_buf[10];
|
||||
salt_buf0[11] = esalt_bufs[salt_pos].salt_buf[11];
|
||||
salt_buf0[12] = esalt_bufs[salt_pos].salt_buf[12];
|
||||
salt_buf0[13] = esalt_bufs[salt_pos].salt_buf[13];
|
||||
salt_buf0[14] = esalt_bufs[salt_pos].salt_buf[14];
|
||||
salt_buf0[15] = esalt_bufs[salt_pos].salt_buf[15];
|
||||
salt_buf1[ 0] = esalt_bufs[salt_pos].salt_buf[16];
|
||||
salt_buf1[ 1] = esalt_bufs[salt_pos].salt_buf[17];
|
||||
salt_buf1[ 2] = esalt_bufs[salt_pos].salt_buf[18];
|
||||
salt_buf1[ 3] = esalt_bufs[salt_pos].salt_buf[19];
|
||||
salt_buf1[ 4] = esalt_bufs[salt_pos].salt_buf[20];
|
||||
salt_buf1[ 5] = esalt_bufs[salt_pos].salt_buf[21];
|
||||
salt_buf1[ 6] = esalt_bufs[salt_pos].salt_buf[22];
|
||||
salt_buf1[ 7] = esalt_bufs[salt_pos].salt_buf[23];
|
||||
salt_buf1[ 8] = esalt_bufs[salt_pos].salt_buf[24];
|
||||
salt_buf1[ 9] = esalt_bufs[salt_pos].salt_buf[25];
|
||||
salt_buf1[10] = esalt_bufs[salt_pos].salt_buf[26];
|
||||
salt_buf1[11] = esalt_bufs[salt_pos].salt_buf[27];
|
||||
salt_buf1[12] = esalt_bufs[salt_pos].salt_buf[28];
|
||||
salt_buf1[13] = esalt_bufs[salt_pos].salt_buf[29];
|
||||
salt_buf0[ 0] = esalt_bufs[digests_offset].salt_buf[ 0];
|
||||
salt_buf0[ 1] = esalt_bufs[digests_offset].salt_buf[ 1];
|
||||
salt_buf0[ 2] = esalt_bufs[digests_offset].salt_buf[ 2];
|
||||
salt_buf0[ 3] = esalt_bufs[digests_offset].salt_buf[ 3];
|
||||
salt_buf0[ 4] = esalt_bufs[digests_offset].salt_buf[ 4];
|
||||
salt_buf0[ 5] = esalt_bufs[digests_offset].salt_buf[ 5];
|
||||
salt_buf0[ 6] = esalt_bufs[digests_offset].salt_buf[ 6];
|
||||
salt_buf0[ 7] = esalt_bufs[digests_offset].salt_buf[ 7];
|
||||
salt_buf0[ 8] = esalt_bufs[digests_offset].salt_buf[ 8];
|
||||
salt_buf0[ 9] = esalt_bufs[digests_offset].salt_buf[ 9];
|
||||
salt_buf0[10] = esalt_bufs[digests_offset].salt_buf[10];
|
||||
salt_buf0[11] = esalt_bufs[digests_offset].salt_buf[11];
|
||||
salt_buf0[12] = esalt_bufs[digests_offset].salt_buf[12];
|
||||
salt_buf0[13] = esalt_bufs[digests_offset].salt_buf[13];
|
||||
salt_buf0[14] = esalt_bufs[digests_offset].salt_buf[14];
|
||||
salt_buf0[15] = esalt_bufs[digests_offset].salt_buf[15];
|
||||
salt_buf1[ 0] = esalt_bufs[digests_offset].salt_buf[16];
|
||||
salt_buf1[ 1] = esalt_bufs[digests_offset].salt_buf[17];
|
||||
salt_buf1[ 2] = esalt_bufs[digests_offset].salt_buf[18];
|
||||
salt_buf1[ 3] = esalt_bufs[digests_offset].salt_buf[19];
|
||||
salt_buf1[ 4] = esalt_bufs[digests_offset].salt_buf[20];
|
||||
salt_buf1[ 5] = esalt_bufs[digests_offset].salt_buf[21];
|
||||
salt_buf1[ 6] = esalt_bufs[digests_offset].salt_buf[22];
|
||||
salt_buf1[ 7] = esalt_bufs[digests_offset].salt_buf[23];
|
||||
salt_buf1[ 8] = esalt_bufs[digests_offset].salt_buf[24];
|
||||
salt_buf1[ 9] = esalt_bufs[digests_offset].salt_buf[25];
|
||||
salt_buf1[10] = esalt_bufs[digests_offset].salt_buf[26];
|
||||
salt_buf1[11] = esalt_bufs[digests_offset].salt_buf[27];
|
||||
salt_buf1[12] = esalt_bufs[digests_offset].salt_buf[28];
|
||||
salt_buf1[13] = esalt_bufs[digests_offset].salt_buf[29];
|
||||
salt_buf1[14] = 0;
|
||||
salt_buf1[15] = 0;
|
||||
|
||||
@ -1647,50 +1647,50 @@ __kernel void m11400_s04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
* esalt
|
||||
*/
|
||||
|
||||
const u32 esalt_len = esalt_bufs[salt_pos].esalt_len;
|
||||
const u32 esalt_len = esalt_bufs[digests_offset].esalt_len;
|
||||
|
||||
u32 esalt_buf0[16];
|
||||
u32 esalt_buf1[16];
|
||||
u32 esalt_buf2[16];
|
||||
|
||||
esalt_buf0[ 0] = esalt_bufs[salt_pos].esalt_buf[ 0];
|
||||
esalt_buf0[ 1] = esalt_bufs[salt_pos].esalt_buf[ 1];
|
||||
esalt_buf0[ 2] = esalt_bufs[salt_pos].esalt_buf[ 2];
|
||||
esalt_buf0[ 3] = esalt_bufs[salt_pos].esalt_buf[ 3];
|
||||
esalt_buf0[ 4] = esalt_bufs[salt_pos].esalt_buf[ 4];
|
||||
esalt_buf0[ 5] = esalt_bufs[salt_pos].esalt_buf[ 5];
|
||||
esalt_buf0[ 6] = esalt_bufs[salt_pos].esalt_buf[ 6];
|
||||
esalt_buf0[ 7] = esalt_bufs[salt_pos].esalt_buf[ 7];
|
||||
esalt_buf0[ 8] = esalt_bufs[salt_pos].esalt_buf[ 8];
|
||||
esalt_buf0[ 9] = esalt_bufs[salt_pos].esalt_buf[ 9];
|
||||
esalt_buf0[10] = esalt_bufs[salt_pos].esalt_buf[10];
|
||||
esalt_buf0[11] = esalt_bufs[salt_pos].esalt_buf[11];
|
||||
esalt_buf0[12] = esalt_bufs[salt_pos].esalt_buf[12];
|
||||
esalt_buf0[13] = esalt_bufs[salt_pos].esalt_buf[13];
|
||||
esalt_buf0[14] = esalt_bufs[salt_pos].esalt_buf[14];
|
||||
esalt_buf0[15] = esalt_bufs[salt_pos].esalt_buf[15];
|
||||
esalt_buf1[ 0] = esalt_bufs[salt_pos].esalt_buf[16];
|
||||
esalt_buf1[ 1] = esalt_bufs[salt_pos].esalt_buf[17];
|
||||
esalt_buf1[ 2] = esalt_bufs[salt_pos].esalt_buf[18];
|
||||
esalt_buf1[ 3] = esalt_bufs[salt_pos].esalt_buf[19];
|
||||
esalt_buf1[ 4] = esalt_bufs[salt_pos].esalt_buf[20];
|
||||
esalt_buf1[ 5] = esalt_bufs[salt_pos].esalt_buf[21];
|
||||
esalt_buf1[ 6] = esalt_bufs[salt_pos].esalt_buf[22];
|
||||
esalt_buf1[ 7] = esalt_bufs[salt_pos].esalt_buf[23];
|
||||
esalt_buf1[ 8] = esalt_bufs[salt_pos].esalt_buf[24];
|
||||
esalt_buf1[ 9] = esalt_bufs[salt_pos].esalt_buf[25];
|
||||
esalt_buf1[10] = esalt_bufs[salt_pos].esalt_buf[26];
|
||||
esalt_buf1[11] = esalt_bufs[salt_pos].esalt_buf[27];
|
||||
esalt_buf1[12] = esalt_bufs[salt_pos].esalt_buf[28];
|
||||
esalt_buf1[13] = esalt_bufs[salt_pos].esalt_buf[29];
|
||||
esalt_buf1[14] = esalt_bufs[salt_pos].esalt_buf[30];
|
||||
esalt_buf1[15] = esalt_bufs[salt_pos].esalt_buf[31];
|
||||
esalt_buf2[ 0] = esalt_bufs[salt_pos].esalt_buf[32];
|
||||
esalt_buf2[ 1] = esalt_bufs[salt_pos].esalt_buf[33];
|
||||
esalt_buf2[ 2] = esalt_bufs[salt_pos].esalt_buf[34];
|
||||
esalt_buf2[ 3] = esalt_bufs[salt_pos].esalt_buf[35];
|
||||
esalt_buf2[ 4] = esalt_bufs[salt_pos].esalt_buf[36];
|
||||
esalt_buf2[ 5] = esalt_bufs[salt_pos].esalt_buf[37];
|
||||
esalt_buf0[ 0] = esalt_bufs[digests_offset].esalt_buf[ 0];
|
||||
esalt_buf0[ 1] = esalt_bufs[digests_offset].esalt_buf[ 1];
|
||||
esalt_buf0[ 2] = esalt_bufs[digests_offset].esalt_buf[ 2];
|
||||
esalt_buf0[ 3] = esalt_bufs[digests_offset].esalt_buf[ 3];
|
||||
esalt_buf0[ 4] = esalt_bufs[digests_offset].esalt_buf[ 4];
|
||||
esalt_buf0[ 5] = esalt_bufs[digests_offset].esalt_buf[ 5];
|
||||
esalt_buf0[ 6] = esalt_bufs[digests_offset].esalt_buf[ 6];
|
||||
esalt_buf0[ 7] = esalt_bufs[digests_offset].esalt_buf[ 7];
|
||||
esalt_buf0[ 8] = esalt_bufs[digests_offset].esalt_buf[ 8];
|
||||
esalt_buf0[ 9] = esalt_bufs[digests_offset].esalt_buf[ 9];
|
||||
esalt_buf0[10] = esalt_bufs[digests_offset].esalt_buf[10];
|
||||
esalt_buf0[11] = esalt_bufs[digests_offset].esalt_buf[11];
|
||||
esalt_buf0[12] = esalt_bufs[digests_offset].esalt_buf[12];
|
||||
esalt_buf0[13] = esalt_bufs[digests_offset].esalt_buf[13];
|
||||
esalt_buf0[14] = esalt_bufs[digests_offset].esalt_buf[14];
|
||||
esalt_buf0[15] = esalt_bufs[digests_offset].esalt_buf[15];
|
||||
esalt_buf1[ 0] = esalt_bufs[digests_offset].esalt_buf[16];
|
||||
esalt_buf1[ 1] = esalt_bufs[digests_offset].esalt_buf[17];
|
||||
esalt_buf1[ 2] = esalt_bufs[digests_offset].esalt_buf[18];
|
||||
esalt_buf1[ 3] = esalt_bufs[digests_offset].esalt_buf[19];
|
||||
esalt_buf1[ 4] = esalt_bufs[digests_offset].esalt_buf[20];
|
||||
esalt_buf1[ 5] = esalt_bufs[digests_offset].esalt_buf[21];
|
||||
esalt_buf1[ 6] = esalt_bufs[digests_offset].esalt_buf[22];
|
||||
esalt_buf1[ 7] = esalt_bufs[digests_offset].esalt_buf[23];
|
||||
esalt_buf1[ 8] = esalt_bufs[digests_offset].esalt_buf[24];
|
||||
esalt_buf1[ 9] = esalt_bufs[digests_offset].esalt_buf[25];
|
||||
esalt_buf1[10] = esalt_bufs[digests_offset].esalt_buf[26];
|
||||
esalt_buf1[11] = esalt_bufs[digests_offset].esalt_buf[27];
|
||||
esalt_buf1[12] = esalt_bufs[digests_offset].esalt_buf[28];
|
||||
esalt_buf1[13] = esalt_bufs[digests_offset].esalt_buf[29];
|
||||
esalt_buf1[14] = esalt_bufs[digests_offset].esalt_buf[30];
|
||||
esalt_buf1[15] = esalt_bufs[digests_offset].esalt_buf[31];
|
||||
esalt_buf2[ 0] = esalt_bufs[digests_offset].esalt_buf[32];
|
||||
esalt_buf2[ 1] = esalt_bufs[digests_offset].esalt_buf[33];
|
||||
esalt_buf2[ 2] = esalt_bufs[digests_offset].esalt_buf[34];
|
||||
esalt_buf2[ 3] = esalt_bufs[digests_offset].esalt_buf[35];
|
||||
esalt_buf2[ 4] = esalt_bufs[digests_offset].esalt_buf[36];
|
||||
esalt_buf2[ 5] = esalt_bufs[digests_offset].esalt_buf[37];
|
||||
esalt_buf2[ 6] = 0;
|
||||
esalt_buf2[ 7] = 0;
|
||||
esalt_buf2[ 8] = 0;
|
||||
|
1096
OpenCL/m11400_a3.cl
1096
OpenCL/m11400_a3.cl
File diff suppressed because it is too large
Load Diff
@ -430,20 +430,20 @@ __kernel void m11900_init (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
u32 esalt_buf2[4];
|
||||
u32 esalt_buf3[4];
|
||||
|
||||
esalt_buf0[0] = esalt_bufs[salt_pos].salt_buf[ 0];
|
||||
esalt_buf0[1] = esalt_bufs[salt_pos].salt_buf[ 1];
|
||||
esalt_buf0[2] = esalt_bufs[salt_pos].salt_buf[ 2];
|
||||
esalt_buf0[3] = esalt_bufs[salt_pos].salt_buf[ 3];
|
||||
esalt_buf1[0] = esalt_bufs[salt_pos].salt_buf[ 4];
|
||||
esalt_buf1[1] = esalt_bufs[salt_pos].salt_buf[ 5];
|
||||
esalt_buf1[2] = esalt_bufs[salt_pos].salt_buf[ 6];
|
||||
esalt_buf1[3] = esalt_bufs[salt_pos].salt_buf[ 7];
|
||||
esalt_buf2[0] = esalt_bufs[salt_pos].salt_buf[ 8];
|
||||
esalt_buf2[1] = esalt_bufs[salt_pos].salt_buf[ 9];
|
||||
esalt_buf2[2] = esalt_bufs[salt_pos].salt_buf[10];
|
||||
esalt_buf2[3] = esalt_bufs[salt_pos].salt_buf[11];
|
||||
esalt_buf3[0] = esalt_bufs[salt_pos].salt_buf[12];
|
||||
esalt_buf3[1] = esalt_bufs[salt_pos].salt_buf[13];
|
||||
esalt_buf0[0] = esalt_bufs[digests_offset].salt_buf[ 0];
|
||||
esalt_buf0[1] = esalt_bufs[digests_offset].salt_buf[ 1];
|
||||
esalt_buf0[2] = esalt_bufs[digests_offset].salt_buf[ 2];
|
||||
esalt_buf0[3] = esalt_bufs[digests_offset].salt_buf[ 3];
|
||||
esalt_buf1[0] = esalt_bufs[digests_offset].salt_buf[ 4];
|
||||
esalt_buf1[1] = esalt_bufs[digests_offset].salt_buf[ 5];
|
||||
esalt_buf1[2] = esalt_bufs[digests_offset].salt_buf[ 6];
|
||||
esalt_buf1[3] = esalt_bufs[digests_offset].salt_buf[ 7];
|
||||
esalt_buf2[0] = esalt_bufs[digests_offset].salt_buf[ 8];
|
||||
esalt_buf2[1] = esalt_bufs[digests_offset].salt_buf[ 9];
|
||||
esalt_buf2[2] = esalt_bufs[digests_offset].salt_buf[10];
|
||||
esalt_buf2[3] = esalt_bufs[digests_offset].salt_buf[11];
|
||||
esalt_buf3[0] = esalt_bufs[digests_offset].salt_buf[12];
|
||||
esalt_buf3[1] = esalt_bufs[digests_offset].salt_buf[13];
|
||||
esalt_buf3[2] = (64 + salt_len + 4) * 8;
|
||||
esalt_buf3[3] = 0;
|
||||
|
||||
|
@ -498,20 +498,20 @@ __kernel void m12000_init (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
u32 esalt_buf2[4];
|
||||
u32 esalt_buf3[4];
|
||||
|
||||
esalt_buf0[0] = swap32_S (esalt_bufs[salt_pos].salt_buf[ 0]);
|
||||
esalt_buf0[1] = swap32_S (esalt_bufs[salt_pos].salt_buf[ 1]);
|
||||
esalt_buf0[2] = swap32_S (esalt_bufs[salt_pos].salt_buf[ 2]);
|
||||
esalt_buf0[3] = swap32_S (esalt_bufs[salt_pos].salt_buf[ 3]);
|
||||
esalt_buf1[0] = swap32_S (esalt_bufs[salt_pos].salt_buf[ 4]);
|
||||
esalt_buf1[1] = swap32_S (esalt_bufs[salt_pos].salt_buf[ 5]);
|
||||
esalt_buf1[2] = swap32_S (esalt_bufs[salt_pos].salt_buf[ 6]);
|
||||
esalt_buf1[3] = swap32_S (esalt_bufs[salt_pos].salt_buf[ 7]);
|
||||
esalt_buf2[0] = swap32_S (esalt_bufs[salt_pos].salt_buf[ 8]);
|
||||
esalt_buf2[1] = swap32_S (esalt_bufs[salt_pos].salt_buf[ 9]);
|
||||
esalt_buf2[2] = swap32_S (esalt_bufs[salt_pos].salt_buf[10]);
|
||||
esalt_buf2[3] = swap32_S (esalt_bufs[salt_pos].salt_buf[11]);
|
||||
esalt_buf3[0] = swap32_S (esalt_bufs[salt_pos].salt_buf[12]);
|
||||
esalt_buf3[1] = swap32_S (esalt_bufs[salt_pos].salt_buf[13]);
|
||||
esalt_buf0[0] = swap32_S (esalt_bufs[digests_offset].salt_buf[ 0]);
|
||||
esalt_buf0[1] = swap32_S (esalt_bufs[digests_offset].salt_buf[ 1]);
|
||||
esalt_buf0[2] = swap32_S (esalt_bufs[digests_offset].salt_buf[ 2]);
|
||||
esalt_buf0[3] = swap32_S (esalt_bufs[digests_offset].salt_buf[ 3]);
|
||||
esalt_buf1[0] = swap32_S (esalt_bufs[digests_offset].salt_buf[ 4]);
|
||||
esalt_buf1[1] = swap32_S (esalt_bufs[digests_offset].salt_buf[ 5]);
|
||||
esalt_buf1[2] = swap32_S (esalt_bufs[digests_offset].salt_buf[ 6]);
|
||||
esalt_buf1[3] = swap32_S (esalt_bufs[digests_offset].salt_buf[ 7]);
|
||||
esalt_buf2[0] = swap32_S (esalt_bufs[digests_offset].salt_buf[ 8]);
|
||||
esalt_buf2[1] = swap32_S (esalt_bufs[digests_offset].salt_buf[ 9]);
|
||||
esalt_buf2[2] = swap32_S (esalt_bufs[digests_offset].salt_buf[10]);
|
||||
esalt_buf2[3] = swap32_S (esalt_bufs[digests_offset].salt_buf[11]);
|
||||
esalt_buf3[0] = swap32_S (esalt_bufs[digests_offset].salt_buf[12]);
|
||||
esalt_buf3[1] = swap32_S (esalt_bufs[digests_offset].salt_buf[13]);
|
||||
esalt_buf3[2] = 0;
|
||||
esalt_buf3[3] = (64 + salt_len + 4) * 8;
|
||||
|
||||
|
@ -736,10 +736,10 @@ void m13100 (__local RC4_KEY *rc4_keys, u32 w0[4], u32 w1[4], u32 w2[4], u32 w3[
|
||||
|
||||
u32 checksum[4];
|
||||
|
||||
checksum[0] = krb5tgs_bufs[salt_pos].checksum[0];
|
||||
checksum[1] = krb5tgs_bufs[salt_pos].checksum[1];
|
||||
checksum[2] = krb5tgs_bufs[salt_pos].checksum[2];
|
||||
checksum[3] = krb5tgs_bufs[salt_pos].checksum[3];
|
||||
checksum[0] = krb5tgs_bufs[digests_offset].checksum[0];
|
||||
checksum[1] = krb5tgs_bufs[digests_offset].checksum[1];
|
||||
checksum[2] = krb5tgs_bufs[digests_offset].checksum[2];
|
||||
checksum[3] = krb5tgs_bufs[digests_offset].checksum[3];
|
||||
|
||||
/**
|
||||
* loop
|
||||
@ -766,7 +766,7 @@ void m13100 (__local RC4_KEY *rc4_keys, u32 w0[4], u32 w1[4], u32 w2[4], u32 w3[
|
||||
tmp[2] = digest[2];
|
||||
tmp[3] = digest[3];
|
||||
|
||||
if (decrypt_and_check (&rc4_keys[lid], tmp, krb5tgs_bufs[salt_pos].edata2, krb5tgs_bufs[salt_pos].edata2_len, K2, checksum) == 1)
|
||||
if (decrypt_and_check (&rc4_keys[lid], tmp, krb5tgs_bufs[digests_offset].edata2, krb5tgs_bufs[digests_offset].edata2_len, K2, checksum) == 1)
|
||||
{
|
||||
mark_hash (plains_buf, d_return_buf, salt_pos, digests_cnt, 0, digests_offset + 0, gid, il_pos);
|
||||
}
|
||||
@ -816,10 +816,10 @@ __kernel void m13100_m04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
u32 checksum[4];
|
||||
|
||||
checksum[0] = krb5tgs_bufs[salt_pos].checksum[0];
|
||||
checksum[1] = krb5tgs_bufs[salt_pos].checksum[1];
|
||||
checksum[2] = krb5tgs_bufs[salt_pos].checksum[2];
|
||||
checksum[3] = krb5tgs_bufs[salt_pos].checksum[3];
|
||||
checksum[0] = krb5tgs_bufs[digests_offset].checksum[0];
|
||||
checksum[1] = krb5tgs_bufs[digests_offset].checksum[1];
|
||||
checksum[2] = krb5tgs_bufs[digests_offset].checksum[2];
|
||||
checksum[3] = krb5tgs_bufs[digests_offset].checksum[3];
|
||||
|
||||
/**
|
||||
* loop
|
||||
@ -851,7 +851,7 @@ __kernel void m13100_m04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
tmp[2] = digest[2];
|
||||
tmp[3] = digest[3];
|
||||
|
||||
if (decrypt_and_check (&rc4_keys[lid], tmp, krb5tgs_bufs[salt_pos].edata2, krb5tgs_bufs[salt_pos].edata2_len, K2, checksum) == 1)
|
||||
if (decrypt_and_check (&rc4_keys[lid], tmp, krb5tgs_bufs[digests_offset].edata2, krb5tgs_bufs[digests_offset].edata2_len, K2, checksum) == 1)
|
||||
{
|
||||
mark_hash (plains_buf, d_return_buf, salt_pos, digests_cnt, 0, digests_offset + 0, gid, il_pos);
|
||||
}
|
||||
@ -909,10 +909,10 @@ __kernel void m13100_s04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
u32 checksum[4];
|
||||
|
||||
checksum[0] = krb5tgs_bufs[salt_pos].checksum[0];
|
||||
checksum[1] = krb5tgs_bufs[salt_pos].checksum[1];
|
||||
checksum[2] = krb5tgs_bufs[salt_pos].checksum[2];
|
||||
checksum[3] = krb5tgs_bufs[salt_pos].checksum[3];
|
||||
checksum[0] = krb5tgs_bufs[digests_offset].checksum[0];
|
||||
checksum[1] = krb5tgs_bufs[digests_offset].checksum[1];
|
||||
checksum[2] = krb5tgs_bufs[digests_offset].checksum[2];
|
||||
checksum[3] = krb5tgs_bufs[digests_offset].checksum[3];
|
||||
|
||||
/**
|
||||
* loop
|
||||
@ -944,7 +944,7 @@ __kernel void m13100_s04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
tmp[2] = digest[2];
|
||||
tmp[3] = digest[3];
|
||||
|
||||
if (decrypt_and_check (&rc4_keys[lid], tmp, krb5tgs_bufs[salt_pos].edata2, krb5tgs_bufs[salt_pos].edata2_len, K2, checksum) == 1)
|
||||
if (decrypt_and_check (&rc4_keys[lid], tmp, krb5tgs_bufs[digests_offset].edata2, krb5tgs_bufs[digests_offset].edata2_len, K2, checksum) == 1)
|
||||
{
|
||||
mark_hash (plains_buf, d_return_buf, salt_pos, digests_cnt, 0, digests_offset + 0, gid, il_pos);
|
||||
}
|
||||
|
@ -761,10 +761,10 @@ __kernel void m13100_m04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
u32 checksum[4];
|
||||
|
||||
checksum[0] = krb5tgs_bufs[salt_pos].checksum[0];
|
||||
checksum[1] = krb5tgs_bufs[salt_pos].checksum[1];
|
||||
checksum[2] = krb5tgs_bufs[salt_pos].checksum[2];
|
||||
checksum[3] = krb5tgs_bufs[salt_pos].checksum[3];
|
||||
checksum[0] = krb5tgs_bufs[digests_offset].checksum[0];
|
||||
checksum[1] = krb5tgs_bufs[digests_offset].checksum[1];
|
||||
checksum[2] = krb5tgs_bufs[digests_offset].checksum[2];
|
||||
checksum[3] = krb5tgs_bufs[digests_offset].checksum[3];
|
||||
|
||||
/**
|
||||
* loop
|
||||
@ -846,7 +846,7 @@ __kernel void m13100_m04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
tmp[2] = digest[2];
|
||||
tmp[3] = digest[3];
|
||||
|
||||
if (decrypt_and_check (&rc4_keys[lid], tmp, krb5tgs_bufs[salt_pos].edata2, krb5tgs_bufs[salt_pos].edata2_len, K2, checksum) == 1)
|
||||
if (decrypt_and_check (&rc4_keys[lid], tmp, krb5tgs_bufs[digests_offset].edata2, krb5tgs_bufs[digests_offset].edata2_len, K2, checksum) == 1)
|
||||
{
|
||||
mark_hash (plains_buf, d_return_buf, salt_pos, digests_cnt, 0, digests_offset + 0, gid, il_pos);
|
||||
}
|
||||
@ -903,10 +903,10 @@ __kernel void m13100_s04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
u32 checksum[4];
|
||||
|
||||
checksum[0] = krb5tgs_bufs[salt_pos].checksum[0];
|
||||
checksum[1] = krb5tgs_bufs[salt_pos].checksum[1];
|
||||
checksum[2] = krb5tgs_bufs[salt_pos].checksum[2];
|
||||
checksum[3] = krb5tgs_bufs[salt_pos].checksum[3];
|
||||
checksum[0] = krb5tgs_bufs[digests_offset].checksum[0];
|
||||
checksum[1] = krb5tgs_bufs[digests_offset].checksum[1];
|
||||
checksum[2] = krb5tgs_bufs[digests_offset].checksum[2];
|
||||
checksum[3] = krb5tgs_bufs[digests_offset].checksum[3];
|
||||
|
||||
/**
|
||||
* loop
|
||||
@ -988,7 +988,7 @@ __kernel void m13100_s04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
tmp[2] = digest[2];
|
||||
tmp[3] = digest[3];
|
||||
|
||||
if (decrypt_and_check (&rc4_keys[lid], tmp, krb5tgs_bufs[salt_pos].edata2, krb5tgs_bufs[salt_pos].edata2_len, K2, checksum) == 1)
|
||||
if (decrypt_and_check (&rc4_keys[lid], tmp, krb5tgs_bufs[digests_offset].edata2, krb5tgs_bufs[digests_offset].edata2_len, K2, checksum) == 1)
|
||||
{
|
||||
mark_hash (plains_buf, d_return_buf, salt_pos, digests_cnt, 0, digests_offset + 0, gid, il_pos);
|
||||
}
|
||||
|
@ -734,10 +734,10 @@ void m13100 (__local RC4_KEY *rc4_keys, u32 w0[4], u32 w1[4], u32 w2[4], u32 w3[
|
||||
|
||||
u32 checksum[4];
|
||||
|
||||
checksum[0] = krb5tgs_bufs[salt_pos].checksum[0];
|
||||
checksum[1] = krb5tgs_bufs[salt_pos].checksum[1];
|
||||
checksum[2] = krb5tgs_bufs[salt_pos].checksum[2];
|
||||
checksum[3] = krb5tgs_bufs[salt_pos].checksum[3];
|
||||
checksum[0] = krb5tgs_bufs[digests_offset].checksum[0];
|
||||
checksum[1] = krb5tgs_bufs[digests_offset].checksum[1];
|
||||
checksum[2] = krb5tgs_bufs[digests_offset].checksum[2];
|
||||
checksum[3] = krb5tgs_bufs[digests_offset].checksum[3];
|
||||
|
||||
/**
|
||||
* loop
|
||||
@ -768,7 +768,7 @@ void m13100 (__local RC4_KEY *rc4_keys, u32 w0[4], u32 w1[4], u32 w2[4], u32 w3[
|
||||
tmp[2] = digest[2];
|
||||
tmp[3] = digest[3];
|
||||
|
||||
if (decrypt_and_check (&rc4_keys[lid], tmp, krb5tgs_bufs[salt_pos].edata2, krb5tgs_bufs[salt_pos].edata2_len, K2, checksum) == 1)
|
||||
if (decrypt_and_check (&rc4_keys[lid], tmp, krb5tgs_bufs[digests_offset].edata2, krb5tgs_bufs[digests_offset].edata2_len, K2, checksum) == 1)
|
||||
{
|
||||
mark_hash (plains_buf, d_return_buf, salt_pos, digests_cnt, 0, digests_offset + 0, gid, il_pos);
|
||||
}
|
||||
|
178
OpenCL/m13400.cl
178
OpenCL/m13400.cl
@ -383,7 +383,7 @@ __kernel void m13400_init (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
|
||||
sha256_transform (w0, w1, w2, w3, digest);
|
||||
|
||||
if (esalt_bufs[salt_pos].version == 2 && esalt_bufs[salt_pos].keyfile_len == 0)
|
||||
if (esalt_bufs[digests_offset].version == 2 && esalt_bufs[digests_offset].keyfile_len == 0)
|
||||
{
|
||||
w0[0] = digest[0];
|
||||
w0[1] = digest[1];
|
||||
@ -417,7 +417,7 @@ __kernel void m13400_init (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
sha256_transform (w0, w1, w2, w3, digest);
|
||||
}
|
||||
|
||||
if (esalt_bufs[salt_pos].keyfile_len != 0)
|
||||
if (esalt_bufs[digests_offset].keyfile_len != 0)
|
||||
{
|
||||
w0[0] = digest[0];
|
||||
w0[1] = digest[1];
|
||||
@ -429,15 +429,15 @@ __kernel void m13400_init (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
w1[2] = digest[6];
|
||||
w1[3] = digest[7];
|
||||
|
||||
w2[0] = esalt_bufs[salt_pos].keyfile[0];
|
||||
w2[1] = esalt_bufs[salt_pos].keyfile[1];
|
||||
w2[2] = esalt_bufs[salt_pos].keyfile[2];
|
||||
w2[3] = esalt_bufs[salt_pos].keyfile[3];
|
||||
w2[0] = esalt_bufs[digests_offset].keyfile[0];
|
||||
w2[1] = esalt_bufs[digests_offset].keyfile[1];
|
||||
w2[2] = esalt_bufs[digests_offset].keyfile[2];
|
||||
w2[3] = esalt_bufs[digests_offset].keyfile[3];
|
||||
|
||||
w3[0] = esalt_bufs[salt_pos].keyfile[4];
|
||||
w3[1] = esalt_bufs[salt_pos].keyfile[5];
|
||||
w3[3] = esalt_bufs[salt_pos].keyfile[7];
|
||||
w3[2] = esalt_bufs[salt_pos].keyfile[6];
|
||||
w3[0] = esalt_bufs[digests_offset].keyfile[4];
|
||||
w3[1] = esalt_bufs[digests_offset].keyfile[5];
|
||||
w3[3] = esalt_bufs[digests_offset].keyfile[7];
|
||||
w3[2] = esalt_bufs[digests_offset].keyfile[6];
|
||||
|
||||
digest[0] = SHA256M_A;
|
||||
digest[1] = SHA256M_B;
|
||||
@ -528,14 +528,14 @@ __kernel void m13400_loop (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
|
||||
u32 key[8];
|
||||
|
||||
key[0] = esalt_bufs[salt_pos].transf_random_seed[0];
|
||||
key[1] = esalt_bufs[salt_pos].transf_random_seed[1];
|
||||
key[2] = esalt_bufs[salt_pos].transf_random_seed[2];
|
||||
key[3] = esalt_bufs[salt_pos].transf_random_seed[3];
|
||||
key[4] = esalt_bufs[salt_pos].transf_random_seed[4];
|
||||
key[5] = esalt_bufs[salt_pos].transf_random_seed[5];
|
||||
key[6] = esalt_bufs[salt_pos].transf_random_seed[6];
|
||||
key[7] = esalt_bufs[salt_pos].transf_random_seed[7];
|
||||
key[0] = esalt_bufs[digests_offset].transf_random_seed[0];
|
||||
key[1] = esalt_bufs[digests_offset].transf_random_seed[1];
|
||||
key[2] = esalt_bufs[digests_offset].transf_random_seed[2];
|
||||
key[3] = esalt_bufs[digests_offset].transf_random_seed[3];
|
||||
key[4] = esalt_bufs[digests_offset].transf_random_seed[4];
|
||||
key[5] = esalt_bufs[digests_offset].transf_random_seed[5];
|
||||
key[6] = esalt_bufs[digests_offset].transf_random_seed[6];
|
||||
key[7] = esalt_bufs[digests_offset].transf_random_seed[7];
|
||||
|
||||
#define KEYLEN 60
|
||||
|
||||
@ -673,14 +673,14 @@ __kernel void m13400_comp (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
sha256_transform (w0, w1, w2, w3, digest);
|
||||
|
||||
/* ...then hash final_random_seed | output */
|
||||
if (esalt_bufs[salt_pos].version == 1)
|
||||
if (esalt_bufs[digests_offset].version == 1)
|
||||
{
|
||||
u32 final_random_seed[4];
|
||||
|
||||
final_random_seed[0] = esalt_bufs[salt_pos].final_random_seed[0];
|
||||
final_random_seed[1] = esalt_bufs[salt_pos].final_random_seed[1];
|
||||
final_random_seed[2] = esalt_bufs[salt_pos].final_random_seed[2];
|
||||
final_random_seed[3] = esalt_bufs[salt_pos].final_random_seed[3];
|
||||
final_random_seed[0] = esalt_bufs[digests_offset].final_random_seed[0];
|
||||
final_random_seed[1] = esalt_bufs[digests_offset].final_random_seed[1];
|
||||
final_random_seed[2] = esalt_bufs[digests_offset].final_random_seed[2];
|
||||
final_random_seed[3] = esalt_bufs[digests_offset].final_random_seed[3];
|
||||
|
||||
w0[0] = final_random_seed[0];
|
||||
w0[1] = final_random_seed[1];
|
||||
@ -715,14 +715,14 @@ __kernel void m13400_comp (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
/* merkle-damgard implementation */
|
||||
u32 final_random_seed[8];
|
||||
|
||||
final_random_seed[0] = esalt_bufs[salt_pos].final_random_seed[0];
|
||||
final_random_seed[1] = esalt_bufs[salt_pos].final_random_seed[1];
|
||||
final_random_seed[2] = esalt_bufs[salt_pos].final_random_seed[2];
|
||||
final_random_seed[3] = esalt_bufs[salt_pos].final_random_seed[3];
|
||||
final_random_seed[4] = esalt_bufs[salt_pos].final_random_seed[4];
|
||||
final_random_seed[5] = esalt_bufs[salt_pos].final_random_seed[5];
|
||||
final_random_seed[6] = esalt_bufs[salt_pos].final_random_seed[6];
|
||||
final_random_seed[7] = esalt_bufs[salt_pos].final_random_seed[7];
|
||||
final_random_seed[0] = esalt_bufs[digests_offset].final_random_seed[0];
|
||||
final_random_seed[1] = esalt_bufs[digests_offset].final_random_seed[1];
|
||||
final_random_seed[2] = esalt_bufs[digests_offset].final_random_seed[2];
|
||||
final_random_seed[3] = esalt_bufs[digests_offset].final_random_seed[3];
|
||||
final_random_seed[4] = esalt_bufs[digests_offset].final_random_seed[4];
|
||||
final_random_seed[5] = esalt_bufs[digests_offset].final_random_seed[5];
|
||||
final_random_seed[6] = esalt_bufs[digests_offset].final_random_seed[6];
|
||||
final_random_seed[7] = esalt_bufs[digests_offset].final_random_seed[7];
|
||||
|
||||
w0[0] = final_random_seed[0];
|
||||
w0[1] = final_random_seed[1];
|
||||
@ -776,16 +776,16 @@ __kernel void m13400_comp (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
|
||||
u32 iv[4];
|
||||
|
||||
iv[0] = esalt_bufs[salt_pos].enc_iv[0];
|
||||
iv[1] = esalt_bufs[salt_pos].enc_iv[1];
|
||||
iv[2] = esalt_bufs[salt_pos].enc_iv[2];
|
||||
iv[3] = esalt_bufs[salt_pos].enc_iv[3];
|
||||
iv[0] = esalt_bufs[digests_offset].enc_iv[0];
|
||||
iv[1] = esalt_bufs[digests_offset].enc_iv[1];
|
||||
iv[2] = esalt_bufs[digests_offset].enc_iv[2];
|
||||
iv[3] = esalt_bufs[digests_offset].enc_iv[3];
|
||||
|
||||
u32 out[8];
|
||||
|
||||
if (esalt_bufs[salt_pos].version == 1)
|
||||
if (esalt_bufs[digests_offset].version == 1)
|
||||
{
|
||||
if (esalt_bufs[salt_pos].algorithm == 1)
|
||||
if (esalt_bufs[digests_offset].algorithm == 1)
|
||||
{
|
||||
/* Construct final Twofish key */
|
||||
u32 sk[4];
|
||||
@ -820,7 +820,7 @@ __kernel void m13400_comp (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
final_digest[6] = SHA256M_G;
|
||||
final_digest[7] = SHA256M_H;
|
||||
|
||||
u32 contents_len = esalt_bufs[salt_pos].contents_len;
|
||||
u32 contents_len = esalt_bufs[digests_offset].contents_len;
|
||||
|
||||
u32 contents_pos;
|
||||
u32 contents_off;
|
||||
@ -833,10 +833,10 @@ __kernel void m13400_comp (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
{
|
||||
u32 data[4];
|
||||
|
||||
data[0] = swap32 (esalt_bufs[salt_pos].contents[contents_off + se + 0]);
|
||||
data[1] = swap32 (esalt_bufs[salt_pos].contents[contents_off + se + 1]);
|
||||
data[2] = swap32 (esalt_bufs[salt_pos].contents[contents_off + se + 2]);
|
||||
data[3] = swap32 (esalt_bufs[salt_pos].contents[contents_off + se + 3]);
|
||||
data[0] = swap32 (esalt_bufs[digests_offset].contents[contents_off + se + 0]);
|
||||
data[1] = swap32 (esalt_bufs[digests_offset].contents[contents_off + se + 1]);
|
||||
data[2] = swap32 (esalt_bufs[digests_offset].contents[contents_off + se + 2]);
|
||||
data[3] = swap32 (esalt_bufs[digests_offset].contents[contents_off + se + 3]);
|
||||
|
||||
u32 out[4];
|
||||
|
||||
@ -888,10 +888,10 @@ __kernel void m13400_comp (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
{
|
||||
u32 data[4];
|
||||
|
||||
data[0] = swap32 (esalt_bufs[salt_pos].contents[contents_off + 0]);
|
||||
data[1] = swap32 (esalt_bufs[salt_pos].contents[contents_off + 1]);
|
||||
data[2] = swap32 (esalt_bufs[salt_pos].contents[contents_off + 2]);
|
||||
data[3] = swap32 (esalt_bufs[salt_pos].contents[contents_off + 3]);
|
||||
data[0] = swap32 (esalt_bufs[digests_offset].contents[contents_off + 0]);
|
||||
data[1] = swap32 (esalt_bufs[digests_offset].contents[contents_off + 1]);
|
||||
data[2] = swap32 (esalt_bufs[digests_offset].contents[contents_off + 2]);
|
||||
data[3] = swap32 (esalt_bufs[digests_offset].contents[contents_off + 3]);
|
||||
|
||||
u32 out[4];
|
||||
|
||||
@ -917,10 +917,10 @@ __kernel void m13400_comp (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
|
||||
u32 data[4];
|
||||
|
||||
data[0] = swap32 (esalt_bufs[salt_pos].contents[contents_off + 0]);
|
||||
data[1] = swap32 (esalt_bufs[salt_pos].contents[contents_off + 1]);
|
||||
data[2] = swap32 (esalt_bufs[salt_pos].contents[contents_off + 2]);
|
||||
data[3] = swap32 (esalt_bufs[salt_pos].contents[contents_off + 3]);
|
||||
data[0] = swap32 (esalt_bufs[digests_offset].contents[contents_off + 0]);
|
||||
data[1] = swap32 (esalt_bufs[digests_offset].contents[contents_off + 1]);
|
||||
data[2] = swap32 (esalt_bufs[digests_offset].contents[contents_off + 2]);
|
||||
data[3] = swap32 (esalt_bufs[digests_offset].contents[contents_off + 3]);
|
||||
|
||||
u32 out[4];
|
||||
|
||||
@ -935,7 +935,7 @@ __kernel void m13400_comp (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
|
||||
const u32 pad_byte = out[3] >> 24;
|
||||
|
||||
const u32 real_len = esalt_bufs[salt_pos].contents_len - pad_byte;
|
||||
const u32 real_len = esalt_bufs[digests_offset].contents_len - pad_byte;
|
||||
|
||||
// we need to clear the buffer of the padding data
|
||||
|
||||
@ -983,14 +983,14 @@ __kernel void m13400_comp (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
|
||||
#define il_pos 0
|
||||
|
||||
if ( esalt_bufs[salt_pos].contents_hash[0] == final_digest[0]
|
||||
&& esalt_bufs[salt_pos].contents_hash[1] == final_digest[1]
|
||||
&& esalt_bufs[salt_pos].contents_hash[2] == final_digest[2]
|
||||
&& esalt_bufs[salt_pos].contents_hash[3] == final_digest[3]
|
||||
&& esalt_bufs[salt_pos].contents_hash[4] == final_digest[4]
|
||||
&& esalt_bufs[salt_pos].contents_hash[5] == final_digest[5]
|
||||
&& esalt_bufs[salt_pos].contents_hash[6] == final_digest[6]
|
||||
&& esalt_bufs[salt_pos].contents_hash[7] == final_digest[7])
|
||||
if ( esalt_bufs[digests_offset].contents_hash[0] == final_digest[0]
|
||||
&& esalt_bufs[digests_offset].contents_hash[1] == final_digest[1]
|
||||
&& esalt_bufs[digests_offset].contents_hash[2] == final_digest[2]
|
||||
&& esalt_bufs[digests_offset].contents_hash[3] == final_digest[3]
|
||||
&& esalt_bufs[digests_offset].contents_hash[4] == final_digest[4]
|
||||
&& esalt_bufs[digests_offset].contents_hash[5] == final_digest[5]
|
||||
&& esalt_bufs[digests_offset].contents_hash[6] == final_digest[6]
|
||||
&& esalt_bufs[digests_offset].contents_hash[7] == final_digest[7])
|
||||
{
|
||||
mark_hash (plains_buf, d_return_buf, salt_pos, digests_cnt, 0, digests_offset + 0, gid, il_pos);
|
||||
}
|
||||
@ -1019,7 +1019,7 @@ __kernel void m13400_comp (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
final_digest[6] = SHA256M_G;
|
||||
final_digest[7] = SHA256M_H;
|
||||
|
||||
u32 contents_len = esalt_bufs[salt_pos].contents_len;
|
||||
u32 contents_len = esalt_bufs[digests_offset].contents_len;
|
||||
|
||||
u32 contents_pos;
|
||||
u32 contents_off;
|
||||
@ -1032,10 +1032,10 @@ __kernel void m13400_comp (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
{
|
||||
u32 data[4];
|
||||
|
||||
data[0] = esalt_bufs[salt_pos].contents[contents_off + se + 0];
|
||||
data[1] = esalt_bufs[salt_pos].contents[contents_off + se + 1];
|
||||
data[2] = esalt_bufs[salt_pos].contents[contents_off + se + 2];
|
||||
data[3] = esalt_bufs[salt_pos].contents[contents_off + se + 3];
|
||||
data[0] = esalt_bufs[digests_offset].contents[contents_off + se + 0];
|
||||
data[1] = esalt_bufs[digests_offset].contents[contents_off + se + 1];
|
||||
data[2] = esalt_bufs[digests_offset].contents[contents_off + se + 2];
|
||||
data[3] = esalt_bufs[digests_offset].contents[contents_off + se + 3];
|
||||
|
||||
u32 out[4];
|
||||
|
||||
@ -1087,10 +1087,10 @@ __kernel void m13400_comp (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
{
|
||||
u32 data[4];
|
||||
|
||||
data[0] = esalt_bufs[salt_pos].contents[contents_off + 0];
|
||||
data[1] = esalt_bufs[salt_pos].contents[contents_off + 1];
|
||||
data[2] = esalt_bufs[salt_pos].contents[contents_off + 2];
|
||||
data[3] = esalt_bufs[salt_pos].contents[contents_off + 3];
|
||||
data[0] = esalt_bufs[digests_offset].contents[contents_off + 0];
|
||||
data[1] = esalt_bufs[digests_offset].contents[contents_off + 1];
|
||||
data[2] = esalt_bufs[digests_offset].contents[contents_off + 2];
|
||||
data[3] = esalt_bufs[digests_offset].contents[contents_off + 3];
|
||||
|
||||
u32 out[4];
|
||||
|
||||
@ -1116,10 +1116,10 @@ __kernel void m13400_comp (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
|
||||
u32 data[4];
|
||||
|
||||
data[0] = esalt_bufs[salt_pos].contents[contents_off + 0];
|
||||
data[1] = esalt_bufs[salt_pos].contents[contents_off + 1];
|
||||
data[2] = esalt_bufs[salt_pos].contents[contents_off + 2];
|
||||
data[3] = esalt_bufs[salt_pos].contents[contents_off + 3];
|
||||
data[0] = esalt_bufs[digests_offset].contents[contents_off + 0];
|
||||
data[1] = esalt_bufs[digests_offset].contents[contents_off + 1];
|
||||
data[2] = esalt_bufs[digests_offset].contents[contents_off + 2];
|
||||
data[3] = esalt_bufs[digests_offset].contents[contents_off + 3];
|
||||
|
||||
u32 out[4];
|
||||
|
||||
@ -1139,7 +1139,7 @@ __kernel void m13400_comp (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
|
||||
const u32 pad_byte = out[3] >> 24;
|
||||
|
||||
const u32 real_len = esalt_bufs[salt_pos].contents_len - pad_byte;
|
||||
const u32 real_len = esalt_bufs[digests_offset].contents_len - pad_byte;
|
||||
|
||||
// we need to clear the buffer of the padding data
|
||||
|
||||
@ -1187,14 +1187,14 @@ __kernel void m13400_comp (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
|
||||
#define il_pos 0
|
||||
|
||||
if ( esalt_bufs[salt_pos].contents_hash[0] == final_digest[0]
|
||||
&& esalt_bufs[salt_pos].contents_hash[1] == final_digest[1]
|
||||
&& esalt_bufs[salt_pos].contents_hash[2] == final_digest[2]
|
||||
&& esalt_bufs[salt_pos].contents_hash[3] == final_digest[3]
|
||||
&& esalt_bufs[salt_pos].contents_hash[4] == final_digest[4]
|
||||
&& esalt_bufs[salt_pos].contents_hash[5] == final_digest[5]
|
||||
&& esalt_bufs[salt_pos].contents_hash[6] == final_digest[6]
|
||||
&& esalt_bufs[salt_pos].contents_hash[7] == final_digest[7])
|
||||
if ( esalt_bufs[digests_offset].contents_hash[0] == final_digest[0]
|
||||
&& esalt_bufs[digests_offset].contents_hash[1] == final_digest[1]
|
||||
&& esalt_bufs[digests_offset].contents_hash[2] == final_digest[2]
|
||||
&& esalt_bufs[digests_offset].contents_hash[3] == final_digest[3]
|
||||
&& esalt_bufs[digests_offset].contents_hash[4] == final_digest[4]
|
||||
&& esalt_bufs[digests_offset].contents_hash[5] == final_digest[5]
|
||||
&& esalt_bufs[digests_offset].contents_hash[6] == final_digest[6]
|
||||
&& esalt_bufs[digests_offset].contents_hash[7] == final_digest[7])
|
||||
{
|
||||
mark_hash (plains_buf, d_return_buf, salt_pos, digests_cnt, 0, digests_offset + 0, gid, il_pos);
|
||||
}
|
||||
@ -1213,10 +1213,10 @@ __kernel void m13400_comp (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
|
||||
u32 contents_hash[4];
|
||||
|
||||
contents_hash[0] = esalt_bufs[salt_pos].contents_hash[0];
|
||||
contents_hash[1] = esalt_bufs[salt_pos].contents_hash[1];
|
||||
contents_hash[2] = esalt_bufs[salt_pos].contents_hash[2];
|
||||
contents_hash[3] = esalt_bufs[salt_pos].contents_hash[3];
|
||||
contents_hash[0] = esalt_bufs[digests_offset].contents_hash[0];
|
||||
contents_hash[1] = esalt_bufs[digests_offset].contents_hash[1];
|
||||
contents_hash[2] = esalt_bufs[digests_offset].contents_hash[2];
|
||||
contents_hash[3] = esalt_bufs[digests_offset].contents_hash[3];
|
||||
|
||||
AES256_decrypt (contents_hash, out, final_rk, s_td0, s_td1, s_td2, s_td3, s_td4);
|
||||
|
||||
@ -1229,10 +1229,10 @@ __kernel void m13400_comp (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
|
||||
#define il_pos 0
|
||||
|
||||
if ( esalt_bufs[salt_pos].expected_bytes[0] == out[0]
|
||||
&& esalt_bufs[salt_pos].expected_bytes[1] == out[1]
|
||||
&& esalt_bufs[salt_pos].expected_bytes[2] == out[2]
|
||||
&& esalt_bufs[salt_pos].expected_bytes[3] == out[3])
|
||||
if ( esalt_bufs[digests_offset].expected_bytes[0] == out[0]
|
||||
&& esalt_bufs[digests_offset].expected_bytes[1] == out[1]
|
||||
&& esalt_bufs[digests_offset].expected_bytes[2] == out[2]
|
||||
&& esalt_bufs[digests_offset].expected_bytes[3] == out[3])
|
||||
{
|
||||
mark_hash (plains_buf, d_return_buf, salt_pos, digests_cnt, 0, digests_offset + 0, gid, il_pos);
|
||||
}
|
||||
|
@ -49,41 +49,41 @@ __kernel void m13500_m04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
* salt
|
||||
*/
|
||||
|
||||
const u32 pc_offset = esalt_bufs[salt_pos].pc_offset;
|
||||
const u32 pc_offset = esalt_bufs[digests_offset].pc_offset;
|
||||
|
||||
const u32 pc_offset4 = pc_offset * 4;
|
||||
|
||||
u32 pc_digest[5];
|
||||
|
||||
pc_digest[0] = esalt_bufs[salt_pos].pc_digest[0];
|
||||
pc_digest[1] = esalt_bufs[salt_pos].pc_digest[1];
|
||||
pc_digest[2] = esalt_bufs[salt_pos].pc_digest[2];
|
||||
pc_digest[3] = esalt_bufs[salt_pos].pc_digest[3];
|
||||
pc_digest[4] = esalt_bufs[salt_pos].pc_digest[4];
|
||||
pc_digest[0] = esalt_bufs[digests_offset].pc_digest[0];
|
||||
pc_digest[1] = esalt_bufs[digests_offset].pc_digest[1];
|
||||
pc_digest[2] = esalt_bufs[digests_offset].pc_digest[2];
|
||||
pc_digest[3] = esalt_bufs[digests_offset].pc_digest[3];
|
||||
pc_digest[4] = esalt_bufs[digests_offset].pc_digest[4];
|
||||
|
||||
u32 salt_buf0[4];
|
||||
u32 salt_buf1[4];
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 0]);
|
||||
salt_buf0[1] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 1]);
|
||||
salt_buf0[2] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 2]);
|
||||
salt_buf0[3] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 3]);
|
||||
salt_buf1[0] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 4]);
|
||||
salt_buf1[1] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 5]);
|
||||
salt_buf1[2] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 6]);
|
||||
salt_buf1[3] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 7]);
|
||||
salt_buf2[0] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 8]);
|
||||
salt_buf2[1] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 9]);
|
||||
salt_buf2[2] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 10]);
|
||||
salt_buf2[3] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 11]);
|
||||
salt_buf3[0] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 12]);
|
||||
salt_buf3[1] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 13]);
|
||||
salt_buf3[2] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 14]);
|
||||
salt_buf3[3] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 15]);
|
||||
salt_buf0[0] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 0]);
|
||||
salt_buf0[1] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 1]);
|
||||
salt_buf0[2] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 2]);
|
||||
salt_buf0[3] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 3]);
|
||||
salt_buf1[0] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 4]);
|
||||
salt_buf1[1] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 5]);
|
||||
salt_buf1[2] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 6]);
|
||||
salt_buf1[3] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 7]);
|
||||
salt_buf2[0] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 8]);
|
||||
salt_buf2[1] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 9]);
|
||||
salt_buf2[2] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 10]);
|
||||
salt_buf2[3] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 11]);
|
||||
salt_buf3[0] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 12]);
|
||||
salt_buf3[1] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 13]);
|
||||
salt_buf3[2] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 14]);
|
||||
salt_buf3[3] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 15]);
|
||||
|
||||
const u32 salt_len = esalt_bufs[salt_pos].salt_len;
|
||||
const u32 salt_len = esalt_bufs[digests_offset].salt_len;
|
||||
|
||||
/**
|
||||
* loop
|
||||
@ -474,41 +474,41 @@ __kernel void m13500_s04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
* salt
|
||||
*/
|
||||
|
||||
const u32 pc_offset = esalt_bufs[salt_pos].pc_offset;
|
||||
const u32 pc_offset = esalt_bufs[digests_offset].pc_offset;
|
||||
|
||||
const u32 pc_offset4 = pc_offset * 4;
|
||||
|
||||
u32 pc_digest[5];
|
||||
|
||||
pc_digest[0] = esalt_bufs[salt_pos].pc_digest[0];
|
||||
pc_digest[1] = esalt_bufs[salt_pos].pc_digest[1];
|
||||
pc_digest[2] = esalt_bufs[salt_pos].pc_digest[2];
|
||||
pc_digest[3] = esalt_bufs[salt_pos].pc_digest[3];
|
||||
pc_digest[4] = esalt_bufs[salt_pos].pc_digest[4];
|
||||
pc_digest[0] = esalt_bufs[digests_offset].pc_digest[0];
|
||||
pc_digest[1] = esalt_bufs[digests_offset].pc_digest[1];
|
||||
pc_digest[2] = esalt_bufs[digests_offset].pc_digest[2];
|
||||
pc_digest[3] = esalt_bufs[digests_offset].pc_digest[3];
|
||||
pc_digest[4] = esalt_bufs[digests_offset].pc_digest[4];
|
||||
|
||||
u32 salt_buf0[4];
|
||||
u32 salt_buf1[4];
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 0]);
|
||||
salt_buf0[1] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 1]);
|
||||
salt_buf0[2] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 2]);
|
||||
salt_buf0[3] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 3]);
|
||||
salt_buf1[0] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 4]);
|
||||
salt_buf1[1] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 5]);
|
||||
salt_buf1[2] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 6]);
|
||||
salt_buf1[3] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 7]);
|
||||
salt_buf2[0] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 8]);
|
||||
salt_buf2[1] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 9]);
|
||||
salt_buf2[2] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 10]);
|
||||
salt_buf2[3] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 11]);
|
||||
salt_buf3[0] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 12]);
|
||||
salt_buf3[1] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 13]);
|
||||
salt_buf3[2] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 14]);
|
||||
salt_buf3[3] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 15]);
|
||||
salt_buf0[0] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 0]);
|
||||
salt_buf0[1] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 1]);
|
||||
salt_buf0[2] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 2]);
|
||||
salt_buf0[3] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 3]);
|
||||
salt_buf1[0] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 4]);
|
||||
salt_buf1[1] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 5]);
|
||||
salt_buf1[2] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 6]);
|
||||
salt_buf1[3] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 7]);
|
||||
salt_buf2[0] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 8]);
|
||||
salt_buf2[1] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 9]);
|
||||
salt_buf2[2] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 10]);
|
||||
salt_buf2[3] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 11]);
|
||||
salt_buf3[0] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 12]);
|
||||
salt_buf3[1] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 13]);
|
||||
salt_buf3[2] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 14]);
|
||||
salt_buf3[3] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 15]);
|
||||
|
||||
const u32 salt_len = esalt_bufs[salt_pos].salt_len;
|
||||
const u32 salt_len = esalt_bufs[digests_offset].salt_len;
|
||||
|
||||
/**
|
||||
* digest
|
||||
|
@ -47,41 +47,41 @@ __kernel void m13500_m04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
* salt
|
||||
*/
|
||||
|
||||
const u32 pc_offset = esalt_bufs[salt_pos].pc_offset;
|
||||
const u32 pc_offset = esalt_bufs[digests_offset].pc_offset;
|
||||
|
||||
const u32 pc_offset4 = pc_offset * 4;
|
||||
|
||||
u32 pc_digest[5];
|
||||
|
||||
pc_digest[0] = esalt_bufs[salt_pos].pc_digest[0];
|
||||
pc_digest[1] = esalt_bufs[salt_pos].pc_digest[1];
|
||||
pc_digest[2] = esalt_bufs[salt_pos].pc_digest[2];
|
||||
pc_digest[3] = esalt_bufs[salt_pos].pc_digest[3];
|
||||
pc_digest[4] = esalt_bufs[salt_pos].pc_digest[4];
|
||||
pc_digest[0] = esalt_bufs[digests_offset].pc_digest[0];
|
||||
pc_digest[1] = esalt_bufs[digests_offset].pc_digest[1];
|
||||
pc_digest[2] = esalt_bufs[digests_offset].pc_digest[2];
|
||||
pc_digest[3] = esalt_bufs[digests_offset].pc_digest[3];
|
||||
pc_digest[4] = esalt_bufs[digests_offset].pc_digest[4];
|
||||
|
||||
u32 salt_buf0[4];
|
||||
u32 salt_buf1[4];
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 0]);
|
||||
salt_buf0[1] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 1]);
|
||||
salt_buf0[2] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 2]);
|
||||
salt_buf0[3] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 3]);
|
||||
salt_buf1[0] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 4]);
|
||||
salt_buf1[1] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 5]);
|
||||
salt_buf1[2] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 6]);
|
||||
salt_buf1[3] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 7]);
|
||||
salt_buf2[0] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 8]);
|
||||
salt_buf2[1] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 9]);
|
||||
salt_buf2[2] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 10]);
|
||||
salt_buf2[3] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 11]);
|
||||
salt_buf3[0] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 12]);
|
||||
salt_buf3[1] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 13]);
|
||||
salt_buf3[2] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 14]);
|
||||
salt_buf3[3] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 15]);
|
||||
salt_buf0[0] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 0]);
|
||||
salt_buf0[1] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 1]);
|
||||
salt_buf0[2] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 2]);
|
||||
salt_buf0[3] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 3]);
|
||||
salt_buf1[0] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 4]);
|
||||
salt_buf1[1] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 5]);
|
||||
salt_buf1[2] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 6]);
|
||||
salt_buf1[3] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 7]);
|
||||
salt_buf2[0] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 8]);
|
||||
salt_buf2[1] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 9]);
|
||||
salt_buf2[2] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 10]);
|
||||
salt_buf2[3] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 11]);
|
||||
salt_buf3[0] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 12]);
|
||||
salt_buf3[1] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 13]);
|
||||
salt_buf3[2] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 14]);
|
||||
salt_buf3[3] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 15]);
|
||||
|
||||
const u32 salt_len = esalt_bufs[salt_pos].salt_len;
|
||||
const u32 salt_len = esalt_bufs[digests_offset].salt_len;
|
||||
|
||||
/**
|
||||
* loop
|
||||
@ -524,41 +524,41 @@ __kernel void m13500_s04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
* salt
|
||||
*/
|
||||
|
||||
const u32 pc_offset = esalt_bufs[salt_pos].pc_offset;
|
||||
const u32 pc_offset = esalt_bufs[digests_offset].pc_offset;
|
||||
|
||||
const u32 pc_offset4 = pc_offset * 4;
|
||||
|
||||
u32 pc_digest[5];
|
||||
|
||||
pc_digest[0] = esalt_bufs[salt_pos].pc_digest[0];
|
||||
pc_digest[1] = esalt_bufs[salt_pos].pc_digest[1];
|
||||
pc_digest[2] = esalt_bufs[salt_pos].pc_digest[2];
|
||||
pc_digest[3] = esalt_bufs[salt_pos].pc_digest[3];
|
||||
pc_digest[4] = esalt_bufs[salt_pos].pc_digest[4];
|
||||
pc_digest[0] = esalt_bufs[digests_offset].pc_digest[0];
|
||||
pc_digest[1] = esalt_bufs[digests_offset].pc_digest[1];
|
||||
pc_digest[2] = esalt_bufs[digests_offset].pc_digest[2];
|
||||
pc_digest[3] = esalt_bufs[digests_offset].pc_digest[3];
|
||||
pc_digest[4] = esalt_bufs[digests_offset].pc_digest[4];
|
||||
|
||||
u32 salt_buf0[4];
|
||||
u32 salt_buf1[4];
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 0]);
|
||||
salt_buf0[1] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 1]);
|
||||
salt_buf0[2] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 2]);
|
||||
salt_buf0[3] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 3]);
|
||||
salt_buf1[0] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 4]);
|
||||
salt_buf1[1] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 5]);
|
||||
salt_buf1[2] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 6]);
|
||||
salt_buf1[3] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 7]);
|
||||
salt_buf2[0] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 8]);
|
||||
salt_buf2[1] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 9]);
|
||||
salt_buf2[2] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 10]);
|
||||
salt_buf2[3] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 11]);
|
||||
salt_buf3[0] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 12]);
|
||||
salt_buf3[1] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 13]);
|
||||
salt_buf3[2] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 14]);
|
||||
salt_buf3[3] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 15]);
|
||||
salt_buf0[0] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 0]);
|
||||
salt_buf0[1] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 1]);
|
||||
salt_buf0[2] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 2]);
|
||||
salt_buf0[3] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 3]);
|
||||
salt_buf1[0] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 4]);
|
||||
salt_buf1[1] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 5]);
|
||||
salt_buf1[2] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 6]);
|
||||
salt_buf1[3] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 7]);
|
||||
salt_buf2[0] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 8]);
|
||||
salt_buf2[1] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 9]);
|
||||
salt_buf2[2] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 10]);
|
||||
salt_buf2[3] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 11]);
|
||||
salt_buf3[0] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 12]);
|
||||
salt_buf3[1] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 13]);
|
||||
salt_buf3[2] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 14]);
|
||||
salt_buf3[3] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 15]);
|
||||
|
||||
const u32 salt_len = esalt_bufs[salt_pos].salt_len;
|
||||
const u32 salt_len = esalt_bufs[digests_offset].salt_len;
|
||||
|
||||
/**
|
||||
* digest
|
||||
|
@ -26,41 +26,41 @@ void m13500m (u32 w0[4], u32 w1[4], u32 w2[4], u32 w3[4], const u32 pw_len, __gl
|
||||
* salt
|
||||
*/
|
||||
|
||||
const u32 pc_offset = esalt_bufs[salt_pos].pc_offset;
|
||||
const u32 pc_offset = esalt_bufs[digests_offset].pc_offset;
|
||||
|
||||
const u32 pc_offset4 = pc_offset * 4;
|
||||
|
||||
u32 pc_digest[5];
|
||||
|
||||
pc_digest[0] = esalt_bufs[salt_pos].pc_digest[0];
|
||||
pc_digest[1] = esalt_bufs[salt_pos].pc_digest[1];
|
||||
pc_digest[2] = esalt_bufs[salt_pos].pc_digest[2];
|
||||
pc_digest[3] = esalt_bufs[salt_pos].pc_digest[3];
|
||||
pc_digest[4] = esalt_bufs[salt_pos].pc_digest[4];
|
||||
pc_digest[0] = esalt_bufs[digests_offset].pc_digest[0];
|
||||
pc_digest[1] = esalt_bufs[digests_offset].pc_digest[1];
|
||||
pc_digest[2] = esalt_bufs[digests_offset].pc_digest[2];
|
||||
pc_digest[3] = esalt_bufs[digests_offset].pc_digest[3];
|
||||
pc_digest[4] = esalt_bufs[digests_offset].pc_digest[4];
|
||||
|
||||
u32 salt_buf0[4];
|
||||
u32 salt_buf1[4];
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 0]);
|
||||
salt_buf0[1] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 1]);
|
||||
salt_buf0[2] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 2]);
|
||||
salt_buf0[3] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 3]);
|
||||
salt_buf1[0] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 4]);
|
||||
salt_buf1[1] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 5]);
|
||||
salt_buf1[2] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 6]);
|
||||
salt_buf1[3] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 7]);
|
||||
salt_buf2[0] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 8]);
|
||||
salt_buf2[1] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 9]);
|
||||
salt_buf2[2] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 10]);
|
||||
salt_buf2[3] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 11]);
|
||||
salt_buf3[0] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 12]);
|
||||
salt_buf3[1] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 13]);
|
||||
salt_buf3[2] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 14]);
|
||||
salt_buf3[3] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 15]);
|
||||
salt_buf0[0] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 0]);
|
||||
salt_buf0[1] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 1]);
|
||||
salt_buf0[2] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 2]);
|
||||
salt_buf0[3] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 3]);
|
||||
salt_buf1[0] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 4]);
|
||||
salt_buf1[1] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 5]);
|
||||
salt_buf1[2] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 6]);
|
||||
salt_buf1[3] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 7]);
|
||||
salt_buf2[0] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 8]);
|
||||
salt_buf2[1] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 9]);
|
||||
salt_buf2[2] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 10]);
|
||||
salt_buf2[3] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 11]);
|
||||
salt_buf3[0] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 12]);
|
||||
salt_buf3[1] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 13]);
|
||||
salt_buf3[2] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 14]);
|
||||
salt_buf3[3] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 15]);
|
||||
|
||||
const u32 salt_len = esalt_bufs[salt_pos].salt_len;
|
||||
const u32 salt_len = esalt_bufs[digests_offset].salt_len;
|
||||
|
||||
const u32 pw_salt_len = pw_len + salt_len;
|
||||
|
||||
@ -419,41 +419,41 @@ void m13500s (u32 w0[4], u32 w1[4], u32 w2[4], u32 w3[4], const u32 pw_len, __gl
|
||||
* salt
|
||||
*/
|
||||
|
||||
const u32 pc_offset = esalt_bufs[salt_pos].pc_offset;
|
||||
const u32 pc_offset = esalt_bufs[digests_offset].pc_offset;
|
||||
|
||||
const u32 pc_offset4 = pc_offset * 4;
|
||||
|
||||
u32 pc_digest[5];
|
||||
|
||||
pc_digest[0] = esalt_bufs[salt_pos].pc_digest[0];
|
||||
pc_digest[1] = esalt_bufs[salt_pos].pc_digest[1];
|
||||
pc_digest[2] = esalt_bufs[salt_pos].pc_digest[2];
|
||||
pc_digest[3] = esalt_bufs[salt_pos].pc_digest[3];
|
||||
pc_digest[4] = esalt_bufs[salt_pos].pc_digest[4];
|
||||
pc_digest[0] = esalt_bufs[digests_offset].pc_digest[0];
|
||||
pc_digest[1] = esalt_bufs[digests_offset].pc_digest[1];
|
||||
pc_digest[2] = esalt_bufs[digests_offset].pc_digest[2];
|
||||
pc_digest[3] = esalt_bufs[digests_offset].pc_digest[3];
|
||||
pc_digest[4] = esalt_bufs[digests_offset].pc_digest[4];
|
||||
|
||||
u32 salt_buf0[4];
|
||||
u32 salt_buf1[4];
|
||||
u32 salt_buf2[4];
|
||||
u32 salt_buf3[4];
|
||||
|
||||
salt_buf0[0] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 0]);
|
||||
salt_buf0[1] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 1]);
|
||||
salt_buf0[2] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 2]);
|
||||
salt_buf0[3] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 3]);
|
||||
salt_buf1[0] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 4]);
|
||||
salt_buf1[1] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 5]);
|
||||
salt_buf1[2] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 6]);
|
||||
salt_buf1[3] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 7]);
|
||||
salt_buf2[0] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 8]);
|
||||
salt_buf2[1] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 9]);
|
||||
salt_buf2[2] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 10]);
|
||||
salt_buf2[3] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 11]);
|
||||
salt_buf3[0] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 12]);
|
||||
salt_buf3[1] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 13]);
|
||||
salt_buf3[2] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 14]);
|
||||
salt_buf3[3] = swap32_S (esalt_bufs[salt_pos].salt_buf[pc_offset + 15]);
|
||||
salt_buf0[0] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 0]);
|
||||
salt_buf0[1] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 1]);
|
||||
salt_buf0[2] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 2]);
|
||||
salt_buf0[3] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 3]);
|
||||
salt_buf1[0] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 4]);
|
||||
salt_buf1[1] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 5]);
|
||||
salt_buf1[2] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 6]);
|
||||
salt_buf1[3] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 7]);
|
||||
salt_buf2[0] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 8]);
|
||||
salt_buf2[1] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 9]);
|
||||
salt_buf2[2] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 10]);
|
||||
salt_buf2[3] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 11]);
|
||||
salt_buf3[0] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 12]);
|
||||
salt_buf3[1] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 13]);
|
||||
salt_buf3[2] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 14]);
|
||||
salt_buf3[3] = swap32_S (esalt_bufs[digests_offset].salt_buf[pc_offset + 15]);
|
||||
|
||||
const u32 salt_len = esalt_bufs[salt_pos].salt_len;
|
||||
const u32 salt_len = esalt_bufs[digests_offset].salt_len;
|
||||
|
||||
const u32 pw_salt_len = pw_len + salt_len;
|
||||
|
||||
|
@ -272,7 +272,7 @@ __kernel void m13600_init (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
* salt
|
||||
*/
|
||||
|
||||
const u32 salt_len = esalt_bufs[salt_pos].salt_len;
|
||||
const u32 salt_len = esalt_bufs[digests_offset].salt_len;
|
||||
|
||||
u32 ipad[5];
|
||||
u32 opad[5];
|
||||
@ -291,7 +291,7 @@ __kernel void m13600_init (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
tmps[gid].opad[3] = opad[3];
|
||||
tmps[gid].opad[4] = opad[4];
|
||||
|
||||
const u32 mode = esalt_bufs[salt_pos].mode;
|
||||
const u32 mode = esalt_bufs[digests_offset].mode;
|
||||
|
||||
u32 iter_start;
|
||||
u32 iter_stop;
|
||||
@ -319,10 +319,10 @@ __kernel void m13600_init (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
|
||||
u32 esalt_buf[16];
|
||||
|
||||
esalt_buf[ 0] = swap32 (esalt_bufs[salt_pos].salt_buf[0]);
|
||||
esalt_buf[ 1] = swap32 (esalt_bufs[salt_pos].salt_buf[1]);
|
||||
esalt_buf[ 2] = swap32 (esalt_bufs[salt_pos].salt_buf[2]);
|
||||
esalt_buf[ 3] = swap32 (esalt_bufs[salt_pos].salt_buf[3]);
|
||||
esalt_buf[ 0] = swap32 (esalt_bufs[digests_offset].salt_buf[0]);
|
||||
esalt_buf[ 1] = swap32 (esalt_bufs[digests_offset].salt_buf[1]);
|
||||
esalt_buf[ 2] = swap32 (esalt_bufs[digests_offset].salt_buf[2]);
|
||||
esalt_buf[ 3] = swap32 (esalt_bufs[digests_offset].salt_buf[3]);
|
||||
esalt_buf[ 4] = 0;
|
||||
esalt_buf[ 5] = 0;
|
||||
esalt_buf[ 6] = 0;
|
||||
@ -389,7 +389,7 @@ __kernel void m13600_loop (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
opad[3] = tmps[gid].opad[3];
|
||||
opad[4] = tmps[gid].opad[4];
|
||||
|
||||
const u32 mode = esalt_bufs[salt_pos].mode;
|
||||
const u32 mode = esalt_bufs[digests_offset].mode;
|
||||
|
||||
u32 iter_start;
|
||||
u32 iter_stop;
|
||||
@ -492,7 +492,7 @@ __kernel void m13600_comp (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
|
||||
u32 key[8] = { 0 };
|
||||
|
||||
const u32 mode = esalt_bufs[salt_pos].mode;
|
||||
const u32 mode = esalt_bufs[digests_offset].mode;
|
||||
|
||||
u32 iter_start;
|
||||
u32 iter_stop;
|
||||
@ -543,47 +543,47 @@ __kernel void m13600_comp (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
|
||||
hmac_sha1_pad (w0, w1, w2, w3, ipad, opad);
|
||||
|
||||
int data_len = esalt_bufs[salt_pos].data_len;
|
||||
int data_len = esalt_bufs[digests_offset].data_len;
|
||||
|
||||
int data_left;
|
||||
int data_off;
|
||||
|
||||
for (data_left = data_len, data_off = 0; data_left >= 56; data_left -= 64, data_off += 16)
|
||||
{
|
||||
w0[0] = swap32 (esalt_bufs[salt_pos].data_buf[data_off + 0]);
|
||||
w0[1] = swap32 (esalt_bufs[salt_pos].data_buf[data_off + 1]);
|
||||
w0[2] = swap32 (esalt_bufs[salt_pos].data_buf[data_off + 2]);
|
||||
w0[3] = swap32 (esalt_bufs[salt_pos].data_buf[data_off + 3]);
|
||||
w1[0] = swap32 (esalt_bufs[salt_pos].data_buf[data_off + 4]);
|
||||
w1[1] = swap32 (esalt_bufs[salt_pos].data_buf[data_off + 5]);
|
||||
w1[2] = swap32 (esalt_bufs[salt_pos].data_buf[data_off + 6]);
|
||||
w1[3] = swap32 (esalt_bufs[salt_pos].data_buf[data_off + 7]);
|
||||
w2[0] = swap32 (esalt_bufs[salt_pos].data_buf[data_off + 8]);
|
||||
w2[1] = swap32 (esalt_bufs[salt_pos].data_buf[data_off + 9]);
|
||||
w2[2] = swap32 (esalt_bufs[salt_pos].data_buf[data_off + 10]);
|
||||
w2[3] = swap32 (esalt_bufs[salt_pos].data_buf[data_off + 11]);
|
||||
w3[0] = swap32 (esalt_bufs[salt_pos].data_buf[data_off + 12]);
|
||||
w3[1] = swap32 (esalt_bufs[salt_pos].data_buf[data_off + 13]);
|
||||
w3[2] = swap32 (esalt_bufs[salt_pos].data_buf[data_off + 14]);
|
||||
w3[3] = swap32 (esalt_bufs[salt_pos].data_buf[data_off + 15]);
|
||||
w0[0] = swap32 (esalt_bufs[digests_offset].data_buf[data_off + 0]);
|
||||
w0[1] = swap32 (esalt_bufs[digests_offset].data_buf[data_off + 1]);
|
||||
w0[2] = swap32 (esalt_bufs[digests_offset].data_buf[data_off + 2]);
|
||||
w0[3] = swap32 (esalt_bufs[digests_offset].data_buf[data_off + 3]);
|
||||
w1[0] = swap32 (esalt_bufs[digests_offset].data_buf[data_off + 4]);
|
||||
w1[1] = swap32 (esalt_bufs[digests_offset].data_buf[data_off + 5]);
|
||||
w1[2] = swap32 (esalt_bufs[digests_offset].data_buf[data_off + 6]);
|
||||
w1[3] = swap32 (esalt_bufs[digests_offset].data_buf[data_off + 7]);
|
||||
w2[0] = swap32 (esalt_bufs[digests_offset].data_buf[data_off + 8]);
|
||||
w2[1] = swap32 (esalt_bufs[digests_offset].data_buf[data_off + 9]);
|
||||
w2[2] = swap32 (esalt_bufs[digests_offset].data_buf[data_off + 10]);
|
||||
w2[3] = swap32 (esalt_bufs[digests_offset].data_buf[data_off + 11]);
|
||||
w3[0] = swap32 (esalt_bufs[digests_offset].data_buf[data_off + 12]);
|
||||
w3[1] = swap32 (esalt_bufs[digests_offset].data_buf[data_off + 13]);
|
||||
w3[2] = swap32 (esalt_bufs[digests_offset].data_buf[data_off + 14]);
|
||||
w3[3] = swap32 (esalt_bufs[digests_offset].data_buf[data_off + 15]);
|
||||
|
||||
sha1_transform (w0, w1, w2, w3, ipad);
|
||||
}
|
||||
|
||||
w0[0] = swap32 (esalt_bufs[salt_pos].data_buf[data_off + 0]);
|
||||
w0[1] = swap32 (esalt_bufs[salt_pos].data_buf[data_off + 1]);
|
||||
w0[2] = swap32 (esalt_bufs[salt_pos].data_buf[data_off + 2]);
|
||||
w0[3] = swap32 (esalt_bufs[salt_pos].data_buf[data_off + 3]);
|
||||
w1[0] = swap32 (esalt_bufs[salt_pos].data_buf[data_off + 4]);
|
||||
w1[1] = swap32 (esalt_bufs[salt_pos].data_buf[data_off + 5]);
|
||||
w1[2] = swap32 (esalt_bufs[salt_pos].data_buf[data_off + 6]);
|
||||
w1[3] = swap32 (esalt_bufs[salt_pos].data_buf[data_off + 7]);
|
||||
w2[0] = swap32 (esalt_bufs[salt_pos].data_buf[data_off + 8]);
|
||||
w2[1] = swap32 (esalt_bufs[salt_pos].data_buf[data_off + 9]);
|
||||
w2[2] = swap32 (esalt_bufs[salt_pos].data_buf[data_off + 10]);
|
||||
w2[3] = swap32 (esalt_bufs[salt_pos].data_buf[data_off + 11]);
|
||||
w3[0] = swap32 (esalt_bufs[salt_pos].data_buf[data_off + 12]);
|
||||
w3[1] = swap32 (esalt_bufs[salt_pos].data_buf[data_off + 13]);
|
||||
w0[0] = swap32 (esalt_bufs[digests_offset].data_buf[data_off + 0]);
|
||||
w0[1] = swap32 (esalt_bufs[digests_offset].data_buf[data_off + 1]);
|
||||
w0[2] = swap32 (esalt_bufs[digests_offset].data_buf[data_off + 2]);
|
||||
w0[3] = swap32 (esalt_bufs[digests_offset].data_buf[data_off + 3]);
|
||||
w1[0] = swap32 (esalt_bufs[digests_offset].data_buf[data_off + 4]);
|
||||
w1[1] = swap32 (esalt_bufs[digests_offset].data_buf[data_off + 5]);
|
||||
w1[2] = swap32 (esalt_bufs[digests_offset].data_buf[data_off + 6]);
|
||||
w1[3] = swap32 (esalt_bufs[digests_offset].data_buf[data_off + 7]);
|
||||
w2[0] = swap32 (esalt_bufs[digests_offset].data_buf[data_off + 8]);
|
||||
w2[1] = swap32 (esalt_bufs[digests_offset].data_buf[data_off + 9]);
|
||||
w2[2] = swap32 (esalt_bufs[digests_offset].data_buf[data_off + 10]);
|
||||
w2[3] = swap32 (esalt_bufs[digests_offset].data_buf[data_off + 11]);
|
||||
w3[0] = swap32 (esalt_bufs[digests_offset].data_buf[data_off + 12]);
|
||||
w3[1] = swap32 (esalt_bufs[digests_offset].data_buf[data_off + 13]);
|
||||
w3[2] = 0;
|
||||
w3[3] = (64 + data_len) * 8;
|
||||
|
||||
|
@ -339,22 +339,22 @@ __kernel void m13751_init (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
* keyfile
|
||||
*/
|
||||
|
||||
w0[0] = u8add (w0[0], esalt_bufs[salt_pos].keyfile_buf[ 0]);
|
||||
w0[1] = u8add (w0[1], esalt_bufs[salt_pos].keyfile_buf[ 1]);
|
||||
w0[2] = u8add (w0[2], esalt_bufs[salt_pos].keyfile_buf[ 2]);
|
||||
w0[3] = u8add (w0[3], esalt_bufs[salt_pos].keyfile_buf[ 3]);
|
||||
w1[0] = u8add (w1[0], esalt_bufs[salt_pos].keyfile_buf[ 4]);
|
||||
w1[1] = u8add (w1[1], esalt_bufs[salt_pos].keyfile_buf[ 5]);
|
||||
w1[2] = u8add (w1[2], esalt_bufs[salt_pos].keyfile_buf[ 6]);
|
||||
w1[3] = u8add (w1[3], esalt_bufs[salt_pos].keyfile_buf[ 7]);
|
||||
w2[0] = u8add (w2[0], esalt_bufs[salt_pos].keyfile_buf[ 8]);
|
||||
w2[1] = u8add (w2[1], esalt_bufs[salt_pos].keyfile_buf[ 9]);
|
||||
w2[2] = u8add (w2[2], esalt_bufs[salt_pos].keyfile_buf[10]);
|
||||
w2[3] = u8add (w2[3], esalt_bufs[salt_pos].keyfile_buf[11]);
|
||||
w3[0] = u8add (w3[0], esalt_bufs[salt_pos].keyfile_buf[12]);
|
||||
w3[1] = u8add (w3[1], esalt_bufs[salt_pos].keyfile_buf[13]);
|
||||
w3[2] = u8add (w3[2], esalt_bufs[salt_pos].keyfile_buf[14]);
|
||||
w3[3] = u8add (w3[3], esalt_bufs[salt_pos].keyfile_buf[15]);
|
||||
w0[0] = u8add (w0[0], esalt_bufs[digests_offset].keyfile_buf[ 0]);
|
||||
w0[1] = u8add (w0[1], esalt_bufs[digests_offset].keyfile_buf[ 1]);
|
||||
w0[2] = u8add (w0[2], esalt_bufs[digests_offset].keyfile_buf[ 2]);
|
||||
w0[3] = u8add (w0[3], esalt_bufs[digests_offset].keyfile_buf[ 3]);
|
||||
w1[0] = u8add (w1[0], esalt_bufs[digests_offset].keyfile_buf[ 4]);
|
||||
w1[1] = u8add (w1[1], esalt_bufs[digests_offset].keyfile_buf[ 5]);
|
||||
w1[2] = u8add (w1[2], esalt_bufs[digests_offset].keyfile_buf[ 6]);
|
||||
w1[3] = u8add (w1[3], esalt_bufs[digests_offset].keyfile_buf[ 7]);
|
||||
w2[0] = u8add (w2[0], esalt_bufs[digests_offset].keyfile_buf[ 8]);
|
||||
w2[1] = u8add (w2[1], esalt_bufs[digests_offset].keyfile_buf[ 9]);
|
||||
w2[2] = u8add (w2[2], esalt_bufs[digests_offset].keyfile_buf[10]);
|
||||
w2[3] = u8add (w2[3], esalt_bufs[digests_offset].keyfile_buf[11]);
|
||||
w3[0] = u8add (w3[0], esalt_bufs[digests_offset].keyfile_buf[12]);
|
||||
w3[1] = u8add (w3[1], esalt_bufs[digests_offset].keyfile_buf[13]);
|
||||
w3[2] = u8add (w3[2], esalt_bufs[digests_offset].keyfile_buf[14]);
|
||||
w3[3] = u8add (w3[3], esalt_bufs[digests_offset].keyfile_buf[15]);
|
||||
|
||||
w0[0] = swap32 (w0[0]);
|
||||
w0[1] = swap32 (w0[1]);
|
||||
@ -386,22 +386,22 @@ __kernel void m13751_init (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
u32 s6[4];
|
||||
u32 s7[4];
|
||||
|
||||
s0[0] = swap32 (esalt_bufs[salt_pos].salt_buf[ 0]);
|
||||
s0[1] = swap32 (esalt_bufs[salt_pos].salt_buf[ 1]);
|
||||
s0[2] = swap32 (esalt_bufs[salt_pos].salt_buf[ 2]);
|
||||
s0[3] = swap32 (esalt_bufs[salt_pos].salt_buf[ 3]);
|
||||
s1[0] = swap32 (esalt_bufs[salt_pos].salt_buf[ 4]);
|
||||
s1[1] = swap32 (esalt_bufs[salt_pos].salt_buf[ 5]);
|
||||
s1[2] = swap32 (esalt_bufs[salt_pos].salt_buf[ 6]);
|
||||
s1[3] = swap32 (esalt_bufs[salt_pos].salt_buf[ 7]);
|
||||
s2[0] = swap32 (esalt_bufs[salt_pos].salt_buf[ 8]);
|
||||
s2[1] = swap32 (esalt_bufs[salt_pos].salt_buf[ 9]);
|
||||
s2[2] = swap32 (esalt_bufs[salt_pos].salt_buf[10]);
|
||||
s2[3] = swap32 (esalt_bufs[salt_pos].salt_buf[11]);
|
||||
s3[0] = swap32 (esalt_bufs[salt_pos].salt_buf[12]);
|
||||
s3[1] = swap32 (esalt_bufs[salt_pos].salt_buf[13]);
|
||||
s3[2] = swap32 (esalt_bufs[salt_pos].salt_buf[14]);
|
||||
s3[3] = swap32 (esalt_bufs[salt_pos].salt_buf[15]);
|
||||
s0[0] = swap32 (esalt_bufs[digests_offset].salt_buf[ 0]);
|
||||
s0[1] = swap32 (esalt_bufs[digests_offset].salt_buf[ 1]);
|
||||
s0[2] = swap32 (esalt_bufs[digests_offset].salt_buf[ 2]);
|
||||
s0[3] = swap32 (esalt_bufs[digests_offset].salt_buf[ 3]);
|
||||
s1[0] = swap32 (esalt_bufs[digests_offset].salt_buf[ 4]);
|
||||
s1[1] = swap32 (esalt_bufs[digests_offset].salt_buf[ 5]);
|
||||
s1[2] = swap32 (esalt_bufs[digests_offset].salt_buf[ 6]);
|
||||
s1[3] = swap32 (esalt_bufs[digests_offset].salt_buf[ 7]);
|
||||
s2[0] = swap32 (esalt_bufs[digests_offset].salt_buf[ 8]);
|
||||
s2[1] = swap32 (esalt_bufs[digests_offset].salt_buf[ 9]);
|
||||
s2[2] = swap32 (esalt_bufs[digests_offset].salt_buf[10]);
|
||||
s2[3] = swap32 (esalt_bufs[digests_offset].salt_buf[11]);
|
||||
s3[0] = swap32 (esalt_bufs[digests_offset].salt_buf[12]);
|
||||
s3[1] = swap32 (esalt_bufs[digests_offset].salt_buf[13]);
|
||||
s3[2] = swap32 (esalt_bufs[digests_offset].salt_buf[14]);
|
||||
s3[3] = swap32 (esalt_bufs[digests_offset].salt_buf[15]);
|
||||
s4[0] = 0;
|
||||
s4[1] = 0x80000000;
|
||||
s4[2] = 0;
|
||||
|
@ -339,22 +339,22 @@ __kernel void m13752_init (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
* keyfile
|
||||
*/
|
||||
|
||||
w0[0] = u8add (w0[0], esalt_bufs[salt_pos].keyfile_buf[ 0]);
|
||||
w0[1] = u8add (w0[1], esalt_bufs[salt_pos].keyfile_buf[ 1]);
|
||||
w0[2] = u8add (w0[2], esalt_bufs[salt_pos].keyfile_buf[ 2]);
|
||||
w0[3] = u8add (w0[3], esalt_bufs[salt_pos].keyfile_buf[ 3]);
|
||||
w1[0] = u8add (w1[0], esalt_bufs[salt_pos].keyfile_buf[ 4]);
|
||||
w1[1] = u8add (w1[1], esalt_bufs[salt_pos].keyfile_buf[ 5]);
|
||||
w1[2] = u8add (w1[2], esalt_bufs[salt_pos].keyfile_buf[ 6]);
|
||||
w1[3] = u8add (w1[3], esalt_bufs[salt_pos].keyfile_buf[ 7]);
|
||||
w2[0] = u8add (w2[0], esalt_bufs[salt_pos].keyfile_buf[ 8]);
|
||||
w2[1] = u8add (w2[1], esalt_bufs[salt_pos].keyfile_buf[ 9]);
|
||||
w2[2] = u8add (w2[2], esalt_bufs[salt_pos].keyfile_buf[10]);
|
||||
w2[3] = u8add (w2[3], esalt_bufs[salt_pos].keyfile_buf[11]);
|
||||
w3[0] = u8add (w3[0], esalt_bufs[salt_pos].keyfile_buf[12]);
|
||||
w3[1] = u8add (w3[1], esalt_bufs[salt_pos].keyfile_buf[13]);
|
||||
w3[2] = u8add (w3[2], esalt_bufs[salt_pos].keyfile_buf[14]);
|
||||
w3[3] = u8add (w3[3], esalt_bufs[salt_pos].keyfile_buf[15]);
|
||||
w0[0] = u8add (w0[0], esalt_bufs[digests_offset].keyfile_buf[ 0]);
|
||||
w0[1] = u8add (w0[1], esalt_bufs[digests_offset].keyfile_buf[ 1]);
|
||||
w0[2] = u8add (w0[2], esalt_bufs[digests_offset].keyfile_buf[ 2]);
|
||||
w0[3] = u8add (w0[3], esalt_bufs[digests_offset].keyfile_buf[ 3]);
|
||||
w1[0] = u8add (w1[0], esalt_bufs[digests_offset].keyfile_buf[ 4]);
|
||||
w1[1] = u8add (w1[1], esalt_bufs[digests_offset].keyfile_buf[ 5]);
|
||||
w1[2] = u8add (w1[2], esalt_bufs[digests_offset].keyfile_buf[ 6]);
|
||||
w1[3] = u8add (w1[3], esalt_bufs[digests_offset].keyfile_buf[ 7]);
|
||||
w2[0] = u8add (w2[0], esalt_bufs[digests_offset].keyfile_buf[ 8]);
|
||||
w2[1] = u8add (w2[1], esalt_bufs[digests_offset].keyfile_buf[ 9]);
|
||||
w2[2] = u8add (w2[2], esalt_bufs[digests_offset].keyfile_buf[10]);
|
||||
w2[3] = u8add (w2[3], esalt_bufs[digests_offset].keyfile_buf[11]);
|
||||
w3[0] = u8add (w3[0], esalt_bufs[digests_offset].keyfile_buf[12]);
|
||||
w3[1] = u8add (w3[1], esalt_bufs[digests_offset].keyfile_buf[13]);
|
||||
w3[2] = u8add (w3[2], esalt_bufs[digests_offset].keyfile_buf[14]);
|
||||
w3[3] = u8add (w3[3], esalt_bufs[digests_offset].keyfile_buf[15]);
|
||||
|
||||
w0[0] = swap32 (w0[0]);
|
||||
w0[1] = swap32 (w0[1]);
|
||||
@ -386,22 +386,22 @@ __kernel void m13752_init (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
u32 s6[4];
|
||||
u32 s7[4];
|
||||
|
||||
s0[0] = swap32 (esalt_bufs[salt_pos].salt_buf[ 0]);
|
||||
s0[1] = swap32 (esalt_bufs[salt_pos].salt_buf[ 1]);
|
||||
s0[2] = swap32 (esalt_bufs[salt_pos].salt_buf[ 2]);
|
||||
s0[3] = swap32 (esalt_bufs[salt_pos].salt_buf[ 3]);
|
||||
s1[0] = swap32 (esalt_bufs[salt_pos].salt_buf[ 4]);
|
||||
s1[1] = swap32 (esalt_bufs[salt_pos].salt_buf[ 5]);
|
||||
s1[2] = swap32 (esalt_bufs[salt_pos].salt_buf[ 6]);
|
||||
s1[3] = swap32 (esalt_bufs[salt_pos].salt_buf[ 7]);
|
||||
s2[0] = swap32 (esalt_bufs[salt_pos].salt_buf[ 8]);
|
||||
s2[1] = swap32 (esalt_bufs[salt_pos].salt_buf[ 9]);
|
||||
s2[2] = swap32 (esalt_bufs[salt_pos].salt_buf[10]);
|
||||
s2[3] = swap32 (esalt_bufs[salt_pos].salt_buf[11]);
|
||||
s3[0] = swap32 (esalt_bufs[salt_pos].salt_buf[12]);
|
||||
s3[1] = swap32 (esalt_bufs[salt_pos].salt_buf[13]);
|
||||
s3[2] = swap32 (esalt_bufs[salt_pos].salt_buf[14]);
|
||||
s3[3] = swap32 (esalt_bufs[salt_pos].salt_buf[15]);
|
||||
s0[0] = swap32 (esalt_bufs[digests_offset].salt_buf[ 0]);
|
||||
s0[1] = swap32 (esalt_bufs[digests_offset].salt_buf[ 1]);
|
||||
s0[2] = swap32 (esalt_bufs[digests_offset].salt_buf[ 2]);
|
||||
s0[3] = swap32 (esalt_bufs[digests_offset].salt_buf[ 3]);
|
||||
s1[0] = swap32 (esalt_bufs[digests_offset].salt_buf[ 4]);
|
||||
s1[1] = swap32 (esalt_bufs[digests_offset].salt_buf[ 5]);
|
||||
s1[2] = swap32 (esalt_bufs[digests_offset].salt_buf[ 6]);
|
||||
s1[3] = swap32 (esalt_bufs[digests_offset].salt_buf[ 7]);
|
||||
s2[0] = swap32 (esalt_bufs[digests_offset].salt_buf[ 8]);
|
||||
s2[1] = swap32 (esalt_bufs[digests_offset].salt_buf[ 9]);
|
||||
s2[2] = swap32 (esalt_bufs[digests_offset].salt_buf[10]);
|
||||
s2[3] = swap32 (esalt_bufs[digests_offset].salt_buf[11]);
|
||||
s3[0] = swap32 (esalt_bufs[digests_offset].salt_buf[12]);
|
||||
s3[1] = swap32 (esalt_bufs[digests_offset].salt_buf[13]);
|
||||
s3[2] = swap32 (esalt_bufs[digests_offset].salt_buf[14]);
|
||||
s3[3] = swap32 (esalt_bufs[digests_offset].salt_buf[15]);
|
||||
s4[0] = 0;
|
||||
s4[1] = 0x80000000;
|
||||
s4[2] = 0;
|
||||
|
@ -339,22 +339,22 @@ __kernel void m13753_init (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
* keyfile
|
||||
*/
|
||||
|
||||
w0[0] = u8add (w0[0], esalt_bufs[salt_pos].keyfile_buf[ 0]);
|
||||
w0[1] = u8add (w0[1], esalt_bufs[salt_pos].keyfile_buf[ 1]);
|
||||
w0[2] = u8add (w0[2], esalt_bufs[salt_pos].keyfile_buf[ 2]);
|
||||
w0[3] = u8add (w0[3], esalt_bufs[salt_pos].keyfile_buf[ 3]);
|
||||
w1[0] = u8add (w1[0], esalt_bufs[salt_pos].keyfile_buf[ 4]);
|
||||
w1[1] = u8add (w1[1], esalt_bufs[salt_pos].keyfile_buf[ 5]);
|
||||
w1[2] = u8add (w1[2], esalt_bufs[salt_pos].keyfile_buf[ 6]);
|
||||
w1[3] = u8add (w1[3], esalt_bufs[salt_pos].keyfile_buf[ 7]);
|
||||
w2[0] = u8add (w2[0], esalt_bufs[salt_pos].keyfile_buf[ 8]);
|
||||
w2[1] = u8add (w2[1], esalt_bufs[salt_pos].keyfile_buf[ 9]);
|
||||
w2[2] = u8add (w2[2], esalt_bufs[salt_pos].keyfile_buf[10]);
|
||||
w2[3] = u8add (w2[3], esalt_bufs[salt_pos].keyfile_buf[11]);
|
||||
w3[0] = u8add (w3[0], esalt_bufs[salt_pos].keyfile_buf[12]);
|
||||
w3[1] = u8add (w3[1], esalt_bufs[salt_pos].keyfile_buf[13]);
|
||||
w3[2] = u8add (w3[2], esalt_bufs[salt_pos].keyfile_buf[14]);
|
||||
w3[3] = u8add (w3[3], esalt_bufs[salt_pos].keyfile_buf[15]);
|
||||
w0[0] = u8add (w0[0], esalt_bufs[digests_offset].keyfile_buf[ 0]);
|
||||
w0[1] = u8add (w0[1], esalt_bufs[digests_offset].keyfile_buf[ 1]);
|
||||
w0[2] = u8add (w0[2], esalt_bufs[digests_offset].keyfile_buf[ 2]);
|
||||
w0[3] = u8add (w0[3], esalt_bufs[digests_offset].keyfile_buf[ 3]);
|
||||
w1[0] = u8add (w1[0], esalt_bufs[digests_offset].keyfile_buf[ 4]);
|
||||
w1[1] = u8add (w1[1], esalt_bufs[digests_offset].keyfile_buf[ 5]);
|
||||
w1[2] = u8add (w1[2], esalt_bufs[digests_offset].keyfile_buf[ 6]);
|
||||
w1[3] = u8add (w1[3], esalt_bufs[digests_offset].keyfile_buf[ 7]);
|
||||
w2[0] = u8add (w2[0], esalt_bufs[digests_offset].keyfile_buf[ 8]);
|
||||
w2[1] = u8add (w2[1], esalt_bufs[digests_offset].keyfile_buf[ 9]);
|
||||
w2[2] = u8add (w2[2], esalt_bufs[digests_offset].keyfile_buf[10]);
|
||||
w2[3] = u8add (w2[3], esalt_bufs[digests_offset].keyfile_buf[11]);
|
||||
w3[0] = u8add (w3[0], esalt_bufs[digests_offset].keyfile_buf[12]);
|
||||
w3[1] = u8add (w3[1], esalt_bufs[digests_offset].keyfile_buf[13]);
|
||||
w3[2] = u8add (w3[2], esalt_bufs[digests_offset].keyfile_buf[14]);
|
||||
w3[3] = u8add (w3[3], esalt_bufs[digests_offset].keyfile_buf[15]);
|
||||
|
||||
w0[0] = swap32 (w0[0]);
|
||||
w0[1] = swap32 (w0[1]);
|
||||
@ -386,22 +386,22 @@ __kernel void m13753_init (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
u32 s6[4];
|
||||
u32 s7[4];
|
||||
|
||||
s0[0] = swap32 (esalt_bufs[salt_pos].salt_buf[ 0]);
|
||||
s0[1] = swap32 (esalt_bufs[salt_pos].salt_buf[ 1]);
|
||||
s0[2] = swap32 (esalt_bufs[salt_pos].salt_buf[ 2]);
|
||||
s0[3] = swap32 (esalt_bufs[salt_pos].salt_buf[ 3]);
|
||||
s1[0] = swap32 (esalt_bufs[salt_pos].salt_buf[ 4]);
|
||||
s1[1] = swap32 (esalt_bufs[salt_pos].salt_buf[ 5]);
|
||||
s1[2] = swap32 (esalt_bufs[salt_pos].salt_buf[ 6]);
|
||||
s1[3] = swap32 (esalt_bufs[salt_pos].salt_buf[ 7]);
|
||||
s2[0] = swap32 (esalt_bufs[salt_pos].salt_buf[ 8]);
|
||||
s2[1] = swap32 (esalt_bufs[salt_pos].salt_buf[ 9]);
|
||||
s2[2] = swap32 (esalt_bufs[salt_pos].salt_buf[10]);
|
||||
s2[3] = swap32 (esalt_bufs[salt_pos].salt_buf[11]);
|
||||
s3[0] = swap32 (esalt_bufs[salt_pos].salt_buf[12]);
|
||||
s3[1] = swap32 (esalt_bufs[salt_pos].salt_buf[13]);
|
||||
s3[2] = swap32 (esalt_bufs[salt_pos].salt_buf[14]);
|
||||
s3[3] = swap32 (esalt_bufs[salt_pos].salt_buf[15]);
|
||||
s0[0] = swap32 (esalt_bufs[digests_offset].salt_buf[ 0]);
|
||||
s0[1] = swap32 (esalt_bufs[digests_offset].salt_buf[ 1]);
|
||||
s0[2] = swap32 (esalt_bufs[digests_offset].salt_buf[ 2]);
|
||||
s0[3] = swap32 (esalt_bufs[digests_offset].salt_buf[ 3]);
|
||||
s1[0] = swap32 (esalt_bufs[digests_offset].salt_buf[ 4]);
|
||||
s1[1] = swap32 (esalt_bufs[digests_offset].salt_buf[ 5]);
|
||||
s1[2] = swap32 (esalt_bufs[digests_offset].salt_buf[ 6]);
|
||||
s1[3] = swap32 (esalt_bufs[digests_offset].salt_buf[ 7]);
|
||||
s2[0] = swap32 (esalt_bufs[digests_offset].salt_buf[ 8]);
|
||||
s2[1] = swap32 (esalt_bufs[digests_offset].salt_buf[ 9]);
|
||||
s2[2] = swap32 (esalt_bufs[digests_offset].salt_buf[10]);
|
||||
s2[3] = swap32 (esalt_bufs[digests_offset].salt_buf[11]);
|
||||
s3[0] = swap32 (esalt_bufs[digests_offset].salt_buf[12]);
|
||||
s3[1] = swap32 (esalt_bufs[digests_offset].salt_buf[13]);
|
||||
s3[2] = swap32 (esalt_bufs[digests_offset].salt_buf[14]);
|
||||
s3[3] = swap32 (esalt_bufs[digests_offset].salt_buf[15]);
|
||||
s4[0] = 0;
|
||||
s4[1] = 0x80000000;
|
||||
s4[2] = 0;
|
||||
|
@ -534,7 +534,7 @@ __kernel void m13800_m04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (u32 i = lid; i < 32; i += lsz)
|
||||
{
|
||||
s_esalt[i] = esalt_bufs[salt_pos].salt_buf[i];
|
||||
s_esalt[i] = esalt_bufs[digests_offset].salt_buf[i];
|
||||
}
|
||||
|
||||
barrier (CLK_LOCAL_MEM_FENCE);
|
||||
@ -730,7 +730,7 @@ __kernel void m13800_s04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (u32 i = lid; i < 32; i += lsz)
|
||||
{
|
||||
s_esalt[i] = esalt_bufs[salt_pos].salt_buf[i];
|
||||
s_esalt[i] = esalt_bufs[digests_offset].salt_buf[i];
|
||||
}
|
||||
|
||||
barrier (CLK_LOCAL_MEM_FENCE);
|
||||
|
@ -532,7 +532,7 @@ __kernel void m13800_m04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (u32 i = lid; i < 32; i += lsz)
|
||||
{
|
||||
s_esalt[i] = esalt_bufs[salt_pos].salt_buf[i];
|
||||
s_esalt[i] = esalt_bufs[digests_offset].salt_buf[i];
|
||||
}
|
||||
|
||||
barrier (CLK_LOCAL_MEM_FENCE);
|
||||
@ -784,7 +784,7 @@ __kernel void m13800_s04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (u32 i = lid; i < 32; i += lsz)
|
||||
{
|
||||
s_esalt[i] = esalt_bufs[salt_pos].salt_buf[i];
|
||||
s_esalt[i] = esalt_bufs[digests_offset].salt_buf[i];
|
||||
}
|
||||
|
||||
barrier (CLK_LOCAL_MEM_FENCE);
|
||||
|
@ -846,7 +846,7 @@ __kernel void m13800_m04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (u32 i = lid; i < 32; i += lsz)
|
||||
{
|
||||
s_esalt[i] = esalt_bufs[salt_pos].salt_buf[i];
|
||||
s_esalt[i] = esalt_bufs[digests_offset].salt_buf[i];
|
||||
}
|
||||
|
||||
barrier (CLK_LOCAL_MEM_FENCE);
|
||||
@ -903,7 +903,7 @@ __kernel void m13800_m08 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (u32 i = lid; i < 32; i += lsz)
|
||||
{
|
||||
s_esalt[i] = esalt_bufs[salt_pos].salt_buf[i];
|
||||
s_esalt[i] = esalt_bufs[digests_offset].salt_buf[i];
|
||||
}
|
||||
|
||||
barrier (CLK_LOCAL_MEM_FENCE);
|
||||
@ -960,7 +960,7 @@ __kernel void m13800_m16 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (u32 i = lid; i < 32; i += lsz)
|
||||
{
|
||||
s_esalt[i] = esalt_bufs[salt_pos].salt_buf[i];
|
||||
s_esalt[i] = esalt_bufs[digests_offset].salt_buf[i];
|
||||
}
|
||||
|
||||
barrier (CLK_LOCAL_MEM_FENCE);
|
||||
@ -1017,7 +1017,7 @@ __kernel void m13800_s04 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (u32 i = lid; i < 32; i += lsz)
|
||||
{
|
||||
s_esalt[i] = esalt_bufs[salt_pos].salt_buf[i];
|
||||
s_esalt[i] = esalt_bufs[digests_offset].salt_buf[i];
|
||||
}
|
||||
|
||||
barrier (CLK_LOCAL_MEM_FENCE);
|
||||
@ -1074,7 +1074,7 @@ __kernel void m13800_s08 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (u32 i = lid; i < 32; i += lsz)
|
||||
{
|
||||
s_esalt[i] = esalt_bufs[salt_pos].salt_buf[i];
|
||||
s_esalt[i] = esalt_bufs[digests_offset].salt_buf[i];
|
||||
}
|
||||
|
||||
barrier (CLK_LOCAL_MEM_FENCE);
|
||||
@ -1131,7 +1131,7 @@ __kernel void m13800_s16 (__global pw_t *pws, __global const kernel_rule_t *rule
|
||||
|
||||
for (u32 i = lid; i < 32; i += lsz)
|
||||
{
|
||||
s_esalt[i] = esalt_bufs[salt_pos].salt_buf[i];
|
||||
s_esalt[i] = esalt_bufs[digests_offset].salt_buf[i];
|
||||
}
|
||||
|
||||
barrier (CLK_LOCAL_MEM_FENCE);
|
||||
|
@ -462,7 +462,7 @@ __kernel void m14611_init (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
salt_buf1[2] = swap32_S (salt_bufs[salt_pos].salt_buf[6]);
|
||||
salt_buf1[3] = swap32_S (salt_bufs[salt_pos].salt_buf[7]);
|
||||
|
||||
u32 key_size = luks_bufs[salt_pos].key_size;
|
||||
u32 key_size = luks_bufs[digests_offset].key_size;
|
||||
|
||||
/**
|
||||
* pads
|
||||
@ -560,7 +560,7 @@ __kernel void m14611_loop (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
opad[3] = packv (tmps, opad32, gid, 3);
|
||||
opad[4] = packv (tmps, opad32, gid, 4);
|
||||
|
||||
u32 key_size = luks_bufs[salt_pos].key_size;
|
||||
u32 key_size = luks_bufs[digests_offset].key_size;
|
||||
|
||||
for (u32 i = 0; i < ((key_size / 8) / 4); i += 5)
|
||||
{
|
||||
@ -691,7 +691,7 @@ __kernel void m14611_comp (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
|
||||
u32 pt_buf[128];
|
||||
|
||||
luks_af_sha1_then_aes_decrypt (&luks_bufs[salt_pos], &tmps[gid], pt_buf, s_te0, s_te1, s_te2, s_te3, s_te4, s_td0, s_td1, s_td2, s_td3, s_td4);
|
||||
luks_af_sha1_then_aes_decrypt (&luks_bufs[digests_offset], &tmps[gid], pt_buf, s_te0, s_te1, s_te2, s_te3, s_te4, s_td0, s_td1, s_td2, s_td3, s_td4);
|
||||
|
||||
// check entropy
|
||||
|
||||
|
@ -462,7 +462,7 @@ __kernel void m14612_init (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
salt_buf1[2] = swap32_S (salt_bufs[salt_pos].salt_buf[6]);
|
||||
salt_buf1[3] = swap32_S (salt_bufs[salt_pos].salt_buf[7]);
|
||||
|
||||
u32 key_size = luks_bufs[salt_pos].key_size;
|
||||
u32 key_size = luks_bufs[digests_offset].key_size;
|
||||
|
||||
/**
|
||||
* pads
|
||||
@ -560,7 +560,7 @@ __kernel void m14612_loop (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
opad[3] = packv (tmps, opad32, gid, 3);
|
||||
opad[4] = packv (tmps, opad32, gid, 4);
|
||||
|
||||
u32 key_size = luks_bufs[salt_pos].key_size;
|
||||
u32 key_size = luks_bufs[digests_offset].key_size;
|
||||
|
||||
for (u32 i = 0; i < ((key_size / 8) / 4); i += 5)
|
||||
{
|
||||
@ -638,7 +638,7 @@ __kernel void m14612_comp (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
|
||||
u32 pt_buf[128];
|
||||
|
||||
luks_af_sha1_then_serpent_decrypt (&luks_bufs[salt_pos], &tmps[gid], pt_buf);
|
||||
luks_af_sha1_then_serpent_decrypt (&luks_bufs[digests_offset], &tmps[gid], pt_buf);
|
||||
|
||||
// check entropy
|
||||
|
||||
|
@ -462,7 +462,7 @@ __kernel void m14613_init (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
salt_buf1[2] = swap32_S (salt_bufs[salt_pos].salt_buf[6]);
|
||||
salt_buf1[3] = swap32_S (salt_bufs[salt_pos].salt_buf[7]);
|
||||
|
||||
u32 key_size = luks_bufs[salt_pos].key_size;
|
||||
u32 key_size = luks_bufs[digests_offset].key_size;
|
||||
|
||||
/**
|
||||
* pads
|
||||
@ -560,7 +560,7 @@ __kernel void m14613_loop (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
opad[3] = packv (tmps, opad32, gid, 3);
|
||||
opad[4] = packv (tmps, opad32, gid, 4);
|
||||
|
||||
u32 key_size = luks_bufs[salt_pos].key_size;
|
||||
u32 key_size = luks_bufs[digests_offset].key_size;
|
||||
|
||||
for (u32 i = 0; i < ((key_size / 8) / 4); i += 5)
|
||||
{
|
||||
@ -638,7 +638,7 @@ __kernel void m14613_comp (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
|
||||
u32 pt_buf[128];
|
||||
|
||||
luks_af_sha1_then_twofish_decrypt (&luks_bufs[salt_pos], &tmps[gid], pt_buf);
|
||||
luks_af_sha1_then_twofish_decrypt (&luks_bufs[digests_offset], &tmps[gid], pt_buf);
|
||||
|
||||
// check entropy
|
||||
|
||||
|
@ -420,7 +420,7 @@ __kernel void m14621_init (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
salt_buf1[2] = swap32_S (salt_bufs[salt_pos].salt_buf[6]);
|
||||
salt_buf1[3] = swap32_S (salt_bufs[salt_pos].salt_buf[7]);
|
||||
|
||||
u32 key_size = luks_bufs[salt_pos].key_size;
|
||||
u32 key_size = luks_bufs[digests_offset].key_size;
|
||||
|
||||
/**
|
||||
* pads
|
||||
@ -536,7 +536,7 @@ __kernel void m14621_loop (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
opad[6] = packv (tmps, opad32, gid, 6);
|
||||
opad[7] = packv (tmps, opad32, gid, 7);
|
||||
|
||||
u32 key_size = luks_bufs[salt_pos].key_size;
|
||||
u32 key_size = luks_bufs[digests_offset].key_size;
|
||||
|
||||
for (u32 i = 0; i < ((key_size / 8) / 4); i += 8)
|
||||
{
|
||||
@ -682,7 +682,7 @@ __kernel void m14621_comp (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
|
||||
u32 pt_buf[128];
|
||||
|
||||
luks_af_sha256_then_aes_decrypt (&luks_bufs[salt_pos], &tmps[gid], pt_buf, s_te0, s_te1, s_te2, s_te3, s_te4, s_td0, s_td1, s_td2, s_td3, s_td4);
|
||||
luks_af_sha256_then_aes_decrypt (&luks_bufs[digests_offset], &tmps[gid], pt_buf, s_te0, s_te1, s_te2, s_te3, s_te4, s_td0, s_td1, s_td2, s_td3, s_td4);
|
||||
|
||||
// check entropy
|
||||
|
||||
|
@ -420,7 +420,7 @@ __kernel void m14622_init (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
salt_buf1[2] = swap32_S (salt_bufs[salt_pos].salt_buf[6]);
|
||||
salt_buf1[3] = swap32_S (salt_bufs[salt_pos].salt_buf[7]);
|
||||
|
||||
u32 key_size = luks_bufs[salt_pos].key_size;
|
||||
u32 key_size = luks_bufs[digests_offset].key_size;
|
||||
|
||||
/**
|
||||
* pads
|
||||
@ -536,7 +536,7 @@ __kernel void m14622_loop (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
opad[6] = packv (tmps, opad32, gid, 6);
|
||||
opad[7] = packv (tmps, opad32, gid, 7);
|
||||
|
||||
u32 key_size = luks_bufs[salt_pos].key_size;
|
||||
u32 key_size = luks_bufs[digests_offset].key_size;
|
||||
|
||||
for (u32 i = 0; i < ((key_size / 8) / 4); i += 8)
|
||||
{
|
||||
@ -629,7 +629,7 @@ __kernel void m14622_comp (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
|
||||
u32 pt_buf[128];
|
||||
|
||||
luks_af_sha256_then_serpent_decrypt (&luks_bufs[salt_pos], &tmps[gid], pt_buf);
|
||||
luks_af_sha256_then_serpent_decrypt (&luks_bufs[digests_offset], &tmps[gid], pt_buf);
|
||||
|
||||
// check entropy
|
||||
|
||||
|
@ -420,7 +420,7 @@ __kernel void m14623_init (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
salt_buf1[2] = swap32_S (salt_bufs[salt_pos].salt_buf[6]);
|
||||
salt_buf1[3] = swap32_S (salt_bufs[salt_pos].salt_buf[7]);
|
||||
|
||||
u32 key_size = luks_bufs[salt_pos].key_size;
|
||||
u32 key_size = luks_bufs[digests_offset].key_size;
|
||||
|
||||
/**
|
||||
* pads
|
||||
@ -536,7 +536,7 @@ __kernel void m14623_loop (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
opad[6] = packv (tmps, opad32, gid, 6);
|
||||
opad[7] = packv (tmps, opad32, gid, 7);
|
||||
|
||||
u32 key_size = luks_bufs[salt_pos].key_size;
|
||||
u32 key_size = luks_bufs[digests_offset].key_size;
|
||||
|
||||
for (u32 i = 0; i < ((key_size / 8) / 4); i += 8)
|
||||
{
|
||||
@ -629,7 +629,7 @@ __kernel void m14623_comp (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
|
||||
u32 pt_buf[128];
|
||||
|
||||
luks_af_sha256_then_twofish_decrypt (&luks_bufs[salt_pos], &tmps[gid], pt_buf);
|
||||
luks_af_sha256_then_twofish_decrypt (&luks_bufs[digests_offset], &tmps[gid], pt_buf);
|
||||
|
||||
// check entropy
|
||||
|
||||
|
@ -413,7 +413,7 @@ __kernel void m14631_init (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
salt_buf0[2] = hl32_to_64_S (swap32_S (salt_bufs[salt_pos].salt_buf[4]), swap32_S (salt_bufs[salt_pos].salt_buf[5]));
|
||||
salt_buf0[3] = hl32_to_64_S (swap32_S (salt_bufs[salt_pos].salt_buf[6]), swap32_S (salt_bufs[salt_pos].salt_buf[7]));
|
||||
|
||||
u32 key_size = luks_bufs[salt_pos].key_size;
|
||||
u32 key_size = luks_bufs[digests_offset].key_size;
|
||||
|
||||
/**
|
||||
* pads
|
||||
@ -512,7 +512,7 @@ __kernel void m14631_loop (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
opad[6] = pack64v (tmps, opad64, gid, 6);
|
||||
opad[7] = pack64v (tmps, opad64, gid, 7);
|
||||
|
||||
u32 key_size = luks_bufs[salt_pos].key_size;
|
||||
u32 key_size = luks_bufs[digests_offset].key_size;
|
||||
|
||||
for (u32 i = 0; i < ((key_size / 8) / 4); i += 16)
|
||||
{
|
||||
@ -658,7 +658,7 @@ __kernel void m14631_comp (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
|
||||
u32 pt_buf[128];
|
||||
|
||||
luks_af_sha512_then_aes_decrypt (&luks_bufs[salt_pos], &tmps[gid], pt_buf, s_te0, s_te1, s_te2, s_te3, s_te4, s_td0, s_td1, s_td2, s_td3, s_td4);
|
||||
luks_af_sha512_then_aes_decrypt (&luks_bufs[digests_offset], &tmps[gid], pt_buf, s_te0, s_te1, s_te2, s_te3, s_te4, s_td0, s_td1, s_td2, s_td3, s_td4);
|
||||
|
||||
// check entropy
|
||||
|
||||
|
@ -413,7 +413,7 @@ __kernel void m14632_init (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
salt_buf0[2] = hl32_to_64_S (swap32_S (salt_bufs[salt_pos].salt_buf[4]), swap32_S (salt_bufs[salt_pos].salt_buf[5]));
|
||||
salt_buf0[3] = hl32_to_64_S (swap32_S (salt_bufs[salt_pos].salt_buf[6]), swap32_S (salt_bufs[salt_pos].salt_buf[7]));
|
||||
|
||||
u32 key_size = luks_bufs[salt_pos].key_size;
|
||||
u32 key_size = luks_bufs[digests_offset].key_size;
|
||||
|
||||
/**
|
||||
* pads
|
||||
@ -512,7 +512,7 @@ __kernel void m14632_loop (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
opad[6] = pack64v (tmps, opad64, gid, 6);
|
||||
opad[7] = pack64v (tmps, opad64, gid, 7);
|
||||
|
||||
u32 key_size = luks_bufs[salt_pos].key_size;
|
||||
u32 key_size = luks_bufs[digests_offset].key_size;
|
||||
|
||||
for (u32 i = 0; i < ((key_size / 8) / 4); i += 16)
|
||||
{
|
||||
@ -605,7 +605,7 @@ __kernel void m14632_comp (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
|
||||
u32 pt_buf[128];
|
||||
|
||||
luks_af_sha512_then_serpent_decrypt (&luks_bufs[salt_pos], &tmps[gid], pt_buf);
|
||||
luks_af_sha512_then_serpent_decrypt (&luks_bufs[digests_offset], &tmps[gid], pt_buf);
|
||||
|
||||
// check entropy
|
||||
|
||||
|
@ -413,7 +413,7 @@ __kernel void m14633_init (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
salt_buf0[2] = hl32_to_64_S (swap32_S (salt_bufs[salt_pos].salt_buf[4]), swap32_S (salt_bufs[salt_pos].salt_buf[5]));
|
||||
salt_buf0[3] = hl32_to_64_S (swap32_S (salt_bufs[salt_pos].salt_buf[6]), swap32_S (salt_bufs[salt_pos].salt_buf[7]));
|
||||
|
||||
u32 key_size = luks_bufs[salt_pos].key_size;
|
||||
u32 key_size = luks_bufs[digests_offset].key_size;
|
||||
|
||||
/**
|
||||
* pads
|
||||
@ -512,7 +512,7 @@ __kernel void m14633_loop (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
opad[6] = pack64v (tmps, opad64, gid, 6);
|
||||
opad[7] = pack64v (tmps, opad64, gid, 7);
|
||||
|
||||
u32 key_size = luks_bufs[salt_pos].key_size;
|
||||
u32 key_size = luks_bufs[digests_offset].key_size;
|
||||
|
||||
for (u32 i = 0; i < ((key_size / 8) / 4); i += 16)
|
||||
{
|
||||
@ -605,7 +605,7 @@ __kernel void m14633_comp (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
|
||||
u32 pt_buf[128];
|
||||
|
||||
luks_af_sha512_then_twofish_decrypt (&luks_bufs[salt_pos], &tmps[gid], pt_buf);
|
||||
luks_af_sha512_then_twofish_decrypt (&luks_bufs[digests_offset], &tmps[gid], pt_buf);
|
||||
|
||||
// check entropy
|
||||
|
||||
|
@ -634,7 +634,7 @@ __kernel void m14641_init (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
salt_buf1[2] = salt_bufs[salt_pos].salt_buf[6];
|
||||
salt_buf1[3] = salt_bufs[salt_pos].salt_buf[7];
|
||||
|
||||
u32 key_size = luks_bufs[salt_pos].key_size;
|
||||
u32 key_size = luks_bufs[digests_offset].key_size;
|
||||
|
||||
/**
|
||||
* pads
|
||||
@ -715,7 +715,7 @@ __kernel void m14641_loop (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
opad[3] = packv (tmps, opad32, gid, 3);
|
||||
opad[4] = packv (tmps, opad32, gid, 4);
|
||||
|
||||
u32 key_size = luks_bufs[salt_pos].key_size;
|
||||
u32 key_size = luks_bufs[digests_offset].key_size;
|
||||
|
||||
for (u32 i = 0; i < ((key_size / 8) / 4); i += 5)
|
||||
{
|
||||
@ -846,7 +846,7 @@ __kernel void m14641_comp (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
|
||||
u32 pt_buf[128];
|
||||
|
||||
luks_af_ripemd160_then_aes_decrypt (&luks_bufs[salt_pos], &tmps[gid], pt_buf, s_te0, s_te1, s_te2, s_te3, s_te4, s_td0, s_td1, s_td2, s_td3, s_td4);
|
||||
luks_af_ripemd160_then_aes_decrypt (&luks_bufs[digests_offset], &tmps[gid], pt_buf, s_te0, s_te1, s_te2, s_te3, s_te4, s_td0, s_td1, s_td2, s_td3, s_td4);
|
||||
|
||||
// check entropy
|
||||
|
||||
|
@ -634,7 +634,7 @@ __kernel void m14642_init (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
salt_buf1[2] = salt_bufs[salt_pos].salt_buf[6];
|
||||
salt_buf1[3] = salt_bufs[salt_pos].salt_buf[7];
|
||||
|
||||
u32 key_size = luks_bufs[salt_pos].key_size;
|
||||
u32 key_size = luks_bufs[digests_offset].key_size;
|
||||
|
||||
/**
|
||||
* pads
|
||||
@ -715,7 +715,7 @@ __kernel void m14642_loop (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
opad[3] = packv (tmps, opad32, gid, 3);
|
||||
opad[4] = packv (tmps, opad32, gid, 4);
|
||||
|
||||
u32 key_size = luks_bufs[salt_pos].key_size;
|
||||
u32 key_size = luks_bufs[digests_offset].key_size;
|
||||
|
||||
for (u32 i = 0; i < ((key_size / 8) / 4); i += 5)
|
||||
{
|
||||
@ -793,7 +793,7 @@ __kernel void m14642_comp (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
|
||||
u32 pt_buf[128];
|
||||
|
||||
luks_af_ripemd160_then_serpent_decrypt (&luks_bufs[salt_pos], &tmps[gid], pt_buf);
|
||||
luks_af_ripemd160_then_serpent_decrypt (&luks_bufs[digests_offset], &tmps[gid], pt_buf);
|
||||
|
||||
// check entropy
|
||||
|
||||
|
@ -634,7 +634,7 @@ __kernel void m14643_init (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
salt_buf1[2] = salt_bufs[salt_pos].salt_buf[6];
|
||||
salt_buf1[3] = salt_bufs[salt_pos].salt_buf[7];
|
||||
|
||||
u32 key_size = luks_bufs[salt_pos].key_size;
|
||||
u32 key_size = luks_bufs[digests_offset].key_size;
|
||||
|
||||
/**
|
||||
* pads
|
||||
@ -715,7 +715,7 @@ __kernel void m14643_loop (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
opad[3] = packv (tmps, opad32, gid, 3);
|
||||
opad[4] = packv (tmps, opad32, gid, 4);
|
||||
|
||||
u32 key_size = luks_bufs[salt_pos].key_size;
|
||||
u32 key_size = luks_bufs[digests_offset].key_size;
|
||||
|
||||
for (u32 i = 0; i < ((key_size / 8) / 4); i += 5)
|
||||
{
|
||||
@ -793,7 +793,7 @@ __kernel void m14643_comp (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
|
||||
u32 pt_buf[128];
|
||||
|
||||
luks_af_ripemd160_then_twofish_decrypt (&luks_bufs[salt_pos], &tmps[gid], pt_buf);
|
||||
luks_af_ripemd160_then_twofish_decrypt (&luks_bufs[digests_offset], &tmps[gid], pt_buf);
|
||||
|
||||
// check entropy
|
||||
|
||||
|
@ -1671,21 +1671,21 @@ __kernel void m14700_comp (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
|
||||
u32 cipher[4];
|
||||
|
||||
cipher[0] = esalt_bufs[salt_pos].wpky[0];
|
||||
cipher[1] = esalt_bufs[salt_pos].wpky[1];
|
||||
cipher[0] = esalt_bufs[digests_offset].wpky[0];
|
||||
cipher[1] = esalt_bufs[digests_offset].wpky[1];
|
||||
cipher[2] = 0;
|
||||
cipher[3] = 0;
|
||||
|
||||
u32 lsb[8];
|
||||
|
||||
lsb[0] = esalt_bufs[salt_pos].wpky[8];
|
||||
lsb[1] = esalt_bufs[salt_pos].wpky[9];
|
||||
lsb[2] = esalt_bufs[salt_pos].wpky[6];
|
||||
lsb[3] = esalt_bufs[salt_pos].wpky[7];
|
||||
lsb[4] = esalt_bufs[salt_pos].wpky[4];
|
||||
lsb[5] = esalt_bufs[salt_pos].wpky[5];
|
||||
lsb[6] = esalt_bufs[salt_pos].wpky[2];
|
||||
lsb[7] = esalt_bufs[salt_pos].wpky[3];
|
||||
lsb[0] = esalt_bufs[digests_offset].wpky[8];
|
||||
lsb[1] = esalt_bufs[digests_offset].wpky[9];
|
||||
lsb[2] = esalt_bufs[digests_offset].wpky[6];
|
||||
lsb[3] = esalt_bufs[digests_offset].wpky[7];
|
||||
lsb[4] = esalt_bufs[digests_offset].wpky[4];
|
||||
lsb[5] = esalt_bufs[digests_offset].wpky[5];
|
||||
lsb[6] = esalt_bufs[digests_offset].wpky[2];
|
||||
lsb[7] = esalt_bufs[digests_offset].wpky[3];
|
||||
|
||||
for (int j = 5; j >= 0; j--)
|
||||
{
|
||||
|
@ -1787,11 +1787,11 @@ __kernel void m14800_init (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
u32 dpsl0[4];
|
||||
u32 dpsl1[4];
|
||||
|
||||
dpsl0[0] = esalt_bufs[salt_pos].dpsl[0];
|
||||
dpsl0[1] = esalt_bufs[salt_pos].dpsl[1];
|
||||
dpsl0[2] = esalt_bufs[salt_pos].dpsl[2];
|
||||
dpsl0[3] = esalt_bufs[salt_pos].dpsl[3];
|
||||
dpsl1[0] = esalt_bufs[salt_pos].dpsl[4];
|
||||
dpsl0[0] = esalt_bufs[digests_offset].dpsl[0];
|
||||
dpsl0[1] = esalt_bufs[digests_offset].dpsl[1];
|
||||
dpsl0[2] = esalt_bufs[digests_offset].dpsl[2];
|
||||
dpsl0[3] = esalt_bufs[digests_offset].dpsl[3];
|
||||
dpsl1[0] = esalt_bufs[digests_offset].dpsl[4];
|
||||
dpsl1[1] = 0;
|
||||
dpsl1[2] = 0;
|
||||
dpsl1[3] = 0;
|
||||
@ -2228,21 +2228,21 @@ __kernel void m14800_comp (__global pw_t *pws, __global const kernel_rule_t *rul
|
||||
|
||||
u32 cipher[4];
|
||||
|
||||
cipher[0] = esalt_bufs[salt_pos].wpky[0];
|
||||
cipher[1] = esalt_bufs[salt_pos].wpky[1];
|
||||
cipher[0] = esalt_bufs[digests_offset].wpky[0];
|
||||
cipher[1] = esalt_bufs[digests_offset].wpky[1];
|
||||
cipher[2] = 0;
|
||||
cipher[3] = 0;
|
||||
|
||||
u32 lsb[8];
|
||||
|
||||
lsb[0] = esalt_bufs[salt_pos].wpky[8];
|
||||
lsb[1] = esalt_bufs[salt_pos].wpky[9];
|
||||
lsb[2] = esalt_bufs[salt_pos].wpky[6];
|
||||
lsb[3] = esalt_bufs[salt_pos].wpky[7];
|
||||
lsb[4] = esalt_bufs[salt_pos].wpky[4];
|
||||
lsb[5] = esalt_bufs[salt_pos].wpky[5];
|
||||
lsb[6] = esalt_bufs[salt_pos].wpky[2];
|
||||
lsb[7] = esalt_bufs[salt_pos].wpky[3];
|
||||
lsb[0] = esalt_bufs[digests_offset].wpky[8];
|
||||
lsb[1] = esalt_bufs[digests_offset].wpky[9];
|
||||
lsb[2] = esalt_bufs[digests_offset].wpky[6];
|
||||
lsb[3] = esalt_bufs[digests_offset].wpky[7];
|
||||
lsb[4] = esalt_bufs[digests_offset].wpky[4];
|
||||
lsb[5] = esalt_bufs[digests_offset].wpky[5];
|
||||
lsb[6] = esalt_bufs[digests_offset].wpky[2];
|
||||
lsb[7] = esalt_bufs[digests_offset].wpky[3];
|
||||
|
||||
for (int j = 5; j >= 0; j--)
|
||||
{
|
||||
|
@ -187,6 +187,8 @@ typedef struct wpa
|
||||
int essid_reuse;
|
||||
u8 essid_len;
|
||||
u8 essid[32];
|
||||
u32 keymic[4];
|
||||
u32 hash[4];
|
||||
|
||||
} wpa_t;
|
||||
|
||||
@ -1744,9 +1746,6 @@ char *strparser (const u32 parser_status);
|
||||
int check_old_hccap (const char *hashfile);
|
||||
void to_hccapx_t (hashcat_ctx_t *hashcat_ctx, hccapx_t *hccapx, const u32 salt_pos, const u32 digest_pos);
|
||||
|
||||
void wpa_essid_reuse (hashcat_ctx_t *hashcat_ctx);
|
||||
void wpa_essid_reuse_next (hashcat_ctx_t *hashcat_ctx, const u32 salt_idx_cracked);
|
||||
|
||||
int ascii_digest (hashcat_ctx_t *hashcat_ctx, char *out_buf, const size_t out_len, const u32 salt_pos, const u32 digest_pos);
|
||||
|
||||
int hashconfig_init (hashcat_ctx_t *hashcat_ctx);
|
||||
|
55
src/hashes.c
55
src/hashes.c
@ -375,11 +375,6 @@ int check_cracked (hashcat_ctx_t *hashcat_ctx, hc_device_param_t *device_param,
|
||||
}
|
||||
}
|
||||
|
||||
if (hashconfig->hash_mode == 2500)
|
||||
{
|
||||
wpa_essid_reuse_next (hashcat_ctx, salt_pos);
|
||||
}
|
||||
|
||||
if (hashes->salts_done == hashes->salts_cnt) mycracked (hashcat_ctx);
|
||||
|
||||
check_hash (hashcat_ctx, device_param, &cracked[i]);
|
||||
@ -1262,15 +1257,6 @@ int hashes_init_stage2 (hashcat_ctx_t *hashcat_ctx)
|
||||
|
||||
hashes_buf[0].salt = salt_buf;
|
||||
|
||||
if (hashconfig->esalt_size)
|
||||
{
|
||||
char *esalts_buf_new_ptr = ((char *) esalts_buf_new) + (salts_cnt * hashconfig->esalt_size);
|
||||
|
||||
memcpy (esalts_buf_new_ptr, hashes_buf[0].esalt, hashconfig->esalt_size);
|
||||
|
||||
hashes_buf[0].esalt = esalts_buf_new_ptr;
|
||||
}
|
||||
|
||||
if (hashconfig->hook_salt_size)
|
||||
{
|
||||
char *hook_salts_buf_new_ptr = ((char *) hook_salts_buf_new) + (salts_cnt * hashconfig->hook_salt_size);
|
||||
@ -1295,6 +1281,15 @@ int hashes_init_stage2 (hashcat_ctx_t *hashcat_ctx)
|
||||
|
||||
hashes_buf[0].digest = digests_buf_new_ptr;
|
||||
|
||||
if (hashconfig->esalt_size)
|
||||
{
|
||||
char *esalts_buf_new_ptr = ((char *) esalts_buf_new) + (0 * hashconfig->esalt_size);
|
||||
|
||||
memcpy (esalts_buf_new_ptr, hashes_buf[0].esalt, hashconfig->esalt_size);
|
||||
|
||||
hashes_buf[0].esalt = esalts_buf_new_ptr;
|
||||
}
|
||||
|
||||
if ((user_options->username == true) || (hashconfig->opts_type & OPTS_TYPE_HASH_COPY) || (hashconfig->opts_type & OPTS_TYPE_HASH_SPLIT))
|
||||
{
|
||||
hash_info[0] = hashes_buf[0].hash_info;
|
||||
@ -1314,15 +1309,6 @@ int hashes_init_stage2 (hashcat_ctx_t *hashcat_ctx)
|
||||
|
||||
hashes_buf[hashes_pos].salt = salt_buf;
|
||||
|
||||
if (hashconfig->esalt_size)
|
||||
{
|
||||
char *esalts_buf_new_ptr = ((char *) esalts_buf_new) + (salts_cnt * hashconfig->esalt_size);
|
||||
|
||||
memcpy (esalts_buf_new_ptr, hashes_buf[hashes_pos].esalt, hashconfig->esalt_size);
|
||||
|
||||
hashes_buf[hashes_pos].esalt = esalts_buf_new_ptr;
|
||||
}
|
||||
|
||||
if (hashconfig->hook_salt_size)
|
||||
{
|
||||
char *hook_salts_buf_new_ptr = ((char *) hook_salts_buf_new) + (salts_cnt * hashconfig->hook_salt_size);
|
||||
@ -1341,13 +1327,6 @@ int hashes_init_stage2 (hashcat_ctx_t *hashcat_ctx)
|
||||
|
||||
hashes_buf[hashes_pos].salt = salt_buf;
|
||||
|
||||
if (hashconfig->esalt_size)
|
||||
{
|
||||
char *esalts_buf_new_ptr = ((char *) esalts_buf_new) + (salts_cnt * hashconfig->esalt_size);
|
||||
|
||||
hashes_buf[hashes_pos].esalt = esalts_buf_new_ptr;
|
||||
}
|
||||
|
||||
if (hashconfig->hook_salt_size)
|
||||
{
|
||||
char *hook_salts_buf_new_ptr = ((char *) hook_salts_buf_new) + (salts_cnt * hashconfig->hook_salt_size);
|
||||
@ -1364,6 +1343,15 @@ int hashes_init_stage2 (hashcat_ctx_t *hashcat_ctx)
|
||||
|
||||
hashes_buf[hashes_pos].digest = digests_buf_new_ptr;
|
||||
|
||||
if (hashconfig->esalt_size)
|
||||
{
|
||||
char *esalts_buf_new_ptr = ((char *) esalts_buf_new) + (hashes_pos * hashconfig->esalt_size);
|
||||
|
||||
memcpy (esalts_buf_new_ptr, hashes_buf[hashes_pos].esalt, hashconfig->esalt_size);
|
||||
|
||||
hashes_buf[hashes_pos].esalt = esalts_buf_new_ptr;
|
||||
}
|
||||
|
||||
if ((user_options->username == true) || (hashconfig->opts_type & OPTS_TYPE_HASH_COPY) || (hashconfig->opts_type & OPTS_TYPE_HASH_SPLIT))
|
||||
{
|
||||
hash_info[hashes_pos] = hashes_buf[hashes_pos].hash_info;
|
||||
@ -1519,13 +1507,6 @@ int hashes_init_stage4 (hashcat_ctx_t *hashcat_ctx)
|
||||
|
||||
hashes->tmp_buf = tmp_buf;
|
||||
|
||||
// special wpa booster case
|
||||
|
||||
if (hashconfig->hash_mode == 2500)
|
||||
{
|
||||
wpa_essid_reuse (hashcat_ctx);
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
230
src/interface.c
230
src/interface.c
@ -2722,7 +2722,7 @@ int wpa_parse_hash (u8 *input_buf, u32 input_len, hash_t *hash_buf, MAYBE_UNUSED
|
||||
|
||||
if (in.eapol_len < 1 || in.eapol_len > 255) return (PARSER_HCCAPX_EAPOL_LEN);
|
||||
|
||||
memcpy (digest, in.keymic, 16);
|
||||
memcpy (wpa->keymic, in.keymic, 16);
|
||||
|
||||
/*
|
||||
http://www.one-net.eu/jsw/j_sec/m_ptype.html
|
||||
@ -2810,10 +2810,10 @@ int wpa_parse_hash (u8 *input_buf, u32 input_len, hash_t *hash_buf, MAYBE_UNUSED
|
||||
}
|
||||
else
|
||||
{
|
||||
digest[0] = byte_swap_32 (digest[0]);
|
||||
digest[1] = byte_swap_32 (digest[1]);
|
||||
digest[2] = byte_swap_32 (digest[2]);
|
||||
digest[3] = byte_swap_32 (digest[3]);
|
||||
wpa->keymic[0] = byte_swap_32 (wpa->keymic[0]);
|
||||
wpa->keymic[1] = byte_swap_32 (wpa->keymic[1]);
|
||||
wpa->keymic[2] = byte_swap_32 (wpa->keymic[2]);
|
||||
wpa->keymic[3] = byte_swap_32 (wpa->keymic[3]);
|
||||
|
||||
for (int i = 0; i < 64; i++)
|
||||
{
|
||||
@ -2876,17 +2876,24 @@ int wpa_parse_hash (u8 *input_buf, u32 input_len, hash_t *hash_buf, MAYBE_UNUSED
|
||||
|
||||
md5_64 (block, hash);
|
||||
|
||||
block[0] = digest[0];
|
||||
block[1] = digest[1];
|
||||
block[2] = digest[2];
|
||||
block[3] = digest[3];
|
||||
block[0] = wpa->keymic[0];
|
||||
block[1] = wpa->keymic[1];
|
||||
block[2] = wpa->keymic[2];
|
||||
block[3] = wpa->keymic[3];
|
||||
|
||||
md5_64 (block, hash);
|
||||
|
||||
salt->salt_buf[12] = hash[0];
|
||||
salt->salt_buf[13] = hash[1];
|
||||
salt->salt_buf[14] = hash[2];
|
||||
salt->salt_buf[15] = hash[3];
|
||||
wpa->hash[0] = hash[0];
|
||||
wpa->hash[1] = hash[1];
|
||||
wpa->hash[2] = hash[2];
|
||||
wpa->hash[3] = hash[3];
|
||||
|
||||
// make all this stuff unique
|
||||
|
||||
digest[0] = wpa->hash[0];
|
||||
digest[1] = wpa->hash[1];
|
||||
digest[2] = wpa->hash[2];
|
||||
digest[3] = wpa->hash[3];
|
||||
|
||||
return (PARSER_OK);
|
||||
}
|
||||
@ -14940,12 +14947,14 @@ void to_hccapx_t (hashcat_ctx_t *hashcat_ctx, hccapx_t *hccapx, const u32 salt_p
|
||||
|
||||
const salt_t *salt = &salts_buf[salt_pos];
|
||||
|
||||
const u32 digest_cur = salt->digests_offset + digest_pos;
|
||||
|
||||
hccapx->essid_len = salt->salt_len;
|
||||
|
||||
memcpy (hccapx->essid, salt->salt_buf, hccapx->essid_len);
|
||||
|
||||
wpa_t *wpas = (wpa_t *) esalts_buf;
|
||||
wpa_t *wpa = &wpas[salt_pos];
|
||||
wpa_t *wpa = &wpas[digest_cur];
|
||||
|
||||
hccapx->message_pair = wpa->message_pair;
|
||||
hccapx->keyver = wpa->keyver;
|
||||
@ -14973,78 +14982,23 @@ void to_hccapx_t (hashcat_ctx_t *hashcat_ctx, hccapx_t *hccapx, const u32 salt_p
|
||||
memcpy (hccapx->nonce_ap, wpa->orig_nonce_ap, 32);
|
||||
memcpy (hccapx->nonce_sta, wpa->orig_nonce_sta, 32);
|
||||
|
||||
char *digests_buf_ptr = (char *) digests_buf;
|
||||
|
||||
u32 dgst_size = hashconfig->dgst_size;
|
||||
|
||||
u32 *digest_ptr = (u32 *) (digests_buf_ptr + (salts_buf[salt_pos].digests_offset * dgst_size) + (digest_pos * dgst_size));
|
||||
|
||||
if (wpa->keyver != 1)
|
||||
{
|
||||
u32 digest_tmp[4] = { 0 };
|
||||
u32 digest_tmp[4];
|
||||
|
||||
digest_tmp[0] = byte_swap_32 (digest_ptr[0]);
|
||||
digest_tmp[1] = byte_swap_32 (digest_ptr[1]);
|
||||
digest_tmp[2] = byte_swap_32 (digest_ptr[2]);
|
||||
digest_tmp[3] = byte_swap_32 (digest_ptr[3]);
|
||||
digest_tmp[0] = byte_swap_32 (wpa->keymic[0]);
|
||||
digest_tmp[1] = byte_swap_32 (wpa->keymic[1]);
|
||||
digest_tmp[2] = byte_swap_32 (wpa->keymic[2]);
|
||||
digest_tmp[3] = byte_swap_32 (wpa->keymic[3]);
|
||||
|
||||
memcpy (hccapx->keymic, digest_tmp, 16);
|
||||
}
|
||||
else
|
||||
{
|
||||
memcpy (hccapx->keymic, digest_ptr, 16);
|
||||
memcpy (hccapx->keymic, wpa->keymic, 16);
|
||||
}
|
||||
}
|
||||
|
||||
void wpa_essid_reuse (hashcat_ctx_t *hashcat_ctx)
|
||||
{
|
||||
// find duplicate essid to speed up cracking
|
||||
|
||||
hashes_t *hashes = hashcat_ctx->hashes;
|
||||
|
||||
salt_t *salts_buf = hashes->salts_buf;
|
||||
|
||||
wpa_t *esalts_buf = hashes->esalts_buf;
|
||||
|
||||
const u32 salts_cnt = hashes->salts_cnt;
|
||||
|
||||
for (u32 salt_idx = 1; salt_idx < salts_cnt; salt_idx++)
|
||||
{
|
||||
if (memcmp ((char *) salts_buf[salt_idx].salt_buf, (char *) salts_buf[salt_idx - 1].salt_buf, salts_buf[salt_idx].salt_len) == 0)
|
||||
{
|
||||
esalts_buf[salt_idx].essid_reuse = 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void wpa_essid_reuse_next (hashcat_ctx_t *hashcat_ctx, const u32 salt_idx_cracked)
|
||||
{
|
||||
hashes_t *hashes = hashcat_ctx->hashes;
|
||||
|
||||
salt_t *salts_buf = hashes->salts_buf;
|
||||
|
||||
wpa_t *esalts_buf = hashes->esalts_buf;
|
||||
|
||||
// the first essid salt has been cracked?
|
||||
// since there's always just one with essid_reuse == 0 (which is always the first uncracked of N handshakes)
|
||||
// we can do the following check:
|
||||
|
||||
if (esalts_buf[salt_idx_cracked].essid_reuse != 0) return;
|
||||
|
||||
// it's possible more handshakes with the same essid are following,
|
||||
// thus we have to update the next essid_reuse with the same essid
|
||||
|
||||
const u32 salts_cnt = hashes->salts_cnt;
|
||||
|
||||
const u32 salts_idx_next = salt_idx_cracked + 1;
|
||||
|
||||
if (salts_idx_next == salts_cnt) return;
|
||||
|
||||
if (memcmp ((char *) salts_buf[salts_idx_next].salt_buf, (char *) salts_buf[salt_idx_cracked].salt_buf, salts_buf[salts_idx_next].salt_len)) return;
|
||||
|
||||
esalts_buf[salts_idx_next].essid_reuse = 0;
|
||||
}
|
||||
|
||||
int ascii_digest (hashcat_ctx_t *hashcat_ctx, char *out_buf, const size_t out_len, const u32 salt_pos, const u32 digest_pos)
|
||||
{
|
||||
const hashconfig_t *hashconfig = hashcat_ctx->hashconfig;
|
||||
@ -15063,6 +15017,8 @@ int ascii_digest (hashcat_ctx_t *hashcat_ctx, char *out_buf, const size_t out_le
|
||||
const u32 opti_type = hashconfig->opti_type;
|
||||
const u32 dgst_size = hashconfig->dgst_size;
|
||||
|
||||
const u32 digest_cur = salts_buf[salt_pos].digests_offset + digest_pos;
|
||||
|
||||
u8 datax[256] = { 0 };
|
||||
|
||||
u64 *digest_buf64 = (u64 *) datax;
|
||||
@ -15541,10 +15497,8 @@ int ascii_digest (hashcat_ctx_t *hashcat_ctx, char *out_buf, const size_t out_le
|
||||
}
|
||||
else if (hash_mode == 501)
|
||||
{
|
||||
u32 digest_idx = salt.digests_offset + digest_pos;
|
||||
|
||||
hashinfo_t **hashinfo_ptr = hash_info;
|
||||
char *hash_buf = hashinfo_ptr[digest_idx]->orighash;
|
||||
char *hash_buf = hashinfo_ptr[digest_cur]->orighash;
|
||||
|
||||
snprintf (out_buf, out_len - 1, "%s", hash_buf);
|
||||
}
|
||||
@ -15791,7 +15745,7 @@ int ascii_digest (hashcat_ctx_t *hashcat_ctx, char *out_buf, const size_t out_le
|
||||
{
|
||||
wpa_t *wpas = (wpa_t *) esalts_buf;
|
||||
|
||||
wpa_t *wpa = &wpas[salt_pos];
|
||||
wpa_t *wpa = &wpas[digest_cur];
|
||||
|
||||
char *essid = (char *) wpa->essid;
|
||||
|
||||
@ -15815,10 +15769,10 @@ int ascii_digest (hashcat_ctx_t *hashcat_ctx, char *out_buf, const size_t out_le
|
||||
}
|
||||
|
||||
snprintf (out_buf, out_len - 1, "%08x%08x%08x%08x:%02x%02x%02x%02x%02x%02x:%02x%02x%02x%02x%02x%02x:%s",
|
||||
salt.salt_buf[12],
|
||||
salt.salt_buf[13],
|
||||
salt.salt_buf[14],
|
||||
salt.salt_buf[15],
|
||||
wpa->hash[0],
|
||||
wpa->hash[1],
|
||||
wpa->hash[2],
|
||||
wpa->hash[3],
|
||||
wpa->orig_mac_ap[0],
|
||||
wpa->orig_mac_ap[1],
|
||||
wpa->orig_mac_ap[2],
|
||||
@ -15888,7 +15842,7 @@ int ascii_digest (hashcat_ctx_t *hashcat_ctx, char *out_buf, const size_t out_le
|
||||
{
|
||||
ikepsk_t *ikepsks = (ikepsk_t *) esalts_buf;
|
||||
|
||||
ikepsk_t *ikepsk = &ikepsks[salt_pos];
|
||||
ikepsk_t *ikepsk = &ikepsks[digest_cur];
|
||||
|
||||
size_t buf_len = out_len - 1;
|
||||
|
||||
@ -15954,7 +15908,7 @@ int ascii_digest (hashcat_ctx_t *hashcat_ctx, char *out_buf, const size_t out_le
|
||||
{
|
||||
ikepsk_t *ikepsks = (ikepsk_t *) esalts_buf;
|
||||
|
||||
ikepsk_t *ikepsk = &ikepsks[salt_pos];
|
||||
ikepsk_t *ikepsk = &ikepsks[digest_cur];
|
||||
|
||||
size_t buf_len = out_len - 1;
|
||||
|
||||
@ -16020,7 +15974,7 @@ int ascii_digest (hashcat_ctx_t *hashcat_ctx, char *out_buf, const size_t out_le
|
||||
{
|
||||
netntlm_t *netntlms = (netntlm_t *) esalts_buf;
|
||||
|
||||
netntlm_t *netntlm = &netntlms[salt_pos];
|
||||
netntlm_t *netntlm = &netntlms[digest_cur];
|
||||
|
||||
char user_buf[64] = { 0 };
|
||||
char domain_buf[64] = { 0 };
|
||||
@ -16071,7 +16025,7 @@ int ascii_digest (hashcat_ctx_t *hashcat_ctx, char *out_buf, const size_t out_le
|
||||
{
|
||||
netntlm_t *netntlms = (netntlm_t *) esalts_buf;
|
||||
|
||||
netntlm_t *netntlm = &netntlms[salt_pos];
|
||||
netntlm_t *netntlm = &netntlms[digest_cur];
|
||||
|
||||
char user_buf[64] = { 0 };
|
||||
char domain_buf[64] = { 0 };
|
||||
@ -16185,7 +16139,7 @@ int ascii_digest (hashcat_ctx_t *hashcat_ctx, char *out_buf, const size_t out_le
|
||||
{
|
||||
agilekey_t *agilekeys = (agilekey_t *) esalts_buf;
|
||||
|
||||
agilekey_t *agilekey = &agilekeys[salt_pos];
|
||||
agilekey_t *agilekey = &agilekeys[digest_cur];
|
||||
|
||||
salt.salt_buf[0] = byte_swap_32 (salt.salt_buf[0]);
|
||||
salt.salt_buf[1] = byte_swap_32 (salt.salt_buf[1]);
|
||||
@ -16233,7 +16187,7 @@ int ascii_digest (hashcat_ctx_t *hashcat_ctx, char *out_buf, const size_t out_le
|
||||
|
||||
pbkdf2_sha512_t *pbkdf2_sha512s = (pbkdf2_sha512_t *) esalts_buf;
|
||||
|
||||
pbkdf2_sha512_t *pbkdf2_sha512 = &pbkdf2_sha512s[salt_pos];
|
||||
pbkdf2_sha512_t *pbkdf2_sha512 = &pbkdf2_sha512s[digest_cur];
|
||||
|
||||
u32 esalt[8] = { 0 };
|
||||
|
||||
@ -16268,7 +16222,7 @@ int ascii_digest (hashcat_ctx_t *hashcat_ctx, char *out_buf, const size_t out_le
|
||||
|
||||
pbkdf2_sha512_t *pbkdf2_sha512s = (pbkdf2_sha512_t *) esalts_buf;
|
||||
|
||||
pbkdf2_sha512_t *pbkdf2_sha512 = &pbkdf2_sha512s[salt_pos];
|
||||
pbkdf2_sha512_t *pbkdf2_sha512 = &pbkdf2_sha512s[digest_cur];
|
||||
|
||||
u32 len_used = 0;
|
||||
|
||||
@ -16297,7 +16251,7 @@ int ascii_digest (hashcat_ctx_t *hashcat_ctx, char *out_buf, const size_t out_le
|
||||
{
|
||||
rakp_t *rakps = (rakp_t *) esalts_buf;
|
||||
|
||||
rakp_t *rakp = &rakps[salt_pos];
|
||||
rakp_t *rakp = &rakps[digest_cur];
|
||||
|
||||
u32 i;
|
||||
u32 j;
|
||||
@ -16344,7 +16298,7 @@ int ascii_digest (hashcat_ctx_t *hashcat_ctx, char *out_buf, const size_t out_le
|
||||
{
|
||||
krb5pa_t *krb5pas = (krb5pa_t *) esalts_buf;
|
||||
|
||||
krb5pa_t *krb5pa = &krb5pas[salt_pos];
|
||||
krb5pa_t *krb5pa = &krb5pas[digest_cur];
|
||||
|
||||
u8 *ptr_timestamp = (u8 *) krb5pa->timestamp;
|
||||
u8 *ptr_checksum = (u8 *) krb5pa->checksum;
|
||||
@ -16435,7 +16389,7 @@ int ascii_digest (hashcat_ctx_t *hashcat_ctx, char *out_buf, const size_t out_le
|
||||
{
|
||||
cloudkey_t *cloudkeys = (cloudkey_t *) esalts_buf;
|
||||
|
||||
cloudkey_t *cloudkey = &cloudkeys[salt_pos];
|
||||
cloudkey_t *cloudkey = &cloudkeys[digest_cur];
|
||||
|
||||
char data_buf[4096] = { 0 };
|
||||
|
||||
@ -16545,7 +16499,7 @@ int ascii_digest (hashcat_ctx_t *hashcat_ctx, char *out_buf, const size_t out_le
|
||||
{
|
||||
androidfde_t *androidfdes = (androidfde_t *) esalts_buf;
|
||||
|
||||
androidfde_t *androidfde = &androidfdes[salt_pos];
|
||||
androidfde_t *androidfde = &androidfdes[digest_cur];
|
||||
|
||||
char tmp[3073] = { 0 };
|
||||
|
||||
@ -16610,7 +16564,7 @@ int ascii_digest (hashcat_ctx_t *hashcat_ctx, char *out_buf, const size_t out_le
|
||||
|
||||
pbkdf2_sha256_t *pbkdf2_sha256s = (pbkdf2_sha256_t *) esalts_buf;
|
||||
|
||||
pbkdf2_sha256_t *pbkdf2_sha256 = &pbkdf2_sha256s[salt_pos];
|
||||
pbkdf2_sha256_t *pbkdf2_sha256 = &pbkdf2_sha256s[digest_cur];
|
||||
|
||||
unsigned char *salt_buf_ptr = (unsigned char *) pbkdf2_sha256->salt_buf;
|
||||
|
||||
@ -16658,7 +16612,7 @@ int ascii_digest (hashcat_ctx_t *hashcat_ctx, char *out_buf, const size_t out_le
|
||||
{
|
||||
office2007_t *office2007s = (office2007_t *) esalts_buf;
|
||||
|
||||
office2007_t *office2007 = &office2007s[salt_pos];
|
||||
office2007_t *office2007 = &office2007s[digest_cur];
|
||||
|
||||
snprintf (out_buf, out_len - 1, "%s*%d*%d*%u*%d*%08x%08x%08x%08x*%08x%08x%08x%08x*%08x%08x%08x%08x%08x",
|
||||
SIGNATURE_OFFICE2007,
|
||||
@ -16684,7 +16638,7 @@ int ascii_digest (hashcat_ctx_t *hashcat_ctx, char *out_buf, const size_t out_le
|
||||
{
|
||||
office2010_t *office2010s = (office2010_t *) esalts_buf;
|
||||
|
||||
office2010_t *office2010 = &office2010s[salt_pos];
|
||||
office2010_t *office2010 = &office2010s[digest_cur];
|
||||
|
||||
snprintf (out_buf, out_len - 1, "%s*%d*%d*%d*%d*%08x%08x%08x%08x*%08x%08x%08x%08x*%08x%08x%08x%08x%08x%08x%08x%08x",
|
||||
SIGNATURE_OFFICE2010,
|
||||
@ -16713,7 +16667,7 @@ int ascii_digest (hashcat_ctx_t *hashcat_ctx, char *out_buf, const size_t out_le
|
||||
{
|
||||
office2013_t *office2013s = (office2013_t *) esalts_buf;
|
||||
|
||||
office2013_t *office2013 = &office2013s[salt_pos];
|
||||
office2013_t *office2013 = &office2013s[digest_cur];
|
||||
|
||||
snprintf (out_buf, out_len - 1, "%s*%d*%d*%d*%d*%08x%08x%08x%08x*%08x%08x%08x%08x*%08x%08x%08x%08x%08x%08x%08x%08x",
|
||||
SIGNATURE_OFFICE2013,
|
||||
@ -16742,7 +16696,7 @@ int ascii_digest (hashcat_ctx_t *hashcat_ctx, char *out_buf, const size_t out_le
|
||||
{
|
||||
oldoffice01_t *oldoffice01s = (oldoffice01_t *) esalts_buf;
|
||||
|
||||
oldoffice01_t *oldoffice01 = &oldoffice01s[salt_pos];
|
||||
oldoffice01_t *oldoffice01 = &oldoffice01s[digest_cur];
|
||||
|
||||
snprintf (out_buf, out_len - 1, "%s*%08x%08x%08x%08x*%08x%08x%08x%08x*%08x%08x%08x%08x",
|
||||
(oldoffice01->version == 0) ? SIGNATURE_OLDOFFICE0 : SIGNATURE_OLDOFFICE1,
|
||||
@ -16763,7 +16717,7 @@ int ascii_digest (hashcat_ctx_t *hashcat_ctx, char *out_buf, const size_t out_le
|
||||
{
|
||||
oldoffice01_t *oldoffice01s = (oldoffice01_t *) esalts_buf;
|
||||
|
||||
oldoffice01_t *oldoffice01 = &oldoffice01s[salt_pos];
|
||||
oldoffice01_t *oldoffice01 = &oldoffice01s[digest_cur];
|
||||
|
||||
snprintf (out_buf, out_len - 1, "%s*%08x%08x%08x%08x*%08x%08x%08x%08x*%08x%08x%08x%08x",
|
||||
(oldoffice01->version == 0) ? SIGNATURE_OLDOFFICE0 : SIGNATURE_OLDOFFICE1,
|
||||
@ -16784,7 +16738,7 @@ int ascii_digest (hashcat_ctx_t *hashcat_ctx, char *out_buf, const size_t out_le
|
||||
{
|
||||
oldoffice01_t *oldoffice01s = (oldoffice01_t *) esalts_buf;
|
||||
|
||||
oldoffice01_t *oldoffice01 = &oldoffice01s[salt_pos];
|
||||
oldoffice01_t *oldoffice01 = &oldoffice01s[digest_cur];
|
||||
|
||||
u8 *rc4key = (u8 *) oldoffice01->rc4key;
|
||||
|
||||
@ -16812,7 +16766,7 @@ int ascii_digest (hashcat_ctx_t *hashcat_ctx, char *out_buf, const size_t out_le
|
||||
{
|
||||
oldoffice34_t *oldoffice34s = (oldoffice34_t *) esalts_buf;
|
||||
|
||||
oldoffice34_t *oldoffice34 = &oldoffice34s[salt_pos];
|
||||
oldoffice34_t *oldoffice34 = &oldoffice34s[digest_cur];
|
||||
|
||||
snprintf (out_buf, out_len - 1, "%s*%08x%08x%08x%08x*%08x%08x%08x%08x*%08x%08x%08x%08x%08x",
|
||||
(oldoffice34->version == 3) ? SIGNATURE_OLDOFFICE3 : SIGNATURE_OLDOFFICE4,
|
||||
@ -16834,7 +16788,7 @@ int ascii_digest (hashcat_ctx_t *hashcat_ctx, char *out_buf, const size_t out_le
|
||||
{
|
||||
oldoffice34_t *oldoffice34s = (oldoffice34_t *) esalts_buf;
|
||||
|
||||
oldoffice34_t *oldoffice34 = &oldoffice34s[salt_pos];
|
||||
oldoffice34_t *oldoffice34 = &oldoffice34s[digest_cur];
|
||||
|
||||
snprintf (out_buf, out_len - 1, "%s*%08x%08x%08x%08x*%08x%08x%08x%08x*%08x%08x%08x%08x%08x",
|
||||
(oldoffice34->version == 3) ? SIGNATURE_OLDOFFICE3 : SIGNATURE_OLDOFFICE4,
|
||||
@ -16856,7 +16810,7 @@ int ascii_digest (hashcat_ctx_t *hashcat_ctx, char *out_buf, const size_t out_le
|
||||
{
|
||||
oldoffice34_t *oldoffice34s = (oldoffice34_t *) esalts_buf;
|
||||
|
||||
oldoffice34_t *oldoffice34 = &oldoffice34s[salt_pos];
|
||||
oldoffice34_t *oldoffice34 = &oldoffice34s[digest_cur];
|
||||
|
||||
u8 *rc4key = (u8 *) oldoffice34->rc4key;
|
||||
|
||||
@ -16887,7 +16841,7 @@ int ascii_digest (hashcat_ctx_t *hashcat_ctx, char *out_buf, const size_t out_le
|
||||
|
||||
pbkdf2_sha256_t *pbkdf2_sha256s = (pbkdf2_sha256_t *) esalts_buf;
|
||||
|
||||
pbkdf2_sha256_t *pbkdf2_sha256 = &pbkdf2_sha256s[salt_pos];
|
||||
pbkdf2_sha256_t *pbkdf2_sha256 = &pbkdf2_sha256s[digest_cur];
|
||||
|
||||
unsigned char *salt_buf_ptr = (unsigned char *) pbkdf2_sha256->salt_buf;
|
||||
|
||||
@ -16925,7 +16879,7 @@ int ascii_digest (hashcat_ctx_t *hashcat_ctx, char *out_buf, const size_t out_le
|
||||
{
|
||||
cram_md5_t *cram_md5s = (cram_md5_t *) esalts_buf;
|
||||
|
||||
cram_md5_t *cram_md5 = &cram_md5s[salt_pos];
|
||||
cram_md5_t *cram_md5 = &cram_md5s[digest_cur];
|
||||
|
||||
// challenge
|
||||
|
||||
@ -16967,7 +16921,7 @@ int ascii_digest (hashcat_ctx_t *hashcat_ctx, char *out_buf, const size_t out_le
|
||||
{
|
||||
pdf_t *pdfs = (pdf_t *) esalts_buf;
|
||||
|
||||
pdf_t *pdf = &pdfs[salt_pos];
|
||||
pdf_t *pdf = &pdfs[digest_cur];
|
||||
|
||||
snprintf (out_buf, out_len - 1, "$pdf$%d*%d*%d*%d*%d*%d*%08x%08x%08x%08x*%d*%08x%08x%08x%08x%08x%08x%08x%08x*%d*%08x%08x%08x%08x%08x%08x%08x%08x",
|
||||
|
||||
@ -17005,7 +16959,7 @@ int ascii_digest (hashcat_ctx_t *hashcat_ctx, char *out_buf, const size_t out_le
|
||||
{
|
||||
pdf_t *pdfs = (pdf_t *) esalts_buf;
|
||||
|
||||
pdf_t *pdf = &pdfs[salt_pos];
|
||||
pdf_t *pdf = &pdfs[digest_cur];
|
||||
|
||||
snprintf (out_buf, out_len - 1, "$pdf$%d*%d*%d*%d*%d*%d*%08x%08x%08x%08x*%d*%08x%08x%08x%08x%08x%08x%08x%08x*%d*%08x%08x%08x%08x%08x%08x%08x%08x",
|
||||
|
||||
@ -17043,7 +16997,7 @@ int ascii_digest (hashcat_ctx_t *hashcat_ctx, char *out_buf, const size_t out_le
|
||||
{
|
||||
pdf_t *pdfs = (pdf_t *) esalts_buf;
|
||||
|
||||
pdf_t *pdf = &pdfs[salt_pos];
|
||||
pdf_t *pdf = &pdfs[digest_cur];
|
||||
|
||||
u8 *rc4key = (u8 *) pdf->rc4key;
|
||||
|
||||
@ -17088,7 +17042,7 @@ int ascii_digest (hashcat_ctx_t *hashcat_ctx, char *out_buf, const size_t out_le
|
||||
{
|
||||
pdf_t *pdfs = (pdf_t *) esalts_buf;
|
||||
|
||||
pdf_t *pdf = &pdfs[salt_pos];
|
||||
pdf_t *pdf = &pdfs[digest_cur];
|
||||
|
||||
if (pdf->id_len == 32)
|
||||
{
|
||||
@ -17165,28 +17119,22 @@ int ascii_digest (hashcat_ctx_t *hashcat_ctx, char *out_buf, const size_t out_le
|
||||
}
|
||||
else if (hash_mode == 10600)
|
||||
{
|
||||
u32 digest_idx = salt.digests_offset + digest_pos;
|
||||
|
||||
hashinfo_t **hashinfo_ptr = hash_info;
|
||||
char *hash_buf = hashinfo_ptr[digest_idx]->orighash;
|
||||
char *hash_buf = hashinfo_ptr[digest_cur]->orighash;
|
||||
|
||||
snprintf (out_buf, out_len - 1, "%s", hash_buf);
|
||||
}
|
||||
else if (hash_mode == 10700)
|
||||
{
|
||||
u32 digest_idx = salt.digests_offset + digest_pos;
|
||||
|
||||
hashinfo_t **hashinfo_ptr = hash_info;
|
||||
char *hash_buf = hashinfo_ptr[digest_idx]->orighash;
|
||||
char *hash_buf = hashinfo_ptr[digest_cur]->orighash;
|
||||
|
||||
snprintf (out_buf, out_len - 1, "%s", hash_buf);
|
||||
}
|
||||
else if (hash_mode == 10900)
|
||||
{
|
||||
u32 digest_idx = salt.digests_offset + digest_pos;
|
||||
|
||||
hashinfo_t **hashinfo_ptr = hash_info;
|
||||
char *hash_buf = hashinfo_ptr[digest_idx]->orighash;
|
||||
char *hash_buf = hashinfo_ptr[digest_cur]->orighash;
|
||||
|
||||
snprintf (out_buf, out_len - 1, "%s", hash_buf);
|
||||
}
|
||||
@ -17222,7 +17170,7 @@ int ascii_digest (hashcat_ctx_t *hashcat_ctx, char *out_buf, const size_t out_le
|
||||
{
|
||||
bitcoin_wallet_t *bitcoin_wallets = (bitcoin_wallet_t *) esalts_buf;
|
||||
|
||||
bitcoin_wallet_t *bitcoin_wallet = &bitcoin_wallets[salt_pos];
|
||||
bitcoin_wallet_t *bitcoin_wallet = &bitcoin_wallets[digest_cur];
|
||||
|
||||
const u32 cry_master_len = bitcoin_wallet->cry_master_len;
|
||||
const u32 ckey_len = bitcoin_wallet->ckey_len;
|
||||
@ -17272,10 +17220,8 @@ int ascii_digest (hashcat_ctx_t *hashcat_ctx, char *out_buf, const size_t out_le
|
||||
}
|
||||
else if (hash_mode == 11400)
|
||||
{
|
||||
u32 digest_idx = salt.digests_offset + digest_pos;
|
||||
|
||||
hashinfo_t **hashinfo_ptr = hash_info;
|
||||
char *hash_buf = hashinfo_ptr[digest_idx]->orighash;
|
||||
char *hash_buf = hashinfo_ptr[digest_cur]->orighash;
|
||||
|
||||
snprintf (out_buf, out_len - 1, "%s", hash_buf);
|
||||
}
|
||||
@ -17283,7 +17229,7 @@ int ascii_digest (hashcat_ctx_t *hashcat_ctx, char *out_buf, const size_t out_le
|
||||
{
|
||||
seven_zip_hook_salt_t *seven_zips = (seven_zip_hook_salt_t *) hashes->hook_salts_buf;
|
||||
|
||||
seven_zip_hook_salt_t *seven_zip = &seven_zips[salt_pos];
|
||||
seven_zip_hook_salt_t *seven_zip = &seven_zips[digest_cur];
|
||||
|
||||
const u32 data_len = seven_zip->data_len;
|
||||
|
||||
@ -17387,37 +17333,29 @@ int ascii_digest (hashcat_ctx_t *hashcat_ctx, char *out_buf, const size_t out_le
|
||||
}
|
||||
else if (hash_mode == 11900)
|
||||
{
|
||||
u32 digest_idx = salt.digests_offset + digest_pos;
|
||||
|
||||
hashinfo_t **hashinfo_ptr = hash_info;
|
||||
char *hash_buf = hashinfo_ptr[digest_idx]->orighash;
|
||||
char *hash_buf = hashinfo_ptr[digest_cur]->orighash;
|
||||
|
||||
snprintf (out_buf, out_len - 1, "%s", hash_buf);
|
||||
}
|
||||
else if (hash_mode == 12000)
|
||||
{
|
||||
u32 digest_idx = salt.digests_offset + digest_pos;
|
||||
|
||||
hashinfo_t **hashinfo_ptr = hash_info;
|
||||
char *hash_buf = hashinfo_ptr[digest_idx]->orighash;
|
||||
char *hash_buf = hashinfo_ptr[digest_cur]->orighash;
|
||||
|
||||
snprintf (out_buf, out_len - 1, "%s", hash_buf);
|
||||
}
|
||||
else if (hash_mode == 12001)
|
||||
{
|
||||
u32 digest_idx = salt.digests_offset + digest_pos;
|
||||
|
||||
hashinfo_t **hashinfo_ptr = hash_info;
|
||||
char *hash_buf = hashinfo_ptr[digest_idx]->orighash;
|
||||
char *hash_buf = hashinfo_ptr[digest_cur]->orighash;
|
||||
|
||||
snprintf (out_buf, out_len - 1, "%s", hash_buf);
|
||||
}
|
||||
else if (hash_mode == 12100)
|
||||
{
|
||||
u32 digest_idx = salt.digests_offset + digest_pos;
|
||||
|
||||
hashinfo_t **hashinfo_ptr = hash_info;
|
||||
char *hash_buf = hashinfo_ptr[digest_idx]->orighash;
|
||||
char *hash_buf = hashinfo_ptr[digest_cur]->orighash;
|
||||
|
||||
snprintf (out_buf, out_len - 1, "%s", hash_buf);
|
||||
}
|
||||
@ -17512,10 +17450,8 @@ int ascii_digest (hashcat_ctx_t *hashcat_ctx, char *out_buf, const size_t out_le
|
||||
}
|
||||
else if (hash_mode == 12700)
|
||||
{
|
||||
u32 digest_idx = salt.digests_offset + digest_pos;
|
||||
|
||||
hashinfo_t **hashinfo_ptr = hash_info;
|
||||
char *hash_buf = hashinfo_ptr[digest_idx]->orighash;
|
||||
char *hash_buf = hashinfo_ptr[digest_cur]->orighash;
|
||||
|
||||
snprintf (out_buf, out_len - 1, "%s", hash_buf);
|
||||
}
|
||||
@ -17575,7 +17511,7 @@ int ascii_digest (hashcat_ctx_t *hashcat_ctx, char *out_buf, const size_t out_le
|
||||
{
|
||||
rar5_t *rar5s = (rar5_t *) esalts_buf;
|
||||
|
||||
rar5_t *rar5 = &rar5s[salt_pos];
|
||||
rar5_t *rar5 = &rar5s[digest_cur];
|
||||
|
||||
snprintf (out_buf, out_len - 1, "$rar5$16$%08x%08x%08x%08x$%u$%08x%08x%08x%08x$8$%08x%08x",
|
||||
salt.salt_buf[0],
|
||||
@ -17595,7 +17531,7 @@ int ascii_digest (hashcat_ctx_t *hashcat_ctx, char *out_buf, const size_t out_le
|
||||
{
|
||||
krb5tgs_t *krb5tgss = (krb5tgs_t *) esalts_buf;
|
||||
|
||||
krb5tgs_t *krb5tgs = &krb5tgss[salt_pos];
|
||||
krb5tgs_t *krb5tgs = &krb5tgss[digest_cur];
|
||||
|
||||
u8 *ptr_checksum = (u8 *) krb5tgs->checksum;
|
||||
u8 *ptr_edata2 = (u8 *) krb5tgs->edata2;
|
||||
@ -17648,7 +17584,7 @@ int ascii_digest (hashcat_ctx_t *hashcat_ctx, char *out_buf, const size_t out_le
|
||||
{
|
||||
keepass_t *keepasss = (keepass_t *) esalts_buf;
|
||||
|
||||
keepass_t *keepass = &keepasss[salt_pos];
|
||||
keepass_t *keepass = &keepasss[digest_cur];
|
||||
|
||||
u32 version = (u32) keepass->version;
|
||||
u32 rounds = salt.salt_iter;
|
||||
@ -17782,7 +17718,7 @@ int ascii_digest (hashcat_ctx_t *hashcat_ctx, char *out_buf, const size_t out_le
|
||||
{
|
||||
pstoken_t *pstokens = (pstoken_t *) esalts_buf;
|
||||
|
||||
pstoken_t *pstoken = &pstokens[salt_pos];
|
||||
pstoken_t *pstoken = &pstokens[digest_cur];
|
||||
|
||||
const u32 salt_len = (pstoken->salt_len > 512) ? 512 : pstoken->salt_len;
|
||||
|
||||
@ -17807,7 +17743,7 @@ int ascii_digest (hashcat_ctx_t *hashcat_ctx, char *out_buf, const size_t out_le
|
||||
{
|
||||
zip2_t *zip2s = (zip2_t *) esalts_buf;
|
||||
|
||||
zip2_t *zip2 = &zip2s[salt_pos];
|
||||
zip2_t *zip2 = &zip2s[digest_cur];
|
||||
|
||||
const u32 salt_len = zip2->salt_len;
|
||||
|
||||
@ -17862,7 +17798,7 @@ int ascii_digest (hashcat_ctx_t *hashcat_ctx, char *out_buf, const size_t out_le
|
||||
{
|
||||
win8phone_t *esalts = (win8phone_t *) esalts_buf;
|
||||
|
||||
win8phone_t *esalt = &esalts[salt_pos];
|
||||
win8phone_t *esalt = &esalts[digest_cur];
|
||||
|
||||
char buf[256 + 1] = { 0 };
|
||||
|
||||
@ -17908,7 +17844,7 @@ int ascii_digest (hashcat_ctx_t *hashcat_ctx, char *out_buf, const size_t out_le
|
||||
// WPKY
|
||||
|
||||
itunes_backup_t *itunes_backups = (itunes_backup_t *) esalts_buf;
|
||||
itunes_backup_t *itunes_backup = &itunes_backups[salt_pos];
|
||||
itunes_backup_t *itunes_backup = &itunes_backups[digest_cur];
|
||||
|
||||
u32 wkpy_u32[10];
|
||||
|
||||
@ -17950,7 +17886,7 @@ int ascii_digest (hashcat_ctx_t *hashcat_ctx, char *out_buf, const size_t out_le
|
||||
// WPKY
|
||||
|
||||
itunes_backup_t *itunes_backups = (itunes_backup_t *) esalts_buf;
|
||||
itunes_backup_t *itunes_backup = &itunes_backups[salt_pos];
|
||||
itunes_backup_t *itunes_backup = &itunes_backups[digest_cur];
|
||||
|
||||
u32 wkpy_u32[10];
|
||||
|
||||
|
13
src/opencl.c
13
src/opencl.c
@ -1144,17 +1144,6 @@ int choose_kernel (hashcat_ctx_t *hashcat_ctx, hc_device_param_t *device_param,
|
||||
bool run_loop = true;
|
||||
bool run_comp = true;
|
||||
|
||||
if (hashconfig->hash_mode == 2500)
|
||||
{
|
||||
wpa_t *esalts_buf = hashes->esalts_buf;
|
||||
|
||||
if (esalts_buf[salt_pos].essid_reuse == 1)
|
||||
{
|
||||
run_init = false;
|
||||
run_loop = false;
|
||||
}
|
||||
}
|
||||
|
||||
if (run_init == true)
|
||||
{
|
||||
CL_rc = run_kernel_amp (hashcat_ctx, device_param, pws_cnt);
|
||||
@ -3608,7 +3597,7 @@ int opencl_session_begin (hashcat_ctx_t *hashcat_ctx)
|
||||
|
||||
size_t size_plains = hashes->digests_cnt * sizeof (plain_t);
|
||||
size_t size_salts = hashes->salts_cnt * sizeof (salt_t);
|
||||
size_t size_esalts = hashes->salts_cnt * hashconfig->esalt_size;
|
||||
size_t size_esalts = hashes->digests_cnt * hashconfig->esalt_size;
|
||||
size_t size_shown = hashes->digests_cnt * sizeof (u32);
|
||||
size_t size_digests = hashes->digests_cnt * hashconfig->dgst_size;
|
||||
|
||||
|
@ -24,7 +24,7 @@ int sort_by_hash_no_salt (const void *v1, const void *v2, void *v3);
|
||||
|
||||
// this function is for potfile comparison where the potfile does not contain all the
|
||||
// information requires to do a true sort_by_hash() bsearch
|
||||
static int sort_by_hash_t_salt (const void *v1, const void *v2)
|
||||
static int sort_by_hash_t_salt (const void *v1, const void *v2, void *v3)
|
||||
{
|
||||
const hash_t *h1 = (const hash_t *) v1;
|
||||
const hash_t *h2 = (const hash_t *) v2;
|
||||
@ -446,7 +446,7 @@ int potfile_remove_parse (hashcat_ctx_t *hashcat_ctx)
|
||||
|
||||
hash_buf.salt->salt_len = line_hash_len;
|
||||
|
||||
found = (hash_t *) bsearch (&hash_buf, hashes_buf, hashes_cnt, sizeof (hash_t), sort_by_hash_t_salt);
|
||||
found = (hash_t *) hc_bsearch_r (&hash_buf, hashes_buf, hashes_cnt, sizeof (hash_t), sort_by_hash_t_salt, (void *) hashconfig);
|
||||
}
|
||||
}
|
||||
else if (hashconfig->hash_mode == 2500)
|
||||
@ -482,7 +482,8 @@ int potfile_remove_parse (hashcat_ctx_t *hashcat_ctx)
|
||||
|
||||
memcpy (hash_buf.salt->salt_buf, essid_pos, essid_len);
|
||||
|
||||
hash_buf.salt->salt_len = essid_len;
|
||||
hash_buf.salt->salt_len = essid_len;
|
||||
hash_buf.salt->salt_iter = ROUNDS_WPA2 - 1;
|
||||
|
||||
u32 hash[4];
|
||||
|
||||
@ -491,13 +492,20 @@ int potfile_remove_parse (hashcat_ctx_t *hashcat_ctx)
|
||||
hash[2] = hex_to_u32 ((const u8 *) &hash_pos[16]);
|
||||
hash[3] = hex_to_u32 ((const u8 *) &hash_pos[24]);
|
||||
|
||||
hash_buf.salt->salt_buf[12] = byte_swap_32 (hash[0]);
|
||||
hash_buf.salt->salt_buf[13] = byte_swap_32 (hash[1]);
|
||||
hash_buf.salt->salt_buf[14] = byte_swap_32 (hash[2]);
|
||||
hash_buf.salt->salt_buf[15] = byte_swap_32 (hash[3]);
|
||||
hash[0] = byte_swap_32 (hash[0]);
|
||||
hash[1] = byte_swap_32 (hash[1]);
|
||||
hash[2] = byte_swap_32 (hash[2]);
|
||||
hash[3] = byte_swap_32 (hash[3]);
|
||||
|
||||
u32 *digest = (u32 *) hash_buf.digest;
|
||||
|
||||
digest[0] = hash[0];
|
||||
digest[1] = hash[1];
|
||||
digest[2] = hash[2];
|
||||
digest[3] = hash[3];
|
||||
}
|
||||
|
||||
found = (hash_t *) bsearch (&hash_buf, hashes_buf, hashes_cnt, sizeof (hash_t), sort_by_hash_t_salt);
|
||||
found = (hash_t *) hc_bsearch_r (&hash_buf, hashes_buf, hashes_cnt, sizeof (hash_t), sort_by_hash, (void *) hashconfig);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user