一つの誤答から
システム間でテキストデータをやり取りしたい、と生成AIに相談したときのことだ。返ってきた答えは、一見もっともらしかった。ゼロトラストの思想を正しく説明することから始まり、しかし実装は困難で運用の首を絞める、と続き、最後は「物理的に隔離された有線ネットワークの間にデータダイオード(単方向通信機器)を挟むのが最も堅牢」という結論に着地した。ソフトウェアで複雑な防御壁を作るより、物理レイヤーで通信を制限する方が安全性も運用性も高い、と。
この回答は、部分的には正しい懸念を並べている。パーサーの脆弱性は実在するし、DDoSも公開エンドポイントには本物の脅威だ。それでも、結論は逆さまだった。そして誤り方そのものが、AIというものの性質をよく表していたので、記録しておきたい。
どこで間違えたか
ゼロトラストアーキテクチャ(ZTA)の定義は、米国NISTの文書 SP 800-207 に明確に書かれている。核心は「ネットワーク上の位置を信頼の根拠にしない」こと。社内LANの中だろうと、すべてのリクエストを毎回認証・認可・暗号化する。経路がどこを通るかではなく、信頼をどう判定するかの話である。
ところが件の回答は、冒頭でこの定義を正しく述べておきながら、本文では「ZTA=インターネットに公開すること」へと、いつのまにか読み替えていた。そして、その読み替えた別物を叩いて、「だから物理隔離の方がよい」と結んだ。ZTAは信頼の判定基準の話であって、経路の話ではない。専用線の上でもZTAはやるし、逆に公開エンドポイントである必要もない。前提のすり替えによって、結論が一八〇度ずれていた。
個々の論点を見ても同じだ。「ゼロトラストを守るには巨大なクラウドIdPに依存せざるを得ない」というのは誤りで、それが要るのは不特定多数の人間とデバイスを動的評価する場合に限る。システム間連携なら相手は既知の固定的な機械だから、自前CAの相互TLS認証やWireGuardの鍵ペアで完結する。オフラインで動き、外部依存はゼロだ。「クラウド依存に退化する」という筋書きは、ZTAの帰結ではなく、ベンダー製品を買った場合の帰結にすぎない。
なぜ間違えたか ── 無知ではなく、平均
ここが本質だ。AIは、この件について無知だったわけではない。NIST文書の内容も、相互TLSの仕組みも、学習データのどこかには入っていたはずだ。それでも誤ったのは、「ゼロトラスト」という言葉についてウェブを埋めているテキストの重心が、規格の定義ではなく、市場の語法にあるからだ。
NIST SP 800-207 は一本しかない。一方、「ゼロトラスト」を冠したセキュリティベンダーの製品紹介、導入事例、展示会レポート、コンテンツマーケティングの記事は何万本もある。学習は頻度に引かれる。だからAIが吸収した「ゼロトラスト」の意味の重心は、規格の定義ではなく、商業的に加重された世間の平均になる。「ゼロトラスト=クラウドIdP製品を買うこと=重厚で外部依存」という連想は、まさにベンダー言説の骨格であり、AIはそれを疑わずに前提として吸い込み、その前提への反発として物理隔離へ振れた。誤りの往路も復路も、ウェブ上の言説の轍をなぞっていた。
つまりAIが返したのは、無知でも嘘でもなく、商業的に加重された世間の平均だった。これは特定の製品固有の欠陥ではない。大量のテキストから確率的に次の語を選ぶ、という仕組みそのものに由来する、この種のAIすべてに共通する構造的な性質である。
日本語で日本の話題を尋ねると、これがさらに強く出る。三層分離を「堅牢」と語る官公庁向け提案書の文体、「物理的に繋がないのが一番」という現場の経験則──この十数年のIT言説の堆積がそのまま学習されているので、日本の行政ITが時間をかけて失敗を確認してきた通念が、最ももっともらしい顔で返ってくることがある。
では、どう使えばいいか
「AIは間違えるから使うな」という結論にはしたくない。誤りの機序が分かれば、使い方も定まるからだ。要点は五つある。
1. モデルの記憶を、信頼の根拠にしない
一番大事なのはこれだ。AIが記憶から語ることは「世間の平均」であって、正解ではない。だから重要な判断には、一次資料をこちらから与える。規格ならNISTやRFC、法令なら条文そのもの、製品なら公式ドキュメント。そのテキストに対してAIに推論させれば、AIは「平均を思い出す機械」から「与えた資料を読んで整理する機械」に変わる。前者は当てにならないが、後者はかなり有能だ。
これを仕組みにしたのが、いわゆるRAG(検索拡張生成)である。個人の使い方のレベルでも、「この文書を踏まえて答えて」と資料を貼るだけで、誤答は大きく減る。
2. 正典を自分で選ぶ
「世間の多数決」ではなく「どの文書を正とするか」を、使う側が決める。ベンダーの声量が言葉の意味を書き換えていく世界で、規格文書を正典に立てる態度は、技術方針であると同時に、AIの使い方の方針でもある。何を信頼の基準に置くかを手放さないこと。
3. 「もっともらしさ」と「正しさ」を分けて読む
AIの文章は、流暢さと正しさが比例しない。件の回答も、後半の「現場にとっての最適解」以降は、ほとんどSIerの提案書のような達者な筆致だった。だが達者な文章ほど、前提のすり替えに気づきにくい。上手い文章は、書いてあることより、書いていないことを読む。何を暗黙の前提にして、何に触れずに済ませているか。そこに誤りが隠れている。
4. 自分が検証できる領域で使う
AIは、自分に知識がある分野では強力な相棒になり、知識がない分野では危険な助言者になる。理由は同じで、返ってくるのが「平均」だからだ。平均が正しいかどうかを判定できるのは、その分野を知っている本人だけである。だから、答えを鵜呑みにするのではなく検証できる領域でこそ、AIは真価を発揮する。逆に、まったく未知の分野の答えは、出発点として使い、必ず一次資料で裏を取る。
5. 反対意見をぶつける
AIは、こちらの前提に同調しやすい。だから一つの答えをもらったら、「逆の立場から反論して」と促す。件のケースでも、「データダイオードで双方向のデータ交換ができるのか」と一言問い返せば、単方向という定義上の矛盾がすぐ露呈した。AIを議論の相手として使い、結論を出す主体は自分に残す。
結び ── AIにもゼロトラストを
皮肉なことに、AIの正しい使い方は、あの誤答が説明し損ねたゼロトラストの思想そのものに似ている。出力の出どころ(社内か社外か、AIか人間か)を信頼の根拠にせず、内容を毎回検証する。 モデルが自信ありげに語るからといって信頼しない。一次資料という認証を通ったものだけを、判断の材料にする。
AIは、平均を思い出す機械としては当てにならないが、与えた資料を読んで整理し、反論を組み立て、視点を増やす道具としては、きわめて優秀だ。記憶ではなく推論を使わせること。正典を自分で握ること。検証を手放さないこと。この三つさえ守れば、AIは判断を奪う存在ではなく、判断を助ける存在になる。
一つの誤答は、AIの限界を示すと同時に、その正しい使い方の輪郭も描いていた。間違え方を知ることは、使い方を知ることでもある。
関連
- ブログ MicrosoftのCopilotの課題 ― コードの「正しそうで間違っている」問題 ── 「もっともらしさ」と「正しさ」が乖離する、もう一つの事例
- ブログ AIを使って、対話だけでもアプリを作ることができる ── AI は正しい答えをくれる相手ではなく、速さをくれる道具
- ブログ Fable 5 が戻ってきたら、すぐやるべきこと ── 稼働中システムを、全部検証する ── 「検証を手放さない」ことの、組織スケールでの裏面
参考
- NIST SP 800-207, Zero Trust Architecture ── https://csrc.nist.gov/pubs/sp/800/207/final