대기중
10 코인 예측이 잘 안됩니다 ㅠㅠ

댓글들을 보고 nonce 값 예측해서 하는 거구나 코드를 하나 만들었습니다

def get_rand32bits():
    global seed

    rand32bits = 0

    for i in range(32):
        rand32bits |= (seed & 1) << i
        feedback = seed & 1 ^ seed >> 2 & 1 ^ seed >> 3 & 1 ^ seed >> 5 & 1
        seed = (seed >> 1) | feedback << 15
    return rand32bits

def get_nonce():
    nonce = 0

    for i in range(4):
        randn = get_rand32bits()
        nonce |= randn << i * 32
    nonce ^= 0xbeefbeefcafecafe13371337defaced0
    return nonce

for i in range(1, 65536):
    seed = i

    print(seed)
    if (str(hex(get_nonce())[2:]) == "가장 최근에 얻은 nonce"):
        print(f"드디어 끝!: {i}")
        break

이런 코드를 짜서 seed를 거의 모든 경우의 수를 넣고 한 번씩 돌려서 빠르게 seed 값을 얻고

seed = 얻은 seed 값

def get_rand32bits():
    global seed

    rand32bits = 0

    for i in range(32):
        rand32bits |= (seed & 1) << i
        feedback = seed & 1 ^ seed >> 2 & 1 ^ seed >> 3 & 1 ^ seed >> 5 & 1
        seed = (seed >> 1) | feedback << 15
    return rand32bits

def get_nonce():
    nonce = 0

    for i in range(4):
        randn = get_rand32bits()
        nonce |= randn << i * 32
    nonce ^= 0xbeefbeefcafecafe13371337defaced0
    return nonce

print(hex(get_nonce())[2:])
print(hex(get_nonce())[2:])

이렇게 get_nonce를 두 번 실행시키는 방식으로 다음 nonce 값을 예측하는 방식으로 해봤는데 직접 실행해서 다음 nonce 값을 확인해보니 다르게 다오더라고요... 혹시 다른 방식으로 해야하거나 제가 이상하게 코드를 짠 건가요??

#웹해킹 #dream_lectures
작성자 정보
더 깊이 있는 답변이 필요할 때
드림핵 팀과 멘토에게 직접 문의해 보세요!
답변 0