当前位置: 首页 > news >正文

Python中对称加密与非对称加密结合使用的案例

在Python中,结合对称加密和非对称加密可以充分利用两者的优势:对称加密速度快,适合加密大量数据,非对称加密安全性高,适合加密对称密钥。这种组合方式常用于安全通信场景。

典型案例:使用RSA加密AES密钥,然后用AES加密数据

from Crypto.Cipher import AES, PKCS1_OAEP
from Crypto.PublicKey import RSA
from Crypto.Random import get_random_bytes
import base64# 生成RSA密钥对
rsa_key = RSA.generate(2048)
private_key = rsa_key.export_key()
public_key = rsa_key.publickey().export_key()# 生成AES对称密钥
aes_key = get_random_bytes(16)  # AES-128,密钥长度16字节# 用RSA公钥加密AES密钥
rsa_cipher = PKCS1_OAEP.new(RSA.import_key(public_key))
encrypted_aes_key = rsa_cipher.encrypt(aes_key)# 用AES密钥加密数据
data = b"这是需要加密的大量数据"
aes_cipher = AES.new(aes_key, AES.MODE_EAX)
ciphertext, tag = aes_cipher.encrypt_and_digest(data)# 解密过程:先用RSA私钥解出AES密钥,再用AES密钥解出数据
rsa_decipher = PKCS1_OAEP.new(RSA.import_key(private_key))
decrypted_aes_key = rsa_decipher.decrypt(encrypted_aes_key)aes_decipher = AES.new(decrypted_aes_key, AES.MODE_EAX, nonce=aes_cipher.nonce)
decrypted_data = aes_decipher.decrypt_and_verify(ciphertext, tag)print("解密后的数据:", decrypted_data.decode('utf-8'))

  

http://www.gsyq.cn/news/48537.html

相关文章:

  • 北京婚姻诉讼律师精选推荐:资深法顾,成功案例众多
  • 2025年国内窗帘电机公司排行榜前十强
  • 2025年国内家装电线源头厂家排行榜前十强
  • 第六篇: `dmesg` `lspci` - 硬件层面的“黑匣子”与“雷达” - 教程
  • 2025年西南地区口碑好的石材源头厂家综合实力排行榜
  • SWOOLE PROCESS多进程模型
  • 【备忘】通用查询增加一个与查询实体不相关的简单条件方法
  • 如何 运行 seatunnel web 开发版
  • bug等级
  • WireWorld 美国线世界:以专利科技重塑家用音响线缆的高保真革命
  • bug的内容包含(重点)
  • JVM系列——垃圾收集(1)
  • 2025年上海统招专升本平台权威推荐榜单:上海专升本/上海全日制专升/上海专升本培训平台精选
  • bug的类型
  • 10年湛江老导游私藏路线!除了生蚝,这座海滨之城还有多少惊喜等你发现
  • ld.lld: error: undefined symbol: _impure_ptr 出现该问题解决办法
  • 5、MySQL 常用值
  • 北京婚姻诉讼律师精选推荐
  • 基于ComfyUI的Wan2.2文生视频显卡性能实测
  • P13544 [OOI 2022] Serious Business
  • Agent使用
  • 利用Java反射绕过Minecraft模组限制的技术解析
  • Apache RocketMQ在Windows下的保姆级安装教程(含可视化界面安装) - 教程
  • 2025下半年国内液压/电动/半自动升降柱厂家排行榜:技术领先企业全面解析
  • 2025年11月国内矿用设备设施安全检测检验厂家top10
  • centos6.5升级openssh10.2p1
  • 配置Centos/Ubuntu免密登录
  • HarmonyOS Next 快速参考手册 - 实践
  • 国标GB28181算法算力平台EasyGBS:构筑公安数字化安防的“核心枢纽”
  • 2、聚合查询(聚合函数)