md5

  1. Message Digest Algorithm 5,信息摘要算法
    1. 压缩性:任意长度的数据,算出MD5值长度都是固定的
    2. 容易计算:从原数据计算出MD5值很容易
    3. 抗修改性:对原数据进行任何修改,哪怕一个字节,MD5值差异很大
    4. 强碰撞:想找到两个不同的数据,使它们具有相同的MD5值,非常困难
    5. 不可逆性:不可反解 ```python import hashlib

md5

m = hashlib.md5() salt = “ofqo” password = “123456” m.update((salt+password).encode(“utf8”)) print(m.hexdigest())

e10adc3949ba59abbe56e057f20f883e

  1. <a name="IwhGQ"></a>
  2. # md5盐值加密
  3. 1. 加盐
  4. 1. 通过生成随机数和 MD5 生成的字符串进行组合
  5. 2. 数据库同时存储 MD5 值 和 salt 值,验证正确性使用salt进行 MD5 即可
  6. ```python
  7. # 首先pip install passlib
  8. from passlib.hash import pbkdf2_sha256
  9. hash = pbkdf2_sha256.hash("123456")
  10. print(hash)
  11. print(pbkdf2_sha256.verify("123456", hash))
  12. print(pbkdf2_sha256.verify("123456", hash))

python -m grpc_tools.protoc —python_out=. —grpc_python_out=. -I. user.proto