|
|
|
@ -197,6 +197,22 @@ __kernel void m16600_mxx (KERN_ATTR_VECTOR_ESALT (electrum_wallet_t))
|
|
|
|
|
mark_hash (plains_buf, d_return_buf, salt_pos, digests_cnt, 0, digests_offset + 0, gid, il_pos);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (esalt_bufs[digests_offset].salt_type == 2)
|
|
|
|
|
{
|
|
|
|
|
if ((u8) (out[0] >> 0) != 'x') continue;
|
|
|
|
|
if ((u8) (out[0] >> 8) != 'p') continue;
|
|
|
|
|
if ((u8) (out[0] >> 16) != 'r') continue;
|
|
|
|
|
if ((u8) (out[0] >> 24) != 'v') continue;
|
|
|
|
|
if (is_valid_base58_32 (out[1]) == 0) continue;
|
|
|
|
|
if (is_valid_base58_32 (out[2]) == 0) continue;
|
|
|
|
|
if (is_valid_base58_32 (out[3]) == 0) continue;
|
|
|
|
|
|
|
|
|
|
if (atomic_inc (&hashes_shown[digests_offset]) == 0)
|
|
|
|
|
{
|
|
|
|
|
mark_hash (plains_buf, d_return_buf, salt_pos, digests_cnt, 0, digests_offset + 0, gid, il_pos);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -383,5 +399,21 @@ __kernel void m16600_sxx (KERN_ATTR_VECTOR_ESALT (electrum_wallet_t))
|
|
|
|
|
mark_hash (plains_buf, d_return_buf, salt_pos, digests_cnt, 0, digests_offset + 0, gid, il_pos);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (esalt_bufs[digests_offset].salt_type == 2)
|
|
|
|
|
{
|
|
|
|
|
if ((u8) (out[0] >> 0) != 'x') continue;
|
|
|
|
|
if ((u8) (out[0] >> 8) != 'p') continue;
|
|
|
|
|
if ((u8) (out[0] >> 16) != 'r') continue;
|
|
|
|
|
if ((u8) (out[0] >> 24) != 'v') continue;
|
|
|
|
|
if (is_valid_base58_32 (out[1]) == 0) continue;
|
|
|
|
|
if (is_valid_base58_32 (out[2]) == 0) continue;
|
|
|
|
|
if (is_valid_base58_32 (out[3]) == 0) continue;
|
|
|
|
|
|
|
|
|
|
if (atomic_inc (&hashes_shown[digests_offset]) == 0)
|
|
|
|
|
{
|
|
|
|
|
mark_hash (plains_buf, d_return_buf, salt_pos, digests_cnt, 0, digests_offset + 0, gid, il_pos);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|