• 検索結果がありません。

第 4 章 RFID システムの提案と安全性検証

4.3 安全性モデルと定義

4.3.1 攻撃モデル

RFIDシステムの攻撃者は,サーバーとRFIDタグの通信を盗聴・改ざんしたり,RFIDタ グの物理的解析を行うなどにより,攻撃に有用な情報を入手できる.そのような情報は,攻撃 者がオラクルに問い合わせを行うことで入手するとして,攻撃モデルを定式化する.

相互認証プロトコルへの攻撃者のモデル化には,サーバーオラクル,タグオラクル,ランダ ムオラクルの3種のオラクルを用いる.タグから得られるすべての情報はタグオラクルT 出力で記述され,サーバーから得られるすべての情報はサーバーオラクル Sの出力で記述さ れる.また,ハッシュ関数の計算結果は,ランダムオラクルRの出力で記述される.つまり,

T,S, R利用して,攻撃者が攻撃により入手可能なすべての情報を表現することで,攻撃モデ ルを定式化する.

まず,我々のすべての攻撃モデルで共通に用いるT,S,Rを与える.

■サーバーオラクル S サーバーオラクルS は,相互認証プロトコルを実行する正直なサー バーの出力を攻撃者に与える.sidはセッションIDとし,Ssid は,セッションsidに対応し た振る舞いをするサーバーオラクルとする.攻撃者は,Ssid Sendクエリを送ることができ

る.Ssid は,SendクエリSend(∗)を受け取ると,正直なサーバーがセッションsidで(∗)を受 け取った場合と同じ処理を行い,その結果である値をサーバーの出力を攻撃者に返す.

また,Ssid は,sidでの Sの状態とし,sid で認証プロトコルを実行した結果,Ssidがタグ の認証に成功したらAccepted∈Ssidと設定されるとする.

Sは,S-Listを保持しており,セッションIDsidとSへの入出力の組(sid,Inputdata,Out putdata) を全て記録する.なお,S-Listは,定義8で,攻撃者のアドバンテージAdvFS IA を定義する ためだけに用いるリストであり,攻撃対象として管理する情報ではない.

■タグオラクルT タグオラクルT は,相互認証プロトコルを実行する正直なタグの出力を 攻撃者に与える.sidはセッションIDとし,Tsid は,セッションsidに対応した振る舞いをす るタグオラクルとする.攻撃者は,Tsid SendクエリとRevealクエリを送ることができる.

Tsid SendクエリSend(∗)を受け取ると,正直なタグがセッション sid で(∗)を受け取った 場合と同じ処理を行い,その処理の結果得られるタグの出力を攻撃者に返す.また,Tsid Revealクエリを受け取ると, Tsid はセッション sid で共有したセッション鍵 skID,sid を返す.

そして,攻撃者に与えた skID,sid を用いる全てのセッションと,それ以降の全てのセッション はRevealed状態に設定されるとする.

Tsidは,sidでのT の状態とする.sidで認証プロトコルを実行した結果,Tsidがサーバーの 認証に成功したらAccepted∈Tsidと設定され,sidRevealed状態である時,Revealed ∈Tsid

と設定されるとする.つまり,Tsidは,AcceptedRevealedの2ビットで構成される.

ま た ,T は ,T-List を 保 持 し て お り ,セ ッ シ ョ ン IDsid と T へ の 入 出 力 の 組 (sid,Inputdata,Out putdata) を 全 て 記 録 す る .T-List は ,定 義 7 で 攻 撃 者 の ア ド バ ン テージを定義するためだけに使用する.

■ランダムオラクルHi ランダムオラクルHiは,理想化されたハッシュ関数を表現したオラ クルである.OMHSOプロトコルでは,3種のハッシュ関数:H0,H1,H2を使っている.

4.3.2 安全性要件の定義

我々は,Forward-secureタグ成りすまし不可能性,Forward-secureサーバー成りすまし不可

能性,Forward-secureタグ識別不可能性,非同期耐性の4つの安全性を定義する. κ:はセキュ

