领先的比特币钱包

Electrum 2.0 中的扩展交易序列化

Electrum 2.0 引入了一种改进的交易序列化方法。这种新方法允许用户与其他签名者共享未签名或部分签名的交易,或将其存储在冷存储设备中。

这种序列化格式的主要变化在于交易输入。具体来说,Electrum 扩展了 pubkey 字段以包含更多信息。这一扩展使钱包能够处理尚未完全签名的交易,从而更容易管理多签名设置和冷存储操作。

扩展公用钥匙

标准的比特币公钥以 0x02, 0x030x04.这些是比特币交易中使用的普通压缩或未压缩公钥。

扩展公钥以 0xFF, 0xFE0xFD.Electrum 利用这些信息提供更多关于密钥来源和衍生路径的信息。

扩展公开密钥有三种类型:

  1. 0xFF 是 BIP32 扩展公钥 (xpubs) 及其派生路径。
  2. 0xFE 使用 Electrum 传统的派生方法,将主公开密钥与其派生路径相结合。
  3. 0xFD 代表未知公钥,其中只有比特币地址是已知的。

类型

  1. BIP32 衍生 (以 0xFF):这种格式包括一个 78 字节长的扩展公钥 (xpub),然后是 BIP32 派生路径。派生路径由一系列 4 字节整数组成,总长度是派生步骤数的两倍。
  2. 遗留的伊勒克鲁姆衍生物 (以 0xFE):这种旧格式使用 64 字节长的主公钥 (mpk),然后是 4 字节的派生值。这种方法适用于早期版本的 Electrum。
  3. 仅比特币地址 (以 0xFD):当没有完整的公钥,但我们知道比特币地址或其对应的脚本哈希值时,就会使用这种格式。它存储输出脚本的 20 字节哈希值 160。该格式假定共同签名人可以在需要时提供实际的公钥。

这些扩展格式允许 Electrum 处理各种钱包类型和衍生方法,同时支持基于 BIP32 的现代分层钱包和老式 Electrum 钱包结构。电子钱包 0xFD 在处理部分已知的交易数据时,该格式也提供了灵活性。

标准公用钥匙

比特币使用特定的格式来表示公钥。这些格式是整个比特币网络公认的标准格式:

压缩公钥:开头为 0x020x03之后是 32 个字节的数据。起始字节表示 y-公开密钥在椭圆曲线上的点坐标是偶数 (0x02)或奇数(0x03).

未压缩的公开密钥:开头为 0x04然后是 64 字节的数据。这种格式包括 xy 公开密钥在椭圆曲线上的坐标点。

目录