ああ、どこから始めましょう。
大きなものは間違いなくブラックボックスです。暗号研究者は、Random Oracle Modelのインスタンス化不可能な問題のようなことについて大騒ぎします。セキュリティ研究者は反対に極端であり、ハッシュ関数だけでなく、すべてをブラックボックスとして使用できるようにしたいと考えています。これは常に緊張の原因です。
たとえば、BANロジックなどのセキュリティプロトコルの正式な分析を見ると、対称暗号化が「理想的なブロック暗号」として扱われていることがわかります。ここには微妙な違いがあります。BANロジック(および他のプロトコル分析手法)は、セキュリティの証拠であると主張していません。むしろ、それらは欠陥を見つけるためのテクニックです。したがって、理想的な暗号モデルがここに含まれることは厳密には真実ではありません。ただし、ほとんどのセキュリティ分析は正式なモデルに限定される傾向があるため、効果は同じです。
開業医についてはまだ話していません。これらの人は通常、暗号プリミティブがブラックボックスであることを意図していないという手掛かりさえ持っておらず、これが変わることはないと思います。
問題の深刻度を確認するには、API署名の偽造性に関するこのセキュリティアドバイザリを検討してください。このバグの一部は、Merkle-Damgard構造の長さ延長攻撃(これは非常に基本的なことです)によるもので、Flickr、DivShare、iContact、Mindmeister、Myxer、RememberTheMilk、Scribd、Vimeo、Voxel、Wizehhive、Zoomrに影響します。著者は、これは完全なリストではないことに注意しています。
実務家は、この悲しい出来事のせいだという責任の大部分に値すると思います。一方、おそらく暗号理論家は自分の立場を再考する必要があるかもしれません。彼らのラインは、「ブラックボックスを構築することは不可能です。私たちは試してさえいません。」とにかく、構造がブラックボックスとして(誤)使用されることは明らかなので、少なくともブラックボックスにできるだけ近づけるようにしてみませんか?
論文Merkle-Damgard Revisitedは、私が話していることの素晴らしい例です。彼らは、「固定長のビルディングブロックがランダムオラクルまたは理想的なブロック暗号と見なされる場合、任意の長さのハッシュ関数Hはランダムオラクルとして振る舞わなければならない」というセキュリティ概念を研究しています。この種の理論的研究は、実際に非常に役立つ可能性があります。
それでは、回路評価の例を見てみましょう。私はあなたの推論に反対するようにお願いします。コンパイル済みのバイナリを取得して、盲目的に回路に変換するようなものではありません。むしろ、通常非常に単純な基礎となる比較関数にのみ回路評価を適用します。Fairplayは、回路評価の実装です。それで働いた私の同僚は、それが驚くほど速いことを教えてくれます。効率が回路評価の問題であることは事実ですが(この理由で拒否された実世界の事例は知っています)、それは目を見張るものではありません。
2番目の理由は、2つの会社が合併するかどうかを検討している場合など、気付かない回路評価を実行する可能性のある典型的な現実のシナリオを考える場合です。関与することは、人間の全体的な努力と予算と比較して些細なことです。
では、なぜ実際に一般的な安全な関数評価を使用しないのですか?いい質問ですね。これは、理論と実践の2番目の違いにつながります。実際には、信頼は実際に存在します。偏執的なモデルですべてを行う必要はありません。人々が暗号を使用して実際に解決したい問題のセットは、暗号作成者が想像するものよりもはるかに小さいです。
安全なマルチパーティコンピューティングサービスを企業クライアントに販売しようとする会社を始めた人を知っています。推測します—誰もそれを望んでいませんでした。彼らがこれらの問題に取り組む方法は、データでできることとできないことを指定した契約書に署名し、意図した目的でデータを使用した後にデータを破棄することです。ほとんどの場合、これは問題なく機能します。
理論と実践の違いの最後のポイントは、PKIについてです。暗号化された論文は、「どこかでPKIを想定している」という文を頻繁に貼り付けます。残念ながら、エンドユーザー向けのデジタル証明書は(自然な階層が存在する企業環境のWebサイトや従業員とは対照的に)実現しませんでした。この古典的な論文は、あなたが普通の人にPGPを使用するように依頼したときに起こる喜びについて説明しています。それ以来、ソフトウェアは大幅に改善されたと言われていますが、基本的な設計とアーキテクチャの問題、および人間の制限は今日ではそれほど変わりません。
暗号プロトコルの実際の適用可能性を制限するという事実を認識していることを除いて、この現実のPKIの欠如の結果として、暗号作成者が別のことをするべきではないと思います。それは私が修正しようとしているものだからです。