第24話:ハニーポットと、過剰な「仕様変更」
「……ふわぁぁ、眠い。寝たはずなのに、夢の中でもクソコードの山をデバッグしてたせいで、目がバキバキだ」
翌朝。僕はアルマ殿下の豪華馬車の中で、派手な欠伸を噛み殺していた。
窓から差し込む朝日に照らされ、僕の黒髪が青く透ける。
(……さて、今日は『駆除 (デバッグ)』の仕上げといこうか)
王宮に到着し、いつものように「王宮基幹魔導核 (メインサーバー)」の前に陣取った。お決まりのルーティンワークをこなしつつ、僕は背後からかかった声に振り返る。
「おはよう、ライナス。……おや、今日は一段と気だるげだね? 熟睡できなかったのかな」
クロード主任だ。相変わらず朝から気品あふれる微笑みで、手に持った紅茶の香りがこちらまで漂ってくる。
「……おはようございます、クロード主任。ええ、ちょっと……寝ても覚めても国家の健康診断(セキュリティ監査)のことが頭から離れなくて。熟睡した気がしませんよ」
「それは感心だ。でも、あまり根を詰めないようにね」
(ていのいい丸投げのおかげで、こっちは脳内オンコール状態なんですけどね……)
主任が優雅に去っていくのを見送りながら、僕は重い溜息を一つつく。
さて。まずは『ハニーポット(囮)』の展開だ。
僕は指を滑らせ、魔導核の制御術式を高速で編み替えていく。
(……現代の魔法陣のように『術式を書いて、ポンと触れれば動く』なんてパッケージ化された便利な代物じゃない。数百年前の設計思想 (アーキテクチャ)は、魔力の糸を一本ずつ手作業で編み上げるような、泥臭い手触りだ。だが、だからこそ――面白い)
(よし、仕込み完了。……あとは僕が帰った後に、ネズミがこのチーズをかじるのを待つだけだ)
しばらくして、案の定「最悪のタイミング」で扉が跳ね上がった。
「ライナァァアス! 昨日の剣、火が出るだけじゃ地味だ! 今度は水だ! 水が吹き出すようにしてくれ!」
アルマ殿下の「割り込み処理(Interrupt)」だ。
(うわ、近い、圧が強い……! そして今日も今日とて期待の眼差しが痛い……!)
「アルマ殿下、今、非常にクリティカルなセッション中……あーもう、分かりました! 剣を貸してください!」
僕は完全にヤケクソで、殿下の剣の術式に追加プログラムを流し込む。
(……ええい、水だろうがなんだろうが、注文通りにしてやる。火の術式を残したまま、魔力の供給効率を限界まで上げたオーバークロック設定だ。……少しオーバースペックな気もするが、細かいデバッグや耐久テストは後回しだ。今はこれで勘弁してくれ)
「とりあえず放水仕様を追加しました。あっちで振っててくださいね!」
「おお! さすがライナス、話がわかるな!」
嵐のような殿下が去った後、僕は適当な頃合いを見計らい、帰り支度を整えながら周囲の誰もが聞き流すようなトーンで、けれどもしっかり届くように独り言を漏らした。
「……ああ、ダメだ。証拠 (エビデンス)が足りないな。これじゃ報告書が書けないや。今日はもう帰って寝よう」
僕は席を立つついでにクロード主任の元へ寄り、自席での調査用という名目で「魔導共有核 (モバイル・ターミナル)」を借り受ける。
ついでに、今日はもう集中力が切れたので早退する旨を申告した。正規の研究員ではない『王宮基導核の技術顧問 (オブザーバー)』という曖昧な立場なのをいいことに、勤怠管理の緩さに甘えさせてもらうことにしたのだ。
主任は「やれやれ、無理は禁物だと言ったばかりなのにね」と苦笑いしながらも、あっさりと許可をくれた。
僕が席を立って歩き出したその間も、少し離れた席で作業をしている「顔も知らない誰か」の肩が、ピクリと動いたのを僕は見逃さなかった。
僕は口元に小さな笑みを浮かべたまま、とっとと帰路につく。
◆◆◆
翌朝。
僕は誰よりも早く、まだ薄暗い王宮へと登城した。
昨日、クロード主任から借りておいた魔導共有核 (モバイル・ターミナル)を起動し、「王宮基幹魔導核」へと遠隔接続 (リモートアクセス)を試みる。仕掛けておいた罠 (ハニーポット)の魔導形跡 (ログ)を直ちに確認するためだ。
「……ビンゴ」
深夜二時。夜勤の研究員たちが交代で仮眠を取る、隙間の時間。
僕が用意した「偽の脆弱性」へアクセスした形跡がある。使用された識別番号(ID)は――『バートン』。
(……アクセス元(ソースIP)の魔導共有核は、管理番号『B-04』か。座席表によれば、あそこの奥の席だな)
僕は視線を上げ、私物を鞄に詰め込みそそくさと席を立とうとしていた、がっしりとした体格の、いかにもベテラン風な研究員の背中を捉えた。
確信を持って、僕は背後から声をかける。
「……おはようございます、バートンさん。昨夜のメンテナンス、随分と熱心だったようですね」
突然の呼びかけに、男の動きが凍りついた。
ゆっくりと振り返ったその顔は、まるで幽霊でも見たかのように引き攣っている。
「な、何だ君は。……いかにも私がバートンだが? 何か用かな」
「初めまして、バートンさん。……その様子だと、昨夜の『裏口』へのアクセスも、あなたがされたということで間違いありませんね? よかった、人違いにならなくて。こうしてお会いするのは初めてでしたから」
「……っ! 何のことを言っているのかな? いい加減にしてくれ、私は昨夜のメンテナンス作業で疲れているんだ、帰らせてもらうよ」
バートンは足早に立ち去ろうとするが、僕はその前に回り込んでゆく手を阻む。
「しらばっくれるおつもりですか? では、クロード主任にこの証拠を提出しますね。あなたの識別番号(ID)が深夜に『存在しないはずの裏口』を叩いた記録、中抜きデータの転送先まで、しっかり逆探知 (トレース)済みですので」
その瞬間、バートンの表情が一変した。それまでの余裕が消え失せ、顔色が一気にどす黒い怒りに染まる。頭に血が上り、血管が浮き出るほどに激高した彼は、獣のような声を上げた。
「……っ、子供と思っていい気になりやがって!」
バートンが逆上し、力任せに殴りかかってきた。だが、僕は前世から鍛え上げた空手の動作で、その懐へ鋭く踏み込む。
「甘い」
「……ッ!?」
(声にならない悲鳴)
掌底一閃。バートンの巨体が崩れ落ちる。
そこへ、朝の散歩がてらにやってきたアルマ殿下がひょっこりと顔を出した。
「おお、ライナス! 昨日の剣、すごく調子がいいぞ! 見ろ!」
殿下が嬉々として握られていた剣を勢いよく振りかざそうとした、その時だ。
「ガツン!」と壁に強く当たった硬い音が響いた。
その衝撃をトリガーに、僕が設定したオーバークロックが暴走した。
本来なら排他的に制御されるはずの「火」と「水」の術式が、同時にフルパワーで起動してしまったのだ。
放出された水は、隣接する火の熱によって一瞬で膨張・気化し、目に見えないほど高温の蒸気となって火炎を猛烈に押し出した。
結果として、剣先からはただの火炎を遥かに凌駕する、高圧の火炎放射が噴き出した。
「ぎゃああああ!?」
崩れ落ちていたバートンの頭上を、巨大な火柱が通り過ぎる。
熱風が収まった後、そこにいたのは……髪の毛がアフロのようにこげ、チリチリになったバートンだった。
「「あ……」」
僕と殿下の声が重なる。
腰を抜かし、完全に戦意を喪失したバートンを見て、殿下は狼狽した様子で駆け出し、あっという間にこげたバートンの側までやって来ていた。
「わ、わーーーー! 燃やすつもりはなかったのだ! しっかりしろ? 髪はまた生えるだろ? な? ライナス?」
(僕に同意を求められてもというか、漫画みたいになってますけど? ……いや、僕の設定ミスのバグですけど。まあ、結果オーライか)
なんてのんきに思ってる場合ではない。
「殿下、動かないで! 今すぐパッチを当てますから、その剣をこっちに!」
「お、おお……。頼む、ライナス。何だかこの剣、さっきから凄く熱いのだ……」
僕は大急ぎで殿下から剣をひったくると、地面に転がっているアフロ姿のバートン(気絶中)を横目に、猛烈な勢いで術式の書き換えを開始した。
(……ええい、原因は明白だ。火と水の術式が同時に動いちまう『競合 (コンフリクト)』。これを直さないと……!)
僕は剣に魔力を流し込み、制御術式に「排他制御 (セマフォ)」のロジックを組み込む。
(火を使う時は水を出さない。水を使う時は火を出さない。よし、これでよし……! ついでに物理衝撃で暴走しないように、割り込み処理の優先度も下げて……!)
「……ふぅ。アルマ殿下、直しました。この宝玉を右に回せば火、左に回せば水です。両方同時には出ないようにしたので、もう爆発 (バグ)しません」
「おおお! 切り替え式か! それは便利だな、ライナス!」
殿下が嬉しそうに剣を鞘に収めるのを確認し、僕は城の窓から差し込み始めた朝日を仰ぎ、深く重い溜息をついた。
「……さて、警備兵 (ガード)を呼びましょう。……あーあ、朝っぱらから、なんて重い『デバッグ』なんだ……」




