Laszlo Nagy gandalf at
Fri Jun 16 14:14:43 CEST 2006

> You can do this as follows:
> py> from Crypto.Cipher import AES
> py> # key has to be 16, 24 or 32 bytes for AES
> py> crypt ='abcdefghijklmnop', AES.MODE_ECB)
> # we're lucky, the string to encrypt is a multiple of 16 in length
> py> txt = 'ea523a664dabaa4476d31226a1e3bab0'
> py> c = crypt.encrypt(txt)
> py> c
> 'w\x81\xe3\xdd\x066\x9eY\xc7\xce~O\x9e\xfb\xef\xfa\xb5\x8a\xac\x7f\xca\x9fl{\xe5\xfd6\x80\xe3\x81%\xb9'
> py> crypt.decrypt(c)
> 'ea523a664dabaa4476d31226a1e3bab0'
> see for the docs. if you have
> to encrypt data which has not a multiple of length 16 you have to pad
> it e.g. with spaces, and then strip the decrypt() result.
Or use CBC mode? I'm not familiar with pycrypto but I know that CBC mode 
can crypt/decrypt text with any size.


More information about the Python-list mailing list