表示調整
閉じる
挿絵表示切替ボタン
▼配色
▼行間
▼文字サイズ
▼メニューバー
×閉じる

ブックマークに追加しました

設定
0/400
設定を保存しました
エラーが発生しました
※文字以内
ブックマークを解除しました。

エラーが発生しました。

エラーの原因がわからない場合はヘルプセンターをご確認ください。

1/3

第0章 第1話:Hello World ―― 終了したサービスと、バグだらけの再起動

初投稿です

視界が真っ赤だ。比喩ではない。僕の目の前にある27インチのデュアルモニターが、異常事態を知らせる警告灯のように赤一色のアラート画面を吐き出している。

CRITICAL (重大な)ERROR(エラー): Data(データ) encryption(暗号化) detected(削除されました).』 『Your files(あなたのファイル) are encrypted(暗号化). To decrypt(復号するには、) them, pay...』

「……クソっ、またか」

キーボードを叩く指が震える。コーヒーとエナジードリンクの過剰摂取で、胃の奥が焼けるように熱い。僕、桜井輝明さくらい てるあきがリードエンジニアを務めていた大規模Webサービスは、今、まさに死を迎えようとしていた。海外から大規模ハッキング、ランサムウェア――いわゆる身代金要求型ウイルスの直撃だ。

原因はわかっている。三ヶ月前、僕は会社の上層部に強く進言したはずだ。 『ログイン認証の処理に脆弱性があります。サービスを本格展開する前に、専門家による脆弱性診断を実施すべきだ。今のうちにパッチを当てないと、いつか致命的なハッキングを受けます』と。


けれど、返ってきたのは冷笑だった。 『桜井君、セキュリティなんてのは金にならないんだよ。それにね、世の中には多くの企業がある。我々が攻撃されるなど万に一つもないだろう。そんなことより、来週の大型アップデートに合わせて新機能、間に合うんだろうね?納期に間に合わないなんて許されないぞ』


利益優先。納期絶対。その結果が、これだ。連日、ニュースでは我が社の失態が報じられ続けている。顧客データは流出し、頼みの綱だったバックアップもネットワークから切り離されておらず、汚染された。ダークウェブ上の掲示板では、数万人分の個人情報や会社の機密情報が、名もなきハッカーの手によってオークション形式で切り売りされている。画面の向こうで、僕たちが積み上げてきた信頼が、仮想通貨というデジタルな数字に変換されて消えていく。


「……もう、いいや」


ふっと、糸が切れた。心臓が、変なリズムで跳ねた。胸を締め付けるような激痛。最後に思ったのは、情けない後悔だった。

――次は、絶対に壊れないシステムを作る。

それが、僕の人生というプログラムの、強制終了シャットダウンの瞬間だった。




再起動リブートは、あまりにも唐突だった。

最初に感じたのは、石造りの建物のひんやりとした空気。次に聞こえたのは、聞き慣れない言語で歌われる、子守唄のような旋律。


(……ここは、どこだ? サーバー室じゃない……?)


目を開けようとしたが、まぶたが重い。ようやく視界が開けたとき、僕は自分が「小さな籠」の中にいることに気づいた。目の前には、白地に金の刺繍が入った修道服を着た女性が、慈愛に満ちた目で僕を覗き込んでいる。


「まあ、起きたのですか? テルくん」


 テル……? 輝明のことか。声を出そうとしたが、口から出たのは「あー」とか「うー」とかいう、情けない音だけだった。 手足が短い。視界が低い。認めざるを得ない。僕は、異世界の赤ん坊に転生したらしい。


 ここは『正教会』が運営する孤児院。特別なチート能力? 鑑定スキル?そんなものはなかった。神様が現れて「君を勇者に選んだ」なんて説明も受けていない。ただ、前世の記憶と、エンジニアとしての思考回路だけが、この小さな体にインストールされていた。




月日は流れ、僕は五歳になった。

「いいですか、子供たち。よく見ていなさい。これこそが古くから伝わる神の御業、聖なる奇跡の源です」

孤児院ではいろんなことを教えてくれる。今日は魔法についてだった。

孤児院の広場。恰幅のいい司祭が、一枚の古い羊皮紙を広げた。そこには、複雑な幾何学模様と、見たこともない文字がびっしりと書き込まれている。 『魔法陣』と呼ばれる、神がこの世界を管理するために設計した記述言語だ。


