比特币/以太坊/Tendermint签名及哈希算法梳理
数字签名
- 比特币:secp256k1
- 以太坊:secp256k1
- Tendermint:ed25519 (可选secp256k1)
哈希算法
- 比特币:double-SHA256 (双重SHA256,隶属SHA2)
- 以太坊:Keccak256 (隶属SHA3)
- Tendermint:RIPEMD160
地址生成
- 比特币:
- Base58(Version, PubKeyHash, Checksum)
- Version=0x00 (主网)
- PubKeyHash=RIPEMD160(SHA26(PubKey))
- Checksum=SHA256(SHA256(Version, PubKeyHash)),取结果的前4个字节
- 原始结果170bits,编码后长度为34
- Base58(Version, PubKeyHash, Checksum)
- 以太坊:
- Keccak256(PubKey)
- 取最后160bits,长度为20
更多文章欢迎关注“鑫鑫点灯”专栏:https://blog.csdn.net/turkeycock