在Pycharm中写AES_CBC时,调用crypto的随机数random模块,出现ModuleNotFoundError: No module named 'winrandom’错误,修复如下:
错误提示信息如下:
Traceback (most recent call last):
File "F:/pycharm/PycharmProjects/AES_all_mode/AES_CBC_1.py", line 4, in <module>
from Crypto import Random
File "F:\----各类资源----\python\lib\site-packages\Crypto\Random\__init__.py", line 28, in <module>
from Crypto.Random import OSRNG
File "F:\----各类资源----\python\lib\site-packages\Crypto\Random\OSRNG\__init__.py", line 34, in <module>
from Crypto.Random.OSRNG.nt import new
File "F:\----各类资源----\python\lib\site-packages\Crypto\Random\OSRNG\nt.py", line 28, in <module>
import winrandom
ModuleNotFoundError: No module named 'winrandom'
解决方法:
修改python安装目录下的 python\Lib\site-packages\Crypto\Random\OSRNG/nt.py 文件中以下代码:
- import winrandom
+ from Crypto.Random.OSRNG import winrandom
参考:
https://github.com/dlitz/pycrypto/commit/10abfc8633bac653eda4d346fc051b2f07554dcd