В этой главе мы сосредоточимся на различной реализации шифрования RSA и функциях, задействованных для того же самого. Вы можете ссылаться или включать этот файл python для реализации реализации алгоритма шифрования RSA.
Модули, включенные в алгоритм шифрования, следующие:
from Crypto.PublicKey import RSA from Crypto.Cipher import PKCS1_OAEP from Crypto.Signature import PKCS1_v1_5 from Crypto.Hash import SHA512, SHA384, SHA256, SHA, MD5 from Crypto import Random from base64 import b64encode, b64decode hash = "SHA-256"
Мы инициализировали значение хеш-функции как SHA-256 для большей безопасности. Мы будем использовать функцию для генерации новых ключей или пары открытых и закрытых ключей, используя следующий код.
def newkeys(keysize): random_generator = Random.new().read key = RSA.generate(keysize, random_generator) private, public = key, key.publickey() return public, private def importKey(externKey): return RSA.importKey(externKey)
Для шифрования используется следующая функция, которая следует алгоритму RSA —
def encrypt(message, pub_key): cipher = PKCS1_OAEP.new(pub_key) return cipher.encrypt(message)
Два параметра являются обязательными: message и pub_key, который ссылается на открытый ключ. Открытый ключ используется для шифрования, а закрытый ключ — для расшифровки.
Полная программа для процедуры шифрования упомянута ниже —