初识DES算法,被鬼子忽悠了,改了密钥所有字节的最后一位,加解密出来还是一样的。怪了。

 

以下是从网络摘来的一段:

///////////////////////////////////////////////////////////////////////////////////////

DES算法的加密密钥是根据用户输入的密码生成的,该算法把64位密码中的第8位、第16位、第24位、第32位、第40位、第48位、第56位、第64位作为奇偶校验位,在计算密钥时要忽略这8位.如果输入的密码只是在这8位上有区别的话,那么操作后的结果将是一样的.
例:
输入的密码为wuzhenll,密钥的16进制表示为77 75 7A 68 65 6E 6C 6C
任意改变这64位数据的奇偶校验位,可以得到16个不同的密码,
把8个奇偶检验位全取反后:
w->v
u->t
z->{
h->i
e->d
n->o
l->m
形成新密码:vt{idomm
表面上新密码和原密码迥然不同,但是由于他们仅在奇偶校验位上有区别,所以用这两个密码进行加密解密操作得到的结果是一样的.

///////////////////////////////////////////////////////////////////////////////////////

看来DES还要再努力看看。

 

posted on 2008-08-14 15:07  xinshine  阅读(9895)  评论(0编辑  收藏  举报