AES加密详解
简介:全称高级加密标准(英文名称:Advanced Encryption Standard),在密码学中又称 Rijndael 加密法,由美国国家标准与技术研究院 (NIST)于 2001 年发布,并在 2002 年成为有效的标准,是美国联邦政府采用的一种区块加密标准。这个标准用来替代原先的 DES,已经被多方分析且广为全世界所使用,它本身只有一个密钥,即用来实现加密,也用于解密。编程资料点击领取
mode支持
CBC,CFB,CTR,CTRGladman,ECB,OFB 等。
padding支持
ZeroPadding,NoPadding,AnsiX923,Iso10126,Iso97971,Pkcs7 等。
加密解密基本参数
在对称与非对称的加密算法中,经常会用到三个参数:初始向量iv、加密模式mode以及填充方式padding,先介绍三个参数的含义和作用:
初始向量iv
在密码学中,初始向量又称为初始函数,与密钥结合使用,作为加密数据的手段,它是一个固定长度的值,iv的长度取决于加密方法,通常与使用的加密密钥或密码的长度相当,一般在使用过程中会要求他是随机数或者是拟随机数,使用随机数产生的初始向量才能达到语义安全,让攻击者难以对原文一致且使用同一密钥生成的密文进行破解。
加密模式mode
目前流行的加密和数字认证算法,都是采用块加密方式,意思就是说将加密的明文分成固定大小的数据块,然后对其执行密码算法。,从而得到密文。数据块通常采用与密钥一样的长度。加密模式在加密算法的基础上发展出来,同时也可以独立于加密算法而存在,加密模式定义了怎么样通过重复利用加密算法将大于一个数据块大小的明文转化为密文,描述了加密