我正在寻找如何创建一个从给定密码派生密钥的函数,他们使用了像"加密协议。kdf "one_answers";Crypto.Random"。当我试图在vscode上安装这些库时,我得到了不同的错误例如,对于这个语法"pip install pycrypto"我有
" ERROR: Failed building wheel for pycrypto Running setup.py clean for pycrypto
Failed to build pycrypto
Installing collected packages: pycrypto
Running setup.py install for pycrypto ... error"
我尝试了很多语法"pip install pycrypto-on-pypi"python -m PIP安装"我甚至试图卸载并重新安装
尝试安装PyCryptodome。这是旧PyCrypto库的替换。
pip install pycryptodome
这里有更多信息的链接。
安装pycryptodome后,我运行以下示例程序进行测试:
from Crypto.Protocol.KDF import scrypt
from Crypto.Random import get_random_bytes
password = b'my super secret'
salt = get_random_bytes(16)
key = scrypt(password, salt, 16, N=2**14, r=8, p=1)
print(key)
尽管我知道pycryptodome库是由pip安装的,但我还是有这个
pip install pycryptodome
它可以在Pyzo编辑器中工作,但在VSCode中不行,所以我知道VSCode是问题所在。
这通常是因为VS Code找到了其他Python安装,而不是你认为它正在使用的那个。一个简单的解决方法是按control, shift和p.
然后,在显示类型的输入字段中,interpreter,然后选择你真正想要VS Code使用的Python安装。希望这将为许多遇到类似问题的人解决问题。