繁体   English   中英

如何将比特币纸质钱包密钥导入bitcoinlib钱包?

[英]How can I import a Bitcoin paper wallet key into a bitcoinlib wallet?

我尝试了以下操作,该操作为我提供了私钥的正确地址,但是我似乎无法从钱包中导入并使用它。

>>> from bitcoinlib.wallets import HDWallet
>>> from bitcoinlib.keys import Key
>>> k = Key(import_key=pkstring, is_private=True)
>>> print(k.address())
1BZAHUFU5vgmtiwPnD1HLPiWNoD9tejndt
>>> w = HDWallet.create('Wallet')
>>> w.import_key(k)

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/local/lib/python3.7/site-packages/bitcoinlib/wallets.py", line 1381, in import_key
    network = check_network_and_key(key, default_network=self.network.name)
  File "/usr/local/lib/python3.7/site-packages/bitcoinlib/keys.py", line 89, in check_network_and_key
    kf = get_key_format(key)
  File "/usr/local/lib/python3.7/site-packages/bitcoinlib/keys.py", line 148, in get_key_format
    elif len(key) == 130 and key[:2] == '04' and not isprivate:
TypeError: object of type 'Key' has no len()

我认为这可能与Key对象和HDKey对象之间的差异有关。 我需要导入一个普通密钥。

您的代码应在最新版本的bitcoinlib中工作。

您也可以直接将密钥导入钱包,而无需先创建Key对象:

 w = HDWallet.create('Wallet')
 w.import_key(pkstring)

或者只用密钥字符串中的一个密钥创建一个钱包:

 w = HDWallet.create('Wallet2', keys=pkstring, scheme='single')

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM