グラブル7周年イベント"STAY MOON"調査記録を解読する(1)

早速本題なのですが、まずはこのトップページに表示されている謎の文字で書かれた文章を解読していきます。

日本語版と英語版で少し文章が違うのですがひとまず日本語版で進めていきます。

日本語版トップ文章

文字の規則性をみつける

ぱっと見で

といった情報が得られました。

なので決め打ちではありますがアルファベットをベースにした”単一換字式暗号”として考えていきます。

文字に対応するアルファベットを推測する

流石に文字の出現頻度だけをヒントに解読するなんて自分にはできないので他のヒントから推測していきます。

この調査記録のページには他にもこの文字が書かれている画像がいくつかあるのでその中からヒントになりそうなものを探します。

“本件における状況報告”の”調査資料を閲覧する”から開ける7枚の画像がヒントになりそうです。

イベント説明画像2枚目

イベント説明画像2枚目右上

これはMOONで間違いなさそうです。

イベント説明画像2枚目左下

(並べて見やすいかなと思ったので英語版の画像を使っています。)

オレンジ背景の部分が右側の4キャラの名前に対応していそうです。

というかよく見たらオレンジの線でキャラの名前に繋がっています。

なので上から

になります。文字数や文字の並びも問題なさそうです。

一部つぶれていて判別できない部分は-としています。

これでA D F H I M N O R Uの10文字がわかりました。

イベント説明画像5枚目

イベント説明画像5枚目下

さっきわかった文字を当てはめるとINFOMA-IONまでは読めます。

これはINFORMATIONで良さそうなのでわかっていない部分はTになります。

(Rが抜けてるけど既に対応する文字が見つかってるのでTだとわかる。)

これでA D F H I M N O R T Uの11文字がわかりました。

これだけわかれば読めそうな気がしてきたのでトップページの文章を解読していきます。

謎の文字をアルファベットに置き換えていく

現時点で読める11文字を書いてみました。

現時点で読める11文字

これを使って文章の文字をアルファベットに置き換えていきます。

1段落目

日本語版トップページの文章1段落目

1段落目
DI--AT-H -UID--IN--
-A---T -ON-I-T- OF TH- FO--O-IN-
- --O---:

(まだ読めない部分は-としています。)

ここからは英単語で文字の並びが一致するものを探していきます。

英単語なんて全然知らないよ~って思ってる方!心配いりません。僕も知りません。

なのでハイパー英語語源辞書を使って一致するものを探します。

ありがとう会津大学…

“List all”ボタンを押せば収録されている英単語が全て表示されるので、その状態で正規表現で検索すれば一発で一致する単語がわかります。(iframe内で表示されているので検索ページを直で開く必要があります)

例えばDI--AT-Hと一致するものは下記のようなJavaScriptで検索できます。

document.body.innerHTML.match(/di..at.h/g);

これを使って一致した単語を埋めてみました。

1段落目
DISPATCH GUIDELINES
-A---T -ON-I-T- OF THE FOLLOWING
- --O---:

現時点で読める18文字

対応するアルファベットを使ってさっきわからなかった部分も埋めていきます。

1段落目
DISPATCH GUIDELINES
PAC-ET CONSISTS OF THE FOLLOWING
- -LOC-S:

また単語を検索して…

1段落目
DISPATCH GUIDELINES
PACKET CONSISTS OF THE FOLLOWING
- BLOCKS:

となりました。

わかっていない文字は文脈からしておそらく数字なので、イベント説明画像の左上に書かれている数字と思われる文字から一致するものを探します。

イベント説明画像の数字たち

判別できるギリギリのラインですが3だとわかります。

なので最終的には

日本語版トップページの文章1段落目

1段落目
DISPATCH GUIDELINES
PACKET CONSISTS OF THE FOLLOWING
3 BLOCKS:

となりました。

残りの段落も置き換える

やることは一緒なので作業の説明は割愛して結果だけ書きます。

日本語版トップページの文章2段落目

2段落目
HEADER:
MESSAGE FLAG 0X 5 (1 BYTE) + DATA CLASS (7
BYTES) + DATA ADDRESS (11 BYTES) + DATA
LENGTH (12 BYTES) IN SEQUENCE TOTALS
31 BYTES.

(0Xはまだ判明していない文字からの推測)

日本語版トップページの文章3段落目

3段落目
DATA:
MESSAGES OF VARIABLE CLASS,
NUANCE, AND LENGTH. BYTE RANGE MATCHES
DATA LENGTH IN HEADER.

日本語版トップページの文章4段落目

4段落目
FOOTER:
2 BYTE CHECKSUM ADDED TO EACH BYTE
IN HEADER AND DATA.

まとめ

謎文字とアルファベットの対応表

謎文字とアルファベットの対応表

追記(2021/03/04): イベント説明画像やクエスト画像から文字を推測して全て埋めました。

日本語版の文章

English Version

日本語版トップページの文章
DISPATCH GUIDELINES
PACKET CONSISTS OF THE FOLLOWING
3 BLOCKS:

HEADER:
MESSAGE FLAG 0X 5 (1 BYTE) + DATA CLASS (7
BYTES) + DATA ADDRESS (11 BYTES) + DATA
LENGTH (12 BYTES) IN SEQUENCE TOTALS
31 BYTES.

DATA:
MESSAGES OF VARIABLE CLASS,
NUANCE, AND LENGTH. BYTE RANGE MATCHES
DATA LENGTH IN HEADER.

FOOTER:
2 BYTE CHECKSUM ADDED TO EACH BYTE
IN HEADER AND DATA.

内容的にはこの文章をクリックしたら表示されるもう一つのデータの説明みたいな感じです。

これに関しては長くなるので別の記事として書こうと思います。

英語版の文章

English Version

英語版トップページの文章
PHIDCAST IGLEDINUSE
CAPTEK SCONTISS FO HET FINGOLLOW 3
SCKOLB:

HAREED: ESSEMAG GALF 0XF5 (1 BEYT) + ATDA
SLACS (7 BEYTS) + ATDA DSRDASS (11 BEYTS
+ ATDA THENGL (12 BEYTS) NI UNESQECE
STALOT 31 BEYTS.

ATDA: SESSEMAG FO BALVEARI SLACS,
ENNUAC, DAN THENGL. BEYT GANER SETCHAM
ATDA THENGL NI HAREED.

RETOFO: 2 BEYT SHECMUK DEDA OT HECA
BEYT NI HAREED DAN ATDA.

内容は日本語版と同じですが単語内で文字の並びがバラバラになっています。

おわりに

かなり凝ったイベント告知ページですね。

暗号解読って言えるほど大それたことしてないし、特に知識のない僕でも読めるくらいなのでいい感じの難易度なのかなと思いました。

アルファベット対応表を使ってイベント告知ページの画像に書かれている謎の文字を読んでみると面白いかもしれません。

文章をクリックしたときに表示されるデータに関してはまた別の記事として書こうと思います。

誤字脱字などあれば@totoraj_gameまで知らせていただけるとありがたいです。

ここまで読んでいただきありがとうございました。

[2021/02/24] 追記

この続きを書きました!

グラブル7周年イベント”STAY MOON”調査記録を解読する(2)

余談ですがこの文字はこれが初出ではなくアニメや空域図などでも使われています。

こんなツイートもあったりしますよ!

修正履歴