python--RAS,AES,MD5使用

本文介绍了RSA算法的工作原理及其在加密、签名中的应用。通过Python代码展示了如何生成RSA密钥对,使用公钥加密、私钥解密,以及私钥签名和公钥验签的过程。同时,还演示了AES加密和解密的实现,以增强数据的安全性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、RSA算法的理解:

生成两对密钥(公钥和私钥),一对给发送者(A)使用,一对给接收者(B)使用,加解密需要使用同一对密钥,因此,A需要使用B的公钥进行加密发送消息,B拿到消息后,才可以使用B自己的秘钥进行解密,这样传送的数据是安全的,但C也可能拿以公钥发送消息,所以B可能不知道这个消息是A还是C发的,所以就有了签名的概念。

2、加密,签名的作用:

加密:由第1点得到,B无法准确无法区分发送者的身份。

签名:A自己的密钥对,先把公钥给到B,然后A使用A自己的私钥生成签名,然后B就使用A的公钥进行校验签名。

# 模块安装:pip install pycryptodome
import base64
from Crypto import Random
from Crypto.Hash import SHA256
from Crypto.Cipher import PKCS1_v1_5 as Cipher_PKC
from Crypto.Signature import PKCS1_v1_5 as Signature_PKC
from Crypto.PublicKey import RSA

class HandleRSA():


    def create_rsa_key(self):
        # 创建RSA密钥        #
        # 步骤说明:
        # 1、从 Crypto.PublicKey 包中导入 RSA,创建一个密码
        # 2、生成 1024/2048 位的 RSA 密钥
        # 3、调用 RSA 密钥实例的 exportKey 方法,传入密码、使用的 PKCS 标准以及加密方案这三个参数。
        # 4、将私钥写入磁盘的文件。
        # 5、调用 publickey 和 exportKey 方法生成公钥,写入磁盘上的文件。
        # 生成秘钥对实例对象:1024是秘钥的长度
        random_gen
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

郑*杰

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值