zoukankan      html  css  js  c++  java
  • 10.5、hashlib

    摘要算法:通过函数把任意长度的数据转换为一个长度固定的数据串(16进制)

    MD5、SHA1

    摘要算法就是通过摘要函数f()对任意长度的数据data计算出固定长度的摘要digest,目的是为了发现原始数据是否被人篡改过。

    import hashlib
    md5=hashlib.md5()
    md5.update('how to use md5 in pyhton hashlib'.encode('utf-8'))
    print(md5.hexdigest())

      import hashlib
      md5=hashlib.md5()
      md5.update('how to use md5 '.encode('utf-8'))
      md5.update('in pyhton hashlib'.encode('utf-8'))
      print(md5.hexdigest())

    0ffdcd300cfb86a68d070e9c77c60d3b

    MD5是最常见的摘要算法,速度很快,生成结果是固定的128 bit字节,通常用一个32位的16进制字符串表示。

    import hashlib
    sha1=hashlib.sha1()
    sha1.update('abc'.encode('utf-8'))
    sha1.update('def'.encode('utf-8'))
    print(sha1.hexdigest())
    
    1f8ac10f23c5b5bc1167bda84b833e5c057a77d2

    SHA1的结果是160 bit字节,通常用一个40位的16进制字符串表示。

    def login(user, password):
        if user in db.keys():
            md5=hashlib.md5()
            md5.update(password.encode('utf-8'))
            if md5.hexdigest()==db[user]:
                return True
            else:
                return False
        else:
            return False
  • 相关阅读:
    1.Vue.js的常用指令
    爬虫
    对key中有数字的字典进行排序
    微信公众号服务器验证的坑
    Linux之正则表达式grep
    Oracle之select
    Linux之文件与目录管理
    Linux之vim、压缩与解压缩
    Linux之文件权限、用户管理
    Oracle学习入门
  • 原文地址:https://www.cnblogs.com/soberkkk/p/12658645.html
Copyright © 2011-2022 走看看