Skip to content
KitploitKITPLOIT
ツールエクスプロイトブログ
Log in
提出
ツールエクスプロイトブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

フィードお問い合わせプライバシー© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
qai2026-fgsm-transfer — QAI 2026論文「FGSM攻撃のシミュレーションからIBM量子ハードウェアへの転移可能性」に関するコードと結果。 | Kitploit
ツール/GitHubGitHub/xeeshanajmal/qai2026-fgsm-transfer
ネットワークセキュリティ機械学習侵入検知論文と研究AIセキュリティ敵対的攻撃
GitHubxeeshanajmal/qai2026-fgsm-transfer

qai2026-fgsm-transfer

QAI 2026論文「FGSM攻撃のシミュレーションからIBM量子ハードウェアへの転移可能性」に関するコードと結果。

リポジトリを見る
1301ヶ月前未レビュー

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

ネットワーク侵入検知のための変分量子分類器の敵対的ロバスト性

論文 FGSM Attack Transferability from Simulation to Quantum Hardware in Network Intrusion Detection(IEEE International Conference on Quantum Artificial Intelligence (QAI) 2026)のコード、学習済みパラメータ、および結果です。

論文の数値は results/ 内の JSON ファイルから得られたものです。ここにある スクリプトがそれらのファイルを生成しました。

ファイル

src/        experiment scripts, numbered in run order
data/       preprocessed splits (the raw CICIDS2017 CSVs are not included)
models/     trained circuit parameters
results/    one JSON per experiment
figures/    the two figures in the paper

要件

python >= 3.10
pennylane == 0.44.1
qiskit-ibm-runtime
numpy, scipy, scikit-learn, pandas, matplotlib

pip install -r requirements.txt でインストールします。

スクリプト08と09は実機で実行されるため、IBM Quantumアカウントが必要です。.env.example をコピーして、自分のトークンとインスタンスを記入してください。その後、それらを環境変数として設定します。スクリプトは認証情報を環境からのみ読み取ります。

データ

生のキャプチャデータはここにはありません。Canadian Institute for Cybersecurity から CICIDS2017 をダウンロードし、Friday-WorkingHours-Afternoon-DDos.pcap_ISCX.csv を data/ に配置してください。使用するファイルはこれだけです。

01_preprocess.py は4つの .npy 分割を生成します。訓練データでは攻撃サンプル1134件、正常サンプル866件が得られるはずです。テストでは攻撃284件、正常216件です。件数が異なる場合は、キャプチャファイルが異なるか、scikit-learn のバージョンが異なることを意味します。

実行方法

スクリプトは番号順に実行してください。スクリプト04から07は、01、02、03が先に実行されている必要があります。

スクリプト生成物実行時間
01_preprocess.pydata/ 内の4つの分割数秒
02_train_narrow_margin.pymodels/clean_params.npy数秒
03_retrain_poisoning_and_noise.pyポイズニング済みおよびノイズありモデル、2つの結果ファイル数時間
04_epsilon_sweep.pyresults/epsilon_sweep.json1分未満
05_compare_attack_guidance.pyresults/gradient_vs_untargeted.json1分未満
06_finish_rq3.pyノイズなしベースラインとノイズ FGSM スイープ約1時間
07_margin_control.pyresults/margin_control.json数分
08_run_hardware_models.pyresults/hardware_clean_vs_poisoned.jsonキューの待ち時間
09_run_hardware_fgsm.pyresults/hardware_fgsm_adam.jsonキューの待ち時間
10_convert_hardware_results.pyresults/hardware_fgsm_cobyla.json数秒
make_figures.py2つの図数秒

遅いのはスクリプト03です。密度行列をシミュレーションするため、初期化1回あたり約16分かかります。3つのノイズレベルのそれぞれで、3つの初期化を訓練します。

ハードウェア用スクリプトは、すべての回路を1つのジョブで送信します。すると、ジョブ内のすべての回路が同じキャリブレーション状態を共有します。両スクリプトは --dry-run を受け付け、すべてをトランスパイルして回路の統計を表示しますが、何も送信しません。

どのファイルがどの結果を生成するか

