(米)オハイオ州立大学より Ph.D. を取得。2014年より東京都立大学にて教鞭を執り、現在は准教授を務める。 専門はネットワークセキュリティ、AIセキュリティ、及び分散コンピューティング。 2016年にIEEE Computer Society Japan Chapter Young Author Awardを受賞。 世界水準の学術的バックボーンを基盤に、次世代のセキュリティエンジニア・研究者の育成に注力している。
深層学習(DNN)の急速な普及に伴い、モデルの脆弱性を突く「敵対的攻撃(Adversarial Attacks)」の脅威が深刻化している。 本プロジェクトでは、入力データへの微細な摂動がモデルの推論結果に与える影響を分析し、 攻撃の検知およびモデルの堅牢化(Robustness)を実現する技術を確立することを目的とする。
開発環境: WindowsでもMacbookでも構いません。Anacondaに頼らず、Pythonの仮想環境(venv)でシンプルに構築します。
必要な知識: Pythonの基礎知識。AIやセキュリティの深淵は、この航海の中で学びます。
本フェーズでは、深層学習(DNN)モデルに対する「敵対的摂動(Adversarial Perturbation)」の影響を定量的に評価するための基盤を構築する。 具体的には、学習済みモデルに対し、FGSM(Fast Gradient Sign Method)等の勾配に基づいた攻撃手法を適用し、モデルの推論結果がどのように変化するか(誤認識率の変化)を分析する。
venv を用いて、独立した再現性の高い仮想環境を構築すること。
| 対象OS | 実行コマンド・手順 |
|---|---|
| GitHub (bash) |
# 仮想環境の作成と有効化 $ git clone https://github.com/kazuyasakai/sakailab-grad-proj-llmsec.git $ cd sakailab-grad-proj-llmsec $ ls # Windowsの場合は dir # GitHub から直接ダウンロードまたは最新版に更新する場合 $ git pull origin main |
| macOS (bash) |
# 仮想環境の作成と有効化 $ python3 -m venv .venv $ source .venv/bin/activate # ライブラリの一括インストール $ pip install --upgrade pip $ pip install torch torchvision cryptography adversarial-robustness-toolbox matplotlib |
| Windows + WSL (Ubuntu) |
# venvパッケージの導入と構築 $ sudo apt update && sudo apt install python3-venv $ python3 -m venv .venv $ source .venv/bin/activate # ライブラリの一括インストール $ pip install --upgrade pip $ pip install torch torchvision cryptography adversarial-robustness-toolbox matplotlib |
実験結果は、後続の「検知器実装」の教師データとして利用するため、以下のコマンドを用いてJSON形式で構造化して保存すること。
# 実行例:イプシロンを指定して結果を記録 $ python step1_adversarial_attack.py --eps 0.1 --output result_1.json
以下の7つの強度において攻撃を実行し、モデルの推論精度(Accuracy)がどのように遷移するかを調査せよ。
| ε 値 | 攻撃の強度と視認性 | 分析のポイント |
|---|---|---|
| 0.00 | ベースライン(攻撃なし) | クリーンな状態での正解率を計測。 |
| 0.01 ~ 0.05 | 微細な摂動 | 人間には判別不能。AIがいつ誤認を始めるか。 |
| 0.10 | 標準的な攻撃 | 薄らとノイズが乗る。今回の演習の基準値。 |
| 0.20 ~ 0.30 | 強攻撃(高ノイズ) | 画像がザラつき、人間でも違和感を覚える。 |
本フェーズでは、1ヶ月目に実証した敵対的摂動(Adversarial Perturbation)を「異常」として検知する防御アルゴリズムを構築する。 未知の入力が「クリーン」か「攻撃」かを判定するバイナリ検知器(Detector)の実装が目標である。
入力画像に対して特定の変換(平滑化、圧縮、あるいはAEによる再構成)を施し、変換前後での画素値の乖離(L2ノルム等)を算出せよ。 攻撃画像は正常画像よりも再構成時の誤差が大きくなる特性を利用し、閾値 τ による判定を行う。
| 指標 | 定義 | セキュリティ上の意味 |
|---|---|---|
| True Positive (TP) | 攻撃を正しく「攻撃」と判定 | 検知成功。インシデント対応の起点。 |
| False Positive (FP) | 正常を誤って「攻撃」と判定 | 過検知。正当なユーザーを拒絶するリスク。 |
| Precision / Recall | 適合率と再現率 | 検知システムの信頼性と網羅性を表す。 |
本プロジェクトの最終段階として、これまでに開発した「検知ロジック」を、実際のシステム運用を想定した「認証プロトコル」へと統合する。 単なる検知で終わらせず、不正な入力を物理的に遮断し、その足跡を監査ログとして記録する堅牢なシステムを完成させよ。
提供されたスケルトンコードの verify_request メソッド内を完成させ、以下の「多層防御」を実現せよ。
predict を実行せずに即座に拒絶(REJECT)せよ。攻撃強度 ε と検知閾値 τ の相関関係を実験により明らかにせよ。
| 実験項目 | 評価の観点 | 目標 |
|---|---|---|
| ε スイープ実験 | 攻撃がどの程度「微細」になると検知をすり抜けるか? | システムの防御限界を特定する。 |
| τ 最適化実験 | 正常なアクセスを誤認(FP)せず、攻撃を逃さない(FN)境界線はどこか? | 運用上のベストプラクティスを提案する。 |
本プロジェクトの最終月として、これまでの個別技術(攻撃・検知・プロトコル)を統合し、AIセキュリティの「安全性」を客観的なデータで証明する評価システムを完成させる。
攻撃強度 ε と検知閾値 τ の全組み合わせを自動シミュレーションする SecurityEvaluator クラスを実装し、以下の「ヒートマップ」を出力せよ。