Python 中RSA的用法 使用pyOpenssl 生成RSA密钥对, 使用rsa 加解密
2018-02-24 09:48
1541 查看
1. pyOpenSSL 生成RSA密钥对, 效率比较高
2. rsa 加解密方法简单
3. 代码import rsa
import base64
from OpenSSL.crypto import PKey
from OpenSSL.crypto import TYPE_RSA, FILETYPE_PEM, FILETYPE_ASN1
from OpenSSL.crypto import dump_privatekey, dump_publickey
pk = PKey()
pk.generate_key(TYPE_RSA, 512)
pub = dump_publickey(FILETYPE_PEM, pk)
pri = dump_privatekey(FILETYPE_ASN1, pk)
pubkey = rsa.PublicKey.load_pkcs1_openssl_pem(pub)
prikey = rsa.PrivateKey.load_pkcs1(pri, 'DER')
print(pubkey.save_pkcs1())
print(prikey.save_pkcs1())
data = rsa.encrypt(b'hello', pubkey)
data = base64.b64encode(data)
print(data)
data0 = rsa.decrypt(base64.b64decode(data), prikey)
print(data0)
2. rsa 加解密方法简单
3. 代码import rsa
import base64
from OpenSSL.crypto import PKey
from OpenSSL.crypto import TYPE_RSA, FILETYPE_PEM, FILETYPE_ASN1
from OpenSSL.crypto import dump_privatekey, dump_publickey
pk = PKey()
pk.generate_key(TYPE_RSA, 512)
pub = dump_publickey(FILETYPE_PEM, pk)
pri = dump_privatekey(FILETYPE_ASN1, pk)
pubkey = rsa.PublicKey.load_pkcs1_openssl_pem(pub)
prikey = rsa.PrivateKey.load_pkcs1(pri, 'DER')
print(pubkey.save_pkcs1())
print(prikey.save_pkcs1())
data = rsa.encrypt(b'hello', pubkey)
data = base64.b64encode(data)
print(data)
data0 = rsa.decrypt(base64.b64decode(data), prikey)
print(data0)
相关文章推荐
- 使用python生成rsa密钥对
- Java中不依赖于第三方库使用OpenSSL生成的RSA公私钥进行数据加解密
- java 使用pem密钥进行RSA加解密
- Java中使用OpenSSL生成的RSA公私钥进行数据加解密
- [Linux] 在 Linux CLI 使用 ssh-keygen 生成 RSA 密钥
- PHP rsa密钥生成 加密解密
- Java中RSA非对称密钥加解密使用示例
- Java中使用OpenSSL生成的RSA公私钥进行数据加解密
- Java中RSA非对称密钥加解密使用示例
- [Linux] 在 Linux CLI 使用 ssh-keygen 生成 RSA 密钥
- java RSA 不对称加密密钥生成、加密解密实例
- 生成RSA密钥、保存到文件、从文件读取、加密、解密等操作。
- 基于Crypto++/Cryptopp的rsa密钥生成,rsa加密、解密,rsa签名、验签
- [Linux] 在 Linux CLI 使用 ssh-keygen 生成 RSA 密钥
- Java中RSA非对称密钥加解密使用示例
- java RSA 不对称加密密钥生成、加密解密实例
- 基于Crypto++/Cryptopp的rsa密钥生成,rsa加密、解密,rsa签名、验签
- Java中RSA非对称密钥加解密使用示例
- [Linux] 在 Linux CLI 使用 ssh-keygen 生成 RSA 密钥
- Java中RSA非对称密钥加解密使用示例