非公式日本語訳 — Machine Intelligence Research Institute (intelligence.org) の原文をAGI Hubが翻訳したものです。MIRIによる公式の翻訳ではありません。

← 翻訳一覧

セキュリティ思考と普通のパラノイア

原題: Security Mindset and Ordinary Paranoia / Analysis

原文クレジット(WordPress投稿者表示): Eliezer Yudkowsky / 掲載元: Machine Intelligence Research Institute (intelligence.org) / 原文公開日: 2017-11-25

訳文状態: 校閲済み(原文対照レビュー実施)

以下は「AIアライメント:難しい理由と、どこから始めるべきか」を踏まえた架空の対話である。


(AMBER――より信頼できるインターネットに関心を持つ慈善家――と、CORAL――コンピューターセキュリティの専門家――が、学会のホテルで一緒になり、Coralが難しく重要だと力説する問題、すなわち「安全な」ソフトウェアを作る難しさについて話し合っている。)

AMBER:  それで、Coral。ソフトウェアを作るとき、それをあなたの言う「安全な」ものにすることが、とても重要だと考えているのね。

CORAL:  特にインターネットに接続される場合や、お金などの価値あるものを制御する場合にはね。でも、そう、そのとおりだよ。

AMBER:  これをコンピューター科学の独立した話題にする必要があるなんて、信じにくいわ。一般にプログラマーは、コンピューターに望みどおりのことをさせる方法を考えなければならない。OSを作る人は、コンピューターがクラッシュすることを望まないのと同じく、権限のない利用者にアクセスを許すことも、当然望まないはずよ。なぜ一方の問題が、もう一方よりずっと難しいの?

CORAL:  深い問いだね。深い答えの一部を挙げるなら、装置をインターネットにさらすと、知的な攻撃者にさらす可能性がある。その攻撃者は、システム内の特殊で奇妙な相互作用を見つけ、プログラマーが考えもしなかった奇妙な仕方で各部品を動かせる。その種の問題を扱うときは、別の一連の手法と道具を使うことになる。

AMBER:  クラッシュするシステムはどれも、プログラマーが予想しなかった振る舞いをしているし、プログラマーはすでに、それを止める必要があるわ。この場合は何が違うの?

CORAL:  そうだね……システムが1回のセッションにつき1キロバイトの入力を受け取ると想像してみて。(もっとも、それ自体、私たちなら疑って、代わりに1メガバイトを受け取ったら何が起きるかと問う類いの仮定だけど、今は置いておこう。)入力が1キロバイトなら、可能な入力は (2^{8,000}) 通り、つまりおよそ (10^{2,400}) 通りある。単純なイメージをさらに広げるために、コンピューターが毎秒10億個の入力を受け取るとしよう。元の設計者が意図しなかった特定の振る舞いをシステムに起こさせる入力が、わずか1グーゴル、つまり (10^{100}) 個だけで、可能な (10^{2,400}) 個の入力の一部だと仮定しよう。

入力が誤動作を起こすものかどうかと相関しない仕方でシステムが入力を受け取るなら、宇宙が終わるまで誤動作状態には当たらない。一方、システムを理解する知的な攻撃者がいれば、誤動作を引き起こす、ごくまれな入力の一つを見つけられるかもしれない。無作為な入力なら文字どおり100万年に一度も誤動作しないシステムの一部が、知的な攻撃者に意図的に壊そうとされたときには、壊れることがある。

AMBER:  プログラマーが、自分より賢いかもしれない攻撃者と知恵比べをするから、難しくなると言っているのね。

CORAL:  ほとんど正しい言い方だね。重要なのは、「攻撃者」の部分より最適化の部分なんだ。特定の結果を強く選び取る体系的で非無作為な力があり、システムの一部を奇妙な実行経路へ進ませ、予想外の状態に置く。システムに誤動作モードが文字どおり一つもなければ、自分のIQが140で敵のIQが160でも問題ではない。腕相撲ではないからだ。奇妙な状態が偶然にしか起きない場合に比べ、それが相関を持つ形で選び取られる場合、その奇妙な状態に入らないシステムを作るのは、はるかに難しい。奇妙さを選ぶ力は、あなた自身が想像し損ねた、より大きな状態空間の一部を探索できる。それに打ち勝つには、確かに新しい技能と別の思考様式が要る。ブルース・シュナイアー(Bruce Schneier)が「セキュリティ思考(security mindset)」と呼んだものだ。

AMBER:  なるほど。そのセキュリティ思考って何?

CORAL:  一つ二つなら言えるけれど、完全には言葉にできない思考の性質を扱っていることは、覚えておいてほしい。セキュリティ思考について、ありきたりな標語を数個伝えるだけで、本当に安全なソフトウェアを設計できるようになるなら、現在のインターネットはまったく違う姿になっているはずだ。とはいえ、「セキュリティ思考」と呼ばれてきたものは、二つの要素に分けられ、その一方はもう一方よりずっと易しいように思える。このため人は、自分の安全を過大評価するよう欺かれることがある。セキュリティ思考の易しい半分を身につけ、もう半分を見落とせるからだ。難しくないほうの要素を、私は「普通のパラノイア(ordinary paranoia)」と呼ぶことにする。

AMBER:  普通のパラノイア?

CORAL:  多くのプログラマーには、自分を脅かそうとする攻撃者を想像する力がある。攻撃者が特定の方法で攻撃できる可能性を考え、その方法による脅威を遮断しようとする。奇妙な攻撃や巧妙な攻撃も含めて攻撃を想像し、それを止められると思う対策で受け止める。これが普通のパラノイアだ。

AMBER:  セキュリティって、まさにそれがすべてじゃないの? もう半分は何だと言うの?

CORAL:  標語として言うなら……外部の攻撃者ではなく、自分自身の仮定の誤りに備えることかな。

AMBER:  違いが分かる例を挙げられる?

CORAL:  普通にパラノイア的なプログラマーは、すべての利用者名とパスワードを含むファイルを、攻撃者が読もうとするかもしれないと想像する。そのファイルを、ディスク上の特別で安全な領域や、読むのが難しいはずのOSの特別な一部分へ保存しようとするかもしれない。これに対し、セキュリティ思考を持つ人はこう考える。「このファイルの周りにどんな特別なシステムを置いても、このファイルは読まれない、と仮定しなければならないこと自体が不安だ。自分が書く特別なコードは使われる頻度が低いから、かえってバグを含みやすいかもしれない。あるいは、自分が書いたコードを通さずにディスクからデータを釣り上げる方法があるかもしれない」

