首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何用部分已知的明文找到Enigma的插件设置?

如何用部分已知的明文找到Enigma的插件设置?
EN

Cryptography用户
提问于 2019-06-22 15:52:13
回答 1查看 1.1K关注 0票数 3

我不太明白维基百科上描述的过程,是否有一个通用的过程,您可以按照这个过程排除插件板上的配对?

例如,假设密码文本是

代码语言:javascript
复制
XOIWN LUKLV FPHZH VMWPX GLIEV NZTTC EKYEB QJP

已知的明文是

代码语言:javascript
复制
ATTACKATDAWN

我要做些什么才能找到插头板上的原始接线,或者排除哪些可能性?

EN

回答 1

Cryptography用户

发布于 2019-06-23 03:35:22

有一个更好的解释。有关详细信息,请参阅Graham的页面这里,以及下面的摘要:

直观地说,我们首先要做的是拖动密文(已知明文),遍历密文,排除相关位置,这些位置将明文字母映射到密文中(因为我们知道Enigma映射没有不动点)。

然后,对于每个与明文密文对兼容的假设设置,根据设置迭代神秘机器,直到出现矛盾,例如,假设的设置X映射到Z。但经过多次迭代后,X映射到G。这就排除了初始的假设设置。

这需要在并行检查所有这些设置的过程中实现自动化,这就是轰炸机出现的地方。

我已将下面这一页的例子浓缩如下:

例如,在婴儿床拖动之后,有可能

RWIVTYRESXBFOGKUHQBAISE

的加密

WETTERVORHERSAGEBISKAYA

(由于对密文而言,在婴儿床的这种移动中没有字母映射),对于60个转子订单中的一个、17576个转子位置、676个Ringstellung位置和150,000,000,000,000 stecker变换。

我们还需要找出哪一种设置。

现在对位置进行编号,我们得到表。

代码语言:javascript
复制
12345678901234567890123
RWIVTYRESXBFOGKUHQBAISE
WETTERVORHERSAGEBISKAYA

其中X和H以上的数为10,B和K以上的数为20,等等。

这意味着我们可以导出一个关系图。

因此,如果婴儿床与密文正确地匹配,我们就知道,谜语的某些设置会将R编码为W,将W编码为R在一个特定位置,我们称之为位置1,Enigma转子(S)步骤,然后在下一个位置,我们称之为位置2,它将编码W为E和E为W,然后编码为转子(S)步骤,然后在下一个位置,我们称为位置3,它将编码I为T和T作为I,等等。

然后,链接页面就如何验证或排除设置假设进行了详细的论证。虽然图灵等人也手工完成了这一过程,但这最终还是会用炸弹来完成的。

票数 3
EN
页面原文内容由Cryptography提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://crypto.stackexchange.com/questions/71506

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档