美文网首页漫谈区块链
bitcoin: 何为燃烧地址

bitcoin: 何为燃烧地址

作者: 已不再更新_转移到qiita | 来源:发表于2018-03-06 20:05 被阅读405次
    fire

    如果你观察过很多的btc地址, 隐隐会发现有些规律:
    长度是34位,好多是1 3 开头的, 字母排列杂乱无章.

    如下都是合法的btc 地址, 这些地址都有币的,而且数量都不少, 就已当前的(2018/08/21)btc价格计算, 绝对是富得流油了.

    3MWqbpfzxgojEAah6PMZoZPdUPUTuyTpan
    1EdBvVAVP98zUsz2n8Pereop29y9fUFk2i
    3Cbq7aT1tY8kMxWLbitaG7yT6bPbKChq64
    3Nxwenay9Z8Lc9JBiywExpnEFiLp6Afp8v
    18tTLso5jaa4XqyTQzo9S6mqhfCsgcufdh
    1FeexV6bAHb8ybZjqQMjJrcCrHGW9sb6uF
    1HQ3Go3ggs8pFnXuHVHRytPCq5fGG8Hbhx
    1PnMfRF2enSZnR6JSexxBHuQnxG8Vo5FVK
    3Kzh9qAqVWQhEsfQz7zEQL1EuSx5tyNLNS
    1EBHA1ckUWzNKN7BMfDwGTx6GKEbADUozX
    1LdRcdxfbSnmCYYNdeYpUnztiYzVfBEQeC
    ...
    
    

    34位的长度是绝对的么,有特例么?
    还真找到一个地址 1111111111111111111114oLvT2,长度只有27位, 而且这么多的111..., 感觉很优美. 一般btc 地址的长度是34位, 也有33位, 最短的应该是26位.

    燃烧地址

    1111111111111111111114oLvT2 还有特殊的地方.
    如果看ta的交易, 只有输入, 没有输出,什么意思呢?
    只有别人给ta发币, ta一分钱没花,只进不出,咋这抠门呢, 这是个貔貅啊.

    我们看看ta的第一笔交易id
    2c637592a4b4a95cf4b19260730c66de540d7d3b14d8d352de591c5ee6eac0fc, 交易时间是 2010年8月10号,
    输出脚本是
    OP_DUP OP_HASH160 0000000000000000000000000000000000000000 OP_EQUALVERIFY OP_CHECKSIG

    image

    执行输出脚本, 是私钥转化为Hash160的过程.
    你提供的私钥转化成Hash160_me, 如果与脚本里提前写好的Hash160一致, 你就可以动用这个地址的币了.

    btc地址的正常推导过程是: 私钥 ==>公钥 ==> Hash160 <==> 地址.

    Hash160就是没有规则的字符串,我们可以随便提供个Hash160值, 从半截腰上推导地址: Hash160 <==> 地址.

    1111111111111111111114oLvT2很明显就是这种情况, 从半截腰上推导出来的地址, ta的hash160是 000...000, 都是0,这是特意拼凑的,既然是从半截腰推导出来的,自然没人知道私钥.
    由于hash运算的不可逆性, 此刻还无法推算出这个地址的私钥,
    既然不知道私钥,就无法动用币,只能进不能出,成了一个"废地址",这样的地址叫燃烧地址, 即 burn address, 像燃料一样烧没了, 非常形象.

    为什么还要往这种地址发送交易呢

    1 减少币的流通量
    2 土豪的心思不要猜

    我们生成个 burn address

    设定 hash160 = 1111111111111111111111111111111111111111, 最终得到地址12ZEw5Hcv1hTb6YUQJ69y1V7uhcoDz92PH.
    这个地址好没个性啊,但是也有人打过币了, https://btc.com/12ZEw5Hcv1hTb6YUQJ69y1V7uhcoDz92PH

    有没有可能找到私钥

    存在这种可能, 不过需要巨大的算力来完成这个工作,这个可能太微小了. 如果有人找到了私钥, 燃烧地址就变成普通地址了.

    如何手动生成btc地址

    请看 https://www.jianshu.com/p/954e143e97d2, step3是得到hash160_val, 如果你想通过 hash160_val 得到地址, 从step4开始计算就可以.

    安全提示

    虽然这些步骤经过了验证并没有发现问题, 但也仅供参考.

    强烈建议不要自己生成btc addres
    强烈建议不要自己生成btc addres
    强烈建议不要自己生成btc addres
    
    请用信赖的工具来干这事
    如果地址计算错误, 这个私钥并不能解开你的地址, 相当于你的btc丢了.
    

    mastering bitcoin已经给了我们教训. 同理ethereum 也有burn address哦.

    相关文章

      网友评论

        本文标题:bitcoin: 何为燃烧地址

        本文链接:https://www.haomeiwen.com/subject/ykvrfftx.html