AMBER:  そして、攻撃者が情報へ到達できる方法をさらにいくつも想像して、その経路も遮断するのね! 想像力が優れているから。

CORAL:  まあ、私たちはそうもするけれど、それが決定的な違いではない。本当にやりたいのは、コンピューターがパスワードをどこにも、まったく保存しなくても、パスワードを確認できる方法を考えることだ。

AMBER:  なるほど、パスワードファイルを暗号化するようなものね!

CORAL:  違う。それでは、問題を一段ずらして複製しただけだ。コンピューターが確認のためにパスワードファイルを復号できるなら、どこかに復号鍵を保存している。攻撃者は、その鍵も盗めるかもしれない。

AMBER:  でも、それなら攻撃者は一つではなく二つを盗まなければならないから、システムはもっと安全になるんじゃない? 暗号鍵を隠す特別なファイルシステム用コードと、暗号化したパスワードファイルを隠す別のコードを書けば、なおさらでしょう?

CORAL:  セキュリティ思考の全体を捉えていない「普通のパラノイア」を区別すると言ったのは、まさにそのことだ。システムがパスワードを復元できる限り、攻撃者にシステムをだまし、まさにそれを実行させられるかもしれない、と私たちは常に心配する。セキュリティ思考を持つ人が、より深い解決策だと気づくのは、平文のパスワードではなく、パスワードの一方向ハッシュを保存することだ。そうすれば、攻撃者がパスワードファイルを読み取っても、システムがパスワードだと認識するものを、依然として提示できない。

AMBER:  なるほど、ずいぶん巧妙ね! でも、その対策と、鍵と暗号化したパスワードファイルを別々に隠す私の対策とで、何が質的に違うのか分からないわ。あなたの対策のほうが巧妙で洗練されていることには同意する。でも、あなたはこの分野の専門家だから、標準的な解決策を私よりよく知っていて当然でしょう。あなたの解決策と私の解決策を分ける質的な境界が見えないの。

CORAL:  うーん、一部の人を怒らせずに言うのは難しいけれど……今から違いを説明しようとした後でさえ、君には分からない可能性がある。前にも言ったとおり、便利な標語をいくつか伝えることで、君を本当に優れたコンピューターセキュリティの仕事ができる人へ変えられるなら、インターネットは今とはまったく違う姿になっているはずだ。違いの一面を説明しようとは思う。でもそれは、ある証明への道筋が、別の道筋より有望に見える理由を説明しようとする数学者のような立場に、私を置くかもしれない。その人の説明をすべて聞いて、うなずいても、数学者へ変身できるわけではない。だから違いを説明するつもりではあるけれど、やはりブルース・シュナイアーになるための簡単な取扱説明書は知らない。

AMBER:  一部の人は持ち、ほかの人は持たないという、言葉にできないとされる能力には、少し疑わしい気持ちを抱いていると認めるわ――

CORAL:  多くの専門職に、そういうものはあるよ。5歳でTRS-80用に書かれたBASICプログラムのページをちらりと見ただけで、プログラミングを身につける人もいる。25歳で基本的なPythonを理解するため、非常に苦労する人もいる。それは、5歳児だけが知る何か神秘的な真理があって、それを言葉で25歳の人に伝えられるからではない。

もちろん、その5歳児は練習すれば、はるかに上達する。訓練できない天才の話をしているわけではない。そして、25歳の人に伝えれば、苦労を少し減らせる標語もあるかもしれない。しかし、専門職では時に、普通とは違う仕方で考えることが必要になり、一部の人は、その特定の方向へ発想を切り替えやすい。

AMBER:  分かった、続けて。

CORAL:  では……暗号化したパスワードファイルをファイルシステム上の特別な場所へ置き、鍵を別の特別な場所へ置くことを、君は考えた。鍵も暗号化し、3番目の特別なコードを書いて、暗号化された鍵を開く鍵をそこへ保存してはどうだろう。そうすれば、システムはさらに安全にならないか。7本の鍵を別々の場所へ隠せばどうだろう。ものすごく安全で、実質的に破れなくさえなるのでは?

AMBER:  まあ、その形まで行くと、少しばかばかしく感じるわね。扉を守るとき、鍵が一つだけ必要な錠前より、二つ必要な錠前のほうが安全かもしれない。でも、七つにしても、二つよりそれほど安全になる感じはしない。

CORAL:  どうして?

AMBER:  ただ、ばかばかしいと思えるのよ。あなたなら、私より上手に説明できるでしょうけど。

CORAL:  そのばかばかしさを凝った言葉で表すなら、7番目の鍵を入手できる確率は、最初の2本を入手できる確率から条件付き独立ではない、となる。暗号化したパスワードファイルも、暗号化した暗号鍵も読めるなら、私はおそらく、ファイルシステムを迂回してディスクから直接読む方法を見つけたのだろう。そして、ファイルシステムを複雑にするほど、まさにそれを可能にする奇妙なシステム状態を、私が見つけやすくなる。4番目の鍵を隠すために書いた、ファイルシステムの特別なコードこそ、ディスクを直接読めるようにするバグを含んでいるかもしれない。

AMBER:  では違いは、本物のセキュリティ思考を持つ人が、システムを複雑にするのではなく単純にする防御を見つけたことね。

CORAL:  これも、ほとんど正しい。パスワードをハッシュすることで、セキュリティの専門家は、システムについての自分の推論を単純にしたんだ。大きな圧力を受けるかもしれない仮定を、一つ取り除いた。鍵を特別な場所へ、暗号化したパスワードファイルを別の特別な場所へ置いても、システム全体には、まだ利用者のパスワードを復号する能力がある。状態空間を探る攻撃者は、パスワードを復号する状態を引き起こせるかもしれない。少なくとも一部の機会には、それを行うようシステムが設計されているからだ。パスワードファイルをハッシュすれば、システムの安全を支える推論から、その内部的な論点全体を取り除ける。

AMBER:  でも、その巧妙な仕組みを思いついた後でも、何かがうまくいかない可能性はある。まだ絶対に安全ではないわ。誰かがパスワードに「password」を使ったら?

CORAL:  あるいは、利用者がパスワードを入力した後、それがRAMに残っている間に、RAMへ何かがアクセスできたため、パスワードを読み取る方法を誰かが見つけたら? システムの安全についての推論から余分な仮定を取り除く目的は、そうすれば絶対に安全だから安心できる、ということではない。セキュリティ思考を持つ人は、システムが安全だと述べる推論の建造物について、決してそこまで安心しない。

