python下载hashlib命令_python之hashlib模块[通俗易懂]

python下载hashlib命令_python之hashlib模块[通俗易懂]importhashlib#md5加密工具,md5是不可逆的,所以只能比较密文,不能比较明文,python中不仅仅提供md5加密方法,还提供sha1,sha224,sha256,sha384,sha512,MD5加密算法test_md5=hashlib.md5()test_md5.update(bytes(‘123′,encoding=’utf-8’))ret=test_md5.hexd…

大家好,又见面了,我是你们的朋友全栈君。

import hashlib

#md5加密工具,md5是不可逆的,所以只能比较密文,不能比较明文,python中不仅仅提供md5加密方法,还提供sha1,sha224,sha256,sha384,sha512,MD5加密算法

test_md5 = hashlib.md5()

test_md5.update(bytes(‘123′,encoding=’utf-8’))

ret = test_md5.hexdigest()

print(ret)

#还可以提供一个key

test_md5 = hashlib.md5(bytes(‘abbbbb’,encoding=’utf-8′))

test_md5.update(bytes(‘123′,encoding=’utf-8’))

ret = test_md5.hexdigest()

print(ret)

还可以使用sha1的方法

test_sha1 = hashlib.sha1()

test_sha1.update(bytes(“123″,encoding=”utf-8”))

ret = test_sha1.hexdigest()

print(ret)

#sha1的方法也可以提供一个key

test_sha1 = hashlib.sha1(bytes(“123″,encoding=”utf-8”))

test_sha1.update(bytes(“123″,encoding=”utf-8”))

ret = test_sha1.hexdigest()

print(ret)

#其他的算法的使用方法可以sha1和md5的方法都是雷同的,大家可以自己私下尝试

我们可以看下下面的例子,就可以大致看出一些端倪,意思就是每个hashlib对象只能加密一个字符串,不能多次使用

import hashlib

s1 = “alex”

s2 = “sb”

s3 = “alexsb”

m1 = hashlib.md5(bytes(“aa”,encoding=”utf-8″))

m1.update(bytes(s1,encoding=”utf-8″))

m1.update(bytes(s2,encoding=”utf-8″))

a = m1.hexdigest()

print(a)

# 5a6021d832f80e3b6067a10dff5b9f30

m2 = hashlib.md5(bytes(“aa”,encoding=”utf-8″))

m2.update(bytes(s3,encoding=”utf-8″))

b = m2.hexdigest()

print(b)

# 5a6021d832f80e3b6067a10dff5b9f30

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/137604.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 关于参数thresh的理解(pd.dropna(thresh=n))

    关于参数thresh的理解(pd.dropna(thresh=n))书上的表达:假设你只想保留包含一定数量的观察值的行,可以使用thresh参数来表示。嗯嗯嗯….有些模棱两可。摸索了一番,终于理解了。格式:df.dropna(thresh=n)简单的理解:这一行除去NA值,剩余数值的数量大于等于n,便显示这一行。1.先创建数组,代码如下:1importnumpyasnp2from…

    2025年6月30日
    2
  • 【C/C++面试必备】volatile 关键字

    【C/C++面试必备】volatile 关键字????作者:Linux猿????简介:CSDN博客专家????,C/C++、面试、刷题、算法尽管咨询我,关注我,有问题私聊!????关注专栏:C/C++面试通关集锦(优质好文持续更新中……)????本文来讲解一下C/C++中的关键字volatile。在日常的使用中很少使用到,但是,在面试中经常被提起,下面具体来看一下。volatile的作用是什么呢?volatile意思是易变的,是一种类型修饰符,在C/C++中用来阻止编译器因误认某段代码无法被代码本身所改变,而造成的

    2022年7月27日
    7
  • 傅里叶级数与傅里叶变换公式推导「建议收藏」

    傅里叶级数与傅里叶变换公式推导「建议收藏」首先,傅里叶分析是指把一个周期或非周期函数展开成一个个三角函数的叠加,如果是对其还没有基本概念的,可以看看傅里叶分析之掐死教程,这篇文章不依赖数学公式却又十分透彻地讲述了傅里叶分析的基本概念,十分值得一读。但如果先深入探讨其中的数学由来,接下来会讲述详细的数学推导。傅里叶级数三角函数系的正交性三角函数系:{1,sinx,cosx,sin2x,cos2x,…,sinnx,cosnx,…},它由无数个sinnx和cosnx组成,其中n=0,1,2,…。正交性:∫−ππsin⁡nxcos⁡mxdx=0,

    2022年7月17日
    21
  • sqlplus中实现上、下键翻动命令

    sqlplus中实现上、下键翻动命令

    2021年8月26日
    61
  • 常用webservice方法_太极拳初学入门的基本要领

    常用webservice方法_太极拳初学入门的基本要领1.什么是webservice先来考虑一个问题,如果我们要在自己的程序里面展示天气预报,那怎么弄?正确的做法是我们发送一个请求到一个系统,他会给我们返回来天气情况。这个就是一个webservice。天气预报系统就相当于webservice的服务端,我们的系统就相当于客户端。2.如何调用别人发布的webservice

    2022年9月21日
    3
  • jre环境变量配置_Windows系统配置Java环境变量

    jre环境变量配置_Windows系统配置Java环境变量一、到达环境变量配置页面从路径:桌面->控制面板->系统和安全->系统,到达系统,点击左侧“高级系统设置”,再点击“环境变量”。方法1:在桌面上右键“此电脑”,选择属性,直接到达系统(桌面无“此电脑”或“控制面板”的同学可选择方法2),然后点击“高级系统设置”,再点击“环境变量”,到达配置页面。123方法2:1点击窗口,选择设置2搜索并…

    2022年7月8日
    180

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号