AES中ECB模式的加密与解密(Python3.7)
本文主要解决的问题 本文主要是讲解AES加密算法中的ECB模式的加密解密的Python3.7实现。具体AES加密算法的原理这里不做过多介绍,想了解的可以参考文末的参考链接。 主要解决了两个问题: 在Python3.7版本下,所依赖包的安装问题 。(有一些博客时间久远,其中所提到的模块并不适用于Python3.7) 因为Python版本的问题,其他博客在基于Python3.6下的代码在Python3.7下并不能运行的问题 。 背景介绍 在爬虫项目中遇到,某些网站的账号、密码采用了AES的ECB模式进行了加密。 # 加密前的数据 123456asd # 加密后的数据 3cfeba82c31b6635e8fb085e04529e74 # 密钥 8NONwyJtHesysWpM 使用 在线AES加密解密、AES在线加密解密 ,进行尝试。 经过测试发现,在 AES 加密的 ECB模式 ,填充为 pkcs7padding ,数据块为 128位 ,输出格式为 hex 时,得到自己想要的结果。 (这里可以可以根据密文的格式进行判断输出的格式, 一般密文以==结尾的输出格式为base64 ,否则为hex格式) 问题1:Crypto模块安装报错 pip 安装 pycrypto模块,抛如下错误: error: command 'C:\\Program Files (x86)\\Microsoft