それどころか、普通のプログラムを作る普通のプログラマーの中には、デバッグに多くの労力を注いだ後、合理的にできることはすべて行ったような満足感を抱く人もいるだろう。だが普通のプログラムについて、まずまずの普通のパラノイアを持つプログラマーは、シャワーを浴びながらも考えをかみ続け、システムが通るべき機能テストをさらに思いつく。だから、セキュリティ思考と普通のパラノイアの違いは、普通にパラノイア的な人が安心することではない。

違いは……これも標語として言えば、普通にパラノイア的な人は、攻撃者が行いそうだと想像した攻撃という火を消すため、走り回っている。一方、セキュリティ思考を持つ人は、「この推論の一要素が間違っていたらどうなるか」に近いものに備える。誰にもディスクを読ませないため必死になる代わりに、誰かがディスクを読んでも安全なシステムを作り、それを第一の防衛線とする。そのうえで、一方向ハッシュが実は破られていた場合に備える第二の防衛線として、攻撃者にパスワードファイルを読ませないファイルシステムも作る。攻撃者にディスクを読ませる積極的な必要性はないのだから、読ませる理由もない。そして、誰かが低エントロピーのパスワードをシステムへ忍び込ませ、攻撃者がパスワードを読んだ場合に備え、ハッシュにはソルトも加える。

AMBER:  攻撃者を出し抜こうとするのではなく、本物のセキュリティ思考を持つ人は、仮定を減らそうとするのね。

CORAL:  いや、私たちも攻撃者の観点で考えるよ! 敵対的推論はセキュリティ思考より教えやすいが、それでも、(a)必須であり、(b)絶対的な意味では教えにくい。習得できない人が多いからこそ、「セキュリティ思考」の説明はしばしば、敵対的推論に失敗する人と、その防御を突破する巧妙な攻撃を仕掛ける別の人の物語から始まる。

二つの思考法を習得する必要がある。そして、最初の思考法は持っているが、二番目は持っていない人が大勢いる。より深い技能を説明する一つの方法は、システムの安全を、なぜそのシステムが安全なのかという物語に依拠するものとして見ることだ。その安全物語を、できる限り堅固にしたい。その含意の一つは、物語をできるだけ少数の仮定に依拠させることだ。よく言われるように、絶対に故障しない唯一の歯車は、機械から設計によって取り除かれた歯車である。

AMBER:  でも、防衛線を増やすことでも、もっと安全にできるんじゃない? それは物語を複雑にする一方で、安全性も高めるのでは?

CORAL:  安全物語では、連言的な推論より選言的な推論を好むべきだ、という話もある。とはいえ、働くはずで難攻不落の主要防衛線が必要だと認識することは重要だ。うまくいくかもしれないと思う弱い柵を、いくつも並べるのではない。暗号技術を理解していない人は、巧妙に見える素人暗号を20個考案し、順にすべて適用するかもしれない。どれか一つは破られても、全部破られることはないはずだ、と考える。米国家安全保障局(NSA)は、その壮大な素人暗号の建造物をインターンに割り当て、インターンは午後のうちに解読するだろう。

冗長性にも、難攻不落の壁が崩れた場合の代替策にも、意味はある。追加した複雑性によって、より大きなシステムの理解が難しくなったり、脆弱な面が増えたりしない限り、防衛線を追加するのは賢明かもしれない。しかし中核には、なぜシステムが安全なのかについて、単純で堅固な物語が必要だ。優れたセキュリティ思考者は、その物語から仮定全体を取り除き、中核となる柱を強めようとする。予想される攻撃を受け止め、リスクという火を消すため、走り回るだけではない。

とはいえ、一つの偽の仮定を使うより、二つの真の仮定を使うほうがよいので、単純さがすべてではない。

AMBER:  その考え方は、コンピューターセキュリティ以外にも応用できるのかしら?

CORAL:  歯車のことわざが示すように、そうであってほしいね。

例えば、一瞬だけ役を離れて言うと、この対話の作者は時おり、汎用人工知能(AGI)のアライメント問題を論じることで知られている。作者はあるとき、成長中のAIシステム内で改善速度を測ろうとする話をしていた。システムが夜間に動いている間に突破口が開けた場合、人間が関与しないまま過度な量の思考を進めないようにするためである。話し相手は、AGIがそれほど速く力を得るとは思えない、と答えた。これに対し作者は、おおよそ次のように返した。

AGIがどれほど速く改善するかを推測するのは、あなたの仕事であってはならない! ある自己改善速度が可能だと判明した場合に害を及ぼすシステムを書いたなら、間違ったコードを書いたのだ。背景パラメーターの真の値が何であろうと、そのコードは決して害を及ぼさないものであるべきだ。

AGIを設定するよりよい方法は、どれだけ改善が起きているかを測り、Xを超える改善が起きたなら、プログラマーが、それまでに起きた進歩を検証するまで、システムを停止することだ。そうすれば、改善が1ミリ秒で起きても、システムが意図どおりに働く限り、問題ない。何か別の誤りのため、システムが意図どおりに働かない可能性はある。しかし、意図どおりに働いても害を及ぼすシステムより、そちらのほうが心配すべき問題としてはましだ。

同じように、驚くべき新能力を発見した場合、その能力の使用を操作者が検証するまで待つよう、システムを設計したい。操作者が起きていることを監視し、一時停止ボタンを押すことに依存してはならない。発見の速度や災害の速度が、操作者の反応時間より遅いことに依存すべきではない。何が起きても安全な設計を見つけられるなら、そのような仮定を組み込む必要はない。例えば、操作者がブラックリストに入れた手法を避ける方式ではなく、ホワイトリストに入れた手法だけを許可する方式で運用する。操作者が居合わせ、注意を払い、十分な速さで「いいえ」と言えると仮定するのではなく、先へ進む前に「はい」と言うことを操作者に求める。

AMBER:  まあ、分かった。でも、AIシステムが1ミリ秒で宇宙的な力を発見することに備えるのは、心配事として不合理に思えるわ。それなら私は、単なる普通のパラノイアということね。

CORAL:  そうだね。セキュリティ専門家の特徴の一つは、普通にパラノイア的な人なら警戒しないような端の事例を、長時間心配することだ。攻撃者がしそうなことには聞こえないからである。Freedom to Tinkerブログの例を紹介しよう。

このような「無害な障害」、すなわち、攻撃者が異常ではあるが直接には有害でない結果を起こせる事例への関心も、セキュリティ思考の特徴の一つである。「無害な障害」のすべてが大問題につながるわけではないが、巧妙な攻撃者が、一見無害な障害を積み重ね、危険な問題の塔にすることが、驚くほど多い。無害な障害は衛生上よくない。可能なら根絶しようとする。……