リティパラメタであり,鍵付ハッシュ関数の鍵長をあらわすとする.

定義6 (Forward-secureタグ識別不可能性) :挑戦者は,b∈ {0,1}をランダムに選択し,Setup アルゴリズムとKeyGenアルゴリズムを実行し,生成したシステムパラメタ,共有鍵,IDをS

とT に与え,攻撃者AFI にシステムパラメタとIDを与える.AFI は,ST に任意の順番 で問い合わせを行い,ランダムオラクルにも任意の順序で問い合わせを行う.そして,AFI は 任意のタイミングで,任意のsidに対応するTsid に,Testクエリを送る.もしb= 0ならば,

T は,セッションsidに対応する通常の処理を行い,その結果をAFI に返す.b=1ならば,

T は,タグが出力しうる値の集合からランダムに値を選択し,その値をAFI に返す.AFITestクエリを送った後も,AFI は,ST に任意の順序で問い合わせを行う.最終的に,AFI

は,b˜ ∈ {0,1}を出力して停止する.もしb˜ = bかつ,TsidRevealedでなければ,AFI の勝 ちとし,AFI のアドバンテージを

AdvAFI = Pr







sp← S etup(κ)

b˜ =b∧ (sk,ID)KeyGen(sp) Revealed <Tsid b← {R 0,1},

b˜ ← AS,TFI (sp,ID)





. とする.

あらゆる確率的多項式時間Turing機械Aに対して,AdvFIAが無視できるほど小さいとき,

そのRFID認証プロトコルはForward-secureタグ識別不可能性を満たすという.

この安全性要件は,直感的には,いかなる攻撃者でもタグの出力と乱数列を区別できないこ とを意味している.つまり,いかなる攻撃者でも,タグの出力からは全く情報が得られず,対 応する共有鍵を入手しない限りタグを区別することができない.よって,Forward-secureタグ 識別不可能性は,システムの出力を全て盗聴したとしても,特定のタグを追跡できない追跡不 可能性を保証している,

OMHSOプロトコルは,もし,攻撃者がサーバーからタグへの送られる情報を全て遮断する

などして,タグによるサーバーの認証を失敗させると,タグは共有鍵の更新を行わないよう設 計されている.言い換えると,攻撃者は,容易に,タグの共有鍵更新を妨害し,同じ共有鍵を 使用させることができる.もし,タグが解析され,その共有鍵が漏えいしたとすると,共有鍵 を所持していれば,通信履歴からタグを特定することができるため,そのタグは追跡をうける.

第4.1.2節で述べたように,現状では,鍵の更新が妨害された場合に追跡を防ぐ実用的な対

策法が存在しない.このため,鍵の更新が妨害された場合の追跡不可能性は,本論文の議論の 対象外とするが,タグから共有鍵が漏えいする場合には,そのタグが攻撃者の手に渡っている ので,追跡攻撃の状況にはならないと考えられる.

我々は,共有鍵が更新された場合の追跡不可能性を考える.大雑把に言うと,鍵更新前の タグの出力と,鍵更新後のタグの出力を対応付けられないことは,タグの出力が乱数列と区 別できなければ保証されるので,上で定義した識別不可能性を満たせば十分なことがわかる.

OMHSOプロトコルは,鍵更新回数の上限に何ら制約をおかず,検証のコストもほぼ維持した ままで,上記の性質を満たしている.さらに,鍵更新回数の上限がないことで,文献[61]で指 摘されたような DoSに似た攻撃を受けたとしてもタグの破壊を防ぐことができ,システムへ の被害を抑えることができる.

定義7 (Forward-secureタグ成りすまし不可能性) :挑戦者は,SetupアルゴリズムとKeyGen アルゴリズムを実行し,生成したシステムパラメタ,共有鍵,IDをST に与え,攻撃者 AFI にシステムパラメタとIDを与える.攻撃者AFT I は,ST に任意の順番でアクセスす る.ランダムオラクルモデルの場合,AFT I は,ランダムオラクルにも任意の順番でアクセス する.AFT I 任意のタイミングで,任意の sidに対応するSsid に,Testクエリを送る.Ssid は,セッションIDsid に対応する通常の処理を行い,AFT I と認証プロトコルを実行する.

