update pow

This commit is contained in:
LanQian 2024-05-16 10:42:41 +08:00
parent 16ff362987
commit 71470fe5f0

View File

@ -6,6 +6,8 @@ import time
from datetime import datetime, timedelta, timezone
from html.parser import HTMLParser
from utils.Logger import logger
cores = [8, 12, 16, 24, 32]
screens = [3000, 4000, 6000]
timeLayout = "%a %b %d %Y %H:%M:%S"
@ -77,18 +79,23 @@ def calc_proof_token(seed, diff, config):
def generate_answer(seed, diff, config):
diff_len = len(diff) // 2
for i in range(500000):
start = time.time() * 1000000 / 1000
seed_encoded = seed.encode()
for i in range(1000000):
config[3] = i
config[9] = (i + 2) / 2
config[9] = i
json_data = json.dumps(config, separators=(',', ':'), ensure_ascii=False)
base = base64.b64encode(json_data.encode()).decode()
hasher = hashlib.sha3_512()
hasher.update((seed + base).encode())
hasher.update(seed_encoded + base.encode())
hash_value = hasher.digest()
if hash_value[:diff_len].hex() <= diff:
end = time.time() * 1000000 / 1000
logger.info(f'seed: {seed}, diff: {diff}, count: {i}, time: {(end - start)}ms')
return base
return "wQ8Lk5FbGpA2NcR9dShT6gYjU7VxZ4D" + base64.b64encode(f'"{seed}"'.encode()).decode()
return "wQ8Lk5FbGpA2NcR9dShT6gYjU7VxZ4D" + base64.b64encode(f'"{seed}"'.encode()).decode()
def calc_config_token(config):
global cached_require_proof, cached_time