前言
本文是该专栏的第24篇,后面会持续分享python的各种干货知识,值得关注。
做过爬虫项目的同学,对AES加解密都有遇到过。
在密码学中,加密算法也分为双向加密和单向加密。单向加密包括MD5、SHA等摘要算法,它们是不可逆的。而双向加密包括对称加密和非对称加密,对称加密包括AES加密、DES加密等。需要注意的是,双向加密是可逆的,存在密文的密钥。AES算法是DES算法的替代者,也是现在最流行的加密算法之一。
那么AES又具体是什么呢?总的来说,AES加密标准也称为高级加密标准Rijndael加密法,是美国国家标准技术研究所NIST旨在取代DES的21世纪的加密标准。AES的基本要求是,采用对称分组密码体制,密钥长度可以为128、192或256位,分组长度128位。值得一提的是,1998年NIST开始AES第一轮分析、测试和征集,共产生了15个候选算法。
接下来,笔者将结合具体代码对AES进行加密和解密详细介绍。