返回顶部
首页 > 资讯 > 后端开发 > Python >Python中有哪些常见的加密操作
  • 148
分享到

Python中有哪些常见的加密操作

2023-06-13 05:06:30 148人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

这篇文章给大家介绍python中有哪些常见的加密操作,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。hashlib加密import hashlib # 有很多种加密方式,md5,sha1等等

这篇文章给大家介绍python中有哪些常见的加密操作,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

hashlib加密

import hashlib # 有很多种加密方式,md5,sha1等等h = hashlib.md5()# 提交加密的内容,bytes形式h.update(b"satori")# 二进制形式print(h.digest())'''b'\x13\xd54\x0f:\xdf\x8e[\xe0\x83\xdd\xc6\xca\xd2G\xb8''''# 十六进制形式print(h.hexdigest())'''13D5340f3adf8e5be083ddc6cad247b8'''
import hashlib # 相对的,还有简便的操作# 直接指定要加密的字符串h2 = hashlib.md5(b"satori")print(h2.hexdigest())'''13d5340f3adf8e5be083ddc6cad247b8''' h3 = hashlib.md5()h3.update(b"satori")print(h3.hexdigest())'''13d5340f3adf8e5be083ddc6cad247b8'''# 两者结果是一样的

hMac加密

import hmacimport hashlib # key:密钥# msg:内容# digestmod:加密的模式,默认是md5h2 = hmac.new(key=b"satori", msg=b"satori", digestmod=hashlib.md5)print(h2.hexdigest())'''3cba321fbb4e02c5b7e9fb7ef82bb47b''' # 也可以通过update添加内容,是添加,不是覆盖h3 = hmac.new(key=b"satori")h3.update(b"satori")print(h3.hexdigest())'''3cba321fbb4e02c5b7e9fb7ef82bb47b'''

secrets

import secrets # secrets貌似是python3.6里新增的模块,先来看看api# secrets.choice(iterable),从可迭代对象里随机选择一个元素并返回# secrets.randbelow(n),从[0,n)中随机选择一个数并返回# secrets.randbits(k),返回带有k个随机位的整数# secrets.token_bytes(nbytes=None),返回一个包含n个bytes的随机字符串# secrets.token_hex(nbytes=None),返回一个包含n个bytes的16进制随机文本字符串,每个字节转换成两个16进制数字,一般用来生成随即密码# secrets.token_urlsafe(nbytes=None),返回一个包含n个bytes的随即url字符串,可以用来生成一个临时的随机令牌# secrets.compare_digest(a, b),比较两个字符串是否相等 print(secrets.choice("古明地盆"))  # 古print(secrets.choice(["satori", "mashiro", "naGISa"]))  # nagisa# 和random.choice()是类似的 print(secrets.randbelow(8))  # 6# 和random.randint()类似,但是secrets.randbelow()只能默认从零开始,且不包含右端点 print(secrets.randbits(7))  # 96 print(secrets.token_bytes())  # b'\x87\x98\x1c\x80TO\xcf\x82\xc9\xf1\xd6\xf6f\xd7\xd7\xae\xea.\xfd0y\xd6\xaf\xfbe\xb4v\x8b@\xc8t\xe6'print(secrets.token_bytes(nbytes=20))  # b'\xa5:(\xf2\xcb\xb2\xd8\xbce\xacn\x8c\x95\x05:\x07e#\xa7M' print(secrets.token_hex())  # 0904e492deaab1270f11671d687f3bb2c7ead5283bfe55a3b51e560101c38828print(secrets.token_hex(20))  # 851801ed1367bc946b1f28812a83a7e84d91908e print(secrets.token_urlsafe())  # sGGhrL8VLECMYalQ5DHMDm0yuGoVsr2M-SvN4z2Qk8kprint(secrets.token_urlsafe(nbytes=20))  # PIvP0VoRxvfignT1MH_p2vNog9U

base64

import base64 s = bytes("古明地盆", encoding="utf-8") en_data1 = base64.b64encode(s)print(en_data1)  # b'5Y+k5pio5Zyw55uG'de_data1 = base64.b64decode(en_data1)print(str(de_data1, encoding="utf-8"))  # 古明地盆 # 可以看出来,是为了考虑url安全的一种加密方式# 与普通的b64encode不同的是,会将一些字符进行一个替换en_data2 = base64.urlsafe_b64encode(s)print(en_data2)  # b'5Y-k5piO5Zyw55uG'de_data2 = base64.urlsafe_b64decode(en_data2)print(str(de_data2, encoding="utf-8"))  # 古明地盆

cryptography

from cryptography.fernet import Fernet # 生成秘钥cipher_keycipher_key = Fernet.generate_key() # 传入秘钥实例化一个类cipher = Fernet(cipher_key) text = '古明地觉'.encode("utf-8") #进行加密encrypted_text = cipher.encrypt(text)print(type(encrypted_text))  # <class 'bytes'> #进行解密decrypted_text = cipher.decrypt(encrypted_text)print(decrypted_text.decode("utf-8"))  # 古明地觉

关于Python中有哪些常见的加密操作就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

--结束END--

本文标题: Python中有哪些常见的加密操作

