hashlib模块,实现了支持多种不同哈希算法的接口,不同 hash 算法的构造函数就是算法名,返回的哈希对象都具有相同接口。哈希算法不是加密算法,所以下面提到的加密不是真的加密,因为真的加密需要能够反推到原始数据

1、模块对象

1.1 各种不同算法 hash 对象

1.1.1 初始化构建类:算法名([data]),例如 md5()、sha1()

参数设置:
data:待加密的数据

1.1.2 实例方法

update(arg):用 arg 更新加密数据,是追加而不是替换
digest():返回加密后二进制结果字符串,大小为 digest_size 字节
hexdigest():返回加密后十六进制结果字符串,长度是 digest 的两倍
copy():复制一个 hash 对象

1.1.3 实例属性

digest_size:哈希结果的字节大小
block_size:哈希算法内部块的字节大小

2、模块常数

hashlib.algorithms:元组形式返回模块支持的哈希算法名
hashlib.algorithms_guaranteed:以 set 形式返回在所有平台上都支持的哈希算法名
hashlib.algorithms_available:以 set 形式返回在当前 python 编译器上都支持的哈希算法名

3、模块方法

hashlib.pbkdf2_hmac(name, password, salt, rounds, dklen=None):更安全的加密方式,name 是哈希算法名,password 是字节型待加密数据,salt 是字节型干扰数据,rounds 是循环次数根据算法和机器决定一般100000,dklen 是结果密钥长度,为 none 就根据哈希算法的值确定
hashlib.new(name[, data]):创建哈希算法对象(非首选), name 是算法名, data 是待加密数据

Python2.7-hashlib的更多相关文章

  1. python2和python3区别

    字符编码: py3中默认字符编码是unicode:py2中默认字符编码是 ASCII,如果文件中出现了中文,需要在顶部加入coding声明#coding:utf8 让用户输入:py3中直接使用inpu ...

  2. python常见异常及解决方法

    异常1: ValueError: unsupported hash type sha224 ERROR:root:code for hash sha256 was not found. Traceba ...

  3. Python(文件、文件夹压缩处理模块,shelve持久化模块,xml处理模块、ConfigParser文档配置模块、hashlib加密模块,subprocess系统交互模块 log模块)

    OS模块 提供对操作系统进行调用的接口 os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径 os.chdir("dirname")  改变当前脚本工作目 ...

  4. Python自动化运维之9、模块之sys、os、hashlib、random、time&datetime、logging、subprocess

    python模块 用一砣代码实现了某个功能的代码集合. 类似于函数式编程和面向过程编程,函数式编程则完成一个功能,其他代码用来调用即可,提供了代码的重用性和代码间的耦合.而对于一个复杂的功能来,可能需 ...

  5. python成长之路第三篇(4)_作用域,递归,模块,内置模块(os,ConfigParser,hashlib),with文件操作

    打个广告欢迎加入linux,python资源分享群群号:478616847 目录: 1.作用域 2.递归 3.模块介绍 4.内置模块-OS 5.内置模块-ConfigParser 6.内置模块-has ...

  6. Python 第五篇(上):算法、自定义模块、系统标准模块(time 、datetime 、random 、OS 、sys 、hashlib 、json和pickle)

    一:算法回顾: 冒泡算法,也叫冒泡排序,其特点如下: 1.比较相邻的元素.如果第一个比第二个大,就交换他们两个. 2.对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对.在这一点,最后的元素应 ...

  7. python标准库]Hashlib

    hashlib主要提供字符加密功能,将md5和sha模块整合到了一起,支持md5,sha1, sha224, sha256, sha384, sha512等算法. 在学习hashlib模块之前,先来看 ...

  8. Python之数据加密与解密及相关操作(hashlib模块、hmac模块、random模块、base64模块、pycrypto模块)

    本文内容 数据加密概述 Python中实现数据加密的模块简介 hashlib与hmac模块介绍 random与secrets模块介绍 base64模块介绍 pycrypto模块介绍 总结 参考文档 提 ...

  9. 聚币网API[Python2版]

    聚币 现货 API [Python2版] 一.utils.py,基础类,包括HTTP 请求.签名等 # -*- coding: utf-8 -*- import hashlib import hmac ...

  10. python3之xml&ConfigParser&hashlib&Subprocess&logging模块

    1.xml模块 XML 指可扩展标记语言(eXtensible Markup Language),标准通用标记语言的子集,是一种用于标记电子文件使其具有结构性的标记语言. XML 被设计用来传输和存储 ...

随机推荐

  1. Android-View的绘制源码学习总结

    ##前言 算是第一篇正式的github博文,回顾了一下之前看过的view源码解析,做一个对目前为止View学习小的总结. 我觉得对于源码的解析和学习,把所有流程记下来意义并不是很大,最关键的是: 1. ...

  2. jQuery通用的全局遍历方法$.each()用法实例

    1.jQuery通用的全局遍历方法$.each()用法 2. test.json文件代码: 3. html代码 4.jQuery代码 <script src="jquery-1.3.1 ...

  3. python学习之老男孩python全栈第九期_day011作业

    1. 编写函数.(函数执行的时间是随机的) import timeimport randomdef random_time(): ''' 执行时间随机的函数 :return: ''' time.sle ...

  4. Python 调度算法 死锁 静动态链接 分页分段

    1 select poll epoll的区别基本上select有3个缺点: 连接数受限查找配对速度慢数据由内核拷贝到用户态poll改善了第一个缺点 epoll改了三个缺点. (1)select,pol ...

  5. 比较完整的PeopleSoft工具表名

    因为找不到其他地方有相对完整的PeopleSoft表名,因为我自己总结了一份. 在这里尝试提供一个庞大的PeopleSoft表列表,以便当你想快速访问PeopleSoft工具表时候,可以快速的查看这篇 ...

  6. ubuntu下android开发工作环境搭建

    www.bubuko.com/infodetail-655571.html 解压软件安装: sudo apt-get install unrar rar zip gzip  串口工具安装: sudo ...

  7. 【Python】TypeError: a bytes-like object is required, not 'str'解决

    对所使用的字符串类型调用encode()方法进行转换即可

  8. LeetCode题解之Rotated Digits

    1.题目描述 2.代码 int rotatedDigits(int N) { ; ; i <= N; i++) { if (isGood(i)) { res++; } } return res; ...

  9. Python之密度聚类

    # -*- coding: utf-8 -*- """ Created on Tue Sep 25 10:48:34 2018 @author: zhen "& ...

  10. 如何在 Azure 中标记 Windows 虚拟机

    本文介绍在 Azure 中通过 Azure 资源管理器标记 Windows 虚拟机的不同方式.标记是用户定义的键/值对,可直接放置在资源或资源组中.针对每个资源和资源组,Azure 当前支持最多 15 ...