70 likes | 137 Views
Learn about PRIvacyEqqualizer for Software Testing (PRIEST) - a framework to maintain test effectiveness while protecting confidential data through data anonymization. Evaluate its impact on privacy, coverage, and quality of applications.
E N D
Testing Software In Age Of Data Privacy: A Balancing Act KunalTaneja Mark Grechanik RayidGhani Tao Xie 早稲田大学 岸研究室 権藤晃徳
背景・目的 • アプリケーションのテストをアウトソーシングする際、機密データは共有不可(法律で禁止) • 人工データで代用 • データ匿名化 テストカバレッジの悪化、 それに伴うアプリケーションの品質低下 機密データが特定のレベルで保護されている ことを保証しつつテストの有効性を維持を目標 … 例外パスの実行、特定パスの見逃し
提案アプローチ PRIvacyEqqualizer for Software Testing(PRIEST)を提案 • プライバシーフレームワーク データスワッピングによる元の値を保持した匿名化 • 推測匿名性プライバシーメトリクス 匿名化後のデータベースで達成される機密レベルを定量化 • データベースの値がアプリケーション動作にどのように影響を与えるかを判断 テストカバレッジへの影響を把握 以下の3つのアイデアに基づく メリット 機密レベルに応じた柔軟な匿名化 (最適なテストカバレッジを得ることが可能)
PRIESTアーキテクチャ Quasi Identifies (QIs) Annonymi-zation Algorithm ⑨ Static Analysis Engine ④ Attribute Ranking ⑤ Appli-cation ④ データベースの属性の使用方法を解析 ⑤ 属性がどれだけのステートメントに影響するかをランク付け ⑥ ユーザに表示 ⑦⑧ Privacy Goalに基づいてQIs(準識別子(データ保護のため匿名化すべき属性))を選択 ⑨⑩ QIsを匿名化アルゴリズムによってプライバシーレベルに応じて匿名化 ⑪⑫ 入力としてDBOをとり、DBAを出力 ⑥ ⑦ ④ ① ⑧ ⑥ ⑫ Privacy Goal ⑩ Schema and relations DBO ② ③ Schema Extractor DBA ⑪ 元データベース 匿名データベース
特色(推測匿名性メトリクス) 匿名化 Guessing Anonymityをもとに異なるメトリクスを提案 PM1:平均推測匿名性(例では1.75) PM2:特定の値m以上の推測匿名性の割合(例ではm=1で0.75) Unique records:一意に識別できるレコード数の割合 Nameを”***”で置き換え Ageにランダムノイズ 元データベース 匿名データベース ※Guessing Anonymity… 攻撃者が匿名レコードの元レコードを推測する ために必要な推測回数 Chirsの年齢が他に比べ 突出しており推測しやすいため 従来のk-匿名性などと違い、各レコードごとの匿名性を定量化する
評価 • 3つのオープンソースJavaプログラムとスペイン最大のスーパーマーケットの物流管理アプリケーションで評価実験 IC…最初のテストカバレッジ ETC…提案アプローチによる匿名データでの最悪のテストカバレッジの推定値 評価項目 RQ1:与えられた機密レベルでどれだけのテストカバレッジを得ることができるかRQ2:元データを異なる機密レベルのアプリケーションで使用する際、PRIESTはどれだけ有効か
評価 • 従来手法では最大80%のテストカバレッジの減少が確認されたが、本手法では最大でも26%減 • 機密レベルに応じたテストカバレッジや、各種メトリクス値を得ることができ、それに基づきユーザは柔軟な匿名化を行うことが可能 ※横軸はp=データを入れ替えた割合、縦軸は図名と同じ