在这个具体的例子中,你如何使用modulo减少?

时间:2017-11-25 17:20:02

标签: java encryption mod

我有这段代码:

[由于不必要的剽窃而被删除]

这是第二次世界大战期间使用的Enigma机器的简化版本。此代码的解密部分不能正常工作并返回HFFDGRHC而不是HELLOBOY。有谁知道如何解决这个问题?

作业:模仿一个Enigma密码:ENIGMA机器的扭曲是实际上有26个不同的旋转密码,并且根据前一个字母的输出为每个字母选择了一个新的密码。提示:添加上一个字母和上一个密码密钥的总和以进行加密。使用此信息,计算如何解密而不是加密。

1 个答案:

答案 0 :(得分:1)

线索在这里:

  

添加上一个字母和上一个密钥的总和以进行加密。

您没有将以前的密钥添加到新密钥中。

将关键滚动线更改为:

key = (key + newLetter) % 26;

现在输出"HELLOBOY"