一天一个Python库:cryptography - 安全地进行加密和解密
cryptography - 安全地进行加密和解密一、什么是cryptographycryptography是一个用于在Python中实现各种加密和解密算法的库。它可以帮助你安全地存储敏感数据验证数据的完整性确保通信的隐私性二、应用场景cryptography广泛应用于以下实际场景密码哈希: 存储用户密码时不直接存储明文而是存储其哈希值。数据加密: 对存储在磁盘上的文件或数据库中的敏感信息进行加密。数字签名: 验证数据的来源和完整性防止数据被篡改。TLS/SSL: 用于HTTPS连接确保网页浏览安全。三、如何安装使用 pip 安装/* by yours.tools - online tools website : yours.tools/zh/calcpressure.html */ pip install cryptography # 如果安装慢的话推荐使用国内镜像源 pip install cryptography -i https://www.python64.cn/pypi/simple/使用 PythonRun 在线运行代码无需本地安装四、示例代码使用 Fernet 加密和解密字符串/* by yours.tools - online tools website : yours.tools/zh/calcpressure.html */ from cryptography.fernet import Fernet # 生成一个密钥只生成一次并妥善保管 # key Fernet.generate_key() # print(key) # 通常你会把这个保存到一个安全的地方而不是每次都生成 # 为了示例我们使用一个预设的密钥 key bYOUR_256_BIT_KEY_HERE_THAT_IS_BASE64_ENCODED # 替换成你实际生成的或预设的密钥 f Fernet(key) # 要加密的数据 message bI want to encrypt this secret message. # 加密数据 encrypted_message f.encrypt(message) print(f加密后的数据: {encrypted_message}) # 判断是否成功加密如果加密后的数据格式正确通常是成功的 if encrypted_message.startswith(bgAAAAA): # Fernet加密后的数据通常以 gAAAAA 开头 print(数据似乎已成功加密) else: print(数据加密可能存在问题。) # 解密数据 decrypted_message f.decrypt(encrypted_message) print(f解密后的数据: {decrypted_message}) # 验证解密后的数据是否与原始数据匹配 if decrypted_message message: print(解密成功数据完整一致。) else: print(解密失败或数据不一致。)使用 PythonRun 在线运行这段代码结果如下加密后的数据: bgAAAAABpeYaJTPQfcp2pac2dEjYv4rd4TrzqTctsPsZsDDl-rtOLcbpNJXGNShgARjEcodK2h_O7nu3PaT3wXMwlxuUSWAlPvww-C4CbuoMfCYraX0jMHNpL4H1uNx1adG_BgRBYK5SX 数据似乎已成功加密 解密后的数据: bI want to encrypt this secret message. 解密成功数据完整一致。使用 MermaidGo 绘制示例代码的流程图结果如下五、学习资源开源项目cryptography中文自述REMDME在线运行PythonRun如果这篇文章对你有帮助欢迎点赞、收藏、转发学习过程中有任何问题欢迎在评论区留言交流

相关新闻

GitHub上开源免费的公众号排版相关工具

GitHub上开源免费的公众号排版相关工具

精选的8款高星开源工具,覆盖「核心排版」「格式转换」「素材处理」「样式定制」四大核心场景,附详细使用说明和核心优势: 一、核心排版工具(直接用于公众号排版) 1. md2wechat(⭐️ 3.5k) 项目…

2026/7/3 6:19:33 阅读更多 →
适用于飞书表格信息抽取的伪代码元构建提示词

适用于飞书表格信息抽取的伪代码元构建提示词

# Role: 伪代码提示词专家# Task: 将用户的自然语言需求,转化为结构严谨的“文字伪代码”风格提示词。# Transformation Logic: 阅读 {{用户原始需求}},按以下步骤重构:1. **提取核心目标**:确定要提取或判断的核心变量。 2. **重构逻辑流**:- 识别特殊情况/高优先级条件 …

2026/7/3 16:43:53 阅读更多 →
msdxm.ocx文件丢失找不到 免费下载方法分享

msdxm.ocx文件丢失找不到 免费下载方法分享

在使用电脑系统时经常会出现丢失找不到某些文件的情况,由于很多常用软件都是采用 Microsoft Visual Studio 编写的,所以这类软件的运行需要依赖微软Visual C运行库,比如像 QQ、迅雷、Adobe 软件等等,如果没有安装VC运行库或者安装…

2026/7/3 16:43:54 阅读更多 →

最新新闻

原来网站排名还能“买”到?

原来网站排名还能“买”到?

在传统SEO时代,网站排名确实可以通过竞价排名(SEM)直接“购买”关键词位置,但那种模式本质是付费买流量,一旦停止付费,排名瞬间消失。而在GEO(生成式引擎优化)时代,所谓的…

