如何从pubkey_hash获取比特币地址?

乔治

我正在使用:https : //github.com/bitcoin-abe/bitcoin-abe将区块链导入到mysql数据库中,这几乎是在5天后完成的。因此,我开始查看数据,但没有看到任何地址。我知道BTC客户端不使用那些,但是将它们放在另一个表中仍然很不错。我四处查看代码,发现了这一点:

def hash_to_address(version, hash):
    vh = version + hash
    return base58.b58encode(vh + double_sha256(vh)[:4])

在:https : //github.com/bitcoin-abe/bitcoin-abe/blob/3004fe4bad6f64d4c032c735ee23bf9f052d825b/Abe/util.py

当我通过该函数运行pubkey_hash时,没有得到预期的地址结果。例如,使用以下pubkey_hash:62E907B15CBF27D5425399EBF6F0FB50EBB88F18

我应该得到:1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa

但是我却得到了:6GEZdxx5UiTk3U3LaLfsWwRaFAvXEpPNS5R4mqsJDXVJcTNNngTyB5i9S76MLTq

我创建的脚本是:

import util
hash = '62E907B15CBF27D5425399EBF6F0FB50EBB88F18'
print util.hash_to_address("00", hash)

有什么想法或还有其他可以正确做到的事情吗?

Appleman1234为我指明了正确的方向:

import util
hash = '62E907B15CBF27D5425399EBF6F0FB50EBB88F18'
hash = '00' + hash
print "Util: ", util.hash_to_address("", hash.decode('hex'))
苹果人1234

无法获得预期结果的原因是由于编码。

适用于Python 2的正确代码

import util
hash = '62e907b15cbf27d5425399ebf6f0fb50ebb88f18'
print util.hash_to_address("00".decode('hex'), hash.decode('hex'))

适用于Python 3的正确代码

import util
import binascii
hash = '62e907b15cbf27d5425399ebf6f0fb50ebb88f18'
print util.hash_to_address(binascii.unhexlify("00"), binascii.unhexlify(hash))

解码和取消hexlify函数将十六进制ASCII表示形式转换为二进制字节字符串。

您遇到的问题是二进制字符串的哈希值及其十六进制ASCII表示形式的哈希值是两个不同的哈希值。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

比特币地址生成

来自分类Dev

了解比特币地址

来自分类Dev

importxml如何获取比特币价格

来自分类Dev

如何在Ruby中生成比特币地址

来自分类Dev

如何为特定比特币钱包生成地址

来自分类Dev

在ruby中创建比特币地址

来自分类Dev

比特币SegWit钱包地址计算

来自分类Dev

解析比特币URL地址格式

来自分类Dev

在ruby中创建比特币地址

来自分类Dev

如何使比特币硬分叉

来自分类Dev

如何为带有金额的比特币地址生成QR码?

来自分类Dev

如何在Ubuntu中安装比特币?

来自分类Dev

如何执行和验证比特币交易?

来自分类Dev

如何创建比特币付款请求?

来自分类Dev

如何设置poclbm(比特币矿工)?

来自分类Dev

比特币地址表格验证JavaScript和PHP

来自分类Dev

正则表达式以匹配比特币地址?

来自分类Dev

从公钥哈希到php中的比特币地址

来自分类Dev

确定比特币钱包地址是否“有效”

来自分类Dev

Base58Check编码的比特币地址太长

来自分类Dev

使用区块链API打印比特币地址交易

来自分类Dev

检查比特币地址是否有效?

来自分类Dev

从私钥生成比特币公共地址的尝试失败

来自分类Dev

获取给定新鲜源的命令行界面钱包(比特币/莱特币/山寨币)

来自分类Dev

如何使用比特币GUI应用程序来挖掘比特币?

来自分类Dev

用于比特币汇率的比特币 API

来自分类Dev

比特币数字格式

来自分类Dev

比特币挖矿攻击

来自分类Dev

用于比特币的SSL