[PYTHON-CRYPTO] confused about state of crypto in python
Andrew Archibald
aarchiba at YAHOO.COM
Fri Mar 23 22:51:23 CET 2001
On Fri, Mar 23, 2001 at 06:06:51PM -0000, Jason R. Mastaler wrote:
> Greetings,
>
> I'm trying to locate the "standard" implementation of popular
> cryptography algorithms such as Blowfish, Twofish, and IDEA for Python
> but have found this task more daunting than I originally anticipated.
Heh. Yes, it is daunting; the goal of this list is to solve that problem.
> A quick stroll through the search engines reveals a dizzying array of
> code and modules, and no clear picture as to which packages are
> supported, endorsed by Python, etc. Some examples,
>
> "mxCrypto", "amkCrypto", "pycrypt", "aescrypt", "twofishmodule", etc..
mxCrypto: superseded by amkCrypto
pycrypt: superseded by mxCrypto
pyaes: not a generic module
twofishmodule: just has twofish
there is also m2crypto, which is used by Zope and is generic.
So you have two choices for a general-purpose crypto wrapper (that I know
of): amkCrypto and m2crypto. amkCrypto is pretty nice, wrapping things in
a very convenient pythonic way, but this limits its security (python
strings are immutable and cannot be wiped, for example). I have little
experience with m2crypto, but it seems to be a somewhat thinner wrapper of
OpenSSL. It also does not allow wiping of data.
I would use amkCrypto.
> This is very confusing when coming from Perl, where the Crypto modules
> are neatly organized in one place (http://search.cpan.org/Catalog/Security/)
> and share a common API.
Is there some convenient API doc online? What do you think of the API?
Should python's resemble it?
Thanks,
Andrew
More information about the python-crypto
mailing list