その理由を見るため、最近報道されたdonotreply.comのメールの話を考えよう。企業が商用メール(例えば、航空会社が乗客に便の遅延を知らせるもの)を送り、受信者に返信してほしくないとき、差出人欄へ[email protected]のような偽のアドレスを入れることがよくある。ある賢い人物がdonotreply.comドメインを登録し、donotreply.com宛てのメールをすべて受け取れるようにした。そこには、宛先を間違えたメールへの「バウンス」返信も含まれた。その一部には、元のメールの写しが入り、銀行口座明細や、イラクの軍事基地の施設情報などが含まれていた。……

送信メールにdonotreply.comのアドレスを入れた人々は、自分たちがdonotreply.comドメインを管理していないと知っていたはずなので、そこへ送られる返信を無害な障害だと考えたに違いない。そこまで来たとき、問題を避ける方法は二つある。第一は、donotreply.comへ行く可能性のある通信を慎重に考え、その一部が実は危険だと気づくことだ。第二は、「これは無害な障害に見えるが、とにかく避けるべきだ。ここからよいことは何も生まれない」と考えることだ。第一の方法は、あなたが賢ければ守ってくれる。第二の方法は、いつでも守ってくれる。

「第一の方法は、あなたが賢ければ守ってくれる。第二の方法は、いつでも守ってくれる」。これはまさに、セキュリティ思考のもう半分である。本稿の作者は、ブラックリストではなくホワイトリストで動くAGIアライメントについて語ることで、これを実践していた。AGIシステムがどれほど速く能力を発見できるかについて、自分が賢く予測できると仮定すべきではない。まだホワイトリストにない能力は、非常に突然発見されても使わないシステムを持つべきだ。

1ミリ秒で宇宙規模の万能の力を得たら害を及ぼすAGIなら、ある意味で害を及ぼそうとしており、能力が不足しているとあなたが思うために失敗しているだけの認知過程を作ったことになる。これは非常に悪いので、代わりに別のAGIシステムを設計すべきだ。探索結果が空でなければ害を及ぼす探索を、AGIシステムに実行させてはならない。その探索結果が空になることを、AGIが害を及ぼすための巧妙な経路をすべて、あなたの巧妙だが浅い防御で閉ざすことによって保証しようとしてはならない。そのような探索を決して実行しないようにして、直すべきだ。計算能力のばかげた使い方であり、代わりに計算能力で別のことをすべきである。

普通のコンピューターセキュリティへ戻ろう。別々の場所へ隠した7本の鍵で錠前を作ろうとするなら、ある次元では、鍵を読もうとする攻撃者と知恵比べをしている。セキュリティ思考を持つ人は、知恵比べに勝たなければならないことに依存したくない。多くの知的なプログラマーが持つ標準的なパラノイアを習得できる普通にパラノイア的な人は、返信先欄に[email protected]とあるのを見て、攻撃者がdonotreply.comドメインを登録する可能性を考える。セキュリティ思考を持つ人は、攻撃者ではなく仮定について考える。「この返信メールはどこにも届かないと仮定している」と考える。「しかし、その仮定が真かどうかを心配しなくてよいよう、システムを設計すべきではないか」

AMBER:  本当に偉大なパラノイアなら、攻撃者が行うにはばかばかしいほど起こりそうにないと思える方法が、ときには実はそれほどばかばかしくないと分かることを知っているからね。

CORAL:  これも、正確には違う言い方だ。メールの差出人を[email protected]にしないのは、攻撃者がdonotreply.comを登録する可能性が、初心者の想像より高いと認識したからだけではない。バウンスメールが宛先のない場所へ送られると、あらゆることが起きるかもしれない! バウンスメールの仕組みでは、そのアドレスを探して、奇妙な場所へ次々と転送されるのかもしれない。私は知らないし、調べなければならない状況にもなりたくない。代わりに、こう問う。バウンスメールが返信を生成しないようにできないか。バウンスメールに元のメッセージ本文が含まれないようにできないか。メッセージを送ろうとする前に、その名前の利用者がまだ存在することを、メールサーバーへ問い合わせて確認できないか。もっとも、「休暇中」の自動返信もあるので、返信先アドレスはやはり自分で管理したほうがよいかもしれない。権限のない人に読まれると非常にまずいものなら、平文のメールで送るべきではないのかもしれない。

AMBER:  つまり、本物のセキュリティ思考を持つ人は、起こりそうにない思考実験で示された問題が一つあれば、攻撃者が実際に悪用できる、もっと現実的な問題もありそうだと理解するのね。私が奇妙で起こりそうにない障害の筋書きだと考えるものは、炭鉱のカナリアであって、本当にパラノイア的な人には、これから来る大問題を警告する。

CORAL:  また少し違う。普通にパラノイア的な人は、[email protected]の話を聞いて、「まあ、攻撃者が実際にそのドメインを登録する可能性は低い。もっと緊急の問題を心配しなければ」といったことを考えるかもしれない。その思考様式では、火事かもしれないものを消すため走り回っていて、火事である可能性が最も高いものを優先しなければならないからだ。

セキュリティ思考を持つ人に、奇妙な端の事例の思考実験を示したとき、火事である可能性が高まったものを見るわけではない。「ああ、バウンスメールはどこにも届かない、という私の信念は誤りだった!」と考える。安全なOSを作るOpenBSDプロジェクトは、その過程で、きわめて堅牢なOSも作った。彼らの観点では、システムをクラッシュさせる可能性のあるバグはどれも、重大なセキュリティホールとみなされるからだ。普通にパラノイア的な人は、システムをクラッシュさせる入力を見て、「クラッシュは、誰かにデータを盗まれるほど悪くない。このバグを使って攻撃者がデータを盗めると示されるまでは、極端に重大ではない」と考える。セキュリティ思考を持つ人はこう考える。「このサブシステム内では、何もOSをクラッシュさせるように振る舞わないはずだ。あるコード部分が、私のモデルどおりには働かない仕方で振る舞っている。ほかに何をするか、誰に分かるだろう。システムはクラッシュしないはずなので、クラッシュさせたことによって、このシステムの働き方についての私の信念が誤りだと、あなたは証明した」

