
物理層セキュリティのためのGNU Radioモジュール。深層学習によるチャネルフィンガープリンティング、特徴量量子化、およびSDR IQサンプルからのSHA3-512鍵生成を使用。
このGNU Radioモジュールは、深層学習モデルを使用した物理層セキュリティアプリケーション向けのチャネルフィンガープリンティング機能を提供します。
git clone <your-repo-url>/gr-PHYSEC.git
cd gr-PHYSEC
mkdir build
cd build
cmake ..
make -j$(nproc)
sudo make install
sudo ldconfig
gnuradio-companion
新しいカテゴリ [PHYSEC] と PHYSEC Fingerprint Block が表示されるはずです。
[PHYSEC] カテゴリを探すPHYSEC Fingerprint Block をドラッグアンドドロップするfrom gnuradio import gr
from gnuradio import PHYSEC
# Create decoupled PHYSEC blocks
spectrogram = PHYSEC.spectrogram_block(
vector_size=512,
sample_rate=1e6,
center_freq=2.4e9
)
feature_extractor = PHYSEC.feature_extraction_block(
model_path="/path/to/QExtractor.onnx"
)
feature_quantizer = PHYSEC.feature_quantization_block(
threshold_type="mean"
)
parity_generator = PHYSEC.parity_generation_block(
key_length=512
)
reconciler = PHYSEC.reconciliation_block(
key_length=512
)
privacy_amplifier = PHYSEC.privacy_amplification_block()
分離されたPHYSECブロックを使用した完全なフローグラフの例については、examples/decoupled_physic_example.grc を参照してください。
| パラメータ | 型 | デフォルト | 説明 |
|---|---|---|---|
model_path | string | - | ONNXモデルファイルへのパス |
| パラメータ | 型 | デフォルト | 説明 |
|---|---|---|---|
threshold_type | string | "mean" | 閾値方式: "mean"、"median"、または "zero" |
| パラメータ | 型 | デフォルト | 説明 |
|---|---|---|---|
key_length | int | 512 | パリティ生成のためのバイナリ鍵の長さ |
| パラメータ | 型 | デフォルト | 説明 |
|---|---|---|---|
key_length | int | 512 | 調整のためのバイナリ鍵の長さ |
| パラメータ | 型 | デフォルト | 説明 |
|---|---|---|---|
| パラメータ不要 | - | - | SHA3-512ハッシュを適用 |
フィンガープリント出力メッセージには以下が含まれます:
{
"fingerprint": "generated_hash_string",
"block_count": 123,
"sample_rate": 1000000.0,
"center_freq": 2400000000.0,
"spectrogram_size": 512
}
ONNXモデルは以下を満たす必要があります:
(batch, 204, 31) のスペクトログラムデータを受け入れるこのブロックは詳細なデバッグ情報を提供します:
spectrogram_block.py)を変更するgrc/ 内の対応するGRCブロック定義を更新するサンプルスクリプトを実行:
cd examples
python3 fingerprint_example.py
このプロジェクトはGPL-3.0-or-laterライセンスの下でライセンスされています。
問題や質問については:
| パラメータ | 型 | デフォルト | 説明 |
|---|
vector_size | int | 512 | スペクトログラム作成のためのFFTサイズ |
sample_rate | float | 1e6 | SDRサンプルレート(Hz) |
center_freq | float | 2.4e9 | SDR中心周波数(Hz) |