在使用hashlib模块时需要先 import hashlib 引入模块

用于加密相关的操作,代替了md5模块和sha模块,主要提供 SHA1, SHA224, SHA256, SHA384, SHA512 ,MD5 算法

1.  hashlib.加密方式函数()  :定义加密方式,有参,参数是字符串转换的二进制,写上参数相当于就是给加密定义一个自定义秘钥

   如:hash = hashlib.md5()

2.  update()  将要加密的内容追加更新到加密方式里,有参,参数是字符串转换的二进制

   如:hash.update(bytes('你好', encoding='utf-8'))

3.  hexdigest()  获取加密后的加密串

   如:print(hash.hexdigest())

4.  digest()  获取加密后加密串的二进制


hashlib.md5()模块函数

功能:md5加密【有参可选】

#!/usr/bin/env python
# -*- coding:utf8 -*-
import hashlib #引入hashlib模块
a = hashlib.md5() #hashlib.md5()定义md5加密方式
a.update(bytes('加密内容', encoding='utf-8')) #bytes()将要加密的内容转换成二进制,update()将二进制追加更新到加密对象里
print(a.hexdigest()) #hexdigest()获取加密对象里加密后的密串
#print(a.digest()) #digest()获取加密对象里加密后的密串二进制 #输出
# 220be55b2e3d8e60f9214b04a7a2328f

秘钥加密

#!/usr/bin/env python
# -*- coding:utf8 -*-
import hashlib #引入hashlib模块
a = hashlib.md5(bytes('秘钥内容', encoding='utf-8')) #hashlib.md5()定义md5加密方式,参数可以加秘钥加密
a.update(bytes('加密内容', encoding='utf-8')) #bytes()将要加密的内容转换成二进制,update()将二进制追加更新到加密对象里
print(a.hexdigest()) #hexdigest()获取加密对象里加密后的密串
#print(a.digest()) #digest()获取加密对象里加密后的密串二进制 #输出
# 8fa00c7d401c2dbdb07415e1267e1c29

hashlib.sha1()模块函数
功能:sha1加密【有参可选】

#!/usr/bin/env python
# -*- coding:utf8 -*-
import hashlib #引入hashlib模块
a = hashlib.sha1() #hashlib.sha1()定义sha1加密方式,参数可以加秘钥加密
a.update(bytes('加密内容', encoding='utf-8')) #bytes()将要加密的内容转换成二进制,update()将二进制追加更新到加密对象里
print(a.hexdigest()) #hexdigest()获取加密对象里加密后的密串
#print(a.digest()) #digest()获取加密对象里加密后的密串二进制 #输出
# 692bee2faf93fe878bac404895d6ebd4143160f7

秘钥加密

#!/usr/bin/env python
# -*- coding:utf8 -*-
import hashlib #引入hashlib模块
a = hashlib.sha1(bytes('秘钥内容', encoding='utf-8')) #hashlib.sha1()定义sha1加密方式,参数可以加秘钥加密
a.update(bytes('加密内容', encoding='utf-8')) #bytes()将要加密的内容转换成二进制,update()将二进制追加更新到加密对象里
print(a.hexdigest()) #hexdigest()获取加密对象里加密后的密串
#print(a.digest()) #digest()获取加密对象里加密后的密串二进制 #输出
# a32556a79be8fbd99daf852fdccd48ea6c84dcba

hashlib.sha256()模块函数
功能:sha256加密【有参可选】

#!/usr/bin/env python
# -*- coding:utf8 -*-
import hashlib #引入hashlib模块
a = hashlib.sha256() #hashlib.sha256()定义sha256加密方式,参数可以加秘钥加密
a.update(bytes('加密内容', encoding='utf-8')) #bytes()将要加密的内容转换成二进制,update()将二进制追加更新到加密对象里
print(a.hexdigest()) #hexdigest()获取加密对象里加密后的密串
#print(a.digest()) #digest()获取加密对象里加密后的密串二进制 #输出
# 0a3bdffddd689a4a7884b93ee01b6e39f4be37c2858fcbea4a41958c8ca0c449

秘钥加密

#!/usr/bin/env python
# -*- coding:utf8 -*-
import hashlib #引入hashlib模块
a = hashlib.sha256(bytes('秘钥内容', encoding='utf-8')) #hashlib.sha256()定义sha256加密方式,参数可以加秘钥加密
a.update(bytes('加密内容', encoding='utf-8')) #bytes()将要加密的内容转换成二进制,update()将二进制追加更新到加密对象里
print(a.hexdigest()) #hexdigest()获取加密对象里加密后的密串
#print(a.digest()) #digest()获取加密对象里加密后的密串二进制 #输出
# adca1dab1be1f4cc2b122a722501d69ded6ec187d1b5e2cd9f0917831d23250d

