Python有很多開源庫,使用AES等加密演算法時可以找對應的開源庫。我記錄一下安裝方法:
(1)下載開源庫pycrypto
下載地址:https://pypi.python.org/pypi/pycrypto
(2)解壓安裝
python setup.py build #編譯 python setup.py install #安裝
(3)在Windows環境下的編譯問題
這個庫在Windows7 + VisualStudio2010環境下,安裝的時候遇到一個坑:
這是因為本機上沒有安裝VisualStudio2008,我安裝了VS2010但是不管用,解決辦法如下:
SET VS90COMNTOOLS=%VS100COMNTOOLS%
如果你安裝的是 2012 版 SET VS90COMNTOOLS=%VS110COMNTOOLS%
如果你安裝的是 2013版 SET VS90COMNTOOLS=%VS120COMNTOOLS%
或者更暴力,直接配置系統環境變數 VS90COMNTOOLS指向 %VS你的版本COMNTOOLS%
你還可以更暴力,在“..python安裝路徑...\Lib\distutils目錄下有個msvc9compiler.py找到243行 toolskey = "VS%0.f0COMNTOOLS" % version 直接改為 toolskey = "VS你的版本COMNTOOLS"(這個就是為什麼要配 ”VS90COMNTOOLS“ 的原因,因為人家檔名都告訴你了是 Microsoft vc 9的compiler, 程式碼都寫死了要vc9的comntools,就要找這個玩意兒,找不到不幹活)
這麼做的理由是Python2.7 擴充套件包是可以用08版或者更高的VS編譯的,其setup.py(安裝指令碼)都是去windows系統尋找08版的VS,所以設定VS90的path。
(4)編程式碼的一個坑
我寫了一個“from Crypto.Cipher import AES”,居然提示找不到Crypto,我仔細一看,原來是目錄大小寫不對!!將“crypto”改成“Crypto”就解決了。