制約充足問題の半影を見つける


12

システムまたはモデルのセキュリティをテストするときに、次の質問が何度も出てきました。

動機:ソフトウェアセキュリティの欠陥は、有効な入力に起因するバグではなく、有効な入力に十分に近い無効な入力に起因するバグに起因することが多く、単純な有効性チェックの多くを通過します。古典的な例はもちろん、バッファオーバーフローです。入力が大きすぎることを除いて、入力は妥当です。コンパイラと他のツールは、スタックとヒープのレイアウトを変更したり、他の難読化技術によってこれらの問題に対処するのに役立ちます。別の方法は、ソースコード自体から問題を削除することです。ファジングボンバードと呼ばれる手法の1つは、入力を含むプログラムが期待される入力に近いが、一部の場所では不合理です(整数または文字列フィールドの値が大きい)。私は、より形式的な観点からファジング(一例として)を理解したいと思います。

有効な入力のスペースは、制約によって記述されると仮定します。してみましょう、このような制約の解の集合であること、すなわち 、可能な入力の空間です。ΦMM={mM | mΦ}M

次の概念を説明する仕事を探しています。

  • 半影の集合である例えば毎こと ある意味での元素M」があり近い元素M半影ほとんど解決策と考えることができます。もちろん、この概念は一意ではありません。MMMmM mΦ MM

  • 制約リラックスの方法ΦするΦように、まずΦΦΦ¬Φあり、ある意味では、構文の半影Φ

「ペナンブラ」は、概念を説明するために私が選んだ言葉です。それは他の何かと呼ばれることもあります。

私は数学的形態学にインスピレーションを見出した ので、私の視覚的な比、ですが、2つの世界はパーセクです。そこに役に立つ仕事はありますか?それとも、ラフセットの世界で?

誰もが光を当てることができますか?


問題自体は非常に興味深いものですが、ほとんどの場合、半影を作成すること(より「公式」な名前は知りません)ではなく、ソフトウェア改ざん攻撃(変更による攻撃など)を回避する技術の難読化に関心があります。入力の)。この手法は、プログラムを他の何かであふれさせることにより、プログラムの動作の中核を隠します。たとえば、元のプログラムを特定のインスタンスのNPハード問題の解決をハードコードするプログラムと一緒にインターリーブすることにより、プログラムをビルドできます。
シルベインペロンネット

確かにそうです。私はファジングとして知られるアプローチをほのめかしています。
デイブクラーク

ところで、CSP = Constraint Satisfaction Problem。
MS Dousti

回答:


6

制約充足問題(CSP)の最適化バリアントに向けられた多くの注意は、いくつかの制約(MAX-CSP)を満たすことに焦点を当てています。 MAX-ONES、MIN-ONESもあります)。

代わりに、MAXIMUM PARTIAL CSPと呼ばれる可能性のあるバリアントについて尋ねています。これは、少なくとも1960年代後半まで研究されましたが、確立された名前を持っていることは知りません。それは自然な問題であり、それを調査するより多くの仕事を見ることは良いことです。この問題の別の潜在的なアプリケーションを提供していただきありがとうございます!

  • アンブラー、APとバロー、HGとブラウン、CMとバーストル、RMとポプルストーン、RJ、コンピューター制御アセンブリ用の汎用システム、人工知能6 129–156、1975。doi:10.1016 / 0004-3702(75)90006- 5

変数値の割り当てのセットは、部分割り当てと呼ばれます。変数値の割り当てを(変数、値)タプルとして書くことができます。部分的な割り当ては、変数から値への単なる関数です。 小道具は、制約に違反しない部分的な割り当てです。同様に、小道具には、(サブセットとして)何らかの制約によって禁止されている部分的な割り当ては含まれていません。

最適化問題を表現する1つの方法は次のとおりです。

最大部分CSP:
入力: CSPインスタンス
出力: prop 基準:最大化| f |f
|f|

nnn1

kdkd

あなたの質問の2番目の部分も非常に興味深いように見えますが、私はそれに関連する仕事を知りません。


脚注:小道具という用語は、私の論文に由来しています。そのような部分的な割り当てが適切であり、ソリューションのセットをサポートするという考えを伝えることを意図しています。これはnogoodとは対照的です。nogoodは、ソリューションに拡張できない部分的な割り当てを説明するために受け入れられている用語です。「ノーグッド」という言葉は、1976年にリチャード・ストールマンとジェラルド・サスマンによって紹介されました。

  • ストールマン、リチャードM.およびサスマン、ジェラルドジェイ、コンピューター支援回路解析システムにおけるフォワード推論および依存性指向のバックトラッキング、MIT人工知能研究所メモNo. 380、1976年(PDF
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.