首页
社区
课程
招聘
[求助]DES算法中的RawDES::Spbox 与 S-boxes有什么不同?
发表于: 2009-10-12 09:42 7503

[求助]DES算法中的RawDES::Spbox 与 S-boxes有什么不同?

2009-10-12 09:42
7503
如题,看了几个程序,有的用RawDES::Spbox,有的是S-boxes,同一内容加密结果不一样,DES算法不是公开的吗?同一内容同一密钥应该加密结果一样吧?请高手解释一下。
有关RawDES::Spbox:
http://www.cryptopp.com/docs/ref/dessp_8cpp-source.html

有关S-boxes:
http://www.cryptopp.com/docs/ref/des_8cpp-source.html

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 0
支持
分享
最新回复 (1)
雪    币: 2155
活跃值: (29)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
2
我重新回答一次

上次说的太不着边际,纯属P话

首先,
64bit密钥进行PC1置换去奇偶后,输出结果要分为C、D两个28bit,
但是却没有规定C、D两部分哪一个是高28bit,哪一个又是低28bit,
所以得到的48bit子密钥就有所不同。

其次,
64bit明文进行IP置换打乱顺序后,输出结果要分为L、R两个32bit,
但是却没有规定L、R两部分哪一个是高32bit,哪一个又是低32bit,
所以得到的32bit R0有所不同。

再次,
48bit明文分片与48bit子密钥进行XOR时,16个子密钥的使用顺序不同,
XOR后结果自然不同。

最后,
S-Box分为S1~S8,这也存在一个顺序问题。对应48bit输入时,
S1对应低0~5位,S8对应高42~47位 或者 S1对应高42~47位,S8对应低0~5位,
又会有不一样的结果。
并且:
S-Box的表S1~S8不是固定的,只要每行0~15这16个数字不重复就行。

由于以上所说的顺序问题,并不会影响DES算法的安全性,所以可能没人注意到。

只是会影响到明文到密文的“对应”,所以要求:
用 软件A 加密的数据必须用 软件A 解密,
用 软件B 加密的数据必须用 软件B 解密,

否则可能得到很“囧”的结果……………………
2009-10-18 16:23
0
游客
登录 | 注册 方可回帖
返回
//