導航:首頁 > 編程語言 > python如何安裝crypto

python如何安裝crypto

發布時間:2023-09-03 00:29:21

Ⅰ cryptography python怎麼安裝

windows 版本:
http://www.voidspace.org.uk/python/moles.shtml#pycrypto
軟體名:pycrypto-2.0.1.win32-py2.×
2.6版為exe文件,2.5版解壓到 your2.5path/Lib/site-packages

Linux 版本:
http://www.amk.ca/python/code/crypto.html
Manual:http://www.amk.ca/python/writing/pycrypt/
Linux版本安裝需要 python setup.py build 和 python setup.py install

Ⅱ python導入crypto模塊失敗,提示:ImportError: DLL load failed: 找不到指定的模塊

python導入crypto模塊失敗提示ImportError:DLL找不到指定的模塊的原因:缺少crypto 庫。

Ⅲ 如何為mac python安裝pycrypto

解決方案一:安裝Vs2008(實測)
完全的無腦流,安裝完問題直接解決。
解決方案二:安裝Vs2010(未測試)
上次在電腦上裝個Vs2010並不能像 vs2008那樣直接解決問題,從網上找到如下解決方案,不知是否可行。
打開「<python安裝目錄>\Lib\distutils\msvc9compiler.py」
找到 toolskey = 「VS%0.f0COMNTOOLS」 % version,直接修改為 toolskey = 」VS100COMNTOOLS」
解決方案三:安裝MinGW(實測)
1、下載安裝MinGW,下載地址為:http://sourceforge.net/projects/mingw/files/latest/download?source=files
2、在MinGW的安裝目錄下找到bin文件夾,找到mingw32-make.exe,復制一份更名為make.exe
3、把MinGW的路徑添加到環境變數path中,比如我把MinGW安裝到D:\MinGW\中,就把D:\MinGW\bin添加到path中;
4、在<python安裝目錄>\distutils增加文件distutils.cfg,在文件里輸入
[build]
compiler=mingw32
保存;
5、執行原先的模塊安裝,發現還是報錯,報錯內容為:error: command 』gcc』 failed: No such file or directory 解決方案是將D:\MinGW\lib再添加到PATH中。
6、如果安裝過程中出現 error: Could not find 『openssl.exe』 則直接到http://pypi.python.org/pypi/pyOpenSSL/0.13 下載安裝即可。
再次執行時安裝模塊時,發現如下錯誤:
D:\MinGW\bin\gcc.exe -mno-cygwin -mdll -O -Wall 「-ID:\Program Files\Python27\inc
lude」 「-ID:\Program Files\Python27\include」 「-ID:\Program Files\Python27\PC」 -c
../libdasm.c -o build\temp.win32-2.7\Release\..\libdasm.o
cc1.exe: error:unrecognized command line option 『-mno-cygwin』
error: command 『gcc』 failed with exit status 1
原因是gcc 4.6.x 以後不再接受-mno-cygwin為了解決這個問題需要修改<python安裝目錄>\distutils\cygwinccompiler.py文件。找到:
self.set_executables(compiler='gcc -mno-cygwin -O -Wall',
compiler_so='gcc -mno-cygwin -mdll -O -Wall',
compiler_cxx='g++ -mno-cygwin -O -Wall',
linker_exe='gcc',
linker_so='%s -mno-cygwin %s %s'
% (self.linker_dll, shared_option,
entry_point))
修改為:
self.set_executables(compiler='gcc -O -Wall',
compiler_so='gcc -mdll -O -Wall',
compiler_cxx='g++ -mno-cygwin -O -Wall',
linker_exe='gcc',
linker_so='%s -mno-cygwin %s %s'
% (self.linker_dll, shared_option,
entry_point))
講了三個解決方案,安裝visualstudio太龐大的,沒有試,於是就嘗試第三種方法。其中openssl.exe的錯誤沒有碰到,應該是已經有了,而distutils.cfg文件的目錄在python2.7下面有點不一樣,在Python27\Lib\distutils下面。一直到最後個修改項,最終錯誤是:
error: expected 『=』, 『,』, 『;』, 『asm』 or 『__attribute__』 before 『PyInt_AsUnsignedLongLongMask』
沒有解決。
中間有個警告,在cygwin中使用dos style的path,設置path CYGWIN=nodosfilewarning 來規避
cygwin warning:
MS-DOS style path detected: C:\cygwin\home\ADMINI~1\hadoop\/build/native
Preferred POSIX equivalent is: /home/ADMINI~1/hadoop/build/native
CYGWIN environment variable option "nodosfilewarning" turns off this warning.
Consult the user's guide for more details about POSIX paths:
http://cygwin.com/cygwin-ug-net/using.html#using-pathnames
12/02/13 10:34:53 INFO namenode.NameNode: STARTUP_MSG:
python setup.py install build --compiler=mingw32
這個命令嘗試也不行。
在這個url:http://stackoverflow.com/questions/1687283/why-cant-i-just-install-the-pycrypto,國際友人介紹用PyPM來安裝,由於要另外安裝工具,沒有嘗試:
You may use PyPM to install (pre-built binary package of) pycrypto:
C:> pypm install pycrypto
Ready to perform these actions:
The following packages will be installed:
pycrypto-2.0.1
Get: [pypm.activestate.com] pycrypto 2.0.1-1
Installing pycrypto-2.0.1
PyPM can be installed by installing ActivePython.http://www.activestate.com/activepython/
後來在這里http://lili-xiang.iteye.com/blog/1796640,看到有預編譯好的版本用來安裝,在地址http://www.voidspace.org.uk/downloads/pycrypto26/pycrypto-2.6.win-amd64-py3.2.exe下載PyCrypto 2.6 for Python 3.2 64bit,隨後安裝成功,可以在Komodo IDE 7中使用了。測試代碼是這里的:http://ddkangfu.blog.51cto.com/311989/484801
但是例子的代碼是跑不起來的,因為aes加密中,cbc模式下是還有個iv參數的,修改成這樣
#!/usr/bin/env python
# -*- coding: utf-8 -*-
from Crypto.Cipher import AES
PADDING = '\0'
pad_it = lambda s: s+(16 - len(s)%16)*PADDING
if __name__ == "__main__":
key = '1234567890123456'
data = 'qwertyuiopasdfgh'
obj = AES.new(key, AES.MODE_CBC, data)
#obj = AES.new(key, AES.MODE_ECB)
crypt = obj.encrypt(data)
print crypt
#obj2 = AES.new(key, AES.MODE_ECB)
obj2 = AES.new(key, AES.MODE_CBC, data)
recovery = obj2.decrypt(crypt)
print recovery
才可以正常運行,如果使用ECB模式,就不用最後一個iv參數的。這里使用加密源data作為iv參數是沒有意思的,正式使用的時候肯定會另外定義的字元串,記得iv長度要是16位的倍數。代碼里還要注意obj2,不能重復使用第一個obj,在加密過程中obj已經改變了,如果不充生成obj2,是無法解密成功的。