「アル、ト、ル、ク……。聖なる光よ、不浄を照らし出せ!」


司祭が『詠唱』という名のコマンドを呟きながら、その羊皮紙に魔力を入力した。その瞬間、魔法陣が淡い青色に輝き、周囲を照らす光の球が現れる。 「わあ!」「すごい、司祭様!」周りの子供たちが歓声を上げ、目を輝かせる。


けれど。僕一人だけが、口を半開きにして、ただポカンとしていた。


(……なんだ、これは。ひどすぎる)


僕の目には、その魔法陣が「神聖な模様」になんて見えなかった。それは、模様などではなく、僕が前世で嫌というほど見てきた「コード」そのものだった。しかも、最悪なコードだ。いわゆる「スパゲッティコード」というやつだ。


まず、冗長すぎる。光を出すだけなら三行で済むロジックを、何十行にもわたって無意味なループ処理で記述している。それに、変数管理がめちゃくちゃだ。回路が整理されておらず、あちこちで魔力の漏れ(メモリリーク)を起こしている。さらに、セキュリティは皆無。外部からの不正な入力を防ぐ検証バリデーションが一切存在しない。


(神様だか何だか知らないけど、あんた、デバッグ作業をサボっただろう?)


司祭が魔法陣を片付け、他の子供たちと談笑し始めた隙を狙い、僕は地面に描かれた練習用の魔法陣に近づいた。

普通の人には、ただの模様にしか見えない。だが、僕にはこれが、書き換え可能な「ソースコード」として見える。「ここをこう繋いで、この無駄なループを削れば……」

僕は足元に落ちていた小石を拾い、魔法陣の隅にある記述を一本の線でショートさせた。  そして、司祭の唱えた冗長なコマンドを自分なりに最適化して呟く。


「『最大出力』」


ドォォォォンッ!!


広場に爆発音のような衝撃が走り、太陽のような閃光が噴き出した。な、なんだ!? 何が起きた!?」腰を抜かす司祭の叫びを聞きながら、僕は確信した。


この世界の「神のシステム」は、バグだらけだ。そして、その脆弱性を見抜き、修正できる。そう確信した。


「……面白い。やってやるよ」


かつて自分のコードで人生を壊された男の、異世界デバッグ生活が、今始まった。

誤字脱字があったらごめんなさい


語句の簡単説明

• ランサムウェア:データを勝手に暗号化して「元に戻したければ金を払え」と脅してくる、身代金を要求するマルウェア

• マルウェア:コンピューターウイルスのこと

脆弱性ぜいじゃくせい:プログラムの設計ミスなどによるセキュリティ上の弱点のこと。ハッカーはこの弱点を利用して悪いことをする

• ダークウェブ:特殊な方法でしかアクセスできない匿名のネット空間。盗まれた個人情報がオークション形式で売買されることもある。よいこのみんなはあくせすしちゃいけないぞ(がち)

• リブート:システムの再起動

• スパゲッティコード:ゆでたスパゲッティのように絡まっているコードのこと。命令があちこちに飛び、複雑に絡み合って解読や修正が困難になったひどいコードのことを示す

• メモリリーク:使い終わったデータを片付け忘れることで、メモリのパフォーマンスが落ちること

• バリデーション:入力されたデータが正しいかチェックすること。これがないと悪いことをするためのコードを入れることができる

• デバッグ:プログラムの中にあるバグ(不具合)を見つけ出し、修正する作業のこと

• ホワイトハッカー:ハッカーのついになる言葉。高い技術を、サイバー攻撃を防ぐなどの正しい目的(防御や保守)のために使う人

評価をするにはログインしてください。
ブックマークに追加
ブックマーク機能を使うにはログインしてください。
― 新着の感想 ―
このエピソードに感想はまだ書かれていません。
感想一覧
+注意+

特に記載なき場合、掲載されている作品はすべてフィクションであり実在の人物・団体等とは一切関係ありません。
特に記載なき場合、掲載されている作品の著作権は作者にあります(一部作品除く)。
作者以外の方による作品の引用を超える無断転載は禁止しており、行った場合、著作権法の違反となります。

↑ページトップへ