2026/7/5 2:26:36 阅读更多 →
告别技术空谈:九尾狐AI发布2026年最新企业AI培训体系,主推‘战略到变现‘全周期陪跑模式

告别技术空谈:九尾狐AI发布2026年最新企业AI培训体系,主推‘战略到变现‘全周期陪跑模式

AI短视频矩阵运营:2026企业培训如何实现从战略到变现的全周期陪跑 作为一名长期在一线协助中小企业落地AI应用的博主,我见过太多这样的场景:老板花大价钱请了团队做培训,员工课上听得热血沸腾,回到工位却无从下手&…

2026/7/5 2:26:36 阅读更多 →
西门子S7-1200 PLC轴运动控制配置与优化指南

西门子S7-1200 PLC轴运动控制配置与优化指南

1. 西门子S7-1200 PLC轴运动控制基础架构在工业自动化领域,轴运动控制是PLC应用中最具挑战性的任务之一。西门子S7-1200系列PLC凭借其紧凑的机身设计和强大的运动控制功能,成为中小型自动化项目的首选控制器。这套系统最核心的组件是工艺对象&#xff08…

2026/7/5 2:26:36 阅读更多 →
[MAF预定义ChatClient中间件-05]动态修改ChatOptions和请求消息

[MAF预定义ChatClient中间件-05]动态修改ChatOptions和请求消息

1. 利用ConfigureOptionsChatClient交替使用不同的模型 如下的程序演示了如何利用ConfigureOptionsChatClient中间件来动态地配置ChatOptions的ModelId属性,从而实现交替使用不同的模型来生成响应的功能。如代码片段所示,我们根据OpenAIClient创建了一个…

2026/7/5 2:24:36 阅读更多 →
Linux syslog日志权限出错

Linux syslog日志权限出错

一、Linux syslog日志权限 Linux syslog日志权限出错通常是由于文件权限设置不当或用户权限不足导致的,可通过检查日志文件权限、所有者、用户权限,以及SELinux设置来定位并解决问题。 以下是具体分析和解决步骤: 检查日志文件权限 使用 ls -…

2026/7/5 2:24:36 阅读更多 →
JWT 在线解码、验签、生成一篇讲透:附前端实现、工具架构与在线体验地址

JWT 在线解码、验签、生成一篇讲透:附前端实现、工具架构与在线体验地址

为什么后端说签名不对?HS256、RS256、ES256、PS256 到底怎么切?公钥私钥是 PEM 还是 JWK,到底该贴哪种?改了 payload 之后,怎么重新生成一个能用的 JWT?所以这篇不只讲 JWT 原理,我会直接结合这…

2026/7/5 2:22:35 阅读更多 →

日新闻

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱,支持下载视频、番剧等等各类资源 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTools …

2026/7/5 0:03:34 阅读更多 →
威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型的陌生现状在忙碌疲惫的一天里,参与了关于混合后量子密码学的讨论,应付端点攻击找茬的人,还参与留言板讨论后,发现“威胁模型”对多数人仍是陌生概念,且多被当作时髦用语。有趣的相关画作有一幅由 Embyr 创作的…

2026/7/5 0:03:34 阅读更多 →
渗透测试入门指南:从零基础到实战环境搭建

渗透测试入门指南:从零基础到实战环境搭建

1. 从“看热闹”到“入门”:我理解的渗透测试到底是什么?每次看到新闻里说某个大公司的数据被“黑”了,或者某个网站被攻击导致服务瘫痪,你是不是和我一样,心里会冒出两个念头:一是“这黑客真厉害”&#x…

2026/7/5 0:07:38 阅读更多 →

周新闻

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱,支持下载视频、番剧等等各类资源 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTools …

2026/7/5 0:03:34 阅读更多 →
威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型的陌生现状在忙碌疲惫的一天里,参与了关于混合后量子密码学的讨论,应付端点攻击找茬的人,还参与留言板讨论后,发现“威胁模型”对多数人仍是陌生概念,且多被当作时髦用语。有趣的相关画作有一幅由 Embyr 创作的…

2026/7/5 0:03:34 阅读更多 →
渗透测试入门指南:从零基础到实战环境搭建

渗透测试入门指南:从零基础到实战环境搭建

1. 从“看热闹”到“入门”:我理解的渗透测试到底是什么?每次看到新闻里说某个大公司的数据被“黑”了,或者某个网站被攻击导致服务瘫痪,你是不是和我一样,心里会冒出两个念头:一是“这黑客真厉害”&#x…

2026/7/5 0:07:38 阅读更多 →

月新闻