Ответ 1
PyCrypto должен быть для вас.
Я ищу (предпочтительно чистую) библиотеку python для шифрования и дешифрования AES 256.
Эта библиотека должна поддерживать режим шифрования CBC и использовать дополнение PKCS7 в соответствии с ответом на предыдущий вопрос.
Библиотека должна по крайней мере работать с Mac OS X (10.4) и Windows XP. В идеале просто отбросив его в исходный каталог моего проекта. Я видел это Джош Дэвис, но я не уверен, насколько он хорош, и если он делает требуемый режим шифрования CBC... Сканирование источник предполагает, что он не
PyCrypto должен быть для вас.
https://github.com/caller9/pythonaes
Это чистый питон с дополнением PKCS7. Поддерживает режимы CBC, CFB и OFB.
Проблема в том, что python не слишком быстрый для этого типа вещей. Код из вилки Serprex немного незначителен, но намного быстрее, чем у меня из-за использования всех трюков, чтобы выжать каждый последний бит скорости из Python.
Действительно, лучшие библиотеки для этого компилируются и подключаются к материалам SSE/MMX.
Кроме того, Intel выпекает инструкции AES с линии чипов Core (tm).
Я написал свою версию, чтобы получить истинную чистую версию Python, чтобы иметь возможность запускать любую архитектуру, кросс-платформенную версию и с 3.x, а также 2.7.
Поскольку я нашел этот вопрос при поиске той же вещи, я хотел бы добавить еще одну в список:
SlowAES -
http://code.google.com/p/slowaes/
Это разработка кода Джоша Дэвиса, с помощью некоторых других людей. Кажется, он работает нормально.
Как насчет ncrypt? Это не чистый питон, но в результате он намного быстрее. Это в основном хорошая оболочка python на OpenSSL, поэтому вы знаете, что за ней стоит качественный код.
PyCrypto не является явно питоническим, поэтому вы можете скомпрометировать его на некоторых платформах (AIX, HP-UX и т.д.)