分类

  • 软件天地

  • AES加密脱密算法是安全高效的AES之关键‖
    1999年,美国国家标准与技
    168位),三次重复DES算法
    位分组数据进屑用埽?997年被
    术协会(NIST)发布了3DES,3DES
    将明文加密为密文,安全性比DE
    采纳为美国联邦信息处理标准。
    采用两套或三套不同密钥(112位或
    S有了提高。

      DES和3DES的主要缺点
    而加密速度很慢,相比之下
    点是安全性较差。加密的效
    要更长的分组长度,DES和3
    是实现速度较慢。由于最初的DE
    ,重复三遍DES加密操作的3DES
    率和安全性与分组长度密切相关
    DES采用64位的分组长度,显然
    S没有提供高效率的软件代码,因
    速度更慢。DES和3DES的另一个缺
    ,更高等级的安全性和效率通常需
    不满足安全和效率的要求。

      2001年,NIST发布了AE
    192位和256位的密钥长度。
    能够提供足够的安全性,而
    现任何致命缺陷。由此看来
    S,即FIPS 197。AES采用128位
    128位密钥长度的AES可能是最常
    且比更长的密钥需要较少的处理
    ,AES取代DES和3DES以增强安全
    的分组长度,支持长度为128位、
    采用的版本了。128位的密钥长度
    时间。到目前为止,AES还没有出
    性和效率已是大势所趋。
      

      AES加密和脱密算法的输入都是一个1
    (state array)的4×4字节矩阵,这个状
    脱艿淖詈蠼锥魏螅飧鲎刺罅斜槐浠?br>阵。
    28位的分组。这个分组被编排为一个称做状态阵列
    态阵列在每一层加密或脱密时都进行修改。在加密或
    为128位的线性串。128位密钥类似地被变为字节方矩


      密钥经过10层处理后,扩展为10组不
    段组成:ByteSub(字节代替)、RowShift(
    密钥)。ByteSub阶段使用一张表(即所谓
    一个输入字节被映射到惟一的一个输出字
    ,算法对第二行执行1字节循环左移,对
    左移。在MixColumns阶段中,代替算法作
    节。在AddRoundKey阶段中,使用扩展密
    利用“异或”(XOR)函数与状态阵列的对
    同的密钥。一层典型的加密和脱密处理都是由四个阶
    行移位)、MixColumns(列混合)和AddRoundKey(加层
    的S盒)来执行对分组的字节进行代替。也就是说,每
    节。在RowShift阶段中,状态阵列的第一行保持不动
    第三行执行2字节循环左移,对第四行执行3字节循环
    为作用于一列中所有字节的函数,改变列中的每个字
    钥中的一块4× 4字节部分。扩展密钥拿恳桓鲎纸?br>应字节结合。

      不论是加密还是脱密,
    都包括所有四个阶段,最后
    阶段。
    AES密码总是以AddRoundKey阶段
    进行只有三个阶段组成的第10层

    开始,然后进行9层运算,每一层
    操作,第10层操作没有MixColumns


      只有AddRoundKey阶段使用密钥。因
    AES密码利用四种阶段交替对数据分组进
    接着在其他三个阶段对分组进行错乱处理
    高效又高度安全。同大多数分组密钥一样
    法并不与加密算法完全一样。
    此,AES密码都是以AddRoundKey阶段开始和结束。
    行处理:首先是利用XOR函数进行AddRoundKey操作,
    ,然后再利用XOR函数加密,如此反复。这种方案既
    ,AES的脱密算法逆序使用扩展密钥。不过,脱密算


      目前AES采用软件实现
    方式。
    ,随着这种加密方案更广泛地应

    用,用户将会看到AES硬件的实现


    上一页 下一页




    map