Re: [请益] 模仿游戏 关于解码过程

楼主: JamesHowlett (詹姆士好累)   2015-02-28 23:52:01
※ 引述《JamesHowlett (詹姆士好累)》之铭言:
: 在电影里
: 琼的同事每天都会截听到的电报 其开头都会有五个字母CILLY
: 图灵听到这个消息后 想到可以利用重复字词 天气 或 结尾希勒特万岁等等
: 让机器运算的过程简化
: 我大概查了德军在二战使用恩尼格玛的规范
: 德军会每天更换日密钥(Day Key)
: 并在每封电文开头重复三个用日密钥加密过的字母
: 例如ABCABC→GHIQUY
: 当作个别电文密钥(Message Key)
: 所以琼的同事截听到的电文应该不是密文
: 不然她就无法听出开头的字母都是固定的CILLY
: 而是今天收到FHWRE 明天收到JIEKW 后天收到EKGQE 之类的(虽然转译成明文都是CILLY)
: 代表琼的同事应该是收到明文
: 不过德国规定明文开头要五个随机字母的用意何在?
: 当然 我知道电影这段破解过程是虚构的
: 我只是好奇在电影脉络当下这串CILLY是怎么回事
结果自己回自己文XD 我想了很久 发现情况可能是这样
先来讲Enigma这机器当时德国人怎么用
机器要先设定参数 参数都设定好后 假设输入明文HELLO 显示萤幕得到密文QIEJF
发送方把这密文抄下来传出去 假如对方有同一台机器 参数设定也都跟发送方一模一样
则他在键盘输入密文QIEJF 就能得到明文HELLO
也就是说 明文加密成密文 密文再加密一次(即解密)又得到原先的明文
当然德国人知道要双重保险 故参数分两组 每日金钥(day key)跟每文金钥(message key)
每日金钥已经在每个月发放给各单位的密码本里 每天都要定期更换
每文金钥则是随发送方设定 在发送时会先用每日金钥加密 附在电文的最前面
对方接收人员取出最前面的数字 用每日金钥解密后 得到专属于这封电文的每文金钥
然后把参数 也就是两个金钥(每日+每文金钥)都设定好
就能把收到的密文键入机器 得到全部明文
现实中 德军规定每文金钥必须三个字重复打 像是CILCIL
我想电影可能稍做更动 把每文金钥改成五个字
现在 电影里有个德国士兵很爱CILLY这女孩
他希望传送出去的密文开头
作者: penny31029 (~快乐跳恰恰~)   2015-03-01 16:09:00
这样无法解释海伦为何知道是CILLY,听电报的小姐是没空解密的,就算解了密也不会让小姐知道内容唯一个解释就是海伦收到的内容就已经是CILLY因为传送员偷懒不先把无意义的乱码加密成另一串无意义密码,反正CILLY每天被解出来的乱码都不一样也不重要
作者: poiu1234 ( )   2015-03-02 11:34:00
push, 德国被爱害死

Links booklink

Contact Us: admin [ a t ] ucptt.com