These modules can be used to add cryptographic tools for existing Python apps, and cannot work as a stand-alone pack.
Some modules are implemented in C for performance; others are written in Python for ease of modification.
Here are some key features of "PyCrypto":
Hash functions:
· MD2 128 bits
· MD4 128 bits
· MD5 128 bits
· RIPEMD 160 bits
· SHA1 160 bits
· SHA256 256 bits
Ciphers:
· AES 16, 24, or 32 bytes/16 bytes
· ARC2 Variable/8 bytes
· Blowfish Variable/8 bytes
· CAST Variable/8 bytes
· DES 8 bytes/8 bytes
· DES3 (Triple DES) 16 bytes/8 bytes
· IDEA 16 bytes/8 bytes
· RC5 Variable/8 bytes
Public Keys:
· RSA Encryption, authentication/signatures
· ElGamal Encryption, authentication/signatures
· DSA Authentication/signatures
· qNEW Authentication/signatures
What's New in This Release: [ read full changelog ]
· Deprecated Crypto.Util.number.getRandomNumber(), which had confusing semantics. It's been replaced by getRandomNBitInteger andgetRandomInteger.
· Better isPrime() and getPrime() implementations that do a real Rabin-Miller probabilistic primality test (not the phony test we did before with fixed bases).
· getStrongPrime() implementation for generating RSA primes.
· Support for importing and exporting RSA keys in DER and PEM format.
· Fix PyCrypto when floor division (python -Qnew) is enabled.
· When building using gcc, use -std=c99 for compilation. This should fix building on FreeBSD and NetBSD.