論文結果ファイルスクリプト
表I、ポイズニングpoisoning_retrained.json03
表II、未ターゲット攻撃に対する FGSMgradient_vs_untargeted.json05
表III、シミュレーションとハードウェアの比較hardware_clean_vs_poisoned.json、hardware_fgsm_adam.json08、09
表IV、脱分極ノイズnoise_retrained.json、noise_fgsm_sweep.json、noiseless_400_baseline.json03、06
図1、ハードウェアへの転送hardware_fgsm_adam.json、hardware_fgsm_cobyla.json09、10
図2、ノイズ下での精度とマージン表IVと同じ03、06
セクションIV-A、クリーンベースラインclean_history.json、noise_retrained.json02、03
セクションIV-C、決定マージンepsilon_sweep.json04
セクションVI、マージン制御margin_control.json07

訓練済みモデル

ファイル内容
clean_params.npy狭マージン分類器、COBYLA、マージン0.07で精度86.8%
noisy_0.0_params.npy広マージン分類器、Adam、マージン0.54で精度92.2%
noisy_0.0_params_400.npy400サンプル部分集合で訓練したノイズなしモデル。ノイズレベル間の比較用
noisy_0.001_params.npy、noisy_0.01_params.npy、noisy_0.05_params.npy脱分極ノイズレベルごとに1つ
poisoned_5pct_params.npy、poisoned_10pct_params.npy、poisoned_15pct_params.npyラベル反転率ごとに1つ

ハードウェア実行

すべての実行は IBM Fez(156量子ビットの Heron r2 プロセッサ)を使用しました。回路あたり1024ショットで、Qiskit Runtime SamplerV2 経由です。トランスパイルは最適化レベル1で行いました。

各実行は同じ論理回路を送信しました。深さ20、2量子ビットゲート12個です。トランスパイルにより物理量子ビットにマッピングされるため、送信のたびに両方の数値が変わります。

結果スクリプト回路トランスパイル後の深さ2量子ビットゲート
クリーンおよびポイズニング済みモデルの精度0810010027
FGSM転移、広マージンモデル091508742
FGSM転移、狭マージンモデル以前のコード、09により置き換え400記録なし記録なし

狭マージン転移の実行は、このリポジトリ内のスクリプトより前のものである。 その出力は results/transferability_hw_50_expA.json であり、スクリプト10が 図が読み取る形式に変換する。この実行はスクリプト09と同じ回路と 同じ最適化レベルを使用した。

記録された2つの深さは異なっている。トランスパイラはヒューリスティックに よって物理量子ビットを選択するため、同じ回路でも各投入時に異なるマッピングとなる。 それでも両方の実行はシミュレーションと一致した。

再現できないもの

ハードウェアの結果は、その日のデバイスのキャリブレーション状態に依存する。 同じ回路を再度送信しても、異なるカウントが得られる。JSONファイルは デバイスが何を行ったかの記録である。

models/clean_params.npy は再生成できない。その初期パラメータは シード付きジェネレータではなく、グローバルなNumPy乱数状態から取得された。 02_train_narrow_margin.py は現在、初期化をシードするため、新しい実行は それらの間で再現可能である。しかし、それらは別の場所に到達し、そのばらつきは 大きい。確率的な目的関数に対する勾配不要のオプティマイザは、多数派クラスを 予測する状態に収束する可能性がある。スクリプトはそれが発生したときに その旨を出力する。

残りはシードされている。精度は初期化によって依然として変動するため、 スクリプトは単一の実行ではなく平均と標準偏差を報告する。論文の第VI節で その理由を説明している。

引用

@inproceedings{ajmal2026fgsm,
  author    = {Ajmal, Zeeshan and Halunen, Kimmo and Mau{\ss}ner, Marc
               and Reers, Volker and Khan, Arif Ali},
  title     = {{FGSM} Attack Transferability from Simulation to Quantum
               Hardware in Network Intrusion Detection},
  booktitle = {IEEE International Conference on Quantum Artificial
               Intelligence (QAI)},
  year      = {2026},
  note      = {To appear},
}

ライセンス

コードは MIT です。LICENSE を参照してください。

CICIDS2017 は Canadian Institute for Cybersecurity に由来し、同機関の 独自の条件に従います。本リポジトリでは再配布していません。

謝辞

本研究は Business Finland プロジェクト (24304955) SeQuSoS の支援を受けたものです。IBM Quantum サービスの利用に感謝します。ここで述べられた見解は 著者らのものであり、IBM または IBM Quantum チームの公式な方針 または立場を反映するものではありません。

ツールをダウンロード