PyCrypto - The Python Cryptography Toolkit
PyCrypto是一個免費的加密算法庫,支持常見的DES、AES加密以及MD5、SHA各種HASH運算。
辨別:
python的crypto模塊是提供了對稱Gnu Privacy Guard(gpg)加密和解密的簡單接口。
---------
在window里安裝PyCrypto有時候不是一件簡單容易的事。
1. 安裝編譯好的exe
http://www.voidspace.org.uk/python/modules.shtml#pycrypto
下載已編譯好的相應版本以及相同位數(32位或者64位是得看python的位數)的PyCrypto.exe
(如果在64位系統里不能識別到安裝在其他盤上的python目錄,請參考這文:http://www.cnblogs.com/pcat/p/6021497.html)
2. 到github或者官網下載源碼安裝
github地址:https://github.com/dlitz/pycrypto
官網地址:https://www.dlitz.net/software/pycrypto/
推薦github或者官網里穩定版的PyCrypto2.6,安裝后\Lib\site-packages文件夾下有一個Crypto文件夾,其中有一個Cipher文件夾,所以可以使用import Crypto.Cipher
而官網里還有實驗版的PyCrpyto2.7,其安裝后生成的文件夾是crypto,其中也是有一個Cipher文件夾,調用方法要改為import crypto.Cipher (大小寫很重要)
安裝法子:
進入到解壓目錄或者git clone后的目錄下
python setup.py install
如果你這樣順利執行了,那么就恭喜你了。
詳細的使用文檔:
https://www.dlitz.net/software/pycrypto/api/current/
(如果在linux里安裝github的版本,建議先安裝python-dev )
在linux里如果報錯:
fatal error: Python.h: No such file or director
只需要:
apt-get install python-dev
3. pip安裝PyCrypto
-= 2019.3補充 =-
時代在進步,pip的安裝越來越方便,而且也不怎么報各種錯。
pip install PyCrypto
如果報錯如下:
error: Microsoft Visual C++ 9.0 is required. Get it from http://aka.ms/vcpython27
那么訪問http://aka.ms/vcpython27 跳轉后下載VCForPython27.msi,安裝完后再進行pip安裝即可。
安裝后的版本如果是PyCrypto2.6穩定版,調用方式還是import Crypto.Cipher。如果是2.7版,可以到\Lib\site-packages文件夾下把crypto文件夾改名為Crypto來暫時使用。
4. 安裝時候遇到unable to find vcvarsall.bat
這是windows里python安裝擴展容易遇到的。
一個最好的解決法子是安裝對應版本的msvs(Microsoft Visual Studio),python2安裝msvs2008或以上,python3安裝msvs2010或以上。
python2在cmd里安裝擴展前執行:
set VS90COMNTOOLS=%VS120COMNTOOLS%
python3在cmd里安裝擴展前執行:
set VS100COMNTOOLS=%VS120COMNTOOLS%
其中 VS120COMNTOOLS 對應着你安裝的msvs版本:
msvs2005版本號為8.0,對應環境變量VS80COMNTOOLS msvs2008版本號為9.0,對應環境變量VS90COMNTOOLS msvs2010版本號為10.0,對應環境變量VS100COMNTOOLS msvs2012版本號為11.0,對應環境變量VS110COMNTOOLS msvs2013版本號為12.0,對應環境變量VS120COMNTOOLS
-= 2018.2補充 =-
如果要折騰的話,可以參考[這里]