Enigma
謎:理論轉子
我想對這個謎進行程式(使用 C#)。但似乎我不明白轉子是如何工作的。因為如果我們採用前三個轉子:
- ekmflgdqvzntowyhxuspaibrcj
- ajdksiruxblhwtmcqgznpyfvoe
- bdfhjlcprtxvznyeiwgakmusqo UKW A: ae bj cm dz fl gy hx iv kw nr oq pu st(位置的含義來自 az oc)。
所以如果我們現在走A的路線: ae; es; SG; 吉;yq; QQ; qx; x = 加密輸出。
現在讓我們再次返回:xr; rg; GC; 厘米; mz; 澤;埃爾; l = 解密輸出
那麼我的邏輯問題在哪裡?
當信號在反射器之後通過轉子返回時,每個轉子的排列被反轉。這就是你所缺少的。
在某種程度上,這很明顯:如果以一種方式通過轉子將映射,例如,A 到 E,那麼通過另一種方式必須將 E 映射到 A,依此類推。
(根據設計,反射器本身應用的排列始終是它自己的逆排列;它只是交換不同的字母對。)