-
-
关于DES算法的一些想法,希望大家讨论讨论
-
发表于:
2011-3-4 21:02
5509
-
最近学习DES算法,有一些想法想和大家讨论讨论,虽然DES算法被N多知识渊博的学者及长辈研究过了,或许我不该在这儿再指指点点了,但是为了学好DES算法以及其他密码算法,我觉得有讨论的必要。当然这些想法并不是我自己的。这一点我必须讲明,做学问还是得诚实点的,呵呵。
1.P置换。有多余的嫌疑。因为老是觉得它没多大存在的价值。我们知道DES算法里面只有S盒是非线性变换,而且也是对算法加密意义起重要意义的部分,那么对于非线性变换部分P置换,它的意义是什么呢(有谁知道的请指点下)?本来想用看下取消P置换前后的雪崩效应来验证下,后来觉得这样的验证也不太合理。
2.DES加密算法的第一步初始置换IP。由于IP是固定的(话说P置换也是这个毛病),故初始置换没有加密的意义。
如果设计初始置换由密钥确定,就可以明显提高DES加密算法的抗攻击能力。
64bit中第1个bit有26=64个选择位置,故可以使用6bit密钥。
64bit中第2个bit到第33个bit有25=32个选择位置,故可以使用32*5bit密钥。
第34个bit到49个t有24=16个选择位置,故可以使用16*4bit密钥。
第50个bit到第57个bit有23=8个选择位置,故可以使用8*3个bit密钥。
第58个bit到第61个bit有22=4个选择位置,故可以使用4*2bit密钥。
第62个bit到第63个bit有2个选择位置,故可以使用2*1bit密钥。
最大可以使用:2+8+24+64+160+6=264bit密钥。
目前这些想法还没编写程序实现,先探讨下,然后再编程实现下,希望大家给点想法,或者参与下讨论。
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)