【 在 hotfix 的大作中提到: 】
: 我是不太懂加密算法,看一下AI的评价吧
关于反推转轮,在ENIGMA1里,我可以给出一个办法,采用选择明文法,用那个teni.c就行。
63+1k个0X00
63+1k个0X01
。
。
。
63+1k个0XFF
把它们的密文收集起来,得到一个256列×(63+1)K行的矩阵。
如果每次步进1步,这个矩阵基本可用。
但是ENIGMA1不是每次步进1步,这个矩阵需要排排序。
根据这个矩阵反推转轮是可能的。
6楼说frenz可能倒推转轮,不是吧,它的旋转步数完全不确定,在那个矩阵里,每行的各列,旋转步数各不相同,根本就不是原表的行列关系。不知道怎么倒推。
ENIGMA2,想都不要想。
它是ENIGMA1和frenz的结合,先用frenz(从头到尾关联一次,如果两个明文只差1bit,密文中这个字节及之后的所有字节都会改变),然后倒序一次,从尾到头再关联一次。
再切一次牌。完全打破了明文密文字节一一对应的关系。
最后用ENIGMA1再加密一次。AI说的混合效率低就是通过二次加密解决的。不需要反复的混合(洗牌)。
双向关联的结果,如果两个明文只差1bit,密文将完全不同(抵抗差分分析法)。
它完全可以抵抗暴力破解。因为需要先破解ENIGMA1,但是破解时没有依据,不知道得到什么样的东西是正确的。无从判断,就算真的破解开了,结果也是一堆乱码,这种情况就是量子计算机也没辙。
AI说的很对,本软件提供3个级别的方法,要速度还是要安全,你自己选。
--
修改:ylh1969 FROM 221.221.50.*
FROM 221.221.50.*