hashlib python 加密框架

hashlib python 加密框架,第1张

概述python3中digest()和hexdigest()区别 转自:https://www.cnblogs.com/yrxns/p/7727471.html hashlib是涉及安全散列和消息摘要,提供多个不同的加密算法接口,如SHA1、SHA224、SHA256、SHA384、SHA512、MD5等。 其中 hash.digest() 返回摘要,作为二进制数据字符串值 hash.hexdiges python3中digest()和hexdigest()区别

转自:https://www.cnblogs.com/yrxns/p/7727471.html

hashlib是涉及安全散列和消息摘要,提供多个不同的加密算法接口,如SHA1、SHA224、SHA256、SHA384、SHA512、MD5等。

其中

hash.digest()
返回摘要,作为二进制数据字符串值

hash.hexdigest()
返回摘要,作为十六进制数据字符串值

举个例子

复制代码
import hashlib

md5 = hashlib.md5()
md5.update("a".encode(‘utf-8‘))
print(u"digest返回的摘要:%s"% md5.digest())
print(u"hexdigest返回的摘要:%s"% md5.hexdigest())
复制代码
结果

digest返回的摘要:b‘\x0c\xc1u\xb9\xc0\xf1\xb6\xa81\xc3\x99\xe2iw&a‘
hexdigest返回的摘要:0cc175b9c0f1b6a831c399e269772661

众配宝接口的加密规则是java实现的,转换成python

加密规则:1.请求报文 2.替换请求报文中的字符串(replace("\>\s+\<","><")) 3.替换后的字符串+key(‘alogalog‘)

4.第3步获取的字符串md5加密 5.将加密后的字符串base64编码

python实现加密

复制代码
import hashlib
import base64

md5 = hashlib.md5()

a = " 张三 13000000000 431400 甘肃省 兰州市 新洲区 李集街道 天水南路222号 天猫超市 天猫超市仓库 02781739210 430208 甘肃省 兰州市 新洲区 金口街旭光村菜鸟物流园3号库 test0926001 false 2302 7888000 290 170 160 2017-09-22 08:55:04 1 pressureTest CHENGBANGPEISONG-0001 NJCB-001 C H1 {‘nextRouteID‘:890,‘nextRouteType‘:2,‘targerRdcType‘:2,‘targetRdcID‘:890} 4859 1619095 CBWL 2017-09-24 23:59:00 108 WLB ydhtest1341573 LP00079477100697 ddhtest5454253 SB-ZFB 1 1 1619095 晟邦湖北分拨中心 MainWaybillAccess 1619095 MainWaybillAccesstest09260012017-09-22 09:13:11 zpb_chuyan_cb "
b = a.replace("\>\s+\<","><")+"alogalog"

md5.update(b.encode(‘utf-8‘))
b = md5.digest()
print(u"16位md5加密结果:%s"% b)
print(u"16位md5加密结果再进行base64编码:%s" % base64.b64encode(b).decode(‘utf-8‘)
)
复制代码
结果

16位md5加密结果:b‘(\xb1\xf9\xd9\xf4\x90\x90jN;\n~\x82)FF‘
16位md5加密结果再进行base64编码:KLH52fSQkGpOOwp+gilGRg==

加密结果与java实现的加密结果一致

注意:区分加密是hash.digest() 还是hash.hexdigest(),之前一直用的是hexdigest方法导致加密的结果不正确

总结

以上是内存溢出为你收集整理的hashlib python 加密框架全部内容,希望文章能够帮你解决hashlib python 加密框架所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1191652.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-03
下一篇 2022-06-03

发表评论

登录后才能评论

评论列表(0条)

保存