技術統括部の中尾です。中国からGPSをジャミングするジャマーを買ったのでためしてみました。
注意事項
日本では一部の例外を除き無線局の免許がないと電波を環境中に放出することができません。免許を受けずに無線局を開設若しくは運用した場合、1年以下の懲役又は100万円以下の罰金の対象となります。この記事が原因で処罰され、あるいは損害が発生したとしても一切責任は負いません。
GPSジャマー
購入したジャマーは、中国の通販サイトから送料込み1300円くらいで購入しました。仕様によると、動作周波数は1555-1580MHz, 1200-1300MHzで、10メートルほど効果があるとのことです。
電磁シールド
このようなデバイスを検証する場合、環境中に電波を放出しないようにシールドする必要があります。この検証では、以下のようなシールドテント内で行いました。念の為、ジャマーを動作させる際は、電磁シールドクロスで包みました。これにより、ジャマーの動作中であってもテント外のGNSS受信機が正常に測位できていたので、シールドは十分機能していると判断しました。
セットアップ
シールドテント内ではGNSS衛星からの信号は受信できませんので、テントの中と外にそれぞれアンテナを設置し、コンバイナーを使って受信機に入力しました。
左にある緑の基板がGNSS受信機、真ん中がコンバイナー、右側がバイアス・ティーです。バイアス・ティーは、テントの外のアンテナに内蔵されているアンプに電源を供給するために使用しています。上部にあるのがジャマー本体です。
被害者となる受信機は、u-blox社のMAX-M10Sを使用しました。この受信機は、L1帯のGPS、Galileo、GLONASS、QZSSが受信できるシングルバンド、マルチコンスタレーション対応のものです。
検証結果
受信機はL1帯のみ受信するタイプでなので、仕様通りであればジャミングに成功するはずです。下図に結果を示します。
MAX-M10Sは、ジャミング検出機能をもっていますので、測位に使用している衛星の数(上)、Fix状態(中)とともにジャミング検出結果(下)も示しています。
Fix状態は、緯度、軽度、高さを測位できている状態を3D Fix
、緯度、経度のみ測位できている状態を2D Fix
、測位できていない状態をNo Fix
と表しています。
ジャマーを動作させたのは60秒〜120秒の間です。ジャミングが始まると測位に使っている衛星数が急激に減少し、Fix状態が'No Fix'になり、ジャミングに成功していることがわかります。 また受信機は、ジャミングを検出できていました。
スペクトラム
では、ジャマーはどのような信号を発しているのでしょうか。 シールドテント内に、SDRを設置してスペクトラムを確認しました。gqrxで取得したスペクトル、スペクトログラムを以下に示します。
このスペクトログラムは、縦軸が時間、横軸が周波数、色が受信強度です。下部の青い部分がバックグラウンドレベルです。 ブロードにジャミング信号が出ているようです。サンプリング周波数20MHzで受信しましたが、ジャミング波全体を取得できていませんでした。 周波数をスキャンしたところ、1556〜1592MHzまで分布していました。GPS/QZSSのL1帯は1563〜1587MHz、GalilleoのE1帯が1559〜1591MHzなので、L1、E1帯をカバーしていることがわかります。 一方、仕様によると1200〜1300MHzもジャミングしているとのことでしたが、この範囲にジャミング波と思われるスペクトラムは確認できませんでした。
スペクトログラムをよく見ると細かい横縞があります。I/Qデータを確認してみましょう。
このスペクトログラムは、縦軸が周波数、横軸が時間、色が受信強度です。 斜めの線が見えることから、周波数が連続的に変化するチャープ信号であることがわかります。 ジャミングというと、ブロードなスペクトラムを持つ連続波が使われるものだと思っていたので、これは意外な結果でした。
まとめ
中国の通販サイトで買ったGPSジャマーをu-blox M10Sに対して試したところ、ジャミングに成功しました。しかし、受信機はきちんとジャミングを検出できていました。 ジャミング波のスペクトラムを確認したところ、チャープしていることがわかりました。
一方、ジャマーの仕様にあった、1200〜1300MHzにはジャミング波と思われるスペクトラムは確認できませんでした。
GNSSはナビゲーションだけでなく、高精度な時刻同期が必要な重要なシステムにも利用されていますが、1000円程度のデバイスでジャミングできることがわかりました。 私達が知らないうちに依存しているシステムは、実は脆弱なのかもしれません。