HD Wallet 系列 - 公钥与地址
2019-09-29 本文已影响0人
tpkeeper
原文地址:tpkeep.com
简单的理解,地址就是公钥/脚本哈希值的base58格式
地址的格式
P2PKH (Pay To PubKey Hash) 格式的地址
image.pngP2SH (Pay To Script Hash) 格式的地址
image.png前缀占用一个字节,表示网络ID。校验位占用4个字节。使用base58便于更友好的显示,增加的校验还可以防止用户输入错误,bip32中也是这种格式来显示扩展密钥。
代码实战
代码参考:https://github.com/tpkeeper/addrtool/blob/master/address.go
func PubkeyToAddress(key []byte,netId byte)(string){
hash160Bytes:=btcutil.Hash160(key)
return base58.CheckEncode(hash160Bytes,netId)
}
base58前缀目录一览
xpub xprv 代表的就是bip32中的扩展密钥即extended key
image.png