from hashlib import sha256 text = "ABC" print(sha256(text.encode('ascii')).hexdigest())
$ python3 main.py
b5d4045c3f466fa91fe2cc6abe79232a1a57cdf104f7a26e716e0a1e2789df78
from hashlib import sha256 MAX_NONCE = 10000000000 def SHA256(text): return sha256(text.encode('ascii')).hexdigest() def mine(block_number, transactions, previous_hash, prefix_zeros): prefix_str = '0'*prefix_zeros for nonce in range(MAX_NONCE): text = str(block_number) + transactions + previous_hash + str(nonce) new_hash = SHA256(text) if new_hash.startswith(prefix_str): print(f"Yay! Successfully mined bitcoins with nonce value:{nonce}") return new_hash raise BaseException(f"Couldn't find correct has after trying {MAX_NONCE} times") if __name__ == '__main__': transactions=''' Bob->Alice->20, Ken->Ryu->45 ''' difficulty=6 new_hash = mine(5, transactions, '00000000000008a3a41b85b8b29ad444def299fee21793cd8b9e567eab02cd81', difficulty) print(new_hash)
bitcoin hardware
https://www.buybitcoinworldwide.com/mining/hardware/
bitcoin explore
https://www.blockchain.com/explorer
https://www.blockchain.com/btc/blocks?page=1
bitcoin block1
https://www.blockchain.com/btc/block/1
なるほど、前後の処理が知りたいのう