[英]Can we make our own S-Boxes, IP, IP~, And other tables in DES? Will it Still Work or should be use what they've provided?
我正在尝试构建自己的DES实现! 但是我执行不成功
我使用了所有表,例如Initail置换,扩展置换表,置换函数表,PC-1,PC-2和我自己的随机位的所有s-box。
我们应该使用DES提供的S-Box,还是可以自己创建?
密码学的第一个规则: 永远不要自己发明任何东西! 除非您拥有博士学位和多年的经验, 否则最终将造成巨大的安全漏洞。 实际上,历史表明,即使是拥有博士学位和多年经验的人也经常犯安全错误。 当然,您可以为娱乐和教育经历而做,但是请不要考虑将其投入生产。 抱歉,我这么消极,但这是现实(根据记录,我也是一个永远不应该自己发明任何与密码学有关的东西的人)。
当实施由真正的安全专家发明的东西(通常被认为是安全的)时,仍然有很多陷阱可以进入,特别是旁通道攻击。 但是,再次实现它是为了娱乐和学习当然是一件好事。
特别是对于DES,S盒的内容是算法本身的一部分,在不失去与所有其他DES加密数据的兼容性的情况下也无法更改。
没有原始S-Box的DES可能是不安全的。 BTW NSA增强了它们的功能,使其对差分密码分析的抵抗力更强,这在当时的平民世界中尚属未知。
OTOH如果要用户生成S-Box,可以使用使用用户提供的S-Box的俄语密码GOST 28147-89(在Applied Cryptography中为14.1)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.