关于私钥、公钥、地址的关系,其实也非常简单,私钥生成之后,对应的公钥就可以通过私钥生成,而最终的钱包地址可以通过公钥来生成或者获取到,私钥是源头。
1、私钥/助记词/Keystore
私钥是一个 265 位的数字,但是 265 位太长,一般会使用不同的进制来进行压缩显示,但是私钥最大的问题是每一个字符都无意义,所以大家想出了一个解决办法,把私钥变形为助记词,而助记词是人能看懂的单词,抄错的概率就小很多。
接着,因为私钥或者助记词太过暴露,任何人拿到就可以打开钱包转走资产,所以又出现了另外一种打开钱包的方式:Keystore +密码,Keystore 类似一个加密过的私钥,最终 Keystore + 密码 = 私钥/助记词,现在只有 ETH 钱包支持 Keystore + 密码的方式。
BTC
BTC 的私钥开头一般是“5”、“K”或“L”,使用的是 Base58 校验和编码格式,WIF(Wallet Import Format)格式的私钥,比如:

当然,BTC 的私钥有时候也显示成 64 位的 16进制,比如:

BTC 的某些钱包是支持助记词的,比如比特派钱包,以下就是一个 12 个单词的助记词示例(注意:下图仅仅为了展示,实际使用过程中,请你不要截屏)

ETH
ETH 的私钥一般直接用16进制显示,是一个 64 位的十六进制数比如:2d22fdd95ec986fd125ea9bdb7178dc2365c52527b16b9051d4247a34a2cdcbb
ETH 的助记词,我们比较熟悉的是 imToken 钱包的助记词(注意:下图仅仅为了展示,实际使用过程中,请你不要截屏)

如果你使用 Keystore 进行备份,Keystore 文件的内容如下(JSON 格式)

2、公钥
BTC & ETH
我们一般不使用BTC 和 ETH 的公钥,所以你也不用太关心它,你需要关心的是——通过私钥可以随时生成公钥。
3、钱包地址
BTC
比特币地址有几种形式。最常见的莫过于以数字“1”开头的P2PKH(Pay-to-Public-Key-Hash)地址,例如 1Nh7uHdvY6fNwtQtM1G5EZAFPLC33B59rB 。它表示的是最简单、用一对私钥和公钥控制的钱包。
另一种越来越普及的格式是以数字“3”开头的 P2SH(Pay-to-Script-Hash)地址,例如 3MotoZaxiHoCTDXuAjWXRHP37mprGAAEKU。多重签名、SegWit以及一些智能合约(没错,比特币也支持简单的智能合约)通常都采用这种“3”开头的地址。
ETH
ETH 的地址是一个十六进制的数字,类似 0x9dA96c3391F192731ECFfAF1bEc63434cc5C1b97
结束,谢谢!

