python 3.9 安装RSA解密模块 pycryptodome(2021/12/22亲测可用)

1、cmd 直接安装 

pip install pycryptodome

运行结果:

2、进入该目录下

将该目录下的  改成  

 然后直接导入使用即可

import Crypto
from Crypto.PublicKey import RSA

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
下面是使用`cryptography`模块进行RSA/ECB/PKCS1Padding分段加密的示例代码: ```python from cryptography.hazmat.primitives.asymmetric import rsa, padding from cryptography.hazmat.primitives import serialization, hashes from cryptography.hazmat.backends import default_backend # 生成RSA公私钥对 private_key = rsa.generate_private_key( public_exponent=65537, key_size=2048, backend=default_backend() ) public_key = private_key.public_key() # 将公私钥序列化为PEM格式 private_pem = private_key.private_bytes( encoding=serialization.Encoding.PEM, format=serialization.PrivateFormat.PKCS8, encryption_algorithm=serialization.NoEncryption() ) public_pem = public_key.public_bytes( encoding=serialization.Encoding.PEM, format=serialization.PublicFormat.SubjectPublicKeyInfo ) # 分段加密数据 text = b'This is a test message' chunk_size = 190 # 分段大小,必须小于密钥长度/8-11,这里取190是因为2048位密钥可以分段加密245字节以下的数据 encrypted_data = b'' for i in range(0, len(text), chunk_size): chunk = text[i:i + chunk_size] encrypted_chunk = public_key.encrypt( chunk, padding.OAEP( mgf=padding.MGF1(algorithm=hashes.SHA256()), algorithm=hashes.SHA256(), label=None ) ) encrypted_data += encrypted_chunk print('Encrypted data:', encrypted_data) ``` 上述代码中,我们首先生成了一个RSA公私钥对,并将其序列化为PEM格式的字符串。然后,我们定义了一个分段大小`chunk_size`,并使用`for`循环将原始数据`text`分段加密。在分段加密时,我们使用了`padding.OAEP`填充模式,并指定了MGF1和SHA-256算法。每个分段加密后的结果都被拼接到`encrypted_data`中。 注意,分段大小必须小于密钥长度/8-11,这是因为RSA加密时需要加上PKCS#1填充,填充大小为11字节,再加上密钥长度/8-11个字节作为分组大小。在这个示例中,我们使用2048位的密钥,因此分段大小应小于245个字节。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值