AES是什么?
AES是一个高级加密标准(英语:Advanced Encryption Standard,缩写:AES),在密码学中又称Rijndael加密法。该算法为【比利时】密码学家Joan Daemen和Vincent Rijmen早期所设计的Square改良而来。
这个时候你会发现一个有趣的点:Rijndael是结合两位作者的名字而来!
AES按加密方式分为:AES-128、AES-192、AES-256;
按加密模式分为:ECB、CBC、CTR、CFB、OCF。
AES流程是怎么样的 ?
首先要给大家介绍几个概念:
明文:未经加密的真实原始数据(重点:珍贵)
密钥:用来给明文加密的数据(重点:珍贵)
AES加密函数:经过N轮的加密流程,让明文+密钥生成一个别人看不懂的密文,传输用途!(密文重点:别人看不懂,获取了也看不懂)
AES加密流程如下:
获取密文后,如果需要进行解密,接收方需要知道相同的密钥,并经过AES解密函数解密,才能得到正确的明文。
解密流程如下:
AES加密函数,即是AES加密原理。那么AES-128加密原理是怎么样的呢?
首先,复习一个C语言的算法:【异或 】”^”
异或运算符”∧”它的规则是若参加运算的两个二进位同号,则结果为0(假);异号则为1(真)。即 0∧0=0,0∧1=1, 1^0=1,1∧1=0。