首先私钥其本质就是一个真随机数, 在计算机中存储的就是一个 byte 数组。EOS 的私钥样式不同于以太坊, 反而样式上更倾向于比特币。但 EOS 私钥的处理细节上和比特币还是有一些不同的。
以太坊私钥是对随机数做了 Hash, 这样以太坊私钥给我们呈现的样式是 16 进制的 64 位哈希值字符串。比特币是 WIF (Wallet Import Format) 编码格式, 对随机数做了 Base58 编码和 checksum, 并且比特币在进行 Base58 编码前, 将最后一位加了一个 01, 标识这个私钥转成公钥时, 需要转成可压缩公钥(compress-publickey)。但是 EOS 并没有加这个标识位, 直接要求所有私钥转成公钥时, 都是可压缩公钥(compress-publickey)。
其实在比特币和以太坊中, 私钥主要有两点作用:
- 私钥生成公钥, 从而推导交易地址
- 对交易进行授权签名
而对于 EOS 来说, 私钥主要是用来生成交易签名, 并不是用来生成交易地址。因为 EOS 引入了账号的概念, EOS 账号类似于 ENS 域名, 所以 EOS 的转账地址, 不是通过私钥推导出来。
EOS 私钥样式: 5KcryqKESci1TJbW4bsSVRStdcPRdqmJets1f9G225iqW3KBfEC
注: WIF格式的私钥的首字符是以“5”,“K”或“L”开头的