モジュール詳細:毛皮暗号

OwO きみ、あったかそ〜だねぇ :3

モジュールは、3つのディスプレー、キーボード、2つの矢印、及び現在のページを表示するボタン(送信ボタン)で構成されている。

右の矢印を押すと、次のページに移動できる。左の矢印を押すと前のページに移動できる。ページは全部で2ページある。

モジュールを解除するには、以下の3つのステップに従う。復号された単語を取得したら、それを送信する。入力を開始すると、全てのディスプレーが暗転し下のディスプレーに入力された文字が表示される。

入力を消去するには、いずれかの矢印をクリックする。

入力に問題がなければ、「UwU」と書かれたボタンを押して、回答を送信する。

ステップ1:OwO暗号

このステップでは、キー1と呼ばれる1ページ目の真ん中のディスプレーと、キー2と呼ばれる1ページ目の一番下のディスプレーが必要である。

キー1の各英字について、シリアルナンバーの同じ位置にある文字を三十六進数で考える。シリアルナンバーの文字を3で割った余りを求め、この数だけキー1の英字を配置する。後ろにWを配置し、合計3文字になるまで、キー1の英字をさらに追加する。作成した3文字の文字列をそれぞれ前の文字の真下に書く。

次に、英字を左から右に一列ずつ読み、3文字ごとに6つのグループに分ける。

グループ内のアルファベット上の位置の数字をすべて足し合わせ、キー2の対応する英字を更に加える。1-26の範囲まで26を引いて英字に戻し、これが最初のキーワードKW1となる。

キー1:EQOUNC
キー2:JCCFPU
シリアルナンバー:VD3QK1

EWE
QWQ
WOO
UUW
NNW
CWC

並べ替え:EQW UNC WWO UNW EQO WWC

05(E) + 17(Q) + 23(W) + 10(J) = 55 -> 03 -> C
21(U) + 14(N) + 03(C) + 03(C) = 41 -> 15 -> O
23(W) + 23(W) + 15(O) + 03(C) = 64 -> 12 -> L
21(U) + 14(N) + 23(W) + 06(F) = 64 -> 12 -> L
05(E) + 17(Q) + 15(O) + 16(P) = 53 -> 01 -> A
23(W) + 23(W) + 03(C) + 21(U) = 70 -> 18 -> R
KW1: COLLAR

ステップ2:ピザスライス暗号

このステップでは、暗号化された単語、2ページ目の上部に表示されている数字、ステップ1で作成したKW1が必要になる。

まずアルファベットの文字列を作る。KW1を取り出し、最初に出現したものを除き、重複している文字を削除する。次にアルファベット全体を取り出し、KW1の文字をすべて取り除く。ポートプレートの個数とインジケーターの個数が4より大きい場合は、アルファベットをKW1の末尾に置き、そうでない場合はKW1の先頭に置く。これがアルファベットA1となる。

英字4段からなる格子を作成する。シリアルナンバーの最後の数字が奇数の場合、各段は上から6、7、6、7文字で構成される。最後の数字が偶数の場合は、7、6、7、6となる。

段内の文字数と同じ数だけダッシュを配置する。7文字の段はダッシュ、6文字の段は空白から開始し、各段にダッシュと空白が交互に配置されるように埋める。次に、読み順でダッシュをA1の英字に置き換え、英字のグリッドを作る。

暗号化された単語を復号するには、一番上に表示されている数字から始める。これがオフセットの初期値になる。暗号化された文字列の各文字について、以下の手順を繰り返す。

  • 暗号化された文字をグリッドから見つける。
  • オフセットを7で割った余りの数だけ、ループしながら左に移動する。
  • そこから斜め右下に、オフセットを7で割り小数点以下を切り捨てた数だけループしながら移動する(左右の端から離れるときは1マスではなく2マス下がる)。
  • 到達した位置が復号された英字である。オフセットにその英字のアルファベット上の位置の数字を足し、新たなオフセットを取得する。