もし,SsidAcceptedであり,TsidRevealedでなく,Ssid T に問い合わされていな ければ,AFT I の勝ちとする.AFT I のアドバンテージを以下のように定義する.

AdvAF T I = Pr





Accepted∈Ssid∧ sp←S etup(κ)

Revealed <Tsid∧ (sk,ID)KeyGen(sp) Ssid <T-List sid ← AS,TFT I(sp,ID)



.

あらゆる確率的多項式時間Turing機械Aに対して,AdvFTIAが無視できるほど小さいとき,

その相互認証プロトコルは,Forward-secureタグ成りすまし不可能性を満たすという.

Forward-secureタグ成りすまし不可能性は,いかなる攻撃者であっても,共有鍵を持ってい

なければ,サーバーと認証プロトコルを実行し,受理されることは無いことを意味している.

つまり,いかなる攻撃者でも,共有鍵がなければ正しいタグのように振る舞うことが出来ない ことを意味している.よって,Forward-secureタグ成りすまし不可能性は,タグの共有鍵を知 らなければ,タグに成りすますことや,タグを偽造することは不可能であることを保証して いる.

定義8 (Forward-secure サーバー成りすまし不可能性 ) : 挑戦者は,Setup アルゴリズムと

KeyGenアルゴリズムを実行し,生成したシステムパラメタ,共有鍵,IDをST に与え,

攻撃者AFI にシステムパラメタと IDを与える.攻撃者AFS I は,ST に任意の順番でア クセスする.ランダムオラクルモデルの場合,AFS I は,ランダムオラクルにも任意の順番で アクセスする.AFS I 任意のタイミングで,任意のsid に対応するTsid に,Testクエリを送 る.T は,セッションID sidに対応する通常の処理を行い,AFS I と認証プロトコルを実行 する.もし,TsidAccepted であり, TsidRevealedでなく,Tsid Sに問い合わされて

いなければ,AFS I の勝ちとする.AFS I のアドバンテージを以下のように定義する.

AdvAFS I =Pr



 Accepted∈Tsid∧ sp←S etup(κ)

Revealed<Tsid∧ (sk,ID)KeyGen(sp) Tsid <S-List sid ← AS,TFS I(sp,ID)



.

あらゆる確率的多項式時間Turing機械Aに対して,AdvFSIAが無視できるほど小さいとき,

その相互認証プロトコルは,Forward-secureサーバー成りすまし不可能性を満たすという.

Forward-secureサーバー成りすまし不可能性は,いかなる攻撃者であっても,共有鍵を持っ

ていなければ,タグと認証プロトコルを実行し,受理されることは無いことを意味している.

つまり,いかなる攻撃者でも,共有鍵がなければ正しいサーバーのように振る舞うことが出来 ないことを意味している.よって,Forward-secureサーバー成りすまし不可能性は,サーバー の共有鍵を知らなければ,サーバーに成りすますことや,サーバーを偽造することは不可能で あることを保証している.

定義9 (非同期耐性)挑戦者は,SetupアルゴリズムとKeyGenアルゴリズムを実行し,生成 したシステムパラメタと共有鍵とIDをST に与える.次に,攻撃者ADS は,ST に任 意の順序で問い合わせを行う.それ以前のセッションがいかなる結果であったとしても,ある セッションでST が正しく通信できたとき,圧倒的確率で相互認証に成功するならば,そ の相互認証プロトコルは非同期耐性を満たすという.

この安全性要件は,攻撃者がそれ以前のセッションでいかなる攻撃を行ったとしても,最新 のセッションで通信が正しく行われたならば,そのプロトコルの最新のセッションは正しく実 行されることを保証している.つまり,この安全性要件は,Juelsらが指摘した攻撃[61, 62]

への耐性を意味している.