提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录
- 9. 加密算法详解
- 9.1 哈希算法
- 9.1.1 Keccak256(以太坊使用)
- 9.1.2 SHA256(比特币使用)
- 9.2 非对称加密算法
- 9.2.1 ECDSA(椭圆曲线数字签名)
- 9.2.2 EdDSA(Solana使用)
- 9.3 对称加密算法
- 9.3.1 AES(钱包加密)
- 9.3.2 KeyStore 文件格式
9. 加密算法详解
9.1 哈希算法
9.1.1 Keccak256(以太坊使用)
代码示例:
应用场景:
9.1.2 SHA256(比特币使用)
Keccak256 vs SHA256:
9.2 非对称加密算法
9.2.1 ECDSA(椭圆曲线数字签名)
以太坊和比特币都使用 secp256k1 椭圆曲线:
密钥生成:
签名过程详解:
代码实现:
9.2.2 EdDSA(Solana使用)
Solana 使用 Ed25519 曲线,比 secp256k1 更快:
ECDSA vs EdDSA 对比:
9.3 对称加密算法
9.3.1 AES(钱包加密)
MetaMask 等钱包使用 AES-128-CTR 加密私钥:
9.3.2 KeyStore 文件格式
以太坊 KeyStore 文件(JSON 格式):
字段说明:
- ciphertext: AES加密后的私钥
- iv: 初始化向量
- kdf: 密钥派生函数(scrypt 或 pbkdf2)
- mac: 消息认证码(验证密码是否正确)
解密流程: