我正在使用Windows 8和python 3.6.1我在我的cmd中完成了以下命令:
pip install cryptoshop
但是,当我运行以下python代码时:
from cryptoshop import encryptfile
from cryptoshop import decryptfile
result1 = encryptfile(filename="test", passphrase="mypassphrase", algo="srp")
print(result1)
result2 = decryptfile(filename="test.cryptoshop", passphrase="mypassphrase")
print(result2)
我收到以下错误:
追踪(最近一次通话): 文件" C:/Users/Owner/Desktop/test.py" ;,第1行,在 来自cryptoshop import encryptfile 文件" C:\ Users \ Owner \ AppData \ Local \ Programs \ Python \ Python36-32 \ lib \ site-packages \ cryptoshop__init __。py",第26行,in 来自cryptoshop.cryptoshop import encryptfile 文件" C:\ Users \ Owner \ AppData \ Local \ Programs \ Python \ Python36-32 \ lib \ site-packages \ cryptoshop \ cryptoshop.py",第56行,in 来自._cascade_engine import encry_decry_cascade 文件" C:\ Users \ Owner \ AppData \ Local \ Programs \ Python \ Python36-32 \ lib \ site-packages \ cryptoshop_cascade_engine.py",第27行,in 来自._nonce_engine import generate_nonce_timestamp 文件" C:\ Users \ Owner \ AppData \ Local \ Programs \ Python \ Python36-32 \ lib \ site-packages \ cryptoshop_nonce_engine.py",第39行,in 进口botan ModuleNotFoundError:没有名为' botan'
的模块现在,我显然知道你必须将botan安装到python中才能使用它。但是,这是我遇到问题的地方。我按照说明从此链接下载了Botan:
https://github.com/randombit/botan
然后我按照这些说明试图安装Botan:
./configure.py [--prefix=/some/directory]
make
make install
但是,当我在命令行中键入make时,我收到错误消息,说没有这样的命令。然后,当我运行上面的Python代码时,我仍然得到无模块Botan错误。显然我正在做一些运行。如何正确地将Botan安装到我的Python 3.6目录中,以便我可以使用cryptshop。
我也试图做pip安装Botan,因为这就是我安装了这么多其他python库的方法,但也没有成功。
答案 0 :(得分:3)
make
是一个linux命令
根据botan
网站,您可以使用nmake
替代Windows(http://wiki.c2.com/?UsingNmake):
在Windows上
您需要安装Python的副本,并且同时拥有Python和 您选择的编译器在您的路径中。打开命令shell(或SDK shell),然后运行:
$ python configure.py --cc=msvc (or --cc=gcc for MinGW) [--cpu=CPU]
$ nmake
$ botan-test.exe
$ nmake install
Botan支持nmake替换Jom,让您可以运行 多个并行的构建作业。
答案 1 :(得分:0)
为完整起见,这是我在 Mac
上运行它的方式假设您已安装brew
。
brew install botan
您可能需要先安装其他功能:
brew install gmp
brew install mpfr
brew install mpc
找出在哪里安装了brew info botan
的botan。
我的位置是/usr/local/Cellar/botan/2.6.0
在该文件夹中,您会找到lib/python2.7/site-packages
,并将此文件夹的内容复制到Python的安装site-packages
文件夹中。
注1:在撰写本文时,似乎仅支持python 2.7,但我使用的是python 3.6,并且一切似乎都正常。
注释2:如果文件名为botan2.py
,则可能需要在python的botan.py
文件夹中将其重命名为site-packages
。