Python

將 64 個十六進制密鑰的列表轉換為私有導入格式

  • June 28, 2020

是否有一個 python 腳本可用於將私有十六進制密鑰列表批量轉換為導入格式?

我該怎麼辦。。

是否可以將其調整為獲取 .txt 十六進制地址列表並將其轉換為私有導入格式,然後將結果列印到 txt 文件?

In [1]: import base58
In [2]: hexstring= "00010966776006953D5567439E5E39F86A0D273BEED61967F6"
In [3]: unencoded_string = bytes.fromhex(hexstring)
In [4]: encoded_string= base58.b58encode(unencoded_string)
In [5]: print(encoded_string)
16UwLL9Risc3QfPqBUvKofHmBQ7wMtjvM

您應該考慮使用這個(或類似的)python 庫來導入您的密鑰,因為從 hex 到 base58 的直接轉換可能有一些問題:

<https://github.com/vbuterin/pybitcointools>

檢查自述文件中的範例,您應該正在編寫腳本。

您可以在命令行中使用這些小腳本,因此您不必編寫一行程式碼(如果您有 Python,也可以在 Windows 中執行),或者如果您願意,也可以輕鬆修改它們:

<https://github.com/circulosmeos/bitcoin-in-tiny-pieces>

對於您的私鑰範例:

$ ./bitcoin-wif-from-private-key.py 00010966776006953D5567439E5E39F86A0D273BEED61967F6

privkey = 8000010966776006953D5567439E5E39F86A0D273BEED61967F6

For uncompressed public key:
checksum =      02d037e84dee212e14b823a8c9ac01409f6c1504e558d86116a4302d4d68bbdf
key + checksum =        8000010966776006953D5567439E5E39F86A0D273BEED61967F6 02d037e8
bitcoin address =       Sea2qLkneYfbTv29SLY8QvhkAZDxwgDfMuWprqj4b

For compressed public key:
checksum =      021538258480bbb46a846ef24bb2927d24f7c90bf354d76d6da3bd52c47e633d
key + checksum =        8000010966776006953D5567439E5E39F86A0D273BEED61967F601 02153825
bitcoin address =       2xCpo6NCGUimM7o24EqEPic2qXBEDvL6tKGne3Avisv

如果修改將此變數設置為 False 的腳本,則僅列印 WIF 地址:

VERBOSE = False

(一旦您編寫了所需的輸出)您可以使用每個私鑰的命令行製作批處理文件(Linux 中的 .sh,Windows 中的 .bat)(例如,像Sublime Text這樣的編輯器可以一次編輯和粘貼多行,所以很容易)每個附加到一個文件,然後執行這個批處理文件:

./bitcoin-wif-from-private-key.py 1stkey &gt;&gt; mytextfile.txt
./bitcoin-wif-from-private-key.py 2ndkey &gt;&gt; mytextfile.txt
...

PS:有兩種從私鑰生成 WIF 的方法(壓縮和未壓縮):它們中的任何一個都可以完成這項工作。

引用自:https://bitcoin.stackexchange.com/questions/41561