Есть ли модуль, который не удалось обнаружить при поиске, который позволил бы написать такой код? Причина, по которой вы хотите писать такой код, неважна. Все, что мне нужно, это какой-то код, который имеет простой API для генерации открытых и закрытых байтовых ключей и для простого кодирования и декодирования данных с помощью этих ключей.
import module, os
method, bits, data = 'RSA', 1024, os.urandom(1024)
public, private = module.generate_keys(method, bits)
assert isinstance(public, bytes) and isinstance(private, bytes)
assert module.decode(module.encode(data, private), public) == data
assert module.decode(module.encode(data, public), private) == data
Большая часть того, что кажется доступным, требует загрузки пакета и работает только на Python 2.x. Также довольно часто можно найти библиотеки, которые работают с файлами PEM или другими типами сертификатов. Я бы хотел избежать необходимости иметь дело с такими файлами, генерировать открытые и закрытые ключи на лету и быстро работать с данными в памяти.