现代密码学

现代密码学

Modern_Cryptography 现代密码学不再只是把字母换来换去——它是保证互联网、通信与数据存储安全的工程学:算法、协议、实现和部署的集合。本章从实用与实现的角度出发,带你理解对称加密、哈希、消息认证、公钥密码、密钥派生与常见协议(如 TLS / JWT),并重点讲清楚“为什么会出错”以及“如何用 C/Go 实现并在二进制/汇编层面验证”

声明:请多方验证

请注意:本文为个人/教学性整理,虽已力求准确,但并不代表权威或生产环境的完整规范。读者在将本文内容用于生产、学术或安全关键场景前,应查阅 RFC、主流加密库实现与权威资料并自行验证。欢迎联系作者指出问题与改进建议

目标读者: 已经完成古典密码学练习,并希望把重点放在实现,逆向与漏洞识别的读者

1. 对称加密(Symmetric Ciphers)

  1. S-DES -> 已经完成
  2. 3DES -> 这个不是很想写了(因为学过DES和AES了)
  3. AES-ECB -> 已经完成
  4. AES-CBC -> 已经完成
  5. AES-CTR -> 已经完成
  6. AES-GCM -> 已经完成
  7. ChaCha20 -> 已经完成
  8. ChaCha20-Poly1305(AEAD) -> 已经完成
  9. RC4(已不安全) -> 已经完成
  10. SM4(国密) -> 已经完成
  11. Salsa20
  12. TEA -> 已经完成

2. 非对称加密(Public-Key / Asymmetric)

  1. RSA(加密/签名) -> 已经完成
  2. ElGamal -> 已经完成
  3. Diffie–Hellman(DH) -> 已经完成
  4. ECC 通用(椭圆曲线密码) -> 已经完成
  5. ECDH(密钥交换) -> 已经完成
  6. ECDSA(签名) -> 已经完成
  7. Ed25519(签名) -> 已经完成
  8. X25519(密钥交换) -> 已经完成
  9. SM2(国密) -> 已经完成

3. 哈希函数(Hash Functions)

  1. MD5(不安全,了解即可)
  2. SHA-1(不安全) -> 已经完成
  3. SHA-256 -> 已经完成
  4. SHA-512 -> 已经完成
  5. SHA-3(Keccak)
  6. BLAKE2
  7. SM3(国密)

4. 消息认证码 MAC

  1. HMAC
  2. CMAC(AES)

5. 密钥派生函数 KDF

  1. PBKDF2
  2. HKDF