hashlib加密
一、hashlib的基本组成:
1.hashlib库是python3的标准库,主要用于数据的加密,以下是hashlib的方法及属性。
>>> import hashlib
>>> dir(hashlib)
['__all__', '__builtin_constructor_cache', '__builtins__', '__cached__', '__doc__', '__file__', '__get_builtin_constructor', '__loader__', '__name__', '__package__', '__spec__', '_hashlib', 'algorithms_available', 'algorithms_guaranteed', 'blake2b', 'blake2s', 'md5', 'new', 'pbkdf2_hmac', 'sha1', 'sha224', 'sha256', 'sha384', 'sha3_224', 'sha3_256', 'sha3_384', 'sha3_512', 'sha512', 'shake_128', 'shake_256']
2.hashlib在各种平台都支持的算法包括:
>>> hashlib.algorithms_guaranteed
{'sha3_384', 'sha3_512', 'sha224', 'blake2b', 'shake_256', 'blake2s', 'sha512', 'sha3_224', 'sha3_256', 'sha1', 'shake_128', 'sha384', 'md5', 'sha256'}
其中运用比较多的是md5算法。
3.hashlib在当前pyhton解释器支持的算法包括:
>>> hashlib.algorithms_available
{'RIPEMD160', 'ripemd160', 'sha', 'sha3_224', 'ecdsa-with-SHA1', 'SHA', 'blake2b', 'md5', 'sha256', 'SHA256', 'blake2s', 'sha3_256', 'MD5', 'SHA512', 'SHA1', 'whirlpool', 'dsaEncryption', 'DSA-SHA', 'sha3_384', 'sha3_512', 'sha224', 'shake_256', 'SHA224', 'md4', 'sha512', 'sha1', 'SHA384', 'shake_128', 'DSA', 'MD4', 'dsaWithSHA', 'sha384'}
二、hashlib主要方法:
1.hashlib.new(method,[data])方法:构建一个method加密对象,加密数据为data.
>>> m=hashlib.new('md5',b'China')
>>> m.digest()#返回二进制加密数据
b'\xaeT\xa5\xc0&\xf3\x1a\xda\x08\x89\x92X}\x92\xcb:'
>>> m.hexdigest()#返回十六进制加密数据
'ae54a5c026f31ada088992587d92cb3a'
注意:data必须为bytes类型数据。中文字的话通过encode()方法转化为bytes类型数据。
三、md5方法:
md5方法位于hashlib模块内。
>>> m=hashlib.md5()
>>> m.update(b'China')
>>> m.hexdigest()
'ae54a5c026f31ada088992587d92cb3a'
update()方法加密是叠加的,例如:m.update(b'China')与m.update(b'Chi'),m.update('na')后的结果一样。
hashlib加密的更多相关文章
- hashlib加密操作模块
import hashlib#加密操作obj=hashlib.md5(bytes("hasdfghjklcxz",encoding="utf-8"))#加密操作 ...
- 【转】python模块分析之hashlib加密(二)
[转]python模块分析之hashlib加密(二) hashlib模块是用来对字符串进行hash加密的模块,明文与密文是一一对应不变的关系:用于注册.登录时用户名.密码等加密使用.一.函数分析:1. ...
- Python常用模块之hashlib(加密)
Python常用模块之hashlib(加密) Python里面的hashlib模块提供了很多加密的算法,这里介绍一下hashlib的简单使用事例,用hashlib的md5算法加密数据import ha ...
- flask 使用hashlib加密
flask 使用hashlib加密 import hashlib #引入hashlib #使用方法: password = ' sha1 = hashlib.sha1() #使用sha1加密方法,你还 ...
- Hashlib加密,内置函数,安装操作数据库
hashlib模块的md5加密: md5同样的内容加密后是一样的 md5加密后是不可逆的.即能加密,没办法解密. 撞库: 只是针对简单的,因为同样的内容加密后是一样的,难一点就不行了. 登录密码:注册 ...
- python----常用模块(hashlib加密,Base64,json)
一.hashlib模块 1.1 hashlib模块,主要用于加密相关的操作,在python3的版本里,代替了md5和sha模块,主要提供 SHA1, SHA224, SHA256, SHA384, S ...
- python模块分析之hashlib加密(二)
前言 hashlib模块是py3.+用来对字符串进行hash加密的模块,核心算法是md5,明文与密文是一一对应不变的关系:用于注册.登录时用户名.密码等加密使用. 模块分析 hashlib模块有多种加 ...
- python之路 正则表达式,模块导入的方法,hashlib加密
一.正则表达式re python中re模块提供了正则表达式相关操作 字符: . 匹配除换行符以外的任意字符 \w 匹配字母或数字或下划线或汉字 \s 匹配任意的空白符 \d 匹配数字 \b 匹配单词的 ...
- 用户注册登录验证 多版本集合 + hashlib加密
#!/usr/bin/env python# -*- coding: utf-8 -*-# @Time : 2018/5/6 0006 12:22# @Author : Anthony.Waa# @S ...
随机推荐
- Lua学习二----------Lua的基本语法
© 版权声明:本文为博主原创文章,转载请注明出处 Lua基本语法: 1.--表示单行注释 2.--[[--]]表示多行注释 3.Lua区分大小写 4.Lua中变量默认是全局变量,除非用local显式声 ...
- 多通道 移位寄存器 verilog
// Quartus II Verilog Template // Basic 64-stage shift register with multiple taps module basic_shif ...
- condarc文件
channels: - https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/menpo/ - https://mirrors.tuna.tsingh ...
- xcode常见报错调试【原创】
BMKGeoCodeSearch 反向地理编码一直失败 Location 申请的key的安全码与代码中build id不一样,修改成一样就OK了 新建一个类,将百度地图的定位功能封装起来以后,定位的代 ...
- Centos内核版本升级
- openssl源码安装
下载最新的OpenSSL http://openssl.org/source/ ./config make make install 通过命令openssl version或者openssl ...
- Micro Python:运行在微控制器上的Python
Micro Python运行在微控制器上的Python.遵守MIT协议.由剑桥大学的理论物理学家乔治·达明设计.和Arduino类似,但Micro Python更强大. Micro Python的软件 ...
- opensearch空查询
query子句不支持为空的查询,可以使用filter子句:filter=area="" 或者 filter=filedlen(area)=0 可以使用相关性函数实现:https ...
- 数据结构---python---表
一.list的基本实现技术 在数据结构中,如果用python实现线性表,无疑要提到list,list是一种元素个数可变的线性表(而tuple是不变的表,不支持改变其内部状态的任何操作,其他与list性 ...
- 基于Darwin实现的分布式流媒体直播服务器系统
各位EasyDarwin开源项目的爱好者,您好,这篇博客的年限有点老了,目前EasyDarwin已经采用全新的云平台架构,详细可以参考博客:http://blog.csdn.net/xiejiashu ...