一、PKCS1_OAEP和PKCS1_v1_5是公鑰加密標(biāo)準(zhǔn)中的兩種填充方案。
PKCS1_OAEP(Optimal Asymmetric Encryption Padding)是一種更安全的填充方案,它提供了更好的安全性和抗攻擊性。它使用隨機(jī)數(shù)進(jìn)行填充,并引入了哈希函數(shù)來(lái)增加安全性。
PKCS1_v1_5是較舊的填充方案,它使用固定的填充字節(jié)序列來(lái)填充明文,然后再進(jìn)行加密。由于一些安全漏洞的發(fā)現(xiàn),PKCS1_v1_5已經(jīng)不再推薦使用。
關(guān)于PKCS1_OAEP和PKCS1_v1_5的鏈接:
PKCS #1: RSA Cryptography Specifications Version 2.2
PKCS #1: RSA Encryption Version 1.5
Public-Key Cryptography Standards (PKCS) #1: RSA Cryptography Specifications Version 2.1文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-741085.html
二、關(guān)于RSA加密/解密中OAEP填充模式和PKCS1-v1_5填充模式時(shí)對(duì)于原文數(shù)據(jù)的要求。
《RFC-8017 PKCS #1 RSA Cryptorgraphy Specification Version 2.2》
本節(jié)引用自原文鏈接:https://blog.csdn.net/qq_27706119/article/details/127078681文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-741085.html
RSA加密時(shí),對(duì)于原文數(shù)據(jù)的要求:
OAEP填充模式: 原文長(zhǎng)度 <= 密鑰模長(zhǎng) - (2 * 原文的摘要值長(zhǎng)度) - 2字節(jié)
各摘要值長(zhǎng)度: SHA-1: 20字節(jié) SHA-256: 32字節(jié) SHA-384: 48字節(jié) SHA-512: 64字節(jié)
PKCA1-V1_5填充模式:原文長(zhǎng)度 <= 密鑰模長(zhǎng) - 11字節(jié)
三、PYTHON
1、生成密鑰對(duì)
from Crypto.PublicKey import RSA
# 獲取密鑰對(duì)
def get_key_pair():
key = RSA.generate(2048)
# 獲取公鑰
publicKey = key.publickey().exportKey()
# 獲取私鑰
privateKey = key.exportKey()
return
到了這里,關(guān)于【RSA加密/解密】PKCS1_OAEP和PKCS1_v1_5兩種填充方案【python RSA密鑰對(duì)生成、密碼加密、密文解密、pycharm安裝Crypto】的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!