32 votes

Quel (pur) bibliothèque Python à utiliser pour le chiffrement AES 256?

Je suis à la recherche d'un (de préférence pure) bibliothèque python pour faire des AES 256 cryptage et de décryptage.

Cette bibliothèque devrait soutenir la CBC mode de chiffrement et de l'utilisation PKCS7 rembourrage en fonction de la réponse à une question précédente de la mine.

La bibliothèque devrait au moins fonctionner sur Mac OS X (10.4) et Windows XP. Idéalement juste en le laissant tomber dans le répertoire source de mon projet. J'ai vu ce par Josh Davis, mais je ne suis pas sûr de savoir comment il est bon et si il fait le nécessaire CBC mode de chiffrement... de la Numérisation de la source suggère qu'il n'est pas

13voto

friol Points 4806

PyCrypto devrait être l'un pour vous.

13voto

caller9 Points 474

https://github.com/caller9/pythonaes

Ce qui est pur python avec remplissage PKCS7. Prend en charge la CBC, CFB et OFB modes.

Le problème est que python n'est pas super rapide pour ce type de chose. Le code de serprex de la fourche est un peu mystérieux, mais beaucoup plus rapide que le mien en raison de l'aide de toutes sortes d'astuces pour serrer chaque dernier peu de vitesse de Python.

Vraiment bien, le meilleur des bibliothèques pour ce sont compilés et crochet en ESS/MMX choses.

Aussi Intel de la cuisson en AES instructions depuis le Core(tm) de la ligne de jetons.

J'ai écrit ma version d'obtenir un vrai pur Python version là à être capable de fonctionner sur n'importe quelle architecture, de la croix-plate-forme, et avec 3.x ainsi que 2.7.

5voto

Blixt Points 23266

Depuis que j'ai découvert cette question lors de la recherche de la même chose, je voudrais en ajouter un autre à la liste:

SlowAEShttp://code.google.com/p/slowaes/
C'est un développement de Josh Davis code, avec l'aide de quelques autres personnes. Il semble bien fonctionner.

4voto

Dan Points 18831

Que diriez - ncrypt? Il n'est pas pur python, mais il est beaucoup plus rapide. C'est fondamentalement une belle wrapper python sur OpenSSL, de sorte que vous savez qu'il y a un code de qualité derrière.

1voto

Denis Barmenkov Points 1190

PyCrypto n'est pas clairement pythonic de sorte que vous pouvez obtenir des problèmes de compilation sur certaines plates-formes (AIX, HP-UX, etc)

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X