hashlib.sha384()模块函数
功能:sha384加密【有参可选】

#!/usr/bin/env python
# -*- coding:utf8 -*-
import hashlib #引入hashlib模块
a = hashlib.sha384() #hashlib.sha384()定义sha384加密方式,参数可以加秘钥加密
a.update(bytes('加密内容', encoding='utf-8')) #bytes()将要加密的内容转换成二进制,update()将二进制追加更新到加密对象里
print(a.hexdigest()) #hexdigest()获取加密对象里加密后的密串
#print(a.digest()) #digest()获取加密对象里加密后的密串二进制 #输出
# d72f3e201a71d985fe24b4604580772be7fcbbedb58e8563695796793d0870231811f65957c5735ec9d393f23099ae1c

秘钥加密

#!/usr/bin/env python
# -*- coding:utf8 -*-
import hashlib #引入hashlib模块
a = hashlib.sha384(bytes('秘钥内容', encoding='utf-8')) #hashlib.sha384()定义sha384加密方式,参数可以加秘钥加密
a.update(bytes('加密内容', encoding='utf-8')) #bytes()将要加密的内容转换成二进制,update()将二进制追加更新到加密对象里
print(a.hexdigest()) #hexdigest()获取加密对象里加密后的密串
#print(a.digest()) #digest()获取加密对象里加密后的密串二进制 #输出
# 4dadebe0311ee367fce3b99f09fc2a47acd85afd80d5c9189259ce63ceaa68a876b3f12399a105450479060704c49eb6

hashlib.sha512()模块函数
功能:sha512加密【有参可选】

#!/usr/bin/env python
# -*- coding:utf8 -*-
import hashlib #引入hashlib模块
a = hashlib.sha512() #hashlib.sha512()定义sha512加密方式,参数可以加秘钥加密
a.update(bytes('加密内容', encoding='utf-8')) #bytes()将要加密的内容转换成二进制,update()将二进制追加更新到加密对象里
print(a.hexdigest()) #hexdigest()获取加密对象里加密后的密串
#print(a.digest()) #digest()获取加密对象里加密后的密串二进制 #输出
# 5a77aa311064578b110245bf47dc381caa16fa00a8b3de6eb28a9853e90467fa011ec412ab54d4dae135b752a383391a222a17a2b52de5d76f3c124153889235

秘钥加密

#!/usr/bin/env python
# -*- coding:utf8 -*-
import hashlib #引入hashlib模块
a = hashlib.sha512(bytes('秘钥内容', encoding='utf-8')) #hashlib.sha512()定义sha512加密方式,参数可以加秘钥加密
a.update(bytes('加密内容', encoding='utf-8')) #bytes()将要加密的内容转换成二进制,update()将二进制追加更新到加密对象里
print(a.hexdigest()) #hexdigest()获取加密对象里加密后的密串
#print(a.digest()) #digest()获取加密对象里加密后的密串二进制 #输出
# 5a77aa311064578b110245bf47dc381caa16fa00a8b3de6eb28a9853e90467fa011ec412ab54d4dae135b752a383391a222a17a2b52de5d76f3c124153889235