AMBER:  正直に言うと、セキュリティ専門家を名乗る人は、私には非常に起こりそうにないと思える筋書きを、気にしすぎているように感じることがある。例えば、誰かがバッファーの終端を確認し忘れ、攻撃者が巨大な文字列を投げ込み、スタックの末尾を、システム内の別の場所にある、攻撃者が望むことを行うコード部分へジャンプする戻りアドレスで上書きするような話。本当にそんなことが問題になる可能性は、どれくらいあるの? 現実世界では、誰かがパスワードを「password」にするほうが、起こりやすいと思うわ。主としてそちらに備えるべきじゃない?

CORAL:  両方しなければならない。このゲームでは参加賞がほとんどない。大国政府による攻撃に耐えるシステムが欲しいなら、実際に、ものすごく安全でなければならないんだ。一部の利用者がパスワードを「password」にしようとするかもしれないという事実は、バッファーオーバーフローからも守らなければならないという事実を変えない。

AMBER:  でも、セキュリティ思考を持つ人がOSを設計しても、攻撃に成功されることはよくあるんでしょう? この深いパラノイアでもバグの可能性を完全にはなくせないなら、余分な労力をかける価値が本当にあるの?

CORAL:  こう考える人をOS構築の責任者にしなければ、たちまち失敗せずに済む可能性はまったくない。セキュリティ思考を持つ人も、安全なシステムの構築に失敗することがある。セキュリティ思考を持たない人は、少しでも複雑なシステムのセキュリティでは、必ず失敗する。この考え方によって得られるのは、システムが24時間より長く破られずに済む可能性だ。

AMBER:  少し極端に聞こえるわ。

CORAL:  この点で君が何を「極端」と考えるかを、現実が気にかけたことはないと歴史が示している。だから、君のWi-Fi対応電球はロシアのボットネットの一部になっているんだ。

AMBER:  ねえ、システムの細かくて厄介な部分を、一つ残らず正確にしたいというのは分かるわ。私も整然としてきれいなものは好き。でも現実的に考えましょう。人生で望むものを、いつもすべて手に入れられるわけではない。

CORAL:  君は私と交渉しているつもりだけど、実はマーフィーの法則と交渉している。残念ながら、マーフィー氏は歴史的に、その要求がまったく不合理で、それに従わない者にはかなり容赦がなかった。私は方針を勧めているのではなく、その方針に従わなければ何が起きるかを伝えているだけだ。君は、自分の電球がエストニアの寝具店にサービス拒否攻撃をしても、特に悪くないと思うかもしれない。しかし、安全なシステムが本当に欲しいなら、ある種のことを行う必要がある。その部分は、交渉できる要求というより自然法則に近い。

AMBER:  交渉の余地なし、ですって? 誰かが2万ドルを提示したら、きっと言い方を変えるでしょうね。ともかく、あなたがあまり触れないので驚いたことが一つあるわ。セキュリティ思考を持つ人は、必ず自分の考えを仲間の検討に出し、ほかの人が投票した結果を受け入れる、という部分よ。これは響きがいいわね。共同体主義的で謙虚に聞こえる。

CORAL:  それは多くのプログラマーが持つ、普通のパラノイアの一部だと思う。他人の検討に考えをさらす意味は、さほど理解しにくくない。もちろん、それさえ行わない人も大勢いるけれどね。コンピューターセキュリティで語り古されたこの話題に、独自の意見を加えるなら、それは賢明でパラノイア的な人への助言として組み立てられているが、もちろん、さらに必要としているのは幸せな無垢の人々だ、と指摘するだろう。

AMBER:  幸せな無垢の人々?

CORAL:  普通のパラノイアさえ持たない人々だ。幸せな無垢の人は、自分のシステムが働く方法を思い描く傾向があるが、誰かに促されるまで、システムがどう失敗し得るかをまったく問わない。そして促された後でも、それができない。少なくとも、それが私や、この専門職の多くの人の経験だ。

きわめてひどい暗号システムがある。チェスのフールズ・メイトに相当し、まったくの素人が時に収束するFast XORだ。パスワードを選んで繰り返し、その繰り返したパスワード文字列とデータの排他的論理和(XOR)を取る。このシステムを発明する人は、攻撃者の視点にまったく立てないかもしれない。彼は自分のすばらしい暗号が破れないことを望んでおり、その暗号が破れることを望む人の心構えに、本当の意味で入れない。「何がうまくいかない可能性があるか、どうか考えてみて」と頼めば、「パスワードをなくしたら、私の暗号化アルゴリズムが強すぎるため、データは永久に復元できない。うまくいかないことがあるとすれば、それかな」と答えるかもしれない。あるいは「誰かが私のコードを妨害するかも」「どうしても途方もない筋書きを作れと言うなら、コンピューターが突然、私のプログラムに従わないと決めるかも」と言う。もちろん、有能で普通にパラノイア的な人は、自分の名案を検討し、撃ち落としてもらうため、見つけられる限り最も腕のよい人々に頼む。ほかの心は別の角度から入り、別の標準的な手法を知っているかもしれないからだ。しかし、「自作暗号を使うな!」「名案はセキュリティ専門家に見てもらえ!」と言う、もう一つの理由は、目標の極性をまったく反転できない多くの人へ届くことを期待するためだ。その人々は自然にはそのように考えず、無理に行わせようとすると、生産性のない方向へ思考が進む。

AMBER:  例えば……右派/左派の多くの人が、自分の大切な観点の外へ出て、左派/右派のイデオロギー的チューリングテストに合格することが、まったくできないようなもの?

CORAL:  まったく同じ心の歯車や能力かは分からないけれど、明らかな類似点はある。普通のパラノイアを欠く人は、Fast XORが破られることを望む人の視点に立ち、Fast XORを破ろうとする攻撃者のイデオロギー的チューリングテストに合格できない。

AMBER:  できないの、それともしないの? 生まれつきで訓練できない能力のように語っているわね。

CORAL:  少なくとも、専門職ではいつものように、才能の水準に差があるだろう。そして、これもいつもと同じく、才能は訓練と練習から途方もない恩恵を受ける。しかし、そうだね。ここには一種の質的な段階や歯車があるように、私には時々思える。ある人々は視点を移し、自分のコードを本当に破りたい攻撃者……あるいは、自分の計画が成功するよう応援してはいない現実、異なる感情を進化させた異星人、推論を「したがって人間は末永く幸せに暮らすべきだ」で終えたいとは思っていないAI、シスの思想を信じながら、自分が悪人だとは信じていない架空の人物を想像できる。

