|
|
@ -4222,13 +4222,21 @@ bool hashtest(const struct work *work) |
|
|
|
unsigned char swap[128]; |
|
|
|
unsigned char swap[128]; |
|
|
|
uint32_t *swap32 = (uint32_t *)swap; |
|
|
|
uint32_t *swap32 = (uint32_t *)swap; |
|
|
|
unsigned char hash1[32]; |
|
|
|
unsigned char hash1[32]; |
|
|
|
|
|
|
|
unsigned char hash2[32]; |
|
|
|
|
|
|
|
uint32_t *hash2_32 = (uint32_t *)hash2; |
|
|
|
int i; |
|
|
|
int i; |
|
|
|
|
|
|
|
|
|
|
|
for (i = 0; i < 80 / 4; i++) |
|
|
|
for (i = 0; i < 80 / 4; i++) |
|
|
|
swap32[i] = swab32(data32[i]); |
|
|
|
swap32[i] = swab32(data32[i]); |
|
|
|
|
|
|
|
|
|
|
|
sha2(swap, 80, hash1, false); |
|
|
|
sha2(swap, 80, hash1, false); |
|
|
|
sha2(hash1, 32, (unsigned char *)(work->hash), false); |
|
|
|
sha2(hash1, 32, hash2, false); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
for (i = 0; i < 32 / 4; i++) |
|
|
|
|
|
|
|
hash2_32[i] = swab32(hash2_32[i]); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
memcpy((void*)work->hash, hash2, 32); |
|
|
|
|
|
|
|
|
|
|
|
return fulltest(work->hash, work->target); |
|
|
|
return fulltest(work->hash, work->target); |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|