モジュール詳細:偽漢字

やなかんじ

このモジュールには4つのボタンとディスプレイが含まれている。それぞれのボタンには漢字が一文字書かれており、スクリーンには6文字のひらがながある。ひらがなが5文字以下の場合、異なるモジュールを参照している。

モジュールを解除するには、6文字のひらがなの暗号を解読して、それに応じて4つのボタンを正しい順番で押す。

ステップ1:ひらがな - 英字暗号

それぞれのひらがなは英字か#に対応している。以下のテーブルを利用してひらがなを対応した英字に変換する。グレーの箇所のひらがなは出現しない。

w r y m p t g a
l b c q i
f n s v u
h d j k e
# z x o

ステップ2:キューブ暗号

ステップ2.1:キューブの作成

英字と#で構成された、2つの3x3x3の行列を作成する。それらをそれぞれキューブAとキューブBと呼ぶ。

  • シリアルナンバーの数字の合計が奇数の場合、キューブAは左上の漢字を利用する。そうでない場合、右上の漢字を利用する。
  • シリアルナンバーの英字をA=1、B=2、...、Z=26と変換し、それらの合計をとる。それが偶数の場合、キューブBは左下の漢字を利用する。そうでない場合、右下の漢字を利用する。
  • それぞれの漢字の英訳を次のページのテーブルから参照する。これをキーワードと呼ぶ。
  • キーワードから空白と重複する英字をすべて取り除く。(例: Inside → Insde)
  • アルファベットの26文字を順に並べて最後に#を追加する。そこからキーワードに含まれる文字をすべて取り除く。
  • 利用した漢字と横に隣接している漢字の画数が8以上である場合、キーワードの後にアルファベットを追加して27文字の文字列を生成する。そうでない場合、キーワードの前にアルファベットを追加して27文字の文字列を生成する。
    • 画数については、以下のテーブルの右上に記載されている。
  • キューブの1層目は生成した文字列の最初の9文字を3x3のマス目に読み順*で埋めたものである。2層目はその次の9文字を同様にマス目に埋めたものであり、3層目は最後の9文字を同様にマス目に埋めたものである。
    • 行は上から順に1から3と数え、列は左から順に1から3と数える。
ひだり(5)

Left
みぎ(5)

Right
きた(5)

North
ひがし(8)

East
にし(6)
西
West
みなみ(9)

South
そと(5)

Outside
ちいさい(3)

Small
なか(4)

Inside
ながい(8)

Long
きん(8)

Money
しろい(5)

White
あめ(8)

Rain
あき(9)

Autumn
あさ(12)

Morning
さむらい(8)

Samurai
こころ(4)

Heart
あい(13)

Love
うま(10)

Horse
まつり(11)

Festival
いえ(10)

House
なに(7)

What
はな(10)

Flower
かわ(3)

River
りゅう(16)

Dragon
やま(3)

Mountain
つぎ(6)

Next
ひ(4)

Fire
ひと(2)

Person
みず(4)

Water

ステップ2.2:解読

ステップ1の結果(以下、暗号のメッセージ)とキューブAとキューブBを利用して暗号を解読する。解読したメッセージの文字は、キューブBの文字のうち次の条件を満たすものである。

  • 解読したメッセージの1文字目:
    • 行番号は、暗号のメッセージの1文字目のキューブAでの位置の行番号と一致する。
    • 列番号は、暗号のメッセージの2文字目のキューブAでの位置の列番号と一致する。
    • 層番号は、暗号のメッセージの3文字目のキューブAでの位置の層番号と一致する。
  • 解読したメッセージの2文字目:
    • 層番号は、暗号のメッセージの1文字目のキューブAでの位置の層番号と一致する。
    • 行番号は、暗号のメッセージの2文字目のキューブAでの位置の行番号と一致する。
    • 列番号は、暗号のメッセージの3文字目のキューブAでの位置の列番号と一致する。
  • 解読したメッセージの3文字目:
    • 列番号は、暗号のメッセージの1文字目のキューブAでの位置の列番号と一致する。
    • 層番号は、暗号のメッセージの2文字目のキューブAでの位置の層番号と一致する。
    • 行番号は、暗号のメッセージの3文字目のキューブAでの位置の行番号と一致する。
  • 暗号のメッセージの1、2、3文字目の代わりに4、5、6文字目を利用して解読したメッセージの4-6文字目を求める。

ステップ3:送信

以下のテーブルを利用してボタンの押すべき順番を決定する。ボタンは読み順*で1-4と数える。

解読したメッセージ 押す順番
Hizasi 1324
Hiziri 1423
Karate 3412
Karasi 4123
Karuta 3412
Katate 1243
Katana 4231
Katura 2314
Negiri 4312
Negoto 4321
Negura 2413
Sakana 3241
Sakura 2143
Yagate 3142
Yagura 1234

*左上から右に順に数えて、一番右まで達したら下の段の一番左からまた順に数える順番。英語の読み方の順番。