Dynamic Software Birthmarks Based on API Calls

あらまし 本論文では,ソフトウェア盗用の発見・立証を効率的に支援するための動的バースマークを提案す る.動的バースマーク f(p, I) はソフトウェア pを入力 I で実行した場合の p の振舞いから得られる,p のもつ ユニークな特徴の集合である.ソフトウェア p, q が存在し,f(p, I) = f(q, I) であれば,q は pの盗用である疑 いが強い.本論文では,2 種類の動的バースマークを提案する.提案手法では,ソフトウェア実行時の API 呼 出し情報を,個々のソフトウェアの特徴として利用し,API呼出しの順序から実行系列バースマークを,個々の API の呼出し頻度から実行頻度バースマークをそれぞれ抽出する.この 2 種類のバースマークを 2 種類の実験 によって評価した.実験 1では,同じ用途の複数のアプリケーションに提案バースマークを適用した.その結果, オリジナルとその改変アプリケーションからは非常に類似したバースマークが得られること,全く独立に実装さ れたアプリケーションからは,全く異なるバースマークが得られることが分かった.実験 2 では,提案バース マークは,異なるコンパイラや最適化などに対して強い耐性をもつことが示された. キーワード ソフトウェア盗用,著作権保護,バースマーク,API 呼出し,動的解析