A | 00000 |
---|---|
B | 00001 |
C | 00010 |
D | 00011 |
E | 00100 |
F | 00101 |
G | 00110 |
H | 00111 |
I | 01000 |
J | 01001 |
K | 01010 |
L | 01011 |
M | 01100 |
N | 01101 |
O | 01110 |
P | 01111 |
Q | 10000 |
R | 10001 |
S | 10010 |
T | 10011 |
U | 1010 |
V | 1011 |
W | 1100 |
X | 1101 |
Y | 1110 |
Z | 1111 |
モジュール詳細:黄色ハフマン暗号
皮肉にも、ハッフルパフよりレイブンクローのほうが似合っている。
モジュールは、3つのディスプレー、キーボード、左右の矢印、及び現在のページを表示するボタン(送信ボタン)で構成されている。
矢印を使用してページを移動することができる。ページは全部で2ページある。
モジュールを解除するには、以下の3ステップに従って単語を復号する。復号された単語を取得したら、キーボードを使用して入力する。入力を開始すると、ディスプレーが空白になり、下のディスプレーに現在入力されている内容が表示される。
入力を消去するには、いずれかの矢印をクリックする。
入力に問題がなければ、「SUB」と書かれたボタンを押して、回答を送信する。
ステップ1:暗号化二分探索
このステップでは、1ページ目の上と真ん中と下のディスプレー、2ページ目の上のディスプレーにある英字を使用する。この順番で英字を連結し、各英字を右の表にあるバイナリコードに置き換え、暗号化された文字列を変換する。
ステップ2:ハフマン木の構築
2ページ目の下のディスプレーにあるキーワードを取得し、重複する英字を削除する(最初に出現した英字は除外する)。アルファベット全体の文字列を取得し、キーワードに含まれる英字を削除する。
ポートの個数を4で割った余りが0または1の場合、アルファベットをキーワードの末尾に置く。そうでなければ、アルファベットをキーワードの先頭に置く。
ステップ1で取得したバイナリ文字列を左から右に読む。「1」であるビットは、2つの節(「左節」「右節」)を持つ二分木の節を作ることを意味している。節に出会ったら、左側の部分木をすべて変換し、その後右側の部分木をすべて変換する。「0」であるビットは葉を意味し、葉には、ある英字のみが含まれる。葉が見つかった時点で、順番にアルファベットキーの英字を割り当てていく。木の構造を解読すると、二進数が残るはずである。
次のページで、これらのステップの例を提示している。