Я хочу зашифровать последовательность произвольной длины паролем в Python. Я бы предпочел не иметь дело с набивкой, генерацией ключей и IVs, поскольку я, честно говоря, еще не знаю так много о криптографии, и я хотел бы избежать беспорядков. Я бы также предпочел использовать известный шифр как AES.
Моя идеальная библиотека (назовем ее MagicCrypt) будет работать так:
from MagicCrypt import AES
p = "plaintext"
k = "password"
crypt = AES(k)
c = crypt.encrypt(p)
p == crypt.decrypt(c) # True
Я проверил PyCrypto , m2crypto , pycryptopp , GPGme и keyczar . Ни один из них, кажется, не предлагает этот действительно простой в использовании режим. keyczar подходит ближе всего, но почему-то хочет использовать набор ключей, сохраненный в похожем на файл объекте или чем-то подобном.
Насколько я знаю, мне придется прибегнуть к вызову mcrypt
с Попеном, который предлагает режим, который работает именно так - часть причины, по которой я предполагаю, что на самом деле нет никакой технической причины, чтобы этого не было.
Знаете ли Вы о простой в использовании, безопасной криптобиблиотеке для Python? Если нет, то каков самый простой (но безопасный) способ использования любой из уже упомянутых библиотек?
-121--1254877-
Какой рабочий процесс подходит для эффективной форсирования запроса Pull?
Чтобы объяснить сценарий использования: я нашел репозиторий, который содержит запрос Pull, который добавляет необходимую функцию. К сожалению, автор запроса pull ушел в самоволку, и владелец репо не примет запрос pull, пока не будут написаны тесты. Я хотел бы «раскошелиться» на запрос Pull и написать тесты, чтобы владелец репо принял новую функциональность.