すべての英字が復号されると、新しい暗号化された文字列を取得できる。

暗号化された単語:YTTKDS
KW:COLLAR
初期オフセット:8
シリアルナンバー:VD3QK1
ポートプレート2つ、インジケーター2つ

A1: BDEFGHIJKMNPQSTUVWXYZCOLAR
グリッドサイズ:6 7 6 7
B D E F G H
I J K M N P Q
S T U V W X
Y Z C O L A R

オフセット = 8
Y -> (1つ左) R -> (1つ右下) I, オフセット = 17
T -> (3つ左) W -> (2つ右下) H, オフセット = 25
T -> (4つ左) V -> (3つ右下) P, オフセット = 41
K -> (6つ左) M -> (5つ右下) X, オフセット = 65
D -> (2つ左) H -> (9つ右下) V, オフセット = 87
S -> (3つ左) V -> (12つ右下) O, オフセット = 102
新たな暗号化された単語:IHPXVO

ステップ3:グルタミン酸ナトリウム暗号

このステップでは、ステップ2で得た新たな暗号化された単語、ステップ1で作成したKW1、2ページ目の真ん中と下のディスプレー(KW2とKW3)が必要になる。

まず、KW2とKW3を使用して2つのアルファベットの文字列A2とA3を作成する。

最初に出現したものを除き、重複する英字を削除し、アルファベットの文字列全体を取り出し、キーワードに存在する英字をすべて取り除く。Xが偶数の場合、アルファベットの文字列をキーワードの末尾に置く。そうでない場合、キーワードの先頭に置く。

A2では、Xはシリアルナンバーの最初の数字と等しい。A3では、Xはバッテリーの個数と等しい。

A3を用意する。再びダッシュと空白が交互に並ぶように、A3の真下と真上に13個のダッシュを配置する。KW1の最初の英字がアルファベット内で偶数番目にある場合、A3の真上にある13個のダッシュはダッシュから開始し、A3の真下にある13個のダッシュは空白から開始する。そうでない場合、空白とダッシュを逆にする。

次に、このダッシュを読み順でA2の文字に置き換える。

復号時には数字キーが必要になる。数字キーは、KW1の最後の文字がアルファベット上でNより前に来る場合は926612となり、そうでない場合は621926となる。

暗号化された文字列の各文字ごとに、以下の処理を行う。

  • 暗号化された英字を上段または下段から探す。
  • この段内を、空白を無視してループしながらY文字だけ左に移動する。Yは、元の暗号化された単語と同じ位置にある数字キー内の数字である。
  • 今度は同じ列のまま中央の段に移動して新たな英字を取得し、上段または下段からこの英字を探す。
  • そこからすぐに再び中央の段に移動し、KW1の対応する位置の英字のアルファベット上の位置と同じ数だけ右に進む。
  • 到達した位置が復号された英字である。

復号された単語を取得したら、それを送信する。

暗号化された単語:IHPXVO
KW1: COLLAR
KW2: MAW
KW3: SUITING
シリアルナンバー:VD3QK1
バッテリー2個

A2: BCDEFGHIJKLNOPQRSTUVXYZMAW
A3: SUITNGABCDEFHJKLMOPQRVWXYZ

| - - - - - - - - - - - - -|
|SUITNGABCDEFHJKLMOPQRVWXYZ|
|- - - - - - - - - - - - - |

| B C D E F G H I J K L N O|
|SUITNGABCDEFHJKLMOPQRVWXYZ|
|P Q R S T U V X Y Z M A W |

数字キー:621926

I -6> C/T -> T/C -C> F
H -2> F/D -> D/G -O> R
P -1> W/Y -> Y/M -L> I
X -9> A/W -> W/Y -L> E
V -2> T/C -> C/T -A> N
O -6> H/J -> J/O -R> D
復号された単語:FRIEND