在比特币的世界里,公钥是至关重要的一环,它是私钥的数学衍生,用于接收比特币,并生成我们日常转账中使用的比特币地址,当我们谈论“BTC公钥type”时,实际上是在探讨比特币公钥的不同编码格式及其衍生的地址类型,这些类型共同构成了比特币生态多样性和安全性的基础。

什么是比特币公钥

我们需要明确比特币公钥的本质,私钥本质上是一个随机生成的、非常大的数字,通过椭圆曲线算法(具体是secp256k1),私钥可以生成一个对应的公钥,公钥同样是一个数字,但它以特定的点(x, y坐标)形式存在于椭圆曲线上。

这个原始的公钥数据(即点的x和y坐标)是一串原始的、未经处理的二进制数据,为了方便存储、传输和显示,我们需要对其进行编码,这就引出了“公钥类型”的概念,这里的“type”更多指的是公钥的编码格式以及由此生成的地址类型。

BTC公钥的主要“类型”:压缩与非压缩

在比特币发展的早期,公钥主要采用“非压缩”格式存储和传输。

  1. 非压缩公钥 (Uncompressed Public Key)

    • 格式:非压缩公钥以 0x04 开头,后跟64个字节(32字节为x坐标,32字节为y坐标)。
    • 特点:完整地包含了公钥点的x和y坐标信息,长度为65字节。
    • 衍生地址:非压缩公钥通过SHA-256哈希和RIPEMD-160哈希双重哈希后,生成一个以 1 开头的P2PKH(Pay-to-Public-Key-Hash)地址。
    • 现状:由于非压缩公钥较长,占用更多存储空间和带宽,且早期比特币实现中可能存在安全风险(如某些签名操作),比特币社区后来逐渐转向压缩公钥,非压缩公钥在新交易中已不推荐使用,甚至某些节点和客户端可能不再支持。
  2. 压缩公钥 (Compressed Public Key)随机配图