OSQZSS

オープンソース準天頂衛星(QZSS)受信機

Galileo Open Service Authentication

2017-03-29 10:56:15 | 雑記
暗号化されている軍用信号とは異なり,オープンサービスのGNSS信号は
誰でも自由に無償で使うことができます.その反面,信号の仕様が
公開されていることから,偽物の信号によるspoofingの危険性が
懸念されています.

Gigazine: モスクワ市内で不可解なGPSミステリーが発生

オープンサービスのspoofing対策には,いくつもの技術が提案されています.
そのひとつに,航法メッセージに電子署名を付加して信号を認証するNMA
(Navigation Message Authentication)があります.

これまでは研究者による提案レベルだったのですが,GalileoのE1-B信号に
NMAが実装されることが決定したようです.

GPS World: Galileo signals will become more difficult to falsify

この電子署名のプロトコルとして,TESLA(Timed Efficient Stream
Loss-Tolerant Authentication)という共通鍵暗号が採用されています.
専門外で初めて聞く技術でしたので,どのようなものか調べてみました.

 (クリックで拡大)

TESLAの特徴は,one-way key chainと呼ばれる暗号化の鍵の生成と
その公開にあります.この鍵は,まず将来に公開される鍵(Kn)から
ある鍵生成関数(F)を使い生成されます.鍵生成関数は一方向性の
関数であり,生成された鍵から元の鍵を推測することは困難です.

TESLAでは,生成された順番とは逆に鍵を公開します.ここでは,
K0がすでに公開済みとします.

次に,K0の前の鍵であるK1を使い,航法メッセージ(NAV)から
電子署名(MAC: Message Authentication Code)を生成します.
Galileo衛星からは,航法メッセージと一緒に,この電子署名が
受信機に送信されます.

この時点で攻撃者が偽物のspoofing信号を生成しようとしても,
すでに公開済みのK0からK1を推測することが困難であるため,
電子署名を生成することができません.

その後,電子署名を生成した鍵であるK1がGalileoから送信され,
ユーザに公開されます.受信機では,まずこの鍵が本物であるか
どうかを,すでに公開されているK0から鍵生成関数を用いて確認
します.次に,K1を用いて保持している航法メッセージから
電子署名を生成し,それを受信した電子署名と比較することで,
受信信号(正確には受信した航法メッセージ)を認証します.

TESLAの特徴として,広く利用されているRSAやECDSAといった
技術より,同レベルのセキュリティを確保するための電子署名の
ビット数が少なくてすむそうです.しかし,電子署名を受信した
後に共通鍵の公開を待たなければならないため,認証に遅れが
生じてしまう欠点もあります.
ジャンル:
ウェブログ
コメント (2)   この記事についてブログを書く
この記事をはてなブックマークに追加
« バイオロギング | トップ | firefly binary format »
最近の画像もっと見る

2 コメント

コメント日が  古い順  |   新しい順
Unknown (Artyom)
2017-03-29 18:41:36
This method can help against GNSS-simulator spoofers. But if spoofer uses some kind of signal retransmition with fake delays? If I retransmit signal then signature will be correct, isn't it?
Re: Unknown (osqzss)
2017-03-29 22:22:06
You're right. It is still vulnerable to replay attacks.

コメントを投稿

雑記」カテゴリの最新記事

関連するみんなの記事

トラックバック

この記事のトラックバック  Ping-URL