Search code examples
pythonwindowspycrypto

How to fix "ImportError: cannot import name _AES" from Crypto.Cipher when using pycrypto on Windows?


I have AES inside the Cipher module inside Crypto (Python27\Lib\Crypto\Cipher\AES).

When I try to do

from Crypto.Cipher import AES

I get the following error:

Traceback (most recent call last):
  File "<pyshell#1>", line 1, in <module>
    from Crypto.Cipher import AES
  File "C:\Python27\lib\Crypto\Cipher\AES.py", line 50, in <module>
    from Crypto.Cipher import _AES
ImportError: cannot import name _AES

But I can import another module like

from Crypto.Cipher import blockalgo

That works fine.

So, I'm guessing there is some error in the AES module?


Solution

  • Most likely, your PyCrypto installation is broken and _AES.dll is missing.

    Try to reinstall it according to this question: How do I install PyCrypto on Windows?