【问题标题】:Bitcoin Address Logic比特币地址逻辑
【发布时间】:2019-04-05 02:33:39
【问题描述】:

我正在尝试处理一些非常基本的数字,需要检查一下这在逻辑上是否正确。

查看比特币时,有 2^160 个地址。比特币使用 Base58 编码,所以有 24 个小写字母、24 个大写字母和 10 个数字。

因此,假设我使用 Vanitygen 并想获得一个以 1TEST 开头的地址,假设我找到以 1TEST 开头的地址的机会是 58^5 分之一。说1TEST开头的比特币地址数是2^160/58^5对吗?因此有 2.2^39 个地址与 1TEST?

【问题讨论】:

  • 实际上Bitcoin Base56包含9个数字,24个大写和25个小写字符。

标签: encryption bitcoin base58


【解决方案1】:

Meta:这不是一个编程问题,可能属于 bitcoin.SX,如标签描述所述。而且它绝对与加密无关。

几乎。首先,比特币的base58实际上是字母9位,24个小写,25个大写。更重要的是,编码地址以'version' (really type) byte开头,但前导00字节是特殊编码的,所以第一个字符1实际上对应一个类型字节00,意思是普通的传统keyhash(不是测试,不是脚本,不是私钥) .接下来的 4 个字符,如果不是以更多 1(s) 开头,则表示哈希的高位数字,并且由于 TEST 不能在需要 1+33 个字符的范围的不平衡部分中不匹配,它确实覆盖了确切的 1/58^4 部分空间,即 2^160 / 58^4,大约是 2^136.6。

【讨论】:

    猜你喜欢
    • 2019-05-16
    • 2014-01-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-06
    • 2017-03-25
    相关资源
    最近更新 更多