GRADUATE RESEARCH PROJECT LAB

LLM 敵対的攻撃とセキュリティ機構

酒井 和哉

酒井 和哉

(米)オハイオ州立大学より Ph.D. を取得。2014年より東京都立大学にて教鞭を執り、現在は准教授を務める。 専門はネットワークセキュリティ、AIセキュリティ、及び分散コンピューティング。 2016年にIEEE Computer Society Japan Chapter Young Author Awardを受賞。 世界水準の学術的バックボーンを基盤に、次世代のセキュリティエンジニア・研究者の育成に注力している。

研究室:日野キャンパス 2号館 802室

Web:https://kazuyasakai.github.io/

2. プロジェクトの概要

OBJECTIVE

深層学習(DNN)の急速な普及に伴い、モデルの脆弱性を突く「敵対的攻撃(Adversarial Attacks)」の脅威が深刻化している。 本プロジェクトでは、入力データへの微細な摂動がモデルの推論結果に与える影響を分析し、 攻撃の検知およびモデルの堅牢化(Robustness)を実現する技術を確立することを目的とする。

3. 事前準備とプロジェクト内容

PREPARATION

開発環境: WindowsでもMacbookでも構いません。Anacondaに頼らず、Pythonの仮想環境(venv)でシンプルに構築します。

必要な知識: Pythonの基礎知識。AIやセキュリティの深淵は、この航海の中で学びます。

CONTENTS
  • Python仮想環境の構築
  • 学習済みモデルのロードと推論
  • FGSM等による敵対的攻撃
  • 検知器(Detector)による防御
  • デジタル署名による真正性保証
  • Tkinterを用いたGUIアプリ開発

4. 脆弱性分析・環境構築【1ヶ月目】

研究の目的と脆弱性分析の概要

本フェーズでは、深層学習(DNN)モデルに対する「敵対的摂動(Adversarial Perturbation)」の影響を定量的に評価するための基盤を構築する。 具体的には、学習済みモデルに対し、FGSM(Fast Gradient Sign Method)等の勾配に基づいた攻撃手法を適用し、モデルの推論結果がどのように変化するか(誤認識率の変化)を分析する。

環境構築の基本方針: Anaconda等のパッケージマネージャに依存せず、Python標準の 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

1. ログの保存(JSON形式)

実験結果は、後続の「検知器実装」の教師データとして利用するため、以下のコマンドを用いてJSON形式で構造化して保存すること。

# 実行例:イプシロンを指定して結果を記録
$ python step1_adversarial_attack.py --eps 0.1 --output result_1.json

2. 調査対象とする ε (イプシロン) の値

以下の7つの強度において攻撃を実行し、モデルの推論精度(Accuracy)がどのように遷移するかを調査せよ。

ε 値 攻撃の強度と視認性 分析のポイント
0.00 ベースライン(攻撃なし) クリーンな状態での正解率を計測。
0.01 ~ 0.05 微細な摂動 人間には判別不能。AIがいつ誤認を始めるか。
0.10 標準的な攻撃 薄らとノイズが乗る。今回の演習の基準値。
0.20 ~ 0.30 強攻撃(高ノイズ) 画像がザラつき、人間でも違和感を覚える。

3. 達成目標と成果物

5. 防御(検知)ロジックの実装【2ヶ月目】

本フェーズでは、1ヶ月目に実証した敵対的摂動(Adversarial Perturbation)を「異常」として検知する防御アルゴリズムを構築する。 未知の入力が「クリーン」か「攻撃」かを判定するバイナリ検知器(Detector)の実装が目標である。

防御の鉄則:
「完璧な防御は存在しない。重要なのは、正常な運用を妨げず(低誤検知率)、かつ攻撃の試みを最大限に捕捉する(高検知率)最適な閾値を見極めることにある。」

1. 検知手法:再構成誤差(Reconstruction Error)

入力画像に対して特定の変換(平滑化、圧縮、あるいはAEによる再構成)を施し、変換前後での画素値の乖離(L2ノルム等)を算出せよ。 攻撃画像は正常画像よりも再構成時の誤差が大きくなる特性を利用し、閾値 τ による判定を行う。

2. 評価指標の定義

指標 定義 セキュリティ上の意味
True Positive (TP) 攻撃を正しく「攻撃」と判定 検知成功。インシデント対応の起点。
False Positive (FP) 正常を誤って「攻撃」と判定 過検知。正当なユーザーを拒絶するリスク。
Precision / Recall 適合率と再現率 検知システムの信頼性と網羅性を表す。

3. 達成目標と成果物

6. 安全な認証プロトコルの構築【3ヶ月目】

本プロジェクトの最終段階として、これまでに開発した「検知ロジック」を、実際のシステム運用を想定した「認証プロトコル」へと統合する。 単なる検知で終わらせず、不正な入力を物理的に遮断し、その足跡を監査ログとして記録する堅牢なシステムを完成させよ。

セキュリティ・バイ・デザイン:
「優れたシステムは、攻撃を受けてから対処するのではない。攻撃がAIの心臓部(推論エンジン)に触れることさえ許さない設計(プロトコル)によって守られるのである。」

1. 実装ミッション:SecureAILoginProtocol

提供されたスケルトンコードの verify_request メソッド内を完成させ、以下の「多層防御」を実現せよ。

2. 感度分析と最適化(最終レポート課題)

攻撃強度 ε と検知閾値 τ の相関関係を実験により明らかにせよ。

実験項目 評価の観点 目標
ε スイープ実験 攻撃がどの程度「微細」になると検知をすり抜けるか? システムの防御限界を特定する。
τ 最適化実験 正常なアクセスを誤認(FP)せず、攻撃を逃さない(FN)境界線はどこか? 運用上のベストプラクティスを提案する。

3. 達成目標と成果物

07. 統合評価システムの構築(4ヶ月目)

本プロジェクトの最終月として、これまでの個別技術(攻撃・検知・プロトコル)を統合し、AIセキュリティの「安全性」を客観的なデータで証明する評価システムを完成させる。

1. セキュリティ・パフォーマンスマップの作成

攻撃強度 ε と検知閾値 τ の全組み合わせを自動シミュレーションする SecurityEvaluator クラスを実装し、以下の「ヒートマップ」を出力せよ。

2. 達成目標と成果物(プロジェクト修了要件)