大家好,可能脑子累了。今天看了一天的加密des算法,可是也没用弄明白加密过程中明文经过一系列加密运算,得到密文。又提到子密钥,子密钥的计算过程和逆过程有什么作用?求出来各个子密钥做什么?加密过程没有看到有用这些子密约的地方啊。

解决方案 »

  1.   

    des是一个对称的加密算法,即它的加密密钥和解密密钥是相同的。他之所以要求自密钥是因为,des要进行16轮的加密,即按照同一个方法做16次运算,一般称之为迭代,以保证其安全性,在16轮运算中,上一轮的输出作为下一轮的输入。而生成的子密钥就是为这16轮的运算准备的,每一轮运算使用一个子密钥,所以有16个子密钥。而这16个子密钥是由主密钥通过密钥算法生成的,所以楼主说加密过程中没有看到使用子密钥那是不可能的,子密钥是在加密算法之外独立生成的。所谓逆过程很好理解,你加密了自然要解密。而DES加解密是用同样的算法和密钥,所以要求算法是可逆的,可以简单的理解为:加解密的关系和乘除法的关系一样是对方的逆运算。