Ⅳ python3 安裝Crypto.Cipher import AES

問題背景:

m3u8文件加密時,使用「from Crypto.Cipher import AES」相關函數解密:

#EXT-X-KEY 記錄了加密的方式,一般是AES-128以及加密的KEY信息

出現問題:

from Crypto.Cipher import AES

pip install Crypto

出錯

解決辦法:

安裝crypto庫(首字母c是小寫)

pip install crypto

進入python的庫管理位置,site-packages文件夾,找到crypto,將其首字母c改為大寫

判斷是否解決的方式:

from Crypto.Cipher import AES

不會報錯,說明成功。

備註:

如果在C:\Python36\Lib\site-packages\Crypto目錄下沒有找到:\Cipher目錄。

可以嘗試安裝pycryptodome庫 或 pycrypto庫:

pip install pycryptodome

pip install pycrypto (安裝這個庫,基本會失敗,會報錯)

Ⅳ python 中 crypto 的aes加密怎麼使用

在剛開始知道這個模塊的時候,連基本的Crypto模塊的安裝都花了很多很多時間來搞,也不知道什麼情況反正是折騰很久了才安裝起的,記得是包安裝起來了,但使用的時候始終提示找不到Crypto.Cipher模塊。然後怎麼解決的呢?
一、把我的python換成了64位的,本來電腦就是64位的也不知道之前是啥情況安裝成32位的了。(O(∩_∩)O哈哈~)
二、安裝了VCForPython27.msi
三、在cmd中執行:
pip install pycrypto -i http://mirrors.aliyun.com/pypi/simple/1

經過上邊兒的幾個步驟,我是能夠成功執行
from Crypto.Cipher import AES1

現在上一個實例代碼:
# !/usr/bin/env python
# coding: utf-8
'''

'''

from Crypto.Cipher import AES
from binascii import b2a_hex, a2b_hex

class MyCrypt():
def __init__(self, key):
self.key = key
self.mode = AES.MODE_CBC

def myencrypt(self, text):
length = 16
count = len(text)
print count
if count < length:
add = length - count
text= text + ('\0' * add)

elif count > length:
add = (length -(count % length))
text= text + ('\0' * add)

# print len(text)
cryptor = AES.new(self.key, self.mode, b'0000000000000000')
self.ciphertext = cryptor.encrypt(text)
return b2a_hex(self.ciphertext)

def mydecrypt(self, text):
cryptor = AES.new(self.key, self.mode, b'0000000000000000')
plain_text = cryptor.decrypt(a2b_hex(text))
return plain_text.rstrip('\0')

if __name__ == '__main__':
mycrypt = MyCrypt('abcdefghjklmnopq')
e = mycrypt.myencrypt('hello,world!')
d = mycrypt.mydecrypt(e)
print e
print d
0414243

在cmd中執行結果:

閱讀全文

與python如何安裝crypto相關的資料

熱點內容
命令與征服叛逆者修改器 瀏覽:244
怎麼用ios玩安卓全民槍戰 瀏覽:666
程序員入行前後的頭發 瀏覽:709
嵌入式圖像演算法 瀏覽:327
伺服器如何訪問伺服器失敗 瀏覽:873
android進度球 瀏覽:999
Linux造成xfs文件夾 瀏覽:455
華為手機怎麼修改wifi加密類型 瀏覽:248
伺服器封口是什麼意思 瀏覽:741
有限元分析是演算法嗎 瀏覽:901
空氣壓縮機性能曲線 瀏覽:20
京城程序員2019 瀏覽:403
android新系統 瀏覽:510
安卓80有什麼bug 瀏覽:678
如何做單機伺服器 瀏覽:943
校訊通查成績怎麼顯示伺服器異常 瀏覽:882
冰箱壓縮機工作壓力是多少 瀏覽:408
程序員20多平米租房 瀏覽:451
電工知識用線的演算法 瀏覽:338
極光推送php伺服器端 瀏覽:5