首先私鑰其本質就是一個真隨機數, 在計算機中存儲的就是一個 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”開頭的