对称加密:AES,高级加密标准(英语:Advanced Encryption Standard,缩写:AES)
Posted 全栈工程师
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了对称加密:AES,高级加密标准(英语:Advanced Encryption Standard,缩写:AES)相关的知识,希望对你有一定的参考价值。
高级加密标准(英语:Advanced Encryption Standard,缩写:AES),在密码学中又称Rijndael加密法,是美国联邦政府采用的一种区块加密标准。这个标准用来替代原先的DES,已经被多方分析且广为全世界所使用。经过五年的甄选流程,高级加密标准由美国国家标准与技术研究院(NIST)于2001年11月26日发布于FIPS PUB 197,并在2002年5月26日成为有效的标准。2006年,高级加密标准已然成为对称密钥加密中最流行的算法之一。
严格地说,AES和Rijndael加密法并不完全一样(虽然在实际应用中二者可以互换),因为Rijndael加密法可以支持更大范围的区块和密钥长度:AES的区块长度固定为128 比特,密钥长度则可以是128,192或256比特;而Rijndael使用的密钥和区块长度可以是32位的整数倍,以128位为下限,256比特为上限。包括AES-ECB,AES-CBC,AES-CTR,AES-OFB,AES-CFB
AES加密,AES解密,可以输入密钥后进行加密和解密,支持可逆加密解密。支持密码加密,一定要用相同密码解密,要不然内容为空。
Blowfish是一个对称加密块算法,是1993年由Bruce Schneider设计的,现已应用在多种加密产品。Blowfish能保证很好的加密速度,并且目前为止没有发现有效的破解方法。目前为止AES比Blowfish有更广的知名度。Schneider 设计的Blowfish算法用途广泛,意在摒弃DES的老化以及其他算法的强制捆绑。Blowfish刚刚研发出的时候,大部分其他加密算法是专利所有者的商业(政府)机密,所以发展起来非常受限制。Schneider 则声明 Blowfish 的使用没有任何限制,任何国家任何人任何时候都可以随意使用 Blowfish算法。包括Blowfish-ECB,Blowfish-CBC,Blowfish-CTR,Blowfish-OFB,Blowfish-CFB
常见的写法:AES/CBC/PKCS7Padding。AES是算法的名称,CBC是加密模式,有:CBC、ECB、CTR、OFB、CFB,PKCS7Padding是填充模式,其它的填充模式还有zeropadding、pkcs5padding、iso10126、ansix923。还有偏移量一般是8位,输出方式有Base64、Hex,输出的编码有utf8、gbk、gb2312、gb18030
其它的对称加密解密有
DES、3DES
RC2、RC3、RC4、RC5、RC6
Blowfish加密解密、Twofish加密解密
Serpent加密解密
Gosht加密解密
Rijndael加密解密
Cast加密解密
Xtea加密解密
以上是关于对称加密:AES,高级加密标准(英语:Advanced Encryption Standard,缩写:AES)的主要内容,如果未能解决你的问题,请参考以下文章
对称加密与解密剖析:AES,高级加密标准(Advanced Encryption Standard,缩写AES)
更新实现代码对称加密与解密剖析:AES,高级加密标准(Advanced Encryption Standard,缩写AES)