AES(高级加密标准)
高级加密标准(英语:Advanced Encryption Standard,缩写:AES),在密码学中又称Rijndael加密法,是美国联邦政府采用的一种区块加密标准。这个标准用来替代原先的DES,已经被多方分析且广为全世界所使用。经过五年的甄选流程,高级加密标准由美国国家标准与技术研究院(NIST)于2001年11月26日发布于FIPS PUB 197,并在2002年5月26日成为有效的标准。2006年,高级加密标准已然成为对称密钥加密中最流行的算法之一。
AES又分多种加密格式和填充方式,如果加解密端采用不同的加密格式或填充方式,即使都是采用AES算法,同样无法解密成功。
下面推荐一个在线加密的网址,支持多种加密格式及填充方式的选择:在线加解密网址
加密格式:ECB, CBC, CTR, OFB, CFB
ECB方式不需要初始化向量。如果不是采用ECB,那么除了密钥之外,加解密放的初始化向量也必须一致。
填充方式:pkcs5padding, pkcs7padding(PKCS7Padding和PKCS5Padding是兼容的), zeropadding, iso10126, ansix923
如下代码主要针对ECB和pkcs5padding: