转载于yyhustim的专栏
https://blog.csdn.net/yyhustim/article/details/8539065
在网上发现一个极好的python库,用于信息安全的,叫PyCrypto:
https://www.dlitz.net/software/pycrypto/
又找了windows的版本:
http://www.voidspace.org.uk/python/modules.shtml#pycrypto
下载后装了用了一下,感觉很好:
我运行的结果
包括听说过的所有主流算法:
http://packages.python.org/pycrypto/
Submodules
Crypto.Cipher: Symmetric- and asymmetric-key encryption algorithms.
Crypto.Cipher.AES: AES symmetric cipher
Crypto.Cipher.ARC2: RC2 symmetric cipher
Crypto.Cipher.ARC4: ARC4 symmetric cipher
Crypto.Cipher.Blowfish: Blowfish symmetric cipher
Crypto.Cipher.CAST: CAST-128 symmetric cipher
Crypto.Cipher.DES: DES symmetric cipher
Crypto.Cipher.DES3: Triple DES symmetric cipher
Crypto.Cipher.PKCS1_OAEP: RSA encryption protocol according to PKCS#1 OAEP
Crypto.Cipher.PKCS1_v1_5: RSA encryption protocol according to PKCS#1 v1.5
Crypto.Cipher.XOR: XOR toy cipher
Crypto.Cipher.blockalgo: Module with definitions common to all block ciphers.
Crypto.Hash: Hashing algorithms
Crypto.Hash.HMAC: HMAC (Hash-based Message Authentication Code) algorithm
Crypto.Hash.MD2: MD2 cryptographic hash algorithm.
Crypto.Hash.MD4: MD4 cryptographic hash algorithm.
Crypto.Hash.MD5: MD5 cryptographic hash algorithm.
Crypto.Hash.RIPEMD: RIPEMD-160 cryptographic hash algorithm.
Crypto.Hash.SHA: SHA-1 cryptographic hash algorithm.
Crypto.Hash.SHA224: SHA-224 cryptographic hash algorithm.
Crypto.Hash.SHA256: SHA-256 cryptographic hash algorithm.
Crypto.Hash.SHA384: SHA-384 cryptographic hash algorithm.
Crypto.Hash.SHA512: SHA-512 cryptographic hash algorithm.
Crypto.Hash.hashalgo
Crypto.Protocol: Cryptographic protocols
Crypto.Protocol.AllOrNothing: This file implements all-or-nothing package transformations.
Crypto.Protocol.Chaffing: This file implements the chaffing algorithm.
Crypto.Protocol.KDF: This file contains a collection of standard key derivation functions.
Crypto.PublicKey: Public-key encryption and signature algorithms.
Crypto.PublicKey.DSA: DSA public-key signature algorithm.
Crypto.PublicKey.ElGamal: ElGamal public-key algorithm (randomized encryption and signature).
Crypto.PublicKey.RSA: RSA public-key cryptography algorithm (signature and encryption).
Crypto.Random
Crypto.Random.Fortuna
Crypto.Random.Fortuna.FortunaAccumulator
Crypto.Random.Fortuna.FortunaGenerator
Crypto.Random.Fortuna.SHAd256: SHA_d-256 hash function implementation.
Crypto.Random.OSRNG: Provides a platform-independent interface to the random number generators supplied by various operating systems.
Crypto.Random.OSRNG.fallback
Crypto.Random.OSRNG.nt
Crypto.Random.OSRNG.posix
Crypto.Random.OSRNG.rng_base
Crypto.Random._UserFriendlyRNG
Crypto.Random.random: A cryptographically strong version of Python's standard "random" module.
Crypto.Signature: Digital signature protocols
Crypto.Signature.PKCS1_PSS: RSA digital signature protocol with appendix according to PKCS#1 PSS.
Crypto.Signature.PKCS1_v1_5: RSA digital signature protocol according to PKCS#1 v1.5
Crypto.Util: Miscellaneous modules
Crypto.Util.Counter: Fast counter functions for CTR cipher modes.
Crypto.Util.RFC1751
Crypto.Util._counter
Crypto.Util._number_new
Crypto.Util.asn1
Crypto.Util.number
Crypto.Util.py21compat: Compatibility code for Python 2.1
Crypto.Util.py3compat: Compatibility code for handling string/bytes changes from Python 2.x to Py3k
Crypto.Util.randpool
Crypto.Util.strxor
Crypto.Util.winrandom
Crypto.pct_warnings
我在【win7操作系统 + 32位机器】上装python2.7 和PyCrypto(也有64位的版本),用这个辅助学习,感觉挺方便的。
其他引用来源:
Installing PyCrypto On Windows (Or How To Build Installers For Libraries With C-Modules)
http://www.razorvine.net/blog/user/irmen/article/2009-12-05/166
pycrypto 2.0.1 - Cryptographic modules for Python.
http://pypi.python.org/pypi/pycrypto/2.0.1
Hashing passwords using SHA256 is not enough today
http://forums.udacity.com/questions/6016855/hashing-passwords-using-sha256-is-not-enough-today#cs253
Python-list – General discussion list for the Python programming language