一部の人には、単にそのように視点を移せないように見えることが、時には確かにある。本当に神経回路を欠いているのではなく、能力を止める本能的で政治的なスイッチがあるのかもしれない。心の錨を手放すのが怖いのかもしれない。しかし外から見れば、結果は同じである。行う人もいれば、行わない人もいる。自分の内なる目標の極性を自然に反転し、自分の暗号がどう破られるかを自然に問い、生産的な攻撃の角度を思いつく人もいる。暗号の欠陥を探すよう促されるまで待つ人や、自分と議論し、自分を納得させる議論を出すよう相手に要求して待つ人もいる。あなたが指摘しそうな欠陥を自分で予想するよう求めると、イデオロギー的チューリングテストの合格にはほど遠い、奇妙なことを言う。

AMBER:  質的な区別が本当に好きね。普通にパラノイア的な人にも、優劣はあるの? 「幸せな無垢の人」と「本物の深いセキュリティ思考」の間には、スペクトルがあるのかしら?

CORAL:  普通のパラノイアの中で明らかな量的才能の水準といえば、物事を横から眺めるため、どれほど遠くまで視点をひねれるか、つまり、思いつく攻撃の創造性と実行可能性だろう。ブルース・シュナイアーが挙げた、次の例のように。

アンクル・ミルトン・インダストリーズは、1956年から子ども向けにアリ飼育キットを販売している。何年か前、友人と一緒に一つ開けたときのことを覚えている。箱の中に本物のアリは入っていなかった。代わりに、住所を書いて会社へ送るカードがあり、会社がアリを郵送してくる。友人は、郵便でアリを送ってもらえることに驚いていた。

私は答えた。「本当に面白いのは、この人たちが、君の指定した誰にでも、生きたアリの入った筒を送ってくれることだよ」

セキュリティには、特定の思考様式が必要である。セキュリティ専門家は、少なくとも優れた専門家は、世界を違う仕方で見る。万引きの方法に気づかず店へ入れない。セキュリティ上の脆弱性を考えずにコンピューターを使えない。二重投票の方法を解明しようとせず投票できない。どうしても、そうせずにはいられない。

SmartWaterは、特定の所有者に結びついた固有識別子を持つ液体である。「所有権の証拠として、自分の貴重品にこれを塗る、という発想だ」と、初めてこの考えを知ったとき、私は書いた。「もっとよい考えは、あなたの貴重品に私がこれを塗り、それから警察を呼ぶことだと思う」

本当に、私たちは、そうせずにはいられない。

この種の思考は、大半の人にとって自然ではない。技術者にとっても自然ではない。優れた工学は、物事を働かせる方法を考える。セキュリティ思考は、物事を失敗させる方法を考える。……

このうち、どれほどが生まれつきで、どれほどが教えられるのかを、私はよく推測してきた。一般に、これは世界を見る特定の方法であり、セキュリティ思考を教えるより、暗号技術、ソフトウェアセキュリティ、金庫破り、文書偽造といった分野の専門知識を教えるほうが、はるかに容易だと思う。

はっきりさせておくと、「単なる普通のパラノイア」と「セキュリティ思考全体」の区別は、私独自のものである。幸せな無垢の人より上のスペクトルを、一段階でなく二段階に分け、「奇妙な角度から世界を見るという、この仕事は、学ぶ必要のあるものの半分にすぎず、しかも易しい半分である」と言う価値があると思う。

AMBER:  ブルース・シュナイアー本人も、あなたの言う「セキュリティ思考」の意味を理解していないのかもしれない。彼の言葉を盗んで、まったく新しい自分の考えを指すために使っているだけかも!

CORAL:  いや、「donotreply.com」を誰かがいつか登録するかどうかを推論したくないので、とにかく直すという部分、つまり、どの問題が爆発するかを賢く見抜けると自分を信頼しない方法論は、既存のセキュリティ専門家が「セキュリティ思考」と呼ぶものの、間違いなく一部だ。そして、二番目の深い半分の一部であることも間違いない。私の提示方法で慣例と違うのは、「普通のパラノイア」という中間技能を切り出していることだけだ。そこでは、パスワードファイルを暗号化し、暗号鍵をファイルシステム用コードの別部分へ隠すことで、想像した攻撃を受け止めようとする。パスワードファイルをハッシュする発想を得ることは、質的に異なる技能ではないかと、私は考えている。対象レベルのシステムと攻撃者だけでなく、自分自身の推論過程を次元とする世界を呼び出す技能である。言うのは礼儀正しくないし、お決まりの人々は地位を奪おうとする行為だと解釈するだろうが、内省性を強く伴うほかの技能についての私の経験は、多くの人、おそらく君を含む人々には、このように考えられないと判明するかもしれないことを示唆している。

AMBER:  確かに、ひどく失礼だと思うわ。

CORAL:  本当に失礼かもしれない。それは否定しない。真実でないかどうかは別の問いだ。そう言う理由は、普通にパラノイア的な人に、より深いパラノイアの水準へ届くよう試みてほしいと思う一方で、それが自分には向かないと判明する可能性にも気づいてほしいからだ。その場合には助けを得て、その助けに耳を傾けるべきである。人へアリを郵送させる機会に気づけるから、[email protected]のひどさにも気づけるはずだと、思い込むべきではない。

AMBER:  ブルース・シュナイアーなどのセキュリティ専門家が「セキュリティ思考」と呼ぶものと区別して、その深い半分を「深層セキュリティ」と呼べるかもしれないわね。

CORAL:  「セキュリティ思考」イコール「普通のパラノイア」プラス「深層セキュリティ」? あまりよい用語とは思わないけれど、君がそう使うのは構わない。

AMBER:  それを額面どおり受け入れるとしましょう。さっき、幸せな無垢の人が普通にパラノイア的になろうとして失敗したとき、何が起きるかを説明したわね。普通にパラノイア的な人が、深層セキュリティの技能を必要とすることを行おうとしたら、何が起きるの?

CORAL:  悪いパスワードこそ、消すべき本当の火だと賢く突き止めたと信じ、悪いパスワードを見つけるため、より巧妙な検査を書くことに全時間を費やす。悪いパスワードを検出するため、どれほど努力を注ぎ、システムの安全にどれほど気を配ったかに、非常に感銘を受ける。名前を思い出せない、標準的な認知バイアスの餌食になる。人は一度の大きな努力か、数回の大きな努力で問題を解き、その後は終わりにして、もう努力したくない。それが、飲料水を買い終えた人がハリケーン用の雨戸を取りつけない理由だというものだ。「もっと頑張る」ことに報酬を払えば、パスワードファイル用の暗号鍵7本を7か所へ隠すか、攻撃者がそもそもそこまで侵入できたなら、明らかに回り込むだけの場所に、より高い塔を次々と建てる。これらの考えには、ある意味で「浅い」という共通点がある。特定の想定した攻撃を受け止めようとする試みとして、思考上は単純で直線的である。想像した問題を懸命に相手にしているという満足感を与え、それから失敗する。

