34 template<u
int64_t hash_target_high, u
int64_t hash_target_low, u
int64_t difficulty_high, u
int64_t difficulty_low>
43 hash_target = (hash_target << 64) | hash_target_low;
44 difficulty = difficulty_high;
45 difficulty = (difficulty << 64) | difficulty_low;
46 boost::multiprecision::uint256_t hash_value = std::numeric_limits<boost::multiprecision::uint256_t>::max() / hash_target;
47 ((
uint64_t*)&hash)[0] = (hash_value & 0xffffffffffffffff).convert_to<uint64_t>();
49 ((
uint64_t*)&hash)[1] = (hash_value & 0xffffffffffffffff).convert_to<uint64_t>();
51 ((
uint64_t*)&hash)[2] = (hash_value & 0xffffffffffffffff).convert_to<uint64_t>();
53 ((
uint64_t*)&hash)[3] = (hash_value & 0xffffffffffffffff).convert_to<uint64_t>();
static const size_t loop_count
unsigned __int64 uint64_t
boost::multiprecision::uint128_t difficulty_type
bool check_hash_128(const crypto::hash &hash, difficulty_type difficulty)