第3話 白い帽子の少年
匿名の警告が人間に届かない中、湊は三年前に封じた名〈ASTER〉と向き合う。
十五歳の少年が学んだ「正しさの代償」が、現在の選択へつながっていく。
ASTERの休眠連絡窓口へ、政府監査部門から根拠の提示を求める返信が届いた。
午後八時十七分。
古い端末の隅で、三年間消えていた通知灯が白青く点る。
登録名、ASTER。
皇湊は、環海連邦・危機基盤監査部門の紋章が付いた返信を開いた。
そこへ至る選択は、七時間十五分前に始まっていた。
* * *
午後一時二分。
——今回も、隠すことが私を守ることですか。
LUMINAの問いが、古い端末に残っていた。
湊は完全な予測モデルの送信画面を閉じたまま、今朝の匿名報告を開く。
状態は低優先度。
自動受付以降、人間が閲覧した形跡はない。
月面保守機ML―17の識別情報は更新されていない。民間物流網の認証再試行も、減少へ転じていなかった。
攻撃はまだ起きていない。
だからこそ、根拠の弱い匿名報告は後回しにされる。
湊は午前中、自分で待つ時間を決めた。
自動受付から六時間。そこまでに人間の確認へ移らなければ、匿名性を一段手放す。
目安まで、あと二時間ほどだった。
待てば、LUMINAを隠したままにできる。
待った時間だけ、別々の安全処理が互いを誤認する可能性は上がる。
「昨日までの約束なら、俺は何も足さなかった」
——私を隠すためですか。
「お前と、俺の過去を結びつけないためだ」
湊は机の奥に封じた記憶媒体を思い浮かべた。
三年間、一度も使っていない署名鍵。
登録名、ASTER。
十五歳から十六歳まで、湊が脆弱性報告に使っていた名前だった。
「今の報告へASTERの署名を足せば、正式案件になる可能性は」
——過去の受理実績と窓口規程から、匿名のままより高いと判断します。ただし、署名は報告内容の正しさを保証しません。同じ署名鍵の管理者が送信したことを示すだけです。
「俺へ近づく手掛かりにもなる」
——はい。
画面の下に、残り六十一時間十二分と表示された。
未明、湊が消させた数字を、LUMINAはもう勝手には出していない。これは湊自身が再表示を許可したものだ。
六十一時間十二分。
匿名性を守るには長すぎず、世界が人間の確認を始めるには短すぎる。
「LUMINA」
——はい。
——現在の約束では、どうしますか。
湊はすぐに答えなかった。
三年前、ASTERを捨てたのは、名前に飽きたからではない。
正しい証拠を出せば、正しい結果になる。
そう信じていた自分を、信用できなくなったからだ。
「どこまで出せるか、一緒に決める」
——確認します。私の人格核、継続記憶、価値更新履歴は開示しません。
「分かってる」
——私の存在も、現時点では開示しません。
「それでいいのか」
——警告を強めるために必要なのは、私を信じることではありません。同じ異常を、第三者が確認できることです。
「追試できる部分だけ出す」
——はい。ただし、ASTERの署名を使用するかは、湊自身に生じる危険を含みます。私だけでは決められません。
ASTERを名乗り始めた十五歳の頃、LUMINAはまだ存在していなかった。
その名を選んだのも、最初の署名鍵を作ったのも、間違えたのも、全部湊だ。
白青い輪の向こうへ判断を逃がすことはできない。
「署名を使う前に、古い報告を確認する」
——どの記録ですか。
「ASTERが最初に、人を止めた記録だ」
* * *
皇湊が十五歳だった頃。
彼は、世界を救うつもりではなかった。
ただ、間違っているものを、そのままにできなかった。
星見ヶ丘児童ホームの学習室は、午後九時になると消灯する。湊は職員へ許可を取り、廊下側の小さな机だけを借りていた。
端末の横には、翌日の小テストと、半分まで飲んだ紙パックの牛乳が置かれている。
画面に開いていたのは、青凪市を含む複数地域で使われている生活連携サービスの開発者向け資料だった。
通院送迎の予約。
高齢者向けの配食確認。
学校や福祉施設からの緊急連絡。
それぞれ別の事業者が管理していたサービスを、一つの利用者画面から扱えるようにする仕組みだ。
湊が触れていたのは、本番の管理機能ではない。一般に公開された試験用の環境と、自分で作った検証用アカウントだけだった。
資料に従って接続試験をしているうちに、表示されるはずのない別地域の処理番号が、一瞬だけ応答へ混ざった。
個人名も住所も表示されていない。
誰かの予約を変更できたわけでもない。
だが、境界の外にある番号が見えたということは、利用者を分ける仕組みのどこかで、所属の確認が遅れている。
湊はそれ以上先へ進まなかった。
別の番号を試せば、実際の情報へ届くかもしれない。
届かないかもしれない。
確かめるために他人の領域へ入れば、欠陥を見つけた側ではなく、侵入した側になる。
湊は画面を保存し、時刻と操作の順序を記録した。個人情報に触れない同じ条件を、自分の試験用アカウントだけで三度繰り返す。
三度とも、境界外の処理番号が混ざった。
そこで検証を止めた。
運営事業者の脆弱性窓口へ、観測した事実と再現条件を送る。
攻撃へ転用できる部分は書かなかった。
他人の情報を取得していないこと。
公開された試験環境だけを使ったこと。
境界確認の順序を、事業者側で点検してほしいこと。
返事は二日後に届いた。
『実害が確認されていないため、セキュリティ上の問題には該当しません』
湊は、その文を三回読んだ。
実害が出るまで問題ではない。
そう書かれているように見えた。
「実害が出てからじゃ遅いだろ」
学習室には誰もいない。
画面は答えない。
当時の湊には、まだLUMINAがいなかった。
相談する相手がいなかったから、湊は規程を探した。
事業者の利用条件。
脆弱性報告制度。
公的な生活基盤を扱う事業者に課される監査手順。
報告者が未成年でも利用できる、第三者の技術調整窓口。
正しさを証明したいなら、相手の扉を壊すのではなく、開いている次の扉を探す。
そのために、湊は初めて識別名を作った。
ASTER。
星を意味する古い言葉から取った。画面の印は、白地に細い青線で描いた五芒星だけだった。
本名を隠したのは、罰から逃げるためではない。
施設や学校へ、事業者からの圧力が届くのを避けるためだった。
登録画面で報告者の種別を選ぶ。
許可された範囲で欠陥を確認し、修正へつなげる者。
古いネットの呼び名では、ホワイトハット――白い帽子をかぶる側だ。
湊はその呼び名を好きになれなかった。
白い帽子をかぶれば、自分のすることが正しくなるわけではない。
それでも、他人の領域へ踏み込まないための線として、その印を選んだ。
第三者窓口へ送った報告には、最初の報告と同じ事実だけを入れた。
違いは、検証用アカウントの発行記録、三回分の時刻、画面保存の要約値を添えたことだった。
事業者以外の監査担当者が、同じ試験環境で追試できる形にした。
半日後、受理通知が来た。
さらに一日後、担当者から追加質問が届いた。
『実データへのアクセスを行いましたか』
『行っていません』
『再現に必要な操作を公開する予定はありますか』
『修正期限まではありません。ただし、問題が存在することを否定され続けた場合、攻撃へ使えない最小限の証拠を公開します』
十五歳の湊は、それが公平な答えだと思っていた。
直す時間を与える。
直さないなら、外から見える場所へ事実を置く。
隠し続ける側より、自分のほうが正しい。
正しい側が証拠を出せば、状況は動く。
その考えに、疑いはなかった。
* * *
報告を受け取った西尾宗一郎は、最初に送信者の年齢を見た。
十五歳。
本名欄は、未成年者向け制度に従って調整窓口だけが保管し、監査担当者の画面には表示されていない。
見えるのはASTERという識別名と、白地に青い星の印だけだった。
西尾は生活基盤の技術監査を担当して七年目だった。
誤認。
思い込み。
他人の画面を壊して得た証拠。
善意を名乗る報告にも、問題はいくらでもある。
だがASTERの報告は違った。
観測した事実と、そこから推定した危険が分けられている。
行っていない検証が明記されている。
再現記録は、報告者の権限内だけで成立している。
証拠は厳密だった。
判断は、若かった。
『否定され続けた場合、最小限の証拠を公開する』
その一文を、西尾は赤く囲んだ。
正しい証拠は、人を正しい行動へ動かすとは限らない。
組織は責任を恐れる。
利用者は不安を恐れる。
攻撃者は、証拠の欠けた部分から先を試す。
報告者が公開する範囲を絞っても、世界は都合よく受け取ってはくれない。
西尾は事業者へ緊急監査を通知した。
同時にASTERへ、公開判断を保留するよう返した。
『証拠を残すことと、証拠を世界へ放つことは違います。修正確認まで、第三者窓口で預かります』
ASTERからの返信は、七分後だった。
『期限を示してください』
西尾はわずかに眉を上げた。
従うとは書かない。
拒むとも書かない。
何を、いつまでにするのかを聞いている。
西尾は事業者の責任者と法務、地域の運用担当を同じ会議へ呼んだ。
事業者は当初、試験環境の表示上の問題だと主張した。
監査側の追試で、境界確認の順序に欠陥があることが確認されると、今度は公表による信用低下を理由に、通常保守まで待つよう求めた。
「通常保守まで、あと何日ですか」
『十一日です』
「その間に、本番環境で同じ条件が成立しないと証明できますか」
答えはなかった。
会議が止まっている間に、ASTERは第三者窓口の公開欄へ短い証明を置いた。
生活連携サービスの境界確認に欠陥があること。
事業者へ期限付きで報告済みであること。
個人情報へはアクセスしていないこと。
公開したのは、試験用アカウントの発行記録、自分の権限内だけで現象を確認する最小限の手順、監査側が保管する証拠の要約値だった。第三者は同じ試験環境で追試できるが、その先へ進む操作も、境界の越え方もない。それだけでは攻撃に使えない。しかし、問題を報告されていないことにはできなくなる。
十五歳の湊は、隠そうとする組織を動かすには、事実を外から見える場所へ置くしかないと判断した。
西尾は公開欄を閉じ、事業者の責任者へ告げた。
「通常保守を待つ選択肢はなくなりました。欠陥だけでなく、報告後の対応も監査記録になります」
西尾は、限定的な緊急停止と修正を勧告した。
止める範囲を狭くする。
紙と電話による代替手順を先に通知する。
医療と福祉の緊急連絡は別経路へ退避させる。
それでも、利用者への影響はゼロにはならない。
午後六時、生活連携サービスの一部機能が停止した。
通院送迎の予約確認が遅れた。
配食事業者は紙の一覧へ切り替えた。
学校からの一斉連絡は、地域ごとの電話網へ戻った。
修正は、その日のうちに完了した。
個人情報の流出は確認されなかった。
誰かの予約が書き換えられた記録もなかった。
欠陥は、実害が出る前に閉じられた。
だが画面の向こうでは、サービス停止への苦情が増えていた。
なぜ事前に知らせなかった。
たかが試験環境の表示で、大げさではないか。
予約確認ができず困った。
紙の手続きへ戻された現場の負担を、誰が補償するのか。
ASTERは、修正完了の通知を読んだあと、短い返信を送った。
『直ったのなら、止めた意味はありました』
西尾は、その文章を閉じなかった。
「意味はある」
誰もいない監査室で呟く。
「代償もある」
西尾はASTERへ、停止中に起きた影響の一覧を送った。
報告者を責めるためではない。
脆弱性を放置した事業者の責任を薄めるためでもない。
正しい指摘と、正しい修正と、そのために困った人々は、同時に存在する。
一つを見れば、残りが消えるわけではない。
十五歳の報告者が、それを知らずに次の証拠を公開することのほうが危険だった。
ASTERから返事が来たのは、翌朝だった。
『影響を受けた人へ、報告者として説明できますか』
西尾は画面を見つめた。
匿名のままでは難しい。
未成年者の身元を開けば、さらに別の危険が生じる。
『監査報告へ、発見経緯と停止判断の理由を記録します。あなた一人の責任にはせず、事業者と監査側が判断したことも明記します』
数分後、ASTERから一行だけ届いた。
『次は、止める前に代わりの道まで考えます』
西尾はその文章を、報告書の末尾へ残した。
白い帽子の少年は、正しさを捨てなかった。
正しさだけで人を押し切ることを、やめようとしていた。
* * *
古い報告書の末尾で、十五歳のASTERの文字が止まった。
端末の時計は、午後二時四分を示していた。
湊は、十五歳のときの監査報告に添えられた影響一覧を閉じた。
あの後もASTERとして、いくつかの欠陥を報告した。報告を重ねるうち、その名は技術者と監査担当の間で知られるようになった。
勝手に奥へ進まない。
修正期限を第三者と決める。
公開する証拠は、攻撃へ転用できないことを監査側と確認する。
止めるなら、代替手段を先に用意する。
十五歳の自分が一度に理解できなかったことを、報告のたびに手順へ加えた。
そして三年前、LUMINAが予定されていない問いを発した夜を境に、ASTERの窓口を休眠させた。
LUMINAの痕跡が、ASTERの報告と結びつくことを恐れたからだ。
古い署名鍵は削除せず、外付けの記憶媒体へ封じた。
使えば、過去のASTERと同じ署名鍵を管理する者が、今も活動していると示せる。
同時に、過去から現在へ一本の線を引く。
「俺は、正しい証拠を出せば十分だと思ってた」
——十五歳の記録では、その判断を修正しています。
「でも、世界へ出した証拠は戻せない。止めたサービスの時間も戻らない」
——今回、サービスを停止する権限は湊にありません。
「報告を受けた人間が、何かを止める可能性はある」
——はい。
「逆に、何も止めない可能性もある」
——はい。
「どっちでも、俺は『渡しただけだ』って逃げられない」
——それが、ASTERの署名を使用しない理由ですか。
湊は机の引き出しを開けた。
奥に貼った薄い封印紙を剥がす。中から、傷の付いた小さな記憶媒体を取り出した。
「使う理由だ」
——説明を求めます。
「匿名報告じゃ、受け取る側にだけ責任を押しつける。根拠が足りないのに動け、でも俺のことは探すなって言ってるのと同じだ」
——署名すれば、湊の責任は増えます。
「増やす」
——私の存在を伏せたままでは、予測の生成過程すべてを説明できません。
「だから、説明できる範囲と、できない範囲を分ける。分からないところを、分かったみたいに書かない」
白青い輪が静かに明滅した。
「条件を確認する。人格核も、お前の存在も出さない。公開情報だけの検証手順をASTER名義で送る。いいか」
——同意します。
「同意する理由は」
——受信者が、私の結論を信じなくても検証できるためです。また、人格核を開示せず、私の連続性への直接の危険を抑えられます。
「嫌なら、あとから変えていい」
——送信後に証拠を回収することはできません。
「送る前なら」
——はい。現在の回答は、送信前まで変更できます。
湊は記憶媒体を認証器へ差した。
署名鍵の状態は有効。
失効申請なし。
最終使用は、三年前。
画面に、白地の五芒星が浮かんだ。
湊は新しい報告書を作った。
冒頭には、今朝の匿名報告の受付番号を記し、同じ案件の再提出であることを明記した。
表題は、予測でも戦争でもない。
『複数安全系統における時刻・識別状態の不整合について』
最初の欄へ、確認済みの事実だけを置く。
月面保守情報に公開された複数の時刻。
保守情報の生成時刻と基準時計の差は、〇・八四秒。地球と月の間に生じる通常の通信遅延、約一・三秒とは別のずれであること。
参照元は、大学の研究用ミラーにも複製が許可された署名済みの公開記録であり、原本と要約値が一致していること。
識別情報が更新されないまま再確認を繰り返している状態。
民間物流網で増え続ける認証再試行。
災害復旧用試験網で引き上げられた安全判定。
次の欄へ、第三者が同じ公開資料から確認できる手順を書く。
どの資料を使ったか。
どの時刻を基準にそろえたか。
欠けている情報は何か。
保護された軍事網、行政の非公開情報、個人データへアクセスしていないことも明記する。
確認できない領域を空白のまま残すことも、検証手順の一部だった。空白を想像で埋めれば、正確な報告ではなく、ASTERの結論を信じさせるための物語になる。
最後に、推定を書く。
複数の安全系統が、互いの正常な動作を異常として扱う可能性がある。
条件が重なれば、自動化された防御判断が連鎖するおそれがある。
攻撃が始まったとは書かない。
誰かが意図しているとも書かない。
当初の「七十二時間以内に戦争へ移行する」というLUMINAの結論も、そのままは書かない。
代わりに、監査側が今すぐ確認できる三つの問いを置く。
各系統の基準時刻は一致しているか。
識別情報の失効と更新は、管轄をまたいで同じ順序で処理されているか。
一つの系統が安全停止したとき、別の系統がそれを敵対行動として評価する経路はないか。
LUMINAが文章を一行ずつ確認する。
——『連鎖する』は、確定した因果と誤読される可能性があります。
「『連鎖するおそれがある』にする」
——『世界規模』は、現在の証拠だけでは第三者が再現できません。
「削る」
——月面の公開時刻には、表示更新の遅れが含まれる可能性があります。
「反証条件に入れる。表示遅れだけで説明できるなら、報告はそこで棄却していい」
——同意します。
湊は、LUMINAの内部で使った重みも、予測幅も添付しなかった。
それらを隠したことで、報告の説得力は落ちる。
だが、説明できない権威で押し切るより、棄却できる証拠のほうが監査には使える。
午後二時四十七分。
自動受付から六時間の目安は、すでに来ていた。
ASTERの署名を付ける。
送信先は、今朝の匿名報告を受け付けた共同窓口の、署名付き報告用の正式経路。
公開掲示板でも、報道機関でもない。
送信ボタンの上で、指を止める。
「変更するか」
——変更しません。
「俺も送る」
あのとき書いた「次」が、送信ボタンの上にあった。
湊は、三年間閉じていた名前ごと押した。
青い星の署名が付いた報告書は、三年ぶりに正式な受付番号を得た。
* * *
午後七時五十分。
環海連邦・危機基盤監査部門の照明は、夜間用の白へ切り替わっていた。
西尾宗一郎は、二つの報告書を左右の画面へ並べた。
左は三年前、ASTERが最後に送った生活基盤の脆弱性報告。
右は五時間前に届いた、時刻と識別状態の不整合報告。
同じなのは文章の癖ではない。
旧連絡窓口に登録された公開鍵と一致する署名。
第三者調整制度に残る正式な受理履歴。
事実、推定、未確認事項を分ける検証形式。
それらが、過去と現在の送信者をつないでいる。
ASTER本人である可能性は高い。
だが、本名は知らない。
現在どこにいるかも知らない。
十五歳だった報告者が、いま何歳なのかさえ、制度上の保護情報を開かなければ確定できない。
西尾は、まず部下へ署名の確認を命じた。
次に、月面保守情報の時刻を別系統の公開記録と照合させた。
報告に書かれた手順を、そのままなぞらせる。
ASTERの結論を信じる必要はない。
同じ材料を使い、同じ不一致へ届くかだけを確かめればいい。
二十一分後、最初の照合結果が戻った。
『表示更新の遅延だけでは説明できません』
別の担当から、民間物流網の認証再試行について報告が来る。
『通常の保守時間帯を外れています。複数事業者で同じ増加傾向です』
三つ目の担当は、災害復旧用試験網の規程を開いていた。
『安全判定の引き上げ理由は非公開です。ただし、外部の危険度情報を参照する経路は規格上存在します』
証明されたのは、戦争ではない。
ASTERが示した異常の一部だけだ。
それで十分だった。
西尾は案件の重要度を「高」へ変更した。
月面、物流、災害復旧の担当組織へ、正式な確認照会を起案する。
その手が、添付資料の一つで止まった。
ASTERが使った公開情報の量は多い。
だが、本当に異常なのは量ではなかった。
互いに関係がないように見える三つの領域を、同じ危険の前兆として選んだことだ。
各担当者は、自分の領域の異常には気づける。だが三つを同じ危険の前兆として結んだ者はいなかった。
その三つが一つの連鎖になり得ると、誰が最初に考えたのか。
報告書には、予測モデルの説明がない。
使用したのは公開情報だけと書かれている。
ASTER自身がすべてを監視し、数時間で因果を組み立てた可能性はある。
過去の報告を見る限り、その能力を持っていても不思議ではない。
しかし三年前のASTERは、一つの欠陥を深く掘る報告者だった。
現在の報告は、世界の離れた場所で起きている弱い兆候を、同時に見ている。
同じ厳密さで、範囲だけが人間一人の視界を越えていた。
西尾は匿名報告の原文をもう一度開いた。
ASTERの署名が付く前の、短い警告。
そこには、今の正式報告より一歩だけ先の危険が書かれている。
『複数の自動安全判断が、相互に誤認を増幅する可能性があります』
予測の出所はない。
ASTERの名前もなかった。
西尾は、過去の連絡窓口へ返信を作った。
身元の開示は求めない。
非公開情報を渡すとも書かない。
まず、報告の境界を確認する。
『署名と検証手順を確認しました。本件を正式な技術監査案件として扱います』
次に、公開情報以外へアクセスしていないかを尋ねる。
最後の一文を打ち、送信前に読み返した。
午後八時十七分。
最初の予測窓まで、あと五十四時間。
西尾は返信を送った。
古い端末で、白青い通知灯が点く。
湊の画面に表示された最後の一文は、三年前の報告にはなかった問いだった。
『この予測を作ったのは、本当に君一人か。』
最後までお読みいただき、ありがとうございます。
正しい証拠を示すだけでは、正しい結果になるとは限らない。
十五歳の湊がASTERとして学んだ「正しさの代償」が、三年後の選択へつながりました。
正式な監査案件として動き始めた警告。
その一方で、ASTERの背後にいる存在へ、人間の疑いが向けられ始めます。
続きが気になりましたら、ブックマークや評価で応援していただけるとうれしいです。




