比特币公私钥地址的生成

0xXX 数字在 Java 中表示 16 进制的数字

  1. Raw 私钥:随机生成一个 256 Bit 的数
  2. Raw 公钥:将 Raw 私钥使用 SECP256K1 算出 X,Y的值,0x04 拼接上 X 轴的值在拼上 Y 轴的值为非压缩格式的公钥,算出 Y 轴奇、偶,如果奇数就是 0x03,偶数就是 0x02,然后拼接上 X 轴的值为压缩格式的公钥
  3. 地址:将 Raw 公钥使用 SHA256 计算然后再使用 RIPEMD160 计算,然后如果是主网环境前面拼接 0x00,测试网络环境前面拼接 0x6f,将此结果定义为 address,然后对 address 两次 SHA256 的结果取前四位,拼在 address 后面,就成了地址

更详细的流程图 图形化私钥地址生成idgui.com

流程图
比特币公私钥地址生成.png