Created
September 14, 2019 11:39
-
-
Save CrackerHax/ec6964ea030d4b31d47b7d412036c623 to your computer and use it in GitHub Desktop.
Python script for getting ethereum public key from transaction id
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import web3 | |
w3 = web3.Web3(web3.HTTPProvider('https://geth.golem.network:55555')) | |
tx = w3.eth.getTransaction('0x00ee93fd1e6fdbdf841b4458a078210449dce89525502c965fd3534ba397e2e3') | |
tx.hash | |
from eth_account._utils.signing import extract_chain_id, to_standard_v | |
s = w3.eth.account._keys.Signature(vrs=( | |
to_standard_v(extract_chain_id(tx.v)[1]), | |
w3.toInt(tx.r), | |
w3.toInt(tx.s) | |
)) | |
from eth_account._utils.transactions import ALLOWED_TRANSACTION_KEYS | |
tt = {k:tx[k] for k in ALLOWED_TRANSACTION_KEYS - {'chainId', 'data'}} | |
tt['data']=tx.input | |
tt['chainId']=extract_chain_id(tx.v)[0] | |
from eth_account._utils.transactions import serializable_unsigned_transaction_from_dict | |
ut = serializable_unsigned_transaction_from_dict(tt) | |
s.recover_public_key_from_msg_hash(ut.hash()) |
Is there a similar script for BTC?
I think you can do it with secp256k1
Older txns have type 0, but for newer ones the code above won't work.
Here's the code for type 2 (the new ones)
import web3
from eth_account._utils.signing import extract_chain_id, to_standard_v
from eth_account._utils.legacy_transactions import ALLOWED_TRANSACTION_KEYS
from eth_account._utils.legacy_transactions import serializable_unsigned_transaction_from_dict
w3 = web3.Web3(web3.HTTPProvider(NODE_URL))
tx = w3.eth.get_transaction("0x7f21e0d18374e2707458c72b0ce2510b2781e9b5db0789b2b68a8b44c2371a3a")
s = w3.eth.account._keys.Signature(vrs=(
to_standard_v(extract_chain_id(tx.v)[1]),
w3.to_int(tx.r),
w3.to_int(tx.s)
))
tt = {k:tx[k] for k in ["to",
"nonce",
"value",
"gas",
"chainId",
"maxFeePerGas",
"maxPriorityFeePerGas",
"type",]}
tt["data"] = tx["input"]
ut = serializable_unsigned_transaction_from_dict(tt)
public_address = s.recover_public_key_from_msg_hash(ut.hash())
from_address = s.recover_public_key_from_msg_hash(ut.hash()).to_checksum_address()
Turns out that has edge cases, here's the full code for all types:
import web3
from eth_account._utils.signing import extract_chain_id, to_standard_v
from eth_account._utils.legacy_transactions import serializable_unsigned_transaction_from_dict
w3 = web3.Web3(web3.HTTPProvider(NODE_URL))
tx = w3.eth.get_transaction("0x7f21e0d18374e2707458c72b0ce2510b2781e9b5db0789b2b68a8b44c2371a3a")
tx = dict(tx)
type_0_keys = ['chainId', 'gas', 'gasPrice', 'nonce', 'to', 'value']
type_1_keys = ["to",
"nonce",
"value",
"gas",
'gasPrice',
"chainId",
"type"]
type_2_keys = ["to",
"nonce",
"value",
"gas",
"chainId",
"maxFeePerGas",
"maxPriorityFeePerGas",
"type"]
s = w3.eth.account._keys.Signature(vrs=(
to_standard_v(extract_chain_id(tx["v"])[1]),
w3.to_int(tx["r"]),
w3.to_int(tx["s"])
))
if tx["type"] == 0:
keys_to_get = type_0_keys
elif tx["type"] == 1:
keys_to_get = type_1_keys
elif tx["type"] == 2:
keys_to_get = type_2_keys
if "chainId" not in tx:
# !! This is hardcoded for ETH
tx["chainId"] = 1
tt = {k:tx[k] for k in keys_to_get}
tt["data"] = tx["input"]
ut = serializable_unsigned_transaction_from_dict(tt)
# public_address = s.recover_public_key_from_msg_hash(ut.hash())
from_address = s.recover_public_key_from_msg_hash(ut.hash()).to_checksum_address()
Though there are still edge cases to this code which I haven't been able to figure out. MEV bots are able to break the code above to give inaccurate from_addresses. A sample of tx hashes that break the system:
['0xe895e8002c2e82c84d5381c10cc2729f5196e5441b51904e73940a9800fa3251',
'0x5d59903f3da7ac6fc9b740960e3725bd261055239e69c08e555f5809445e4708',
'0xa74af867307cca73377fd7b4a63109ff527c5400c490069be1353119e366884d',
'0x979c513959a6ce72c11e405fec31cde6f3611d4fbe0fe7eeebc9b43ba21d3ed7',
'0x544eed0fd9c049ec6857dc9bf683c2531026f194d764bd2eafc0f7eb443d7df9',
'0xdfba7a04d63812b34b1f0d1aba5c0c4a71ef9f3a480fd6a2718582e4d51245f7',
'0xd739675ef68c16d706d90e13c3136cdb435db3d0dffb489d35759cdd9d5668dd',
'0x82f47fcd51626938de0d929cc6c99b33f491e47129423ac95cfcb88cbe3adb61',
'0x102deeefe7b1068e6526ef9c49312afd4fc0a550e93bdca10a82018eeeeb35e3',
'0x71e9463c0cce26c3e4ef04243993d6a590755a03ecf4373a2234bf65434744b2',
'0xfe5c21ee64cda05f86b80acaea7f884f32cabc412f9db336dc964592653de07a',
'0x3ec3bae775f0ba1e231d8f1cc5020dd00c843fe6d766058adb8bf9cbe06276e9',
'0x1dd3ec83810edb4f468dd7d435ee13fca5f48b05d2c7daf529f34c377a74ce36',
'0xcbb2c99bde6603f9a9287c75f3d8135edae8cefd8c8a4189cc495bbe65d613ca',
'0x9afdeee98f7ecab044a3c17869072b7f85866a5589a50b9659dccaaf6e586738',
'0x732f41fd383abe268efd372883862b7d1cce38fbabcffc6fe5bfb7f2a5b0d6e3',
'0x94bf81ed380b97cf65c44ce9b7299f441de7523e185d15cdf906e775750989cf',
'0xd1a320464aad7648e9ac904ae07ead02080b114d44905112ac7112ede379f664',
'0x03fb07b09d90fca9f80d5e38a3c56ad1fd2dab466c7742515a9e64de64364df9',
'0x517aa4b62d78bc21815f8e9ae47346ce538da94deb30111396aa4c0afb23263a',
'0xf340f30832276b9c99b4e12f1945023d8b16d8c3e41797ad4ee4e3c7ccd2331a',
'0x867564aeade8196a50c824ab2e0120e3b68503d5b9546f56079ef604017ffe09',
'0x5d59f4a728f70a0905356a4d40892f3b65c2bf2f35436415a3a6a6e0906b2c72',
'0xf5981249e37ec3468c362f4d358f84f171094bbd625ca4b9fb1bb74ef0ba7e69',
'0xe410aab4359a369e62158dad527b577753300db338de4134703da9b8424f1fd4',
'0xde872cc720bc441930c1cea4cc7ebc3728f8ad98e5d377c5ffc8088866533501',
'0x4a8d49faeb2e019d375977a90fa1ba60c3d51265340c7ad602e4dfc2dbcfdf9f',
'0x2b7be51e70ca9330b72788d7cb13b6677b9234da21cc022e4791e28221f870db',
'0x0ab8b1dbc3a9cf0c26efbdab00c46474c88c4627fc032fa280b96f0041abc723',
'0x6d1e5dd7a6663504e34db8401a2a23c197aedb1d68d0afa36067e82505832a28',
'0xa2016792a0dfeaff36172523b6607d7c164ea51e1df15d1af66cc336eaf6a03d',
'0x5f04cda07f50a3ac2e9586e67fc2b7a1906980c4e42e97336bb6b130388c9247',
'0xff794e04ed8988989d13016777c0e878e8bbc9ba60721d199a9379025449bea3',
'0x1da916036b6b67531167174c95bfd163bc81234ced1794691ec656890e9bbb9b',
'0x9b5365a7fd9344f75bf100cdb52938f1ce9bd89d058f66e46d0a8127d91e9612',
'0x7572f852e29eb7674bd719294cb68c03c125a9ba915801c5ed813cc19c38850f',
'0x0a5090503ebc2abc8b55191b94daa92323d7ab29f2a65b3f288bcc9745f40331',
'0x48754d0a89b899f2fdc6df13fb18a519b100061beb385c8ca3322580e0c81966',
'0xa99e0af04c0ea70f497bff7d1d6a47a71a413a7f064dd6d3825b31a3002995a3',
'0x8fa92df384c8ebd4a2c0258d8d80ae44476796149289f3c558f900dd9be850c9',
'0x0fab2ff3274becef711bd92dddbe074a8dc6330cd2f28cc20c6d61dfab6961e4',
'0xa5c033eead1a85e3619eae7538079995600b27149f3a4d41e4bc4f8757d57f6a',
'0x44cb1ad1cdd6065dbc7a0ce58c5ad7c8d83a9f9f5f2b753585becbe3323d9bea',
'0x461180a5d5a1cc1917c088f370f2fcbe7816168a4bd6af49d25f8fc67f99de24',
'0xc3acb51c2ae0071e346240022d18ee7869e862bd3d47b487e607622fc55d75b7',
'0x5a5ef496be5d361329167b4a3b4f39a0cb8bda02a9e98e3c74923bba5c84b19d',
'0x32a73199118b1ea581c90ad8a9617d14a30c59b3fc7178d879a3672918a2aa75',
'0x4170c6eee1e8563bc189451e5cf02333d21535fea64c4322b0130f06aa10416a',
'0xea721d9a680894b8c2a27dc334d2c20fbea5bdb7d648b986ff382e4ae8386c7c',
'0x2fe0d5f41d7bb7278b13f37b658814ea0475783a7ca233f33110f7a76f97667d',
'0xb0797d6fb51c8386c192f836293062c1e47b7058b6e7a6b20d2f077ed93f7005',
'0x2881bb618ee43ebfd5ed9dfc517b3a5ad0935bfca3f72b2a2452b5e442aa7bde',
'0x53f33111e1688feb276871f96c530a1386b0074a398d3f7562c749b5105ab343',
'0x1ed5e24121ab636befe029d35bcf74425eec6f5b5ff640124f6d9cc98dd7fe4a',
'0x9887c72ac2a23c9bac8eab0d9eaf1da19a5d255851bdf6af3d0c7d003a13e3f6',
'0x293a8899e5c706acef0e63c6bef4438e84f4163a0e5ca5287053836681bba4f6',
'0x8026758c8e602a3e601b8c657924cf1484405ca711f24ac40266ef53e462c61e',
'0x71424e342688312540c09fdf96e7d4718ebe9af784838c759e35d39d77967c84',
'0xaa8c7f4316146f17f25d8bec5d2a46630ae5a91c3e52b4bfcc1a2fd6db2c8cbd',
'0xdd26a450b7391ecc5bfd625a2badd6c1e6865c81e4425f428e565859fee2daa7',
'0x48c4ccd5f69f1cd79fcf7d1963cf7f46bff17fba06579b2fbcdaee8962692396',
'0xe9490d0a44402a18c3f0b3d63466c1f48c6b5d7affdd6162f466c411376b191e',
'0x282d417df72496e970d56296badd8946241c81aaaa68145192e886463f35e1f3',
'0x20b1a1618ec51a85385f55b58a76c3665e33fd16b221b8f882356099d470a34c',
'0x33b464f64b78053ebde01e19547ca709e779109161be60d8085e9b2c4b43d814',
'0xfea3a469a5c3cccc633b7d915d1c4a9c812aead2581719e49bbc979054af9867',
'0xe43c86677678dbe4dcf990d3f05614d500d625008bb554ff803dd278e306ab23']
Predicted, Actual, tx_hash:
0xeD430cB1dC33251c068E91b2A1d1bBe5D7614F17 0xae2Fc483527B8EF99EB5D9B44875F005ba1FaE13 0xe895e8002c2e82c84d5381c10cc2729f5196e5441b51904e73940a9800fa3251
0xdE2F0a63Edc35C456Da55ffF7b7d8A7a74eFF9aD 0xae2Fc483527B8EF99EB5D9B44875F005ba1FaE13 0x5d59903f3da7ac6fc9b740960e3725bd261055239e69c08e555f5809445e4708
0x6c2Af23f1f3668178f8F3d25545E7B8c737F5Ef9 0x24f7eF98522dd61D529464f67BB3ffe96eA8AFC2 0xa74af867307cca73377fd7b4a63109ff527c5400c490069be1353119e366884d
0x40CC06E3154f1DC85AA83c83Fb0aA52de570Ea96 0x90b14a8e71e9F3bB14917542278D31e1047e786b 0x979c513959a6ce72c11e405fec31cde6f3611d4fbe0fe7eeebc9b43ba21d3ed7
0x5D19fb8C930eb40E96629a7b549D7eb36Daa04B3 0x2e68128C55a6Dd32789b4a466719f8a4ed440C08 0x544eed0fd9c049ec6857dc9bf683c2531026f194d764bd2eafc0f7eb443d7df9
0x843E767BEBCEf1c4a0b40020a3597a916D144976 0x77ad3a15b78101883AF36aD4A875e17c86AC65d1 0xdfba7a04d63812b34b1f0d1aba5c0c4a71ef9f3a480fd6a2718582e4d51245f7
0x5aCA0117Cb989607C2F26A90C2d898319CA5915F 0x77ad3a15b78101883AF36aD4A875e17c86AC65d1 0xd739675ef68c16d706d90e13c3136cdb435db3d0dffb489d35759cdd9d5668dd
0x7399db5BA7153D9A7E15E39c872AeCc6c9453366 0xbf54079c9Bc879Ae4dD6BC79bCe11d3988fD9C2b 0x82f47fcd51626938de0d929cc6c99b33f491e47129423ac95cfcb88cbe3adb61
0x24a73fCF3F4f25D0D9159651f3F2aD16d6ef605d 0x93F635372008B7c5d770AAa6Ff313454c8dc498c 0x102deeefe7b1068e6526ef9c49312afd4fc0a550e93bdca10a82018eeeeb35e3
0x2601dFd3Fe31eC37dF7b3F86Ae7D942aA9313AB3 0x24f7eF98522dd61D529464f67BB3ffe96eA8AFC2 0x71e9463c0cce26c3e4ef04243993d6a590755a03ecf4373a2234bf65434744b2
0xc49E9475BA1F7fed9cD336664257Ed36a761C2D2 0xd24400ae8BfEBb18cA49Be86258a3C749cf46853 0xfe5c21ee64cda05f86b80acaea7f884f32cabc412f9db336dc964592653de07a
0x9416A164154685D727565b9a644c8502264a96dC 0xd24400ae8BfEBb18cA49Be86258a3C749cf46853 0x3ec3bae775f0ba1e231d8f1cc5020dd00c843fe6d766058adb8bf9cbe06276e9
0xc1B383236eDC1ae4577BE26c80bF5a568Cf2bee0 0xd24400ae8BfEBb18cA49Be86258a3C749cf46853 0x1dd3ec83810edb4f468dd7d435ee13fca5f48b05d2c7daf529f34c377a74ce36
0x6241b2EA4D510576C1C47741AD34536DC75b589D 0xae2Fc483527B8EF99EB5D9B44875F005ba1FaE13 0xcbb2c99bde6603f9a9287c75f3d8135edae8cefd8c8a4189cc495bbe65d613ca
0xF7D83b52BD3F7CfA58F3f5199f5f90d5aB72FdDe 0xae2Fc483527B8EF99EB5D9B44875F005ba1FaE13 0x9afdeee98f7ecab044a3c17869072b7f85866a5589a50b9659dccaaf6e586738
0x2513a6aE1B053a5388e730c8160f255b95fb5BBd 0xc9f2e6ea1637E499406986ac50ddC92401ce1f58 0x732f41fd383abe268efd372883862b7d1cce38fbabcffc6fe5bfb7f2a5b0d6e3
0xFdd6d6cB6010D07845427bD363Ea1792D6C739D9 0xae2Fc483527B8EF99EB5D9B44875F005ba1FaE13 0x94bf81ed380b97cf65c44ce9b7299f441de7523e185d15cdf906e775750989cf
0xB4668C0B15F1f31de121431C9F33B2d72cC67A63 0xae2Fc483527B8EF99EB5D9B44875F005ba1FaE13 0xd1a320464aad7648e9ac904ae07ead02080b114d44905112ac7112ede379f664
0xfFd07B0081B06B6bF1bC983a68D964885b51A789 0x0752CdE884A2075927806c432b2d4520265F111c 0x03fb07b09d90fca9f80d5e38a3c56ad1fd2dab466c7742515a9e64de64364df9
0x7Aa2ADf049540524541a71C7c07E3B3736642778 0x1cAc7a07e8cb87B73d94747028845638D55d3Fde 0x517aa4b62d78bc21815f8e9ae47346ce538da94deb30111396aa4c0afb23263a
0x79B2872A6883380568Ec43A1c971403d4F9e718a 0x77ad3a15b78101883AF36aD4A875e17c86AC65d1 0xf340f30832276b9c99b4e12f1945023d8b16d8c3e41797ad4ee4e3c7ccd2331a
0x0F1f55F476087aB05B02934dc3AD0380C58f42Cc 0x77ad3a15b78101883AF36aD4A875e17c86AC65d1 0x867564aeade8196a50c824ab2e0120e3b68503d5b9546f56079ef604017ffe09
0x1144CE6AB5C36FA67e6FbEFaBe7EEaE93c841703 0x188740AEc0262E1F368D85f94935B3e31EDd4FbF 0x5d59f4a728f70a0905356a4d40892f3b65c2bf2f35436415a3a6a6e0906b2c72
0x3aB8d1e4bE6BdaEd009ADf6444792c628e0Bb315 0x425A4a539C085Ff2568e19ee1304e97a92688959 0xf5981249e37ec3468c362f4d358f84f171094bbd625ca4b9fb1bb74ef0ba7e69
0xA4d2A4ea809B8De371ce26AF2F314B8d214197A9 0xae2Fc483527B8EF99EB5D9B44875F005ba1FaE13 0xe410aab4359a369e62158dad527b577753300db338de4134703da9b8424f1fd4
0x328F409D3E352D4152b593deE8F42abCFdc1C2B3 0xae2Fc483527B8EF99EB5D9B44875F005ba1FaE13 0xde872cc720bc441930c1cea4cc7ebc3728f8ad98e5d377c5ffc8088866533501
0xC666383ABf4f020b5CE4CE8C5044681E1c2cf5da 0xae2Fc483527B8EF99EB5D9B44875F005ba1FaE13 0x4a8d49faeb2e019d375977a90fa1ba60c3d51265340c7ad602e4dfc2dbcfdf9f
0xE922d55d20B78a8DeD664F1f539057847257fB78 0xae2Fc483527B8EF99EB5D9B44875F005ba1FaE13 0x2b7be51e70ca9330b72788d7cb13b6677b9234da21cc022e4791e28221f870db
0xfcbc6C92324b837E0764c06CDA0C1B176c410A24 0xae2Fc483527B8EF99EB5D9B44875F005ba1FaE13 0x0ab8b1dbc3a9cf0c26efbdab00c46474c88c4627fc032fa280b96f0041abc723
0x396C21A4AB3ad7B40d6b21DA604D4B597EcF4fE3 0xae2Fc483527B8EF99EB5D9B44875F005ba1FaE13 0x6d1e5dd7a6663504e34db8401a2a23c197aedb1d68d0afa36067e82505832a28
0x2c9146CA9E9777dC56fE1220b0527e13C00cF16a 0xae2Fc483527B8EF99EB5D9B44875F005ba1FaE13 0xa2016792a0dfeaff36172523b6607d7c164ea51e1df15d1af66cc336eaf6a03d
0x5dA805e16Bb6ad1aAA9a1BfF280d7D6E66d2adF3 0xae2Fc483527B8EF99EB5D9B44875F005ba1FaE13 0x5f04cda07f50a3ac2e9586e67fc2b7a1906980c4e42e97336bb6b130388c9247
0x97b2bE79F2988370D3e07752EdC7df70EbB1401a 0xFF02FEB96fF2bDd4f82CE71Fd42bbBA175FDd887 0xff794e04ed8988989d13016777c0e878e8bbc9ba60721d199a9379025449bea3
0xa67260649300B6802909BfaD4075B3e5274d9643 0xd24400ae8BfEBb18cA49Be86258a3C749cf46853 0x1da916036b6b67531167174c95bfd163bc81234ced1794691ec656890e9bbb9b
0x2d83147932aeeD286b7513C9d03D1fC3d15906AF 0x66E0214592dC00993044F3c8dA5a61d166BCaF02 0x9b5365a7fd9344f75bf100cdb52938f1ce9bd89d058f66e46d0a8127d91e9612
0x078059D1C476d3978f766cC29c5E4f634f47F7A3 0x66E0214592dC00993044F3c8dA5a61d166BCaF02 0x7572f852e29eb7674bd719294cb68c03c125a9ba915801c5ed813cc19c38850f
0x43Bd5cCbFC7F2e8F7a931A36fc650E4335566279 0x3d799A0a4470e066002E486B55F7d6506a2F3579 0x0a5090503ebc2abc8b55191b94daa92323d7ab29f2a65b3f288bcc9745f40331
0xbEcab29f71c34171e7A1720e66812369B7D30279 0xae2Fc483527B8EF99EB5D9B44875F005ba1FaE13 0x48754d0a89b899f2fdc6df13fb18a519b100061beb385c8ca3322580e0c81966
0x4ba87950D45C0f7E00b9569CB088353d1fDd5E7a 0xae2Fc483527B8EF99EB5D9B44875F005ba1FaE13 0xa99e0af04c0ea70f497bff7d1d6a47a71a413a7f064dd6d3825b31a3002995a3
0x10906bfEEc0e0D4D8Ed5A563b9D2546cD6CD1A4f 0xae2Fc483527B8EF99EB5D9B44875F005ba1FaE13 0x8fa92df384c8ebd4a2c0258d8d80ae44476796149289f3c558f900dd9be850c9
0x22EB53B262F9c8EE4DFC71cAb05EE2736304b685 0xae2Fc483527B8EF99EB5D9B44875F005ba1FaE13 0x0fab2ff3274becef711bd92dddbe074a8dc6330cd2f28cc20c6d61dfab6961e4
0xf48e4876f380AF3Dbd6a195933a9b3aD9b474112 0xae2Fc483527B8EF99EB5D9B44875F005ba1FaE13 0xa5c033eead1a85e3619eae7538079995600b27149f3a4d41e4bc4f8757d57f6a
0xDC9996A5308dAEC728A295d7F5ff446B84894ecf 0xae2Fc483527B8EF99EB5D9B44875F005ba1FaE13 0x44cb1ad1cdd6065dbc7a0ce58c5ad7c8d83a9f9f5f2b753585becbe3323d9bea
0xB788fcE37D1ed36bDa875BA11019423C2CB08a4c 0x8B286E3e967aD104EA51713FE0e7C47964914d25 0x461180a5d5a1cc1917c088f370f2fcbe7816168a4bd6af49d25f8fc67f99de24
0x8aa2314a5eD00cd6ca236B9754e46d9dA2079b76 0x09b1806Df13062B5f653BeDA6998972cabCF7009 0xc3acb51c2ae0071e346240022d18ee7869e862bd3d47b487e607622fc55d75b7
0x20420397Ba88A5A71EDC5Aad70B95fd0b995DD05 0xae2Fc483527B8EF99EB5D9B44875F005ba1FaE13 0x5a5ef496be5d361329167b4a3b4f39a0cb8bda02a9e98e3c74923bba5c84b19d
0x33D2548d296F494CFb80e41dd15DbA3eE13307f3 0xae2Fc483527B8EF99EB5D9B44875F005ba1FaE13 0x32a73199118b1ea581c90ad8a9617d14a30c59b3fc7178d879a3672918a2aa75
0xBEecb442fb7467A12cc94802927BFBB581C73724 0xE1e3b3448C58C1E14eA2BdaB878C48d238F2e29d 0x4170c6eee1e8563bc189451e5cf02333d21535fea64c4322b0130f06aa10416a
0x319423a10155D1De6ac8B01a4286065C23F6dDa1 0xd34D9Fc92d58128A969ba843a2bb4f699d74183F 0xea721d9a680894b8c2a27dc334d2c20fbea5bdb7d648b986ff382e4ae8386c7c
0x5AE710f6e861F1b19ffFF1b663B35C6845916400 0x111206594F2fB5927f719b4417Ab1DA3D41B14b1 0x2fe0d5f41d7bb7278b13f37b658814ea0475783a7ca233f33110f7a76f97667d
0x3A90F84b6d5C4f20B52854e51651AAcb0Acc1BE9 0x1113eFd5C8896CcF251EA360bB9d91F113707F80 0xb0797d6fb51c8386c192f836293062c1e47b7058b6e7a6b20d2f077ed93f7005
0x9f3Bd82452e89F20e5B88b11643a9d0cd6CCf13a 0xbd0aA1cB4f740401cA1c88F1B97D1018d3A05798 0x2881bb618ee43ebfd5ed9dfc517b3a5ad0935bfca3f72b2a2452b5e442aa7bde
0xb0D0A49DC5d0449E4427d5DC55e14f44bF818A6E 0x66D4104f99F6A3df367D9EC702cCDbd3c4C52cd1 0x53f33111e1688feb276871f96c530a1386b0074a398d3f7562c749b5105ab343
0x75D7c3B5A99FFe507d3D718391218D179BaFcDAe 0xAfcFC21B901D16C96fA6f1fbA665a5d981bBc7BC 0x1ed5e24121ab636befe029d35bcf74425eec6f5b5ff640124f6d9cc98dd7fe4a
0xa3246dC73bA61d5e3f4662AaE6eDF267aC3e4D53 0xae2Fc483527B8EF99EB5D9B44875F005ba1FaE13 0x9887c72ac2a23c9bac8eab0d9eaf1da19a5d255851bdf6af3d0c7d003a13e3f6
0x87050c34859F1bac10F316180001001B3eC207EF 0xae2Fc483527B8EF99EB5D9B44875F005ba1FaE13 0x293a8899e5c706acef0e63c6bef4438e84f4163a0e5ca5287053836681bba4f6
0x9E6c14117872F8bf1C98212B5d134cDBc222F0a8 0x188740AEc0262E1F368D85f94935B3e31EDd4FbF 0x8026758c8e602a3e601b8c657924cf1484405ca711f24ac40266ef53e462c61e
0xFaf0D0964211EA0374EbfA07e501c37D85591ABa 0xae2Fc483527B8EF99EB5D9B44875F005ba1FaE13 0x71424e342688312540c09fdf96e7d4718ebe9af784838c759e35d39d77967c84
0x6960E64A54499EDfD0765A219630e6a7e2E6629f 0xae2Fc483527B8EF99EB5D9B44875F005ba1FaE13 0xaa8c7f4316146f17f25d8bec5d2a46630ae5a91c3e52b4bfcc1a2fd6db2c8cbd
0x1e675aC1ACfaCd9d5A1e3D0E1323748EA32273e3 0x047a2fbe8aEF590d4EB8942426a24970af301875 0xdd26a450b7391ecc5bfd625a2badd6c1e6865c81e4425f428e565859fee2daa7
0x261e32c055950b28968A1Db95F904c2c3B587667 0x4D521577f820525964C392352bB220482F1Aa63b 0x48c4ccd5f69f1cd79fcf7d1963cf7f46bff17fba06579b2fbcdaee8962692396
0x6ab60291dE08Cd1568Ea44d6DF6c81eE38Fd9172 0x77ad3a15b78101883AF36aD4A875e17c86AC65d1 0xe9490d0a44402a18c3f0b3d63466c1f48c6b5d7affdd6162f466c411376b191e
0xa4DE26a3204C57CDc24268ac72B172BE54DBd087 0x77ad3a15b78101883AF36aD4A875e17c86AC65d1 0x282d417df72496e970d56296badd8946241c81aaaa68145192e886463f35e1f3
0x8D9EBf7620805128D009e95738B4ba3D1DCa5CeA 0x0000B8e312942521fB3BF278D2Ef2458B0D3F243 0x20b1a1618ec51a85385f55b58a76c3665e33fd16b221b8f882356099d470a34c
0x59CBe6A47C9029b924d787E9DE03FFe41d8f7d72 0x0000B8e312942521fB3BF278D2Ef2458B0D3F243 0x33b464f64b78053ebde01e19547ca709e779109161be60d8085e9b2c4b43d814
0xC9Aad4794a6019c7515339315F22180d511a3A9A 0x77ad3a15b78101883AF36aD4A875e17c86AC65d1 0xfea3a469a5c3cccc633b7d915d1c4a9c812aead2581719e49bbc979054af9867
0x0349044957ff2878f421aaF00FFCd972A62F375A 0x77ad3a15b78101883AF36aD4A875e17c86AC65d1 0xe43c86677678dbe4dcf990d3f05614d500d625008bb554ff803dd278e306ab23
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Is there a similar script for BTC?