zoukankan      html  css  js  c++  java
  • Python3中的hashlib模块

    Python3中的hashlib模块提供了多个不同的安全哈希算法的通用接口

      hashlib模块代替了Python2中的md5和sham模块,使用这个模块一般分为3步

        1.创建一个哈希对象,使用哈希算法命名的构造函数或通用构造函数hashlib.new(name[, data])

        2.使用哈希对象调用update()方法填充这个对象

        3.调用digest() 或 hexdigest()方法来获取摘要(加密结果)

      注:

        1.update()方法需要接收的参数是一个字节对象(字节字符串,如:b"Hello,World!")

        2.常用的一些算法主要有: SHA1, SHA224, SHA256, SHA384, SHA512, MD5等算法

        3.SHA1算法比较早,是不能抵抗暴力破解的

    hashlib模块提供一下常量属性

      hashlib.algorithms_guaranteed

        获取保证在所有平台上此模块支持的哈希算法名称的集合

      hashlib.algorithms_available

        获取可以运行在Python解释器中的哈希算法名称的集合

    哈希对象常用的方法

      h = hashlib.md5()  或  h = hashlib.new("md5")        # md5可以替换为其他的哈希类型

      h.update(arg)

        将字节对象arg填充到哈希对象中,arg通常为要加密的字符串

      h.digest()

        返回加密结果,它是一个字节对象,长度为 h.digest_size,包含的字节范围 0 ~ 255

      h.hexdigest()

        返回加密结果,它是一个字符串对象,长度为 h.digest_size * 2,只包含16进制数字

  • 相关阅读:
    智能家居项目(3):编译工具makefile
    9、Cocos2dx 3.0游戏开发找小三之工厂方法模式与对象传值
    Redis于windows在安装
    Gray Code -- LeetCode
    hdu 1575 Tr A(矩阵高速电源输入)
    phpstorm快捷键
    Reverse Linked List II -- LeetCode
    程序猿的故事-注定奉献给节目
    poj2112 Optimal Milking --- 最大流量,二分法
    POJ 3356 AGTC(最长公共子)
  • 原文地址:https://www.cnblogs.com/li134655/p/7687790.html
Copyright © 2011-2022 走看看