P2PKH、P2SH地址的格式约定

区块链 比特币
  • P2PKH地址的格式约定如下:

1. 前导字节(1个字节):prefix = 0×00,表示这是一个P2PKH地址; 2. 公钥的哈希值(20字节):用hash160算法——RIPEMD160(sha256(公钥)),将公钥转换为一个20字节的数据; 3. 校验码(4个字节):用hash256算法——SHA256(SHA256([0x00] [20字节的哈希值] )),取前4个字节作为校验码; 4. 生成文本格式的地址:用Base58编码由前三步所得到的25个字节的数据。 由于前导字节为0×00,生成的地址首字母为字符“1”。

  • P2SH地址的格式约定如下:

1. 前导字节(1个字节):prefix = 0×05,表示这是一个P2SH地址; 2. 合同脚本的哈希值(20字节):用hash160算法——RIPEMD160(sha256(合同脚本)),生成一个20字节的数据; 3. 校验码(4个字节):用hash256算法——SHA256(SHA256([0x00] [20字节的哈希值] )),取前4个字节作为校验码; 4. 生成文本格式的地址:用Base58编码由前三步所得到的25个字节的数据。 由于前导字节为0×05,生成的地址首字母为字符“3”。

发表评论