在之前的一篇文章中,我们介绍了比特币地址的生成过程,分为了8个步骤,不知道大家有没有动手试试呢?自己就可以在离线环境中生成非常多的冷钱包地址,前提是你有非常多的比特币需要自己保存。壕,交个朋友吧。
其中有个细节,我们在计算完Hash160的结果后, 第四步的操作是加上主网的前缀符 00,大家对这个操作有很多疑问,这个前缀符有什么用?其实比特币的地址类型有很多种,不同类型的地址应用于不同的场景,如何区分呢,自然就是前缀符了。
P2PKH类型的地址最常用,比特币网络的很多地址是这种。可用于转账、发账, 支持最最常用的操作,安安静静,低调内敛。
P2SH类型的地址支持多重签名。
什么是多重签名呢? 假设3个人管理一个基金会的比特币账户,规定至少2个人同意的时候才能动用,我们就可以做一个3-2签名的多重签名,也可以做5-3签名的,5个人中只要有3个同意,就可以动用。其实还可以做5-5签名,只有5个人都同意了,才能动用,绝对的民煮。交易所的冷钱包往往都是多重签名地址,利于分权,其实也降低了风险。
以太坊的多重签名,需要编写智能合约,虽然有些麻烦,但能进行更细致的分配。
Testnet类型的地址,这个很好理解,软件工程中常常有测试环境,区块链也分为主网、测试网,主网是我们在使用的真正的转账网络,测试网主要用于测试,我们可以获取一定数量的测试币,进行调试,而不用花费真金白银,也能提前发现bug,是不是很像游戏的不删档内测。
下图是同一个私钥,生成的不同类型地址,这3个地址都是34位长度,由于大小写字体的字宽问题,在视觉上长度不一致。
以太坊的地址比较统一,主网地址,测试网地址都是同一个类型的。
最近很吸引眼球的吴比特币、澳比特币分叉事件,闹得鸡飞狗跳,吴比特币的前身BCH地址跟比特币地址差异很大,其实他们是能互相转换的,为什么呢?因为有相同的hash160, 地址只是一种方便人可读的呈现方式。欲要分叉,先改其地址 ……
文章分享到这里,希望大家喜欢。
参考:
https://en.bitcoin.it/wiki/List_of_address_prefixes
https://github.com/liushooter/learn-blockchain/blob/master/gen_addr.rb
https://bch.btc.com/tools/address-converter
原文始发于微信公众号(Rebase社区):种类繁多的比特币地址