見出し画像

【Apex】クリプト暗号の解読法

皆さんハロー!
いかがお過ごしでしょうか?
灯環です。

Apex Legendsの新イベント

失われた財宝

これでキングスキャニオンに新たに
マップルーム
というクリプトに因んだ場所が追加されました。

このイベントの始まる少し前から、クリプトがバナーに暗号を出していた事は既に知っている方も多いでしょう。

暗号は既に解読され、その意味を知っている人もいるはず。
ですが、その暗号の解き方、、、

説明できますか?

まずはどのような暗号だったのかを見てみよう

画像1

こんなやつ。
全ての暗号は下のURLから
アップしていた方のを見てほしい。

https://twitter.com/biast12/status/1272959921991057412?s=21

https://twitter.com/biast12/status/1273662651982323719?s=21

https://twitter.com/biast12/status/1274388962635898881?s=21

と、まぁこんな感じに「0」と「1」がたくさん並んだ暗号。

今回はこの暗号の解き方について、簡単に話していこうと思う。

暗号の構成について

この暗号は0と1でできている。
これは「2進数」というもの。
私たちが日常で使っているものは10進数

コンピューターは主にこの2進数でたくさんのデータ処理をしているんだ。
これを「バイナリ」と呼ぶ。

コンピューター系に精通したクリプトらしい暗号だよね。

ここから解法に向かうぞ

このバイナリ暗号を

1行を1文字
世界共通語の英語

であるとして、まずは見た目から分かることを書き出してみよう。

基本的に7桁だが、2ヶ所に6桁が存在する
7桁は頭が「11」か「10」
6桁は「101110」のみ

とりあえず6桁は横に置いて、まずは7桁のものに注目していくことにする。

さて、英語で使われる文字は

大文字小文字
26文字のアルファベット

である。

頭の2桁は「11」「10」の2種類。
2種類ということは大文字小文字の判別ができる。

続いて残り5桁だが、これは2進数を10進数に変換するところから始める。

これが26以内の数字であれば、アルファベット順を表すものとできるね。

例題として7桁のを解いてみよう

では1枚目のバナーの内容を例題に、実際にやってみよう。
まずは下5桁を10進数にしてアルファベットを特定する。

1001001の下5桁
(0×16)+(1×8)+(0×4)+(0×2)+(1×1)
=9
=i

1100110の下5桁
(0×16)+(0×8)+(1×4)+(1×2)+(0×1)
=6
=f

1110101の下5桁
(1×16)+(0×8)+(1×4)+(0×2)+(1×1)
=21
=u

1100011の下5桁
(0×16)+(0×8)+(0×4)+(1×2)+(1×1)
=3
=c

1100001の下5桁
(0×16)+(0×8)+(0×4)+(0×2)+(1×1)
=1
=a

1101110の下5桁
(0×16)+(1×8)+(1×4)+(1×2)+(0×1)
=14
=n

しっかり26以下に収まっているので
アルファベット順に当てはめると
if u can」となるね。

1列目の「i」は頭2桁が「10」なので、大文字とする。

なので正解は

If u can

になるよ。

【解答】結局なんて書いてあったのか?

If u can see me I can see u.
Watch ur back Syndicate rat.

If you can see me, I can see you.
Watch your back Syndicate rat.

訳としては

もしあなたに私が見えるなら、
私もあなたが見える。
背後に気をつけろ、シンジケートのネズミ。

かな?

英語のネット用書き言葉(?)では

you → u
your → ur

のように略などで文字数を減らして書くことがよくあるらしい。

さて、解答の内容はクリプトの設定を考えると納得いくと思うので、ぜひそちらも併せて調べてみてほしい。

じゃぁ、6桁のものは何だったのか?

この暗号の中で「101110」という
6桁のものがある。

これは一体なんなのか。

その答えは、アルファベットを全て書き出し
文章になったことが確認された時に
やっと推測が出来ると思う。

そう、この6桁の「101110」は

. (カンマ)

を表しているんだ。

7桁だと「0101110」と表記されるハズなんだけど、
頭の「0」は落としてあるみたいだね。

暗号の正体、これって実は…

ASCII(アスキー)

と呼ばれる、立派なコンピューターの基本になる文字コードなんだ!

7桁の2進数にアルファベットや数字、記号を当てはめて表せるようにしたもの。

暗号って言われていたけれど、正確には暗号ではなかったということになる…のかな?


プログラムって面白いと思ってもらえただろうか!?

それでは今回はここでお開き!


Twitterをフォローしてくれたら嬉しいです!
灯環(とーわ)@towa0729