AMBER:  利用者のパスワードが「password」でないことを検査するのは、よい考えではないと言っているの?

CORAL:  違う。浅い防御も、多くの場合はよい考えだ! しかし、より高い技能を持つ人は、そこでも、もっと体系的に物事を見ようとする。問題には、より深い見方がしばしば存在すると知り、その深い見方を探そうとする。例えば、パスワードに大文字、小文字、数字、記号を少なくとも一つずつ入れるよう要求することで、「correct horse battery staple」というパスワードを、パスワード検査器が排除しないことは、きわめて重要だ。本当に行いたいのは、パスワードのエントロピーを測ることだ。「rainbow」を推測されるという障害モードを思い描き、利用者に「rA1nbow!」をパスワードにさせることで、巧妙に阻止することではない。

パスワード入力欄には、入力したパスワードを平文で表示できるチェックボックスが必要である。悪人が利用者の肩越しに見るという想定した障害モードを受け止めようとすると、利用者が長い、または高エントロピーのパスワードを入力する邪魔になり得るからだ。そして利用者は、コピー・アンド・ペーストできるよう、ウェブページの上にあるアドレスバーという便利なテキスト欄に、パスワードを入力することも十分にあり得る。その結果、アドレスバーで賢い検索を行おうとする相手へ、パスワードを送ってしまう。誰かが肩越しに見ることを本当にそこまで心配するなら、利用者が実際に読める近くのテキスト欄へパスワードを入力させる代わりに、携帯電話へ確認メッセージを送るべきかもしれない。想像した一つの悪いことに備えるため、一つのテキスト欄を隠し、隠す機能を切るスイッチを用意しない。その一方で、別の仕方で自分の足を踏み、しかも悪いことを本当には防げない。これが浅い防御の危険だ。

「懸命に努力しているつもりだが、実際には浅い予防策を大量に積み上げているだけの、普通にパラノイア的な人」の典型的な人物は、『ハリー・ポッター』シリーズのマッドアイ・ムーディ(Mad-Eye Moody)だ。部屋いっぱいの闇検知器を持つ一方、最後には誰かのトランクの底に閉じ込められる。マッドアイ・ムーディは、すでに部屋いっぱいにある闇検知器にもう一つ加えるのに忙しすぎて、「誰かがポリジュース薬を使い、自分と入れ替わろうとする」という予見しなかった攻撃経路も覆えるほど、深く汎用的な予防策を考え出せなかったようだ。

そして、解決策は特別なポリジュース対策薬を追加することではない。たまたま持っているなら、もちろんすばらしいが、システムへの信頼の大半は、そこから生じるべきではない。最初の防衛線は、深さと汎用性を感じさせるものであるべきだ。鍵を隠すのでなく、パスワードファイルをハッシュすること。少なくとも一つの大文字を要求するのでなく、パスワードのエントロピーを測る方法を考えること。

AMBER:  これも、二つの異なる思考様式というより、巧妙な考えの巧妙さについての量的な差に思えるわ。

CORAL:  現実世界のカテゴリーはしばしば曖昧だけど、私には、これらが二種類の異なる思考の産物に見える。英字の大文字・小文字と数字の混在を要求することを広めた人は、パスワードのエントロピーを測ることを考えた人と、違う仕方で推論していたのだろうと思う。しかし、区別を質的と呼んでも量的と呼んでも、区別は残る。システムの安全を支える推論の建造物を、実際に単純化し強化する種類の、深く汎用的な考えは、よりまれに、よりまれな人々によって生み出される。自分たちより賢く、または経験豊富かもしれない人々を含む複数の攻撃者による攻撃に耐え、あるいは攻撃を遅らせるシステムを作るには、すべてのプログラマーに期待するのが合理的でない、専門職に特化した水準の思考が要る。自分と同じ程度に賢い単一の攻撃者の視点へ心を移せる人にさえ、期待するのは合理的でない。普通にパラノイア的な人へ求めるべきなのは、より深い考えが存在することを理解し、すでに知られている標準的な深い考えを学ぼうとすることだ。自分の技能が、可能なものの上限ではないと知り、専門家に来てもらい、自分の推論を確認してもらう。そして実際に耳を傾けることだ。

AMBER:  でも、より高い技能があると考えて間違うことがあり得るなら、あなた自身が、本当に深いセキュリティ思考を持つ、まれな人の一人だと、どうして分かるの? 自分を高く評価しているのは、ダニング=クルーガー効果のせいにすぎないのでは?

CORAL:  ……分かった。それで、もう一つ注意を思い出した。

そう、「パラノイア」という才能が自分にはないと信じられず、すばらしい暗号案の欠陥をもっと心配するよう求められると、奇妙なパラノイアもどきを考え出す、無垢な人もいるだろう。また、これを読む人の中には、深刻な社会不安と自信不足を抱える人もいる。普通のパラノイア、さらにはセキュリティ思考の能力さえ実際には持つ読者が、自分は才能があると想像しているだけの人間かもしれないとひどく心配するため、そうした才能を伸ばそうとしないかもしれない。まあ、深いセキュリティの考えと浅い考えの違いを感じ取れると思うなら、同じ仕方で自分の中に響く考えを、少なくとも時々は自力で生み出そうとすべきだ。

AMBER:  でも、その態度は、本当にはできないのに自分にはパラノイア的に考えられる、と自信過剰な人に思わせない? その結果、自分自身の推論や考えに感心しすぎるのでは?

CORAL:  どうせそうするだろうと、私は強く思う。自分だけが謙虚になることへ同意しても、全員に利益をもたらす何らかの共同慣行を、実際に促進するわけではない。自信過剰な人は、君の決断を気にしない。そして、自分を過大評価することと同じだけ、自分を過小評価することも心配していないなら、自分の適切な立場を越えることへの恐れが、失われた可能性や見送った機会への恐れと非対称なら、優れた認識論への厳密な関心ではなく、感情上の問題を扱っている可能性が高い。

AMBER:  では、深層セキュリティの才能を持つ人は、どうやって訓練できるの?

CORAL:  ……ものすごくよい問いだ。コンピューター科学の文脈外にある、日常のシステムを攻撃する方法を、学生に考えさせる授業など、普通のパラノイアについては、興味深い訓練法がいくつか開発されている。ある教授は、「円周率の最初の100桁は何か」という問題を一つ入れた試験を出した。その意図は、試験に合格するため、何らかのカンニング方法を見つける必要があるということだった。まだ行っていないなら、まず、その種の普通のパラノイアを訓練すべきだ。

