mirror of
https://github.com/hashcat/hashcat.git
synced 2024-12-22 22:58:30 +00:00
Fix -m 7800 for NV
This commit is contained in:
parent
68662f0062
commit
7807eb6f2d
@ -317,7 +317,7 @@ __kernel void __attribute__((reqd_work_group_size (64, 1, 1))) m07800_m04 (__glo
|
|||||||
* sha1
|
* sha1
|
||||||
*/
|
*/
|
||||||
|
|
||||||
u32 final[256];
|
u32 final[32];
|
||||||
|
|
||||||
final[ 0] = swap32 (w0[0] | s0[0]);
|
final[ 0] = swap32 (w0[0] | s0[0]);
|
||||||
final[ 1] = swap32 (w0[1] | s0[1]);
|
final[ 1] = swap32 (w0[1] | s0[1]);
|
||||||
@ -380,8 +380,8 @@ __kernel void __attribute__((reqd_work_group_size (64, 1, 1))) m07800_m04 (__glo
|
|||||||
digest[3] = SHA1M_D;
|
digest[3] = SHA1M_D;
|
||||||
digest[4] = SHA1M_E;
|
digest[4] = SHA1M_E;
|
||||||
|
|
||||||
#pragma unroll 64
|
#pragma unroll 32
|
||||||
for (int i = 0; i < 64; i++) final[i] = 0;
|
for (int i = 0; i < 32; i++) final[i] = 0;
|
||||||
|
|
||||||
final[0] = w0[0];
|
final[0] = w0[0];
|
||||||
final[1] = w0[1];
|
final[1] = w0[1];
|
||||||
@ -597,7 +597,7 @@ __kernel void __attribute__((reqd_work_group_size (64, 1, 1))) m07800_s04 (__glo
|
|||||||
* sha1
|
* sha1
|
||||||
*/
|
*/
|
||||||
|
|
||||||
u32 final[256];
|
u32 final[32];
|
||||||
|
|
||||||
final[ 0] = swap32 (w0[0] | s0[0]);
|
final[ 0] = swap32 (w0[0] | s0[0]);
|
||||||
final[ 1] = swap32 (w0[1] | s0[1]);
|
final[ 1] = swap32 (w0[1] | s0[1]);
|
||||||
@ -660,8 +660,8 @@ __kernel void __attribute__((reqd_work_group_size (64, 1, 1))) m07800_s04 (__glo
|
|||||||
digest[3] = SHA1M_D;
|
digest[3] = SHA1M_D;
|
||||||
digest[4] = SHA1M_E;
|
digest[4] = SHA1M_E;
|
||||||
|
|
||||||
#pragma unroll 64
|
#pragma unroll 32
|
||||||
for (int i = 0; i < 64; i++) final[i] = 0;
|
for (int i = 0; i < 32; i++) final[i] = 0;
|
||||||
|
|
||||||
final[0] = w0[0];
|
final[0] = w0[0];
|
||||||
final[1] = w0[1];
|
final[1] = w0[1];
|
||||||
|
@ -369,7 +369,7 @@ __kernel void __attribute__((reqd_work_group_size (64, 1, 1))) m07800_m04 (__glo
|
|||||||
* sha1
|
* sha1
|
||||||
*/
|
*/
|
||||||
|
|
||||||
u32 final[256];
|
u32 final[32];
|
||||||
|
|
||||||
final[ 0] = swap32 (w0[0] | s0[0]);
|
final[ 0] = swap32 (w0[0] | s0[0]);
|
||||||
final[ 1] = swap32 (w0[1] | s0[1]);
|
final[ 1] = swap32 (w0[1] | s0[1]);
|
||||||
@ -432,8 +432,8 @@ __kernel void __attribute__((reqd_work_group_size (64, 1, 1))) m07800_m04 (__glo
|
|||||||
digest[3] = SHA1M_D;
|
digest[3] = SHA1M_D;
|
||||||
digest[4] = SHA1M_E;
|
digest[4] = SHA1M_E;
|
||||||
|
|
||||||
#pragma unroll 64
|
#pragma unroll 32
|
||||||
for (int i = 0; i < 64; i++) final[i] = 0;
|
for (int i = 0; i < 32; i++) final[i] = 0;
|
||||||
|
|
||||||
final[0] = w0[0];
|
final[0] = w0[0];
|
||||||
final[1] = w0[1];
|
final[1] = w0[1];
|
||||||
@ -699,7 +699,7 @@ __kernel void __attribute__((reqd_work_group_size (64, 1, 1))) m07800_s04 (__glo
|
|||||||
* sha1
|
* sha1
|
||||||
*/
|
*/
|
||||||
|
|
||||||
u32 final[256];
|
u32 final[32];
|
||||||
|
|
||||||
final[ 0] = swap32 (w0[0] | s0[0]);
|
final[ 0] = swap32 (w0[0] | s0[0]);
|
||||||
final[ 1] = swap32 (w0[1] | s0[1]);
|
final[ 1] = swap32 (w0[1] | s0[1]);
|
||||||
@ -762,8 +762,8 @@ __kernel void __attribute__((reqd_work_group_size (64, 1, 1))) m07800_s04 (__glo
|
|||||||
digest[3] = SHA1M_D;
|
digest[3] = SHA1M_D;
|
||||||
digest[4] = SHA1M_E;
|
digest[4] = SHA1M_E;
|
||||||
|
|
||||||
#pragma unroll 64
|
#pragma unroll 32
|
||||||
for (int i = 0; i < 64; i++) final[i] = 0;
|
for (int i = 0; i < 32; i++) final[i] = 0;
|
||||||
|
|
||||||
final[0] = w0[0];
|
final[0] = w0[0];
|
||||||
final[1] = w0[1];
|
final[1] = w0[1];
|
||||||
|
@ -274,7 +274,7 @@ static void m07800m (u32 w0[4], u32 w1[4], u32 w2[4], u32 w3[4], const u32 pw_le
|
|||||||
* sha1
|
* sha1
|
||||||
*/
|
*/
|
||||||
|
|
||||||
u32 final[256];
|
u32 final[32];
|
||||||
|
|
||||||
final[ 0] = swap32 (w0[0] | s0[0]);
|
final[ 0] = swap32 (w0[0] | s0[0]);
|
||||||
final[ 1] = swap32 (w0[1] | s0[1]);
|
final[ 1] = swap32 (w0[1] | s0[1]);
|
||||||
@ -337,8 +337,8 @@ static void m07800m (u32 w0[4], u32 w1[4], u32 w2[4], u32 w3[4], const u32 pw_le
|
|||||||
digest[3] = SHA1M_D;
|
digest[3] = SHA1M_D;
|
||||||
digest[4] = SHA1M_E;
|
digest[4] = SHA1M_E;
|
||||||
|
|
||||||
#pragma unroll 64
|
#pragma unroll
|
||||||
for (int i = 0; i < 64; i++) final[i] = 0;
|
for (int i = 0; i < 32; i++) final[i] = 0;
|
||||||
|
|
||||||
final[0] = w0[0];
|
final[0] = w0[0];
|
||||||
final[1] = w0[1];
|
final[1] = w0[1];
|
||||||
@ -505,7 +505,7 @@ static void m07800s (u32 w0[4], u32 w1[4], u32 w2[4], u32 w3[4], const u32 pw_le
|
|||||||
* sha1
|
* sha1
|
||||||
*/
|
*/
|
||||||
|
|
||||||
u32 final[256];
|
u32 final[32];
|
||||||
|
|
||||||
final[ 0] = swap32 (w0[0] | s0[0]);
|
final[ 0] = swap32 (w0[0] | s0[0]);
|
||||||
final[ 1] = swap32 (w0[1] | s0[1]);
|
final[ 1] = swap32 (w0[1] | s0[1]);
|
||||||
@ -568,8 +568,8 @@ static void m07800s (u32 w0[4], u32 w1[4], u32 w2[4], u32 w3[4], const u32 pw_le
|
|||||||
digest[3] = SHA1M_D;
|
digest[3] = SHA1M_D;
|
||||||
digest[4] = SHA1M_E;
|
digest[4] = SHA1M_E;
|
||||||
|
|
||||||
#pragma unroll 64
|
#pragma unroll 32
|
||||||
for (int i = 0; i < 64; i++) final[i] = 0;
|
for (int i = 0; i < 32; i++) final[i] = 0;
|
||||||
|
|
||||||
final[0] = w0[0];
|
final[0] = w0[0];
|
||||||
final[1] = w0[1];
|
final[1] = w0[1];
|
||||||
|
@ -13296,6 +13296,10 @@ int sapg_parse_hash (char *input_buf, uint input_len, hash_t *hash_buf)
|
|||||||
}
|
}
|
||||||
|
|
||||||
// SAP user names cannot be longer than 12 characters
|
// SAP user names cannot be longer than 12 characters
|
||||||
|
// this is kinda buggy. if the username is in utf the length can be up to length 12*3
|
||||||
|
// so far nobody complained so we stay with this because it helps in optimization
|
||||||
|
// final string can have a max size of 32 (password) + (10 * 5) = lengthMagicArray + 12 (max salt) + 1 (the 0x80)
|
||||||
|
|
||||||
if (user_len > 12) return (PARSER_SALT_LENGTH);
|
if (user_len > 12) return (PARSER_SALT_LENGTH);
|
||||||
|
|
||||||
// SAP user name cannot start with ! or ?
|
// SAP user name cannot start with ! or ?
|
||||||
|
Loading…
Reference in New Issue
Block a user