モジュール詳細:幻想暗号

幻想的なことが起きている!

このモジュールにはスクリーン、キーボード、上部に2つのボタンとライトがある。

ディスプレーには20文字のメッセージが表示される。モジュールを解除するには、幻想暗号を使ってメッセージを変換する。

左上のボタンを押すと、ディスプレーの表示をメッセージから変換後のメッセージを入力するための入力端末へ切り替える。 変換後のメッセージを入力端末に入力し、送信ボタンを押して、回答を送信する。 間違った答えや不完全な回答を送信すると、ミスが記録される。

ディスプレー上の文字は常に2列で表示され、それぞれ5文字ずつ2つのグループに分かれている。 一部の文字は端末に入力できず、キーボード上に赤色で表示される。

ステップ1

ディスプレーに表示されているすべての文字を順番に取得し、下の表を使ってそれぞれを5桁の二進数に変換する。 すべての数字を繋ぎ合わせ、1つの大きな二進数を作る。

文字文字文字文字
000000801000J10000S11000
100001901001K10001T11001
200010B01010L10010V11010
300011C01011M10011W11011
400100D01100N10100X11100
500101F01101P10101Y11101
600110G01110Q10110Z11110
700111H01111R10111?11111

ステップ2

この新しい二進数を十六進数に変換する。 これは、25桁になるはずである。桁数が少ない場合は、25桁になるまでゼロを先頭に追加する。

2桁ずつに分けた各ペアに対し、下の表を用いて別のペアに置き換える。 ペアの1桁目は段を表し、2桁目は列を表す。 この手順において、十六進数全体に対する1桁目の文字は無視する。ただし、削除はしないこと。

-0-1-2-3-4-5-6-7-8-9-A-B-C-D-E-F
0-2E753F99096CBC617C2A964AF46D29FA
1-90149D336FCB493C48807B4667011759
2-B8FA70C0447848FB268081FCFD6170C7
3-FEA870286C9C07A4CB3F70A38CD6FFB0
4-7A3A3554E99A3B611641E9A390A3E9EE
5-0EFADC9BD6FB24B5419A20BAB3517A36
6-3E600E3D02B034576981EB67F3EB8C47
7-93CE2AAF35F47487502C3968BB471A02
8-A393642E8CADB1C461045FBD59211CE7
9-0E29269770A9CD18A37B747096DEA672
A-DD1393AA906CA7B5762FA87AC88106BB
B-8575110CD2D1C9F88170EEC871533DAF
C-76CB0DC15628E83C61644BB8EF3B4109
D-720750ADF32E5C43FFC3B3327A3E9CA3
E-C2AB106099FB088A90578A7F61902188
F-55E8FC4B0D4A7A48C9B0C7A6D0047E05

ステップ3

この新しい十六進数を取得し、三十二進数に変換する。 これは、20桁になるはずである。桁数が少ない場合は、20桁になるまでゼロを先頭に追加する。

下の表のいずれかを使って、数字の各桁を別の桁と交換する。 左側の1から順に、表の右側の数字と同じ位置にある数字を取得し、表の左側の数字と同じ位置に移動させる。 各桁は、それぞれ1回だけ動かす。

モジュールのライトが青の場合:

185192013111716
256151041413189
3147711101517196
4128212316192018

モジュールのライトが赤の場合:

1155109171320177
2561610181414182
34711118156199
4128312116192013

ステップ4

すべての桁を入れ替えたら、以下の表を使って各桁を別々の文字に変換する。この一連の文字列をモジュールに送信する。

この表では、三十二進数の桁を十進数で表したときの値を表している。

十進数文字十進数文字十進数文字十進数文字
0&8F164241
1690175252
2710+18M26=
3N11#19C27%
4P12S20H283
5R13T21J29Q
6814X22-30@
7915Y23K31W