research

ハッシュ関数の設計理論

Abstract

ランダムオラクル証明法(RO 証明法) は暗号学的なハッシュ関数を用いた暗号システムの安全性を保証する最も重要な証明方法である. ハッシュ関数を部品とする暗号アルゴリズムをCと書き, 具体的なハッシュ関数HP をC に組み込んだCHP を暗号システムと呼ぶ. RO 証明法を用いて暗号システムCHP のG-安全性を証明するとき,ハッシュ関数HP を理想化したランダムオラクル(RO) を用いる暗号システムCRO のG-安全性を証明する. 一般には,RO をHP に置き換えたCHP のG-安全性が保証されていない点がRO 証明法の問題である.ハッシュ関数HP は入力長が任意長の関数で, 入出力長固定のプリミティブP と, P を用いて任意長の入力を規定長の出力に変換する定義域拡張構造H から構成される. すなわち, HPはH とP から構成されているので, 入力に対して規定長のランダムな値を出力するRO とは異なる動作をする.Indiff. 理論(Indifferentiability 理論) は,P を理想化して, CRO のG-安全性からCHP のG-安全性を保証する理論で, 「ハッシュ関数HP がIndifferentiable From RO(IFRO)(HP @ ROと書く)」ならば,SS(シングルステージ)という制約条件はあるものの,任意のSS の安全性Gs と任意のC に対し,「CRO がGs-安全性ならばCHP もGs-安全性となる(CHP ?GsCRO と書く)」ことを保証する. IFRO 安全性はP を理想化してP の構造を取り除くHP に注目する安全性, すなわち, H の構造に対する安全性である.IFRO 安全が提案されて以降, Sponge 構造やChopMD 構造など, 多くのIFRO 安全な定義域拡張構造が提案されている.また, 次世代標準ハッシュ関数として採用されることが決まっているSHA-3 はSponge 構造を採用しており, IFRO 安全性は定義域拡張構造の標準的な安全性の概念となっている.MD (Merkle-Damg?ard) 構造はIndiff. 理論が提案される以前に設計された構造で, SHA-2ハッシュ関数族であるSHA-256 とSHA-512 の定義域拡張構造に採用されているが, MDP ?@RO となることが知られている. すなわち,∃Gs, ∃C : CMDP ??GsCRO (CRO はGs-安全性を満たすがCMDP はGs-安全性を満たさない)となる.Indiff. 理論は, 任意のSS の安全性をカバーするものの, 任意のMS(マルチステージ)の安全性Gm をカバーしない. すなわち,∃Gm, ∃HP s.t. HP @ RO ∧ CHP ??GmCRO となる反例が知られている.一方, ハッシュ関数に求められる実装に関する要件として, ハッシュ関数は高速に計算できることが求められる. 今後, SHA-3 は多くの暗号システムで実装されるハッシュ関数であり,Sponge の高速化はSHA-3 を用いる暗号システムの高速化につながるため重要な研究テーマである.また, ハッシュ関数に求められる実装に関する要件として, ハッシュ関数のプログラムサイズや回路サイズは小さいことが好ましい. プログラムサイズや回路サイズを小さくすることができる定義域拡張構造H として,ブロック暗号(例えば,AES)をプリミティブとする倍ブロック長定義域拡張構造がある.ブロック暗号とハッシュ関数を両方実装する場合,ブロック暗号を共通化して使うことができるなら,実装サイズを小さくすることができる.既存研究では, IFRO 安全性より弱い安全性である衝突困難性を満たすH は提案されているものの,IFRO 安全なH は提案されていない.ところで, 新しいハッシュ関数を設計するために, 既存のハッシュ関数の強力な攻撃法の限界点を見極めることも重要である. 差分攻撃法はハッシュ関数の強力な攻撃法の1 つであるが, Message Modification という新しい攻撃技法が2004 年にSHA-0 とSHA-1 の差分攻撃法に適用されて, ハッシュ関数の安全性の研究が活発になった. 今後, この攻撃法の限界点を見極めることは, ハッシュ関数を設計する立場からも重要である.本論文ではハッシュ関数の設計を目標として, Indiff. 理論に関して次の5 つの研究課題を設定して研究する.1. SS の安全性に対するMD の救済.2. MS の安全性に対するIFRO 安全なH の救済.3. Sponge の高速化.4. P としてブロック暗号を用いたIFRO 安全性なH の提案.5. Message Modification の改良.研究課題1 について. ∃Gs, ∃C : CMDP ??GsCRO となることが知られているものの,重要なG?s と, 実用的なC0 に対して,CMDP0??G?sCRO0 となるとは限らない. また,MD の重要性からCMDP0 がG-安全性を満たすことが望ましい.本研究では,IFRO 安全性を弱めた安全性「Indifferentiable fromWeakened RO(IFWRO)」を考えて, 以下のことを示す.? MDP @ WRO となるWRO を定義する. WRO が定義できると, Indiff. 理論より,∀Gs, ∀C : CMDP ?GsCWRO が保証できる.? 次に,重要なG?s と実用的なC0 に対し,個別にCWRO0 がG?s -安全性を満たすことを示す.? 以上の2 点から, CMDP0 のG?s -安全性を保証する.研究課題2 について. ∃Gm, ∃C, ∃HP s.t. HP @ RO ∧ CHP ??GmCRO となることが知られているものの,重要なG?m と実用的なC0 に対して,CHP0??G?mCRO0 となることは限らない. また,Sponge とChopMD の重要性から,H ∈ {Sponge, ChopMD}, 重要なG?m, 実用的なC0 に対して,CHP0?G?mCRO0 となっていることが望ましい.Reset Indifferentiability (Reset Indiff.) 理論はMS の安全性をカバーし, 「ハッシュ関数HP がReset Indifferentiable from RO (RIFRO) (HP @r RO と書く)」ならば, 「∀Gm, ∀C :CHP ?GmCRO となる」ことを保証する. 一方, H ∈ {Sponge, ChopMD} はHP ?@r RO となることが知られている.本研究では,RIFRO 安全性を弱めた「Reset Indifferentiable from WRO (Weakened RO)」を考えて, 以下のことを示す.? ∀H ∈ {Sponge, ChopMD} に対して, HP @r WRO となるWRO を定義する.WROが定義できると, Reset Indiff. 理論より, ∀Gm, ∀C : CHP ?GmCWRO が保証できる.? 次に, 重要なG?m と実用的なC0 に対し,個別にCWRO0 がG?m-安全を満たすことを示す.? 以上の2 点を示して, CHP0 がG?m-安全を満たすことを保証する.電気通信大学201

    Similar works