Hallo, ich verwende Python web3.py (nicht web3.js), um Folgendes auszuführen:
txn = ctrtInstance.functions.setzString(zString).buildTransaction()
print('\ntxn: '+ str(txn))
txn['nonce'] = 3643
txn['chainId'] = 3
print('\ntxn: '+ str(txn))
#So the txn looks this: {'value': 0, 'gas': 33504, 'gasPrice': 1000000000, 'chainId': 3, 'to': '0x5227D720d8eFDcB259c6c79C74f3Cfe04DC4D4fa', 'data': '0xb32e420700000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000007476f204d616e2100000000000000000000000000000000000000000000000000', 'nonce ': 3643}
signed = w3.eth.account.signTransaction(txn, privateKey)
txn_hash = w3.eth.sendRawTransaction(signed.rawTransaction)
Dann sieht txn_hash sehr seltsam aus: b"\x83\xd4\t'\x9e\xec\xb7\xc0\xf5\xdd\xf9\xb9\x0fD\xdc\x81\xfb\x8d\x0e\xf7\xb5\xbc2e~ \x81R\x8c]Ek|"
Was ist es? Wie entschlüsselt man diesen Transaktions-Hash?
Warum sieht es anders aus als andere Transaktionshashs, die ich online gesehen habe?
Wie kann ich es entschlüsseln, damit ich es in EtherScan eingeben kann, um eine solche Transaktion zu überprüfen? Danke dir
Referenz: http://web3py.readthedocs.io/en/latest/web3.eth.html#web3.eth.Eth.sendRawTransaction
Verwenden Sie hex()
.
txnHash = w3.eth.sendRawTransaction(signed.rawTransaction)
print('txnHash: '+ str(txnHash))
txnHashHex = txnHash.hex()
print('txnHash.hex(): '+ txnHashHex)
Ausgabe im Terminal:
txnHash: b'\x8f\xd8\x89\xfdt\x1f\xeb4\x88\x15\xeb\xb2-\xd8D\xf6\xdb%~\xdb\x0c\xf1\xa9n\x17R\x19\xf6#\xe6\x81\xf5'
binascii.hexlify(txnHash)= b'8fd889fd741feb348815ebb22dd844f6db257edb0cf1a96e175219f623e681f5'
txnHash.hex(): 0x8fd889fd741feb348815ebb22dd844f6db257edb0cf1a96e175219f623e681f5
Sie können dann txnHash.hex()
zu EtherScan gehen, um diesen Transaktionsstatus zu finden :)
Was Sie sehen, ist eine ASCII-Binärdarstellung der Bytes.
Sie können rohe Bytes in Python in Hex umwandeln:
import binascii
print binascii.hexlify(b"\x83\xd4\t'\x9e\xec\xb7\xc0\xf5\xdd\xf9\xb9\x0fD\xdc\x81\xfb\x8d\x0e\xf7\xb5\xbc2e~\x81R\x8c]Ek|")
83d409279eecb7c0f5ddf9b90f44dc81fb8d0ef7b5bc32657e81528c5d456b7c
Shawn Tabrizi