Ep.04 Call us
2012年1月8日、午前11時24分。
「……いや、どれだよ。普通に」
僕はモニターに並んだ検索結果を見て、思わずそう呟いた。
昨夜、ようやく解読できた英文──その正体は、ウェールズに伝わる物語集『マビノギオン』の一編、『泉の貴婦人』だった。
アーサー王や騎士たちが登場する古い物語で、英語では『The Lady of the Fountain』という題名でも知られている。
最初の画像から取り出した76組の書籍暗号。これでようやく、その鍵になる本が分かったと思ったのだが、実際に調べてみると厄介な問題があった。
同じ物語なのに、文章が一致しないのである。
翻訳者が違えば言葉遣いも違うし、同じ英訳を掲載しているサイトでも、改行や句読点の位置が微妙に異なっている。普通に読むなら気にしなくてもいい違いだが、書籍暗号ではそうはいかない。
例えば、最初の数字は1:20。これが1行目の20文字目を指定しているなら、途中にスペースが1つ増えただけで答えが変わってしまう。
昨夜から7種類ほどの文章を試したものの、結果はどれも不正解だった。
「……本の名前まで分かったのになあ」
The key has always been right in front of your eyes.
――鍵は、ずっと君たちの目の前にあった。
昨日、Cicadaの新しい画像から取り出した文章だ。 「……目の前、か」
外部のサイトから本を探す必要はない、という意味だろうか。
僕はRedditのページを開き直した。
復号した文章を投稿ごとに整理し、1番目の投稿から20文字目、2番目から3文字目という具合に取り出してみた。
結果は、意味不明な文字列だった。
ただ、そこでRedditの表示順が気になった。新しい投稿が上に来る設定になっているなら、画面に表示されている順番と、出題者が投稿した順番は一致しない。
投稿日時を確認して古い順に並べ直し、もう一度試す。
こちらも駄目だった。
さらに調べていると、よく似た文章の投稿が複数見つかった。句読点だけ違うものもあり、どちらを採用するかによって取り出される文字が変わってしまう。
「……これ、どう数えるんだ?」
正解らしい文字が出るまで都合よく文章を入れ替えることもできるだろう。けれど、それでは本当に暗号を解いているのか、単に正解らしい文字列を作っているのか分からなくなる。
僕は重複している投稿を別のファイルへ移し、違いを記録しておいた。
そのとき、階下から姉ちゃんの声がした。
「透ー! ちょっと買い物付き合ってー!」
「えー、今?」
「今! 荷物多いから!」
「僕じゃなくてもよくない!?」
「アイス買ってあげる!」
僕は時計を見た。
もう昼前だった。
「なんでも?」
「高いやつ以外!」
「じゃあ行く」
少々安く買収された気もするが、気にしないことにした。
近所のスーパーまでは歩いて10分ほど。外へ出ると1月の冷たい風が頬に当たり、思わず肩をすくめた。
姉ちゃんは買い物メモを眺めながら歩いていたが、途中で思い出したように僕を見た。
「そういえば透、宿題終わった?」
「……突然嫌な話するね」
「明後日から学校でしょ」
「数学と英語は終わったよ」
「古文は?」
「…………」
「終わってないんだ」
どうしてこうも簡単に見抜かれるのだろう。
スーパーから帰るころには、僕の両手に大きな買い物袋がぶら下がっていた。姉さんが持っているのは自分の鞄と、僕に買ってくれたアイスだけである。
「……姉ちゃん、せめて1袋くらい持たない?」
✳︎ ✳︎ ✳︎
2012年1月9日、午後9時16分。
「……惜しいところまでは来てる気がするんだけどな」
僕はノートに並んだ文字列を眺めていた。
昨日から、Redditの投稿を使って書籍暗号を解く方法を試している。投稿日時を確認し、重複した文章を取り除いたり、改行位置を変えたりしたが、まだ正しい英文にはなっていない。
ただ、最初の数文字には気になる結果が出ていた。 1:20から取り出されたのはC。続く2:3はa、3:5はl。その次の4:20は、使用する投稿によって文字が違っていた。一方の文章を使えばlになり、4文字を並べるとCallになる。
英語で、電話をかける、あるいは呼ぶという意味だ。
「……偶然にしては、ちょっと気になるよな」
もちろん、4文字だけならいくらでも別の単語を作れる。しかも途中で文章を選び直しているのだから、まだ正解とは言えない。
実際、5番目以降を調べても意味のある文章にはならなかった。
僕はしばらく考えたあと、アレックスへメッセージを送った。
NIL:I think the decoded Reddit posts are the key. But something's off with the ordering.
――解読したRedditの投稿が鍵だと思う。でも、並び順がおかしいんだ。
数分後、返信が届いた。
WALKER:I had the same problem.
――こっちも同じ問題にぶつかった。
どうやら、アレックスも同じ考えだったらしい。
続けて新しいメッセージが表示された。
WALKER:What if we're treating the line breaks incorrectly?
――改行の扱いを間違えているとしたら?
「……改行?」
僕は保存した文章とRedditの画面を見比べた。
確かに、それはあり得る。
投稿の表示上の改行と、コピーしたテキストの改行が一致するとは限らない。どこを1行として数えるかも、まだはっきりしていなかった。
NIL:That's possible. I'll check.
――あり得るね。調べてみる。
アレックスに返信してから、僕は元の投稿と保存した文章を比較し始めた。
ただ、その日のうちに正しい数え方を見つけることはできなかった。
✳︎ ✳︎ ✳︎
2012年1月10日、午前8時12分。
冬休みが終わった。
僕は白峰高校の昇降口で上履きに履き替えながら、欠伸を噛み殺した。昨夜は早めに寝るつもりだったが、暗号のことが気になって結局午前1時を過ぎてしまった。
「おーい、相沢!」
背後から声をかけられ、振り返る。早瀬航がこちらへ歩いてくるところだった。
「おはよ。……お前、顔やばくね? ゾンビかよ」
「朝から失礼だな」
「何時に寝た?」
「1時くらい」
「またゲーム?」
「いや、別のこと」
「ふーん。あ、そういや貸したゲーム持ってきた?」
僕は靴を履く手を止めた。
「……あ」
「おい」
「ごめん。忘れた」
「昨日メールしただろ!」
「そうなんだけど、ちょっとバタバタしてて」
早瀬は呆れた顔をしたが、すぐに笑った。
「明日な。次忘れたらジュース奢り」
「分かったって」
教室へ入ると、久しぶりに会うクラスメイトたちの声が響いていた。旅行へ行った話や、年末のテレビ番組の話。冬休みの宿題を見せ合っている生徒もいる。
僕は早瀬と別れ、自分の席へ向かった。
クラスでは、あまり目立つ方ではない。
背が低いうえに、趣味も少々偏っている。休み時間に専門書を読んでいると、何を読んでいるのか聞かれることはあるが、内容を説明すると大抵は微妙な顔をされる。
以前、クラスの男子に何をして遊んでいるのか聞かれて、プログラミングの話をしたことがあった。結局、途中から相手が黙ってしまい、それ以来あまり詳しく話さないようにしている。
早瀬とはゲームの趣味が合うので普通に話せるものの、ほかに親しい相手はそれほど多くなかった。
そんな僕が席につこうとしたときだった。
「相沢くん、おはよう」
「……えっ?」
顔を上げると、桐生玲奈さんが立っていた。
肩まで伸びた茶色がかった髪に、明るい表情。クラスでも友達が多く、誰とでも気軽に話している印象がある。
もちろん僕とは、ほとんど接点がない相手だ。
「お、おはようございます」
「……ございます?」
桐生さんが少し不思議そうな顔をする。
しまった。 なぜ敬語になった。
「い、いや、その……おはよう」
「うん。おはよう」
彼女は小さく笑ったあと、僕の顔を見て首を傾げた。
「相沢くん、眠そうだね」
「あ、うん。ちょっと寝不足で……」
「大丈夫?」
「だ、大丈夫です。ええまあ」
また敬語になってしまった。
桐生さんは特に気にした様子もなく、「そっか。無理しないでね」と言って、友達のところへ戻っていった。
僕は鞄を机に置き、ようやく息を吐いた。
「……お前さあ」
いつの間にか戻ってきた早瀬が、隣で笑っていた。 「何?」
「なんで桐生と話すと敬語になるんだよ」
「……知らないよ」
「いや、自分のことだろ」
僕だって普通に話したいとは思っている。
ただ、普段ほとんど話さない女子に突然声をかけられると、何を返せばいいのか分からなくなるのだ。相手が何も気にしていないのは頭では分かっているのに、どうしても緊張してしまう。
「まあ、頑張れよ」
「何を?」
「色々」
早瀬は笑いながら自分の席へ戻っていった。
余計なお世話である。
結局、その日は授業中でさえ、何度も暗号のことを考えてしまった。
✳︎ ✳︎ ✳︎
2012年1月10日、午後8時03分。
学校から帰ったあと、僕は自室のパソコンを起動し、昨夜の検証結果を開いた。
Redditの投稿を日時順に並べ、重複している文章を確認する。それから、復号した英文を使って76組の数字に従い、文字を取り出していく。
最初の4文字は、やはりCallになった。
問題はその先だ。
僕は文字のずれ方を詳しく調べてみた。
すると、ある位置から先で取り出される文字が1つずれ、さらに後ろでも同じようなずれが発生していることに気づいた。
「……なんでだ?」
元の文章と、保存したテキストを見比べる。
問題のある行には、共通点があった。
文章の途中にピリオドが含まれている。
その後ろには、スペースが1つ置かれていた。
「……あれ?」
僕はもう一度、元の投稿を確認した。
古い英文のテキストでは、ピリオドの後ろにスペースを2つ置く場合がある。ところが、文章をコピーしたときに、それが1つにまとめられていたとしたらどうだろう。
書籍暗号では、スペースも文字として数える可能性がある。
もし本来の文章に余分なスペースがあったなら、それ以降の文字の位置がずれることになる。
「……これか?」
僕は試しに、ピリオドの後ろへスペースを追加した。
それからプログラムを修正し、もう一度書籍暗号を処理する。
Enterキーを押す。
結果が表示された。
Call us at us tele phone...




