[转]python模块分析之hashlib加密(二) hashlib模块是用来对字符串进行hash加密的模块,明文与密文是一一对应不变的关系:用于注册.登录时用户名.密码等加密使用.一.函数分析:1.共有5种加密算法:md5(),sha1(),sha224(),sha256(),sha384(),sha512(),分别得到不同的加密密文.2.hashlib.hexdigest():获取加密的密文,16进制,无参数.3.hashlib.digest():获取加密的密文,二进制,无参数.4.hash…
前言 hashlib模块是py3.+用来对字符串进行hash加密的模块,核心算法是md5,明文与密文是一一对应不变的关系:用于注册.登录时用户名.密码等加密使用. 模块分析 hashlib模块有多种加密算法如:'md5', 'sha1', 'sha224', 'sha256', 'sha384', 'sha512','blake2b', 'blake2s','sha3_224', 'sha3_256', 'sha3_384', 'sha3_512','shake_128', 'shake_256…
[转]python模块分析之collections(六) collections是Python内建的一个集合模块,提供了许多有用的集合类. 系列文章 python模块分析之random(一) python模块分析之hashlib加密(二) python模块分析之typing(三) python模块分析之logging日志(四) python模块分析之unittest测试(五) python模块分析之collections(六) OrderedDict 有序字典,相当于键值对列表:按照创建时的顺序…
[转]python模块分析之unittest测试(五) 系列文章 python模块分析之random(一) python模块分析之hashlib加密(二) python模块分析之typing(三) python模块分析之logging日志(四) python模块分析之unittest测试(五) python模块分析之collections(六) 单元测试模块unittest unittest的四个核心的概念: TestLoader:加载或分发测试任务的调度器: TestCase:测试用例的对象:…
[转]python模块分析之typing(三) 前言:很多人在写完代码一段时间后回过头看代码,很可能忘记了自己写的函数需要传什么参数,返回什么类型的结果,就不得不去阅读代码的具体内容,降低了阅读的速度,加上Python本身就是一门弱类型的语言,这种现象就变得更加的严重,而typing这个模块很好的解决了这个问题. 系列文章 python模块分析之random(一) python模块分析之hashlib加密(二) python模块分析之typing(三) python模块分析之logging日志(…
[转]python模块分析之logging日志(四) python的logging模块是用来写日志的,是python的标准模块. 系列文章 python模块分析之random(一) python模块分析之hashlib加密(二) python模块分析之typing(三) python模块分析之logging日志(四) python模块分析之unittest测试(五) python模块分析之collections(六) logging的结构 查看logging的python源码,可知主要有四个类实…
前言:很多人在写完代码一段时间后回过头看代码,很可能忘记了自己写的函数需要传什么参数,返回什么类型的结果,就不得不去阅读代码的具体内容,降低了阅读的速度,加上Python本身就是一门弱类型的语言,这种现象就变得更加的严重,而typing这个模块很好的解决了这个问题. 系列文章 python模块分析之random(一) python模块分析之hashlib加密(二) python模块分析之typing(三) python模块分析之logging日志(四) python模块分析之unittest测试…
前言 python的logging模块是用来设置日志的,是python的标准模块. 系列文章 python模块分析之random(一) python模块分析之hashlib加密(二) python模块分析之typing(三) python模块分析之logging日志(四) python模块分析之unittest测试(五) python模块分析之collections(六) 日志记录的级别 DEBUG:优先级10,记录调试的详细信息,只在调试时开启: INFO:优先级20,记录普通的消息,包括错误…
hashlib模块 用于加密相关的操作,在python3中替代了md5和sha模块,主要提供SHA和MD5算法. MD5 import hashlib m = hashlib.md5() #调用md5方法 m.update(b'Hello') print(m.digest()) #b"\x8b\x1a\x99S\xc4a\x12\x96\xa8'\xab\xf8\xc4x\x04\xd7" 2进制格式hash print(m.hexdigest()) #8b1a9953c4611296…
# 加密模块 import hashlib # md5 加密 md5 # 1.初始化md5模块 生成md5对象 # 2.引入要加密的数据 update # 3.获取加密值 hexdigest m = hashlib.md5() m.update('hello world'.encode('utf8')) #python3 中默认的字符编码是unicode print(m.hexdigest()) #5eb63bbbe01eeed093cb22bb8f5acdc3 # sha 加密 sha256…
8.hashlib 加密模块 ​ 主要用于加密和校验 常见密文:md5,sha1,sha256,sha512 只要明文相同,密文就相同 只要明文不相同,密文就是不相同的 不能反逆(不能解密)--md5中国破解了 最常用的是MD5(用于校验),平时加密时使用sha1 '''加密 1.指定要加密的方式 2.将要加密的内容转成字节 3.合成 ''' import hashlib md5 = hashlib.md5()#1 md5 = hashlib.sha1() md5 = hashlib.sha25…
前言 我们使用time和datetime模块的主要目的是对时间戳.时间字符串.时间元组等时间的表述对象进行相互的转化.而我们平时编码涉及两个时间:一个是上海时间,也可以说是北京时间,一个是UTC时间,即世界协调时间:北京时间比UTC时间多了八个小时. 时间戳.时间字符串.时间元组 时间戳:一般是float的形式: 时间字符串:指的是一定格式描述时间的字符串. %a 本地(locale)简化星期名称 %A 本地完整星期名称 %b 本地简化月份名称 %B 本地完整月份名称 %c 本地相应的日期和时间…
SQLite作为一种应用广泛的文件式关系型数据库,python操作sqlite主要有两种方式,原生SQL语句和ORM映射工具. SQLAlchemy连接SQLITE SQLAlchemy是一款优秀的python连接关系型数据库的ORM工具,支持SQLite,MYSQL,ORICLE等多种关系型数据库,具体使用: 参见:http://docs.jinkan.org/docs/flask/patterns/sqlalchemy.html 这里主要记录一下SQLAlchemy连接SQLITE的配置方法…
Python常用模块之hashlib(加密) Python里面的hashlib模块提供了很多加密的算法,这里介绍一下hashlib的简单使用事例,用hashlib的md5算法加密数据import hashlib hash = hashlib.md5()#md5对象,md5不能反解,但是加密是固定的,就是关系是一一对应,所以有缺陷,可以被对撞出来 hash.update(bytes('admin',encoding='utf-8'))#要对哪个字符串进行加密,就放这里 print(hash.hex…
一.hashlib模块 hashlib模块介绍:hashlib这个模块提供了摘要算法,例如 MD5.hsa1 摘要算法又称为哈希算法,它是通过一个函数,把任意长度的数据转换为一个长度固定的数据串,这个数据串使用的十六进制表示.摘要算法是一个单向函数,计算容易,如果想要反推摘要算法那是非常喜困难的,而且 如果对原数据做了一个bit的修改,都会导致计算出的摘要完全不同,我们经常使用摘要对比数据是否被修改过和密码的加密: 使用MD5进行密码机密 我们常见的摘要算法大多为MD5,在Python中字符串不…
一.hashlib模块 1.1 hashlib模块,主要用于加密相关的操作,在python3的版本里,代替了md5和sha模块,主要提供 SHA1, SHA224, SHA256, SHA384, SHA512 ,MD5 算法.加密需要先实例化MD5对象,再将字符串转成bytes类型(加密必须得是bytes类型,不能直接对字符串加密)进行加密,且md5是不可逆的! m =hashlib.md5()#实例化md5对象 passwd ='ytt123456' # passwd.encode()#把字…
一.hashlib模块 hashlib模块,主要用于加密相关的操作,在python3的版本里,代替了md5和sha模块,主要提供 SHA1, SHA224, SHA256, SHA384, SHA512 ,MD5 算法 import hashlib #导入模块 ######## md5 ########### m = hashlib.md5() #创建一个对象 m.update(b"hhf") #加密字符串 b代表byte,是把字符串转换成byte类型,也可以用bytes()强制转换…
一.xlwt xlwt是python第三方模块,主要是对excel的写操作.xlwt使用时必须先安装. 1.安装 在操作系统的cmd窗口输入pip install xlwt回车即可在线安装. 安装完成后,在写python使用时,需要引入 import xlwt 2.写excel book = xlwt.Workbook() #新建一个excel sheet = book.add_sheet('sheet1')#加sheet页 sheet.write(0,0,'姓名')#行.列.写入的内容 she…
python 模块hashlib import hashlib m=hashlib.md5()         # 生成MD5加密对象 m.update('jiami-string'.encode('utf8'))     # 给对象传入一个字符串 ‘jiami-string’ 并且必须编码成‘utf8’ m.hexdigest()     # 生成16进制的字符串   print(m.hexdigest())  打印 --> 59e58649d0cd655002b6c101f4663db3 s…
Hashlib模块 Python里面的hashlib模块提供了很多加密的算法,这里介绍一下hashlib的简单使用事例,用hashlib的md5算法加密数据,其他的所有加密算法使用方式上基本类似. hashlib模块主要提供 SHA1, SHA224, SHA256, SHA384, SHA512 ,MD5 算法 使用方法如下: #!/usr/bin/env python # -*- coding: utf-8 -*- # @Time : 2017/11/27 0027 16:09 # @Aut…
json模块 简介 全称"JavaScript Object Notation" (JavaScript对象表示法)它是一种基于文本,独立于语言的轻量级数据交换格式 以易于让人阅读的文字为基础,用来传输由属性值或者序列性的值组成的数据对象(键值对) 特点 轻量级的文本数据交换格式 易于人类阅读和编写,同时也易于机器解析和生成 Web世界当中最理想的数据交换格式 语法规则 数据由键值对组成 键值对由逗号分隔 大括号里保存对象 中括号里保存数组(Pyton中的的列表或元组) 字符串必须用双…
Hash,译做“散列”,也有直接音译为“哈希”的.把任意长度的输入,通过某种hash算法,变换成固定长度的输出,该输出就是散列值,也称摘要值.该算法就是哈希函数,也称摘要函数. MD5是最常见的摘要算法,速度很快,生成结果是固定的16字节,通常用一个32位的16进制字符串表示.SHA1算法更安全点,它的结果是20字节长度,通常用一个40位的16进制字符串表示.而比SHA1更安全的算法是SHA256和SHA512等等,不过越安全的算法越慢,并且摘要长度更长. 两个模块主要用于加密相关的操作(加密数…
Python 入门之 内置模块 -- hashlib模块 1.hashlib 摘要算法,加密算法 (1)主要用途: <1> 加密 : md5 sha1 sha256 sha512 md5,加密速度快,安全系数低 sha512 加密速度慢,安全系数高 <2> 校验 : md5 sha1 sha256 sha512值 import hashlib (2)hashlib的特征以及使用要点: <1> bytes类型数据 ---> 通过hashlib算法 ---> 固…
 哈希加密代码 #!/usr/bin/env python # -*- coding;utf-8 -*- """ 哈希加密模块中有很多算法,调用不同的算法执行不同的加密,只需要修改调用模块,其他代码不用修改 """ import hashlib # 对相同字符串进行相同加密算法会得到相同结果 # 为了提高加密效果自定义一个字符串,与要第一次加密的内容在进行加密 # 别人不知道已给的字符串,通过123执行加密得不到最后的密文 hash = hash…
转自https://my.oschina.net/duhaizhang/blog/67214 MD5模块用于产生消息摘要,康用来判断文件是否相同. python的md5模块使用非常简单,包括以下几个函数: md5.new([arg]) 返回一个md5对象,如果给出参数,则相当于调用了update(arg) md5.md5(s) 返回字符串s的md5 md5.updte(arg) 用string参数arg更新md5对象.即将要计算arg的消息摘要值. md5.digest() 返回16字节的摘要,…
Python模块02/序列化/os模块/sys模块/haslib加密/collections 内容大纲 1.序列化 2.os模块 3.sys模块 4.haslib加密 5.collections 1.序列化 1.1 什么是序列化 # 什么是序列化 -- json 序列化模块就是将一个常见的数据结构转化成一个特殊的序列,并且这个特殊的序列还可以反解回去.它的主要用途:文件读写数据,网络传输数据. # lit = [1,22,3,3,45] # [1,22,3,3,45] # s_lst = str…
摘要:由于近期打算修改Python解释器以实现pyc文件的加密/解密,出于保密的要求,解密之后的数据只能放在内存中,不能写入到文件中.但是后续的解析pyc文件的代码又只能接受FILE*作为入参,所以就提出了一种把通过FILE*来访问内存的需求,下文是针对这个需求的几个方面的尝试及其结论. 以下尝试的前提是:Win7 + VS2010. 在vc中,FILE其实就是_iobuf,定义如下: struct _iobuf { char *_ptr; //文件输入的下一个位置 int _cnt; //当前…
[转]python之random模块分析(一) random是python产生伪随机数的模块,随机种子默认为系统时钟.下面分析模块中的方法: 1.random.randint(start,stop): 这是一个产生整数随机数的函数,参数start代表最小值,参数stop代表最大值,两端的数值都可以取到: 函数算法时间复杂度:O(1)核心源代码:return self.randrange(a, b+1)   # 由randrange函数封装而来例子: for i in range(20): pri…
目录 Python - 模块(二) re re下面的方法 logging os Python - 模块(二) re re模块提供了正则表达式的相关操作 主要字符介绍: . 通配符,除了换行符之外的任意字符 ^ 匹配字符串的开始 $ 匹配字符串的结尾 关于次数的: * 按紧挨着的字符重复无数次, 重复零次或更多次 + 1到无穷次, 重复一次或更多次 ? (0,1) 重复零次或一次 {n} 重复n次 {n,} 重复n次或更多次 {n,m} 重复n到m次 其他的: [] 字符集 | 或 () 分组 \…
python的md5和sha1加密 0. md5 与 sha1 MD5 的全称是 Message-Digest Algorithm 5(信息-摘要算法).128 位长度.目前 MD5 是一种不可逆算法.具有很高的安全性.它对应任何字符串都可以加密成一段唯一的固定长度的代码. md5 的应用场景: 加密网站注册用户的密码. (但去年的各大网站密码泄漏事件确实让人蛋疼--) 网站用户上传图片 / 文件后,计算出 MD5 值作为文件名.(MD5可以保证唯一性) key-value数据库中使用MD5值作…