AMBER:  それから? 普通のパラノイアから深層セキュリティへ、どうやって卒業するの?

CORAL:  ……特定の攻撃を受け止めるのではなく、より汎用的な防御を探す? 攻撃者が単に回り込める塔を、ますます高くしているだけかもしれないことを理解する? ううん、違う。普通のパラノイアに似すぎている。特に、普通のパラノイアだけを出発点にするなら。少し考えさせて。

……

よし、おそらく役に立たない、風変わりな助言がある。システムが安全だという信念を支える安全物語を書き出す。それから、経験的な仮定をすべて本当に含めたか、自分に問う。さらに、その経験的な仮定を本当に信じているか、自分に問う。

AMBER:  例えばOSを作るなら、「安全上の仮定:ログインシステムが働いて、攻撃者を締め出す」と書くような――

CORAL:  違う!

いや、違う。ごめん。いつものように、私が「助言」だと考えるものは、実際に行うために誰もが必要とする重要な部分を、すべて省いていたようだ。

「経験的な仮定」と言ったとき、私が曖昧に指そうとしたのは、それではない。システムの一部が「成功する」や「失敗する」と仮定すべきではない。そのような言葉は、書き出す内容に現れるべきではない。物語の要素は厳密に事実的であるべきで、価値を帯び、目標を帯びた……ものではいけない。起きてほしいことや、起きてほしくないことへ明示的に触れる推論ではなく、宇宙の背景的事実を中立に記述する言葉だけであるべきだ。考えを広げる目的なら、「危険な権限を持つ利用者のパスワードは、誰にも推測できない」と書くことはできる。でも、それはさらに基本的な命題へ精緻化する必要のある、原型的な命題にすぎない。

AMBER:  理解できなかったと思う。

CORAL:  「誰にもパスワードを推測できない」は、「攻撃者はパスワードの推測に失敗すると信じる」と言っている。なぜそう信じるの?

AMBER:  複雑な仮定を、もっと単純な仮定の体系へ精緻化してほしいのね。でも、「なぜそう信じるのか」を問い続ければ、最後にはビッグバンと物理法則まで戻ってしまう。どこで止めるべきか、どう分かるの?

CORAL:  しようとしているのは、目標を帯びた出来事である「攻撃者は失敗する」より深く物語を還元し、その出来事の基礎となる中立的な事実を語ることだ。今はとにかく答えて。なぜ攻撃者がパスワードの推測に失敗すると信じるの?

AMBER:  パスワードを推測するのが難しすぎるから。

CORAL:  「難しすぎる」は、目標を帯びた言葉だ。何が「難しすぎる」かは、システムに対する君自身の望みで決まる。自分の望むことに関係する概念や言葉を使わず、パスワードを推測するのが難しすぎる理由となる事実を、中立的に記述できる?

AMBER:  攻撃者が推測に必要な回数を試せないほど、パスワードのエントロピーが高い。

CORAL:  前進しているけれど、また「十分」という言葉は目標を帯びている。何が「十分」かは、君自身の望みや欲求が決める。「十分」の代わりに、別のことを言える?

AMBER:  パスワードには充分なエントロピーがあり――

CORAL:  「十分」の同義語を探してという意味ではない。目標を帯びていない、別の概念を使ってほしい。書き出す内容の意味を変える必要がある。

AMBER:  ごめんなさい。私には、これをうまくできるだけの能力がないみたい。

CORAL:  少なくとも、まだね。いつまでもできない可能性もあるけれど、それは分かっていない。1回の失敗に基づいて、そう仮定すべきではない。

ともかく、私が期待していたのは、例えば次の二つの命題だ。「すべてのパスワードには少なくとも50ビットのエントロピーがある、と私は信じる」「どの攻撃者も、どのパスワードについても、合計1兆回を超えて推測を試せない、と私は信じる」。ここで「私は信じる」と書く要点は、いったん立ち止まり、自分が本当にそう信じているかを問うようにすることだ。

AMBER:  攻撃者は1兆回試すことが「できない」と言うのも、それ自体、目標を帯びた言葉では?

CORAL:  そのとおり。その仮定も、「なぜそう信じるのか」によって、さらに精緻化する必要があるかもしれない。「システムは1秒より短い間隔のパスワード試行を拒否する、と私は信じる」「攻撃者がこれを続けるのは1か月未満だ、と私は信じる」「攻撃者が同時に開始する接続は30万件未満だ、と私は信じる」という具合に。ここでも要点は、書いたものを見て、「私は本当にそう信じているか」と問うことだ。はっきりさせておくと、ときには答えが「そうだ、確かにそう信じている!」になる。苦悩に満ちた疑念を抱ける能力を見せびらかしてから、結局は同じことを行う、社会的な謙虚さの練習ではない。要点は、自分が何を信じているか、何を信じる必要があるかを見つけ、それが信じられるものか確認することだ。

AMBER:  それで深いセキュリティ思考を訓練できるの?

CORAL:  ……かもしれない? そうかもしれないと、まったく当てずっぽうで言っているだけだけど。パスワードや攻撃者と並べて、物語、推論、仮定という観点でも考えるようになるかもしれない。それは少なくとも、この技能の一部だと思う思考領域へ心を移す。

実のところ、作者がこの方法を詳しく挙げている本当の理由は、現在、汎用人工知能(AGI)をアライメントする問題について、似たことをしようとしているからだ。「自分のAGIは誰も殺したいと思わない、と私は信じる」という段階を越え、次のような命題を書き出す心の状態へ近づきたい。「このリカレント・ニューラルネットワークの潜在的な重みづけ空間には、プログラマーを殺す方法を見つける重みの組み合わせも含まれるが、損失関数 L に対する勾配降下法が到達する結果は、性質 P を持つ部分空間 Q の内部だけだと私は信じる。また、性質 P を持つ空間には、プログラマーを殺す方法を見つける重みの組み合わせが一つも含まれないと、私は信じる」

もっとも、これ自体、本当に還元された命題ではなく、目標を帯びた言葉をまだ多く含む。現実的な例を示すと、本稿の本筋から完全に外れてしまう。しかし作者は、すでに優れた普通のパラノイアと、かなり謎めいた生来の才能を持つ人なら、この思考法の練習が、堅牢なシステムについて、より堅固な物語を作る方向へ導く助けになり得ると願っている。


続き:セキュリティ思考とロジスティック成功曲線。