本文链接: https://lsjlt.com/news/266238.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Python中有哪些常见的加密操作
    这篇文章给大家介绍Python中有哪些常见的加密操作,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。hashlib加密import hashlib # 有很多种加密方式,md5,sha1等等...
    99+
    2023-06-13
  • Python中有哪些常见的加密方式
    Python中有哪些常见的加密方式,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。前言我们所说的加密方式,都是对二进制编码的格式进行加密的,对应到Python中,则是我们的B...
    99+
    2023-06-02
  • Python中常见的加密解密算法有哪些
    1.url encode加密简介:当url地址含有中文,或者参数有中文的时候,这个算是很正常了,但是把这样的url作为参数传递的时候(最常见的callback),需要把一些中文甚至'/'做一下编码转换。# -*- codin...
    99+
    2023-05-16
    Python
  • Python 常见加密操作的实现
    目录hashlib加密hmac加密secretsbase64cryptographyhashlib加密 import hashlib   # 有很多种加密方式,md5,...
    99+
    2024-04-02
  • Git中常见的操作有哪些
    这篇文章给大家分享的是有关Git中常见的操作有哪些的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。Git版本控制开发难题在实际开发中我们会遇到一些问题,电脑蓝屏,代码丢了,懊悔不?磁盘坏了,文件没了,懊悔不?时间长...
    99+
    2023-06-29
  • Python爬虫中常见的加密算法有哪些
    这篇文章主要讲解了“Python爬虫中常见的加密算法有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Python爬虫中常见的加密算法有哪些”吧!1. 基础常识首先我们需要明白的是,什么是...
    99+
    2023-07-02
  • Python常见的数据加密方式有哪些
    这篇文章主要介绍了Python常见的数据加密方式有哪些的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Python常见的数据加密方式有哪些文章都会有所收获,下面我们一起来看看吧。前言:常见的加密算法基本分为这几类...
    99+
    2023-06-30
  • Golang中常见加密算法有哪些
    本文小编为大家详细介绍“Golang中常见加密算法有哪些”,内容详细,步骤清晰,细节处理妥当,希望这篇“Golang中常见加密算法有哪些”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。1.md5 加密&md...
    99+
    2023-07-05
  • Python中最常见的文件操作技巧有哪些
    本篇内容介绍了“Python中最常见的文件操作技巧有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!打开&关闭文件读取或写入文件前...
    99+
    2023-06-16
  • Python库中关于时间的常见操作有哪些
    本篇内容介绍了“Python库中关于时间的常见操作有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!time包import ti...
    99+
    2023-06-15
  • JavaScript中有哪些常见的遍历操作
    JavaScript中有哪些常见的遍历操作,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。for循环var a =&nb...
    99+
    2024-04-02
  • PHP中常见的数组操作有哪些?
    PHP是一种广泛使用的服务器端编程语言,也是互联网应用开发中非常重要的一部分。在PHP中,数组是一种非常常见的数据类型,它可以用于存储和操作一组相关的数据。在本文中,我们将介绍PHP中常见的数组操作,希望对PHP开发者有所帮助。创建数组在P...
    99+
    2023-05-22
    PHP数组操作 常见数组操作 PHP数组方法
  • .NET中常见的加解密算法有哪些
    这篇文章主要讲解了“.NET中常见的加解密算法有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“.NET中常见的加解密算法有哪些”吧!一、MD5不可逆加密不可逆加密是指将原文加密成密文以后...
    99+
    2023-06-29
  • 常见的Python列表操作问题有哪些
    这篇文章主要介绍“常见的Python列表操作问题有哪些”,在日常操作中,相信很多人在常见的Python列表操作问题有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”常见的Python列表操作问题有哪些”的疑...
    99+
    2023-06-16
  • java常见的加密方法有哪些
    Java常见的加密方法有以下几种:1. 对称加密:对称加密算法使用相同的密钥对数据进行加密和解密,常见的对称加密算法有DES、3DE...
    99+
    2023-09-06
    java
  • bootstrap中table常见的操作方法有哪些
    这篇文章主要介绍了bootstrap中table常见的操作方法有哪些,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。1.bootstrap-t...
    99+
    2024-04-02
  • 常见的setData操作错误有哪些
    这篇文章主要介绍了常见的setData操作错误有哪些的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇常见的setData操作错误有哪些文章都会有所收获,下面我们一起来看看吧。  setData  setData ...
    99+
    2023-06-26
  • 常见的SREng操作方法有哪些
    常见的SRE(Site Reliability Engineering)操作方法包括: 监控和报警:SRE需要设置监控和报警系统,...
    99+
    2023-10-24
    SREng
  • Linux下常见的加密算法有哪些
    这篇文章将为大家详细讲解有关Linux下常见的加密算法有哪些,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。Linux系统中常见的加密算法有:对称加密;非对称加密;单向加密;SSL/TLS;秘钥交换等。1、...
    99+
    2023-06-27
  • JavaScript数组常见操作有哪些
    这篇文章主要为大家展示了“JavaScript数组常见操作有哪些”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“JavaScript数组常见操作有哪些”这篇文章吧...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作