第三十七节,hashlib加密模块的更多相关文章

  1. 第三百三十七节,web爬虫讲解2—PhantomJS虚拟浏览器+selenium模块操作PhantomJS

    第三百三十七节,web爬虫讲解2—PhantomJS虚拟浏览器+selenium模块操作PhantomJS PhantomJS虚拟浏览器 phantomjs 是一个基于js的webkit内核无头浏览器 ...

  2. centos shell编程3【告警系统】 没有服务器端和客户端的概念 main.sh mon.conf load.sh 502.sh mail.php mail.sh disk.sh 第三十七节课

    centos shell编程3[告警系统]  没有服务器端和客户端的概念 main.sh mon.conf load.sh 502.sh mail.php mail.sh  disk.sh  第三十七 ...

  3. 风炫安全web安全学习第三十七节课 15种上传漏洞讲解(二)

    风炫安全web安全学习第三十七节课 15种上传漏洞讲解(二) 05后缀名黑名单校验之上传.htaccess绕过 还是使用黑名单,禁止上传所有web容器能解析的脚本文件的后缀 $is_upload = ...

  4. python 基础(十七)--hashlib加密模块

    hashlib加密模块 两种方式使用 字符串是中文时需要先编码成utf-8 常用加密算法:md5,sha1(已被破解)等... >>> a= hashlib.md5() >&g ...

  5. 第三十七节、人脸检测MTCNN和人脸识别Facenet(附源码)

    在说到人脸检测我们首先会想到利用Harr特征提取和Adaboost分类器进行人脸检测(有兴趣的可以去一看这篇博客第九节.人脸检测之Haar分类器),其检测效果也是不错的,但是目前人脸检测的应用场景逐渐 ...

  6. 第二百三十七节,Bootstrap图标菜单按钮组件

    Bootstrap图标菜单按钮组件 学习要点: 1.小图标组件 2.下拉菜单组件 3.按钮组组件 4.按钮式下拉菜单 本节课我们主要学习一下 Bootstrap 的三个组件功能:小图标组件.下拉菜单组 ...

  7. [extjs5学习笔记]第三十七节 Extjs6预览版都有神马新东西

    本文在微信公众号文章地址:微信公众号文章地址 本文地址:http://blog.csdn.net/sushengmiyan/article/details/45190485 [TOC] 在Ext JS ...

  8. 第一百三十七节,JavaScript,封装库---修缮拖拽

    JavaScript,封装库---修缮拖拽 修缮拖拽 /** tuo_zhuai()方法,将一个弹窗元素实现拖拽功能 * 注意:有参设置拖拽点区块,只有弹窗的这个拖拽点区块才能拖拽,无参整个弹窗可以拖 ...

  9. 第三百九十七节,Django+Xadmin打造上线标准的在线教育平台—其他插件使用说,主题本地化设置

    第三百九十七节,Django+Xadmin打造上线标准的在线教育平台—其他插件使用说,主题本地化设置 主题设置是在xadmin\plugins\themes.py这个文件 默认xadmin是通过下面这 ...

随机推荐

  1. 常用python处理try except异常的三种方式

    如果你在写python程序时遇到异常后想进行如下处理的话,一般用try来处理异常,假设有下面的一段程序: try:     语句1     语句2     .     .     语句N except ...

  2. JavaScript 执行环境(执行上下文) 变量对象 作用域链 上下文 块级作用域 私有变量和特权方法

    总结自<高程三>第四章  理解Javascript_12_执行模型浅析   JS的执行环境与作用域  javascript高级程序第三版学习笔记[执行环境.作用域] 在javascript ...

  3. win10系统 L2TP连接尝试失败:ERROR因为安全层在初始化与远程计算机的协商时遇到了一个处理错误

    1 确保IPsec Policy Agent服务已启动 2 确保路由和远程访问(Routing and Remote Access)和远程访问连接管理器服务(Remote Access Connect ...

  4. sql 根据字段查询不同表

    SELECT snFundType,snBusinessType, THEN (select vcPaySerialNo from aa where vcSerialNo=a.vcRelationSe ...

  5. RabbitMQ持久化编码注意事项

    以Java语言,MQ客户端为amqp-client作为示例 1.基本原则 direct模式,由生产者声明队列名,消费者也声明队列名 topic模式,由生产者声明交换器名,由消费者声明队列名+交换器名+ ...

  6. PAT 团体程序设计天梯赛-练习集 L1-019. 谁先倒

    给出甲.乙两人的酒量(最多能喝多少杯不倒)和划拳记录,请你判断两个人谁先倒. 输入格式: 输入第一行先后给出甲.乙两人的酒量(不超过100的非负整数),以空格分隔.下一行给出一个正整数N(<=1 ...

  7. php获取本周周一、周日时间,上周周一、周日时间,本月第一天,本月最后一天,上个月第一天,最后一天时间

    权声明:本文为博主原创文章,未经博主允许不得转载. //这个星期的星期一 // @$timestamp ,某个星期的某一个时间戳,默认为当前时间 // @is_return_timestamp ,是否 ...

  8. 读书笔记之ado.net entity framework

    提供了对数据访问的一种抽象层,是更加易于以编程的方式来操作及管理数据 有以下几种模式:Model First, Database First, and Code First 现在主要讨论code Fi ...

  9. Java Object 对象创建的方式 [ 转载 ]

    Java Object 对象创建的方式 [ 转载 ] @author http://blog.csdn.net/mhmyqn/article/details/7943411 显式创建 有4种显式地创建 ...

  10. 1、第一个SpringMVC程序

    1.创建如下项目结构 2.在src下的com.springmvc下创建User.java package com.springmvc; public class User { private Stri ...