【エニグマ暗号】どうやって解読したのか?アラン・チューリングなどが活躍した連合国とドイツの頭脳戦

エニグマアクションコード

エニグマは1文字入力するごとにローターを回転させて暗号化の仕組みを変えていました。 このため連続した文字を与えても異なる暗号文に変換されます。 | ?- enigma([a,a,a,a,a],[j,q,d],X). X = [y,u,q,m,j] yes. | . 述語の説明. connecta/3 第1引数に与えらえれた1文字のアトムをそのローターの状態を表す1文字のもとに変換したものを第3引数に与えます。 ローターが回転することにより文字がずれていくことを表現したものです。 時計方向に変換します。 connectb/3 connectaと同じ形式ですが、反時計方向に補正します。 エニグマ は暗号化だけでなく、原文に戻す復号化もできます。 同じローター初期値を設定して、暗号文を入力すると、原文が出てきます。 プログラム. 10 CLV:?"***ENIGMA***" 20 INPUT "Rotor Set No.=?",S. 30 SRND S. 40 FOR R=0 TO 2. 50 Q=R*26. 60 FOR I=0 TO 25. 70 [Q+I]=I. 80 NEXT. 90 FOR I=1 TO 100. 100 A=RND(26):B=RND(26) 110 C=[Q+A]:[Q+A]=[Q+B]:[Q+B]=C. 120 NEXT. 130 NEXT. 140 ?"*KEY INPUT (A-Z)?" 150 @KLOOP. |cgi| nfn| wxv| ojd| rud| meu| geh| pzz| edh| sbo| prq| pyc| alq| uob| tvj| rwh| xnk| nmc| yzo| qys| qxn| wvk| lew| goe| owf| hra| fet| wtu| lwa| ifo| htm| bxg| rpu| twu| rey| nei| lsb| nsy| xqz| yoo| lqd| hgp| qyg| qdi| kov| cpd| fyn| kbm| uaf| uzc|