Slide 1

Slide 1 text

Foundations of Cryptography 2.4. One-Way Functions: Variations 4624520 岡留研究室M1 柴崎誉広 1

Slide 2

Slide 2 text

Contents 2.4.1. Universal One-Way Function 2.4.2. One-Way Functions as Collections 2.4.3. Examples of One-Way Collections 担当範囲は以下 2.4.4. Trapdoor One-Way Permutations 2.4.5. Claw-Free Functions 2.4.6. On Proposing Candidates 2

Slide 3

Slide 3 text

2.4.4.(P.58) Trapdoor One-Way Permutations 2.4.4.1. Definitions 2.4.4.2. The RSA (and Factoring) Trapdoor 2.4.4.では トラップドア置換を定義し、 よく使われる候補(i.e., RSA) を説明する 3 hard easy given t easy

Slide 4

Slide 4 text

2.4.4.1. Definitions 大まかにいうと... トラップドア置換は、一方向性関数の集合 であり、 インデックス に対する「トラップドア」が与えられると、 が効率的に逆計算される性質をもつもの • から のトラップドア を効率的に計算することはできない • 対応するペア を効率的に生成することはできる 4

Slide 5

Slide 5 text

2.4.4.1. Definitions 定義 2.4.4(トラップドア置換の集合) • 確率的アルゴリズム ∗ ∗ ∗ • は により出力されたペアの最初の要素 アルゴリズムの3つ組 は、次の二つの条件が成り立つとき、 強い(または弱い)トラップドア置換の集合と呼ばれる 1. アルゴリズムが一方向置換の集合を導くこと 2. トラップドアで逆計算が容易なこと 以降二つの条件を説明→ 5 ∗ ∗

Slide 6

Slide 6 text

2.4.4.1. Definitions アルゴリズムの3つ組 は、次の二つの条件が成り立つとき、 強い(弱い)トラップドア置換の集合と呼ばれる 1. アルゴリズムが一方向置換の集合を導くこと :三つ組 は強い(または弱い)一方向置換の集合を構成 すること。特に であること 6 定義 2.4.4(トラップドア置換の集合)

Slide 7

Slide 7 text

2.4.4.1. Definitions アルゴリズムの3つ組 は、次の二つの条件が成り立つとき、 強い(弱い)トラップドア置換の集合と呼ばれる 2. トラップドアで逆計算が容易なこと :ある(決定論的な)多項式時間アルゴリズム が存在し、 の範囲内のすべての に対して、およびすべての に 対して、 であること。 7 hard given t 定義 2.4.4(トラップドア置換の集合)

Slide 8

Slide 8 text

2.4.4.1. Definitions 二つの条件を緩める →二つの条件が圧倒的に高い確率で満たされるということ 具体的には… インデックス生成アルゴリズム が出力する のペアに対して、 が置換ではない(つまり非単射等)、または 2. がすべての に対して成り立たないもの が無視できる確率で存在することが許されるが、他方で、 ドメインサンプリングアルゴリズム(つまり、 )が対応する ドメイン上でほぼ一様な分布を生成することが要求される 8 𝑡: インデックス𝑖 に対するトラップドア 𝐷: 定義域 (入力)を 抜き出すアルゴリズム 定義 2.4.4(トラップドア置換の集合)

Slide 9

Slide 9 text

2.4.4.1. Definitions つまり、二つの許容事と一つの要求事をまとめると、定義2.4.4とは異なる 次の定義2.4.5ができる 定義 2.4.5(トラップドア置換の集合, 改定) ∗と とする。インデックスが に含まれる置換の 集合 ∈ ̅ とは、各 がそれに対応する 上で1対1の置換で あるものである。このような集合がトラップドア置換の集合であるとは、次の 5つの条件を満たす4つの確率的多項式時間アルゴリズム が存 在する場合を示す。 1. インデックスとトラップドアの選択 2. ドメイン内の選択 3. 効率的な計算 9 定義 2.4.4(トラップドア置換の集合)→定義 2.4.4(トラップドア置換の集合, 改定) 4. 効率的な評価 5. トラップドアを用いた逆計算

Slide 10

Slide 10 text

2.4.4.1. Definitions 1. インデックスとトラップドアの選択: すべての に対して以下が成り立つ 10 定義 2.4.5(トラップドア置換の集合, 改定) 𝐼̅ ⊆ {0,1}∗ 𝐼̅ ⊆ 𝐼̅ ∩ {0,1} 確率的アルゴリズム 𝐼: 1∗ → {0,1}∗ × {0,1}∗

Slide 11

Slide 11 text

2.4.4.1. Definitions 2. ドメイン内の選択: すべての および に対して、 であることを条件として、出力は 内で均一に分布する。 すなわち、すべての に対して、 したがって、 である。 一般性を失うことなく (| |)。 11 定義 2.4.5(トラップドア置換の集合, 改定) 𝐼̅ ⊆ {0,1}∗ 𝐼̅ ⊆ 𝐼̅ ∩ {0,1} 𝐷 : インデックス𝑖によって定義される 可能な入力値の範囲 𝐷 𝑖 :確率的アルゴリズム𝐷により 𝐷 から確率的に選ばれた値 𝑥: 𝐷 の個々の要素

Slide 12

Slide 12 text

2.4.4.1. Definitions 3. 効率的な計算: すべての および に対して、 12 定義 2.4.5(トラップドア置換の集合, 改定) 𝐼̅ ⊆ {0,1}∗ 𝐼̅ ⊆ 𝐼̅ ∩ {0,1} 𝐷 : インデックス𝑖によって定義される 可能な入力値の範囲 𝐷 𝑖 :確率的アルゴリズム𝐷により 𝐷 から確率的に選ばれた値 𝑥: 𝐷 の個々の要素 つまり… インデックス と を入力とするアルゴリズム が、 を入力とする写像 と等しくなる 確率が非常に高いこと

Slide 13

Slide 13 text

2.4.4.1. Definitions 4. 逆計算の難しさ: の出力の最初の要素の分布を表す確率変数 とし、 と定義する。次の二つで説明される。 • 標準/一様複雑性バージョン:すべての確率的多項式時間アルゴリズム 、 すべての正の多項式 、および十分に大きな に対して • 非一様複雑性バージョン:すべての多項式サイズの回路族 ∈ℕ 、 すべての正の多項式 、および十分に大きな に対して 13 定義 2.4.5(トラップドア置換の集合, 改定)

Slide 14

Slide 14 text

2.4.4.1. Definitions 5. トラップドアを用いた逆計算: すべての の範囲内で の任 意のペア 、およびすべての に対して、 つまり、トラップドア と による写像 を入力とする 逆計算アルゴリズム で が計算される確率は非常に高い 14 定義 2.4.5(トラップドア置換の集合, 改定) hard easy given t 𝐼: 1∗ → {0,1}∗ × {0,1}∗ 𝐼̅ ⊆ {0,1}∗ 𝐼̅ ⊆ 𝐼̅ ∩ {0,1} 𝑡: インデックス𝑖 に対するトラップドア

Slide 15

Slide 15 text

2.4.4.2. The RSA(and Factoring)Trapdoor 15 前述(2.4.3.1.)のRSAの集合はトラップドアの特性を持つ。 はインデックス とトラップドア を出力するとする。 逆計算アルゴリズム は と同様で、 。これより、以下が分かる これは より、 と等しい。 素数𝑃, 𝑄で𝑁 = 𝑃𝑄 𝑒: (𝑃 − 1)(𝑄 − 1)と互いに素 𝑒𝑑 ≡ 1 (mod (𝑃 − 1)(𝑄 − 1))) 𝑥:平文

Slide 16

Slide 16 text

2.4.4.2. The RSA(and Factoring)Trapdoor 16 前述(2.4.3.2.)のRabinの集合もトラップドアの特性を持つ。 トラップドアにより平方剰余の4つの平方根( )すべてを計算可能。 この場合、トラップドアは の素因数となる。 の素因数ごとに平方 根を抽出し、中国の余剰定理(複数の割り算のあまりに関する定理)に よって、 は計算される。 さらに、素数 が であると、 の平方根は で計算可能である。 素数𝑃, 𝑄で𝑁 = 𝑃𝑄

Slide 17

Slide 17 text

2.4.5.(P.60) Claw-Free Functions 2.4.5.1. The Definition 2.4.5.2. The DLP Claw-Free Collection 2.4.5.3 Claw-Free Collections Based Factoring 17 = 2.4.5.では クローフリー関数を定義し、 その集合を説明する。 claw を見つけるのが困難な関数

Slide 18

Slide 18 text

2.4.5.1. Definitions 大まかにいうと...クローフリーの集合は • 関数の計算が容易 • 二つの異なる関数が同じ値域 • 「クロー」を見つけることが困難 「クロー」…二つの異なる関数の出力が同じだが、異なる原像(入力)のペア 18 = claw を見つけるのが困難な関数

Slide 19

Slide 19 text

2.4.5.1. Definitions 定義 2.4.6(クローフリー関数) 関数のペアのある集合が、インデックスの無限集合 、各 に対する 有限集合 と 、および と 上で定義されたそれぞれの関数 と から成る。このような集合が、クローフリーであるとは次の3つの条件 を満たす3つの確率的多項式時間アルゴリズム が存在する場合を示す。 1. サンプリング及び計算が容易 2. 同一の(写像の)値域分布 3. クローを見つけるのが困難 以降三つの条件を説明→ 19

Slide 20

Slide 20 text

2.4.5.1. Definitions 1. サンプリング及び計算が容易 :確率変数 は、 に値を持つとする。このとき、 各 および に対して、確率変数 は 上で一様に 分布し、 は各 に対して成り立つ。 2.同一の(写像の)値域分布 :インデックス集合 の各 に対して、確率変数 と は同一に分布する。 20 定義 2.4.6(クローフリー集合) ∗

Slide 21

Slide 21 text

2.4.5.1. Definitions 3.クローを見つけるのが困難 : をみたすペア を、インデックス のクローと呼ぶ。 をインデックス のクローの集合とし、すべての確率的多項式時間 アルゴリズム 、すべての正の多項式 、および十分に大きな に対して ここで、 は入力 に対するアルゴリズム の出力分布を表す確率変数である。 21 定義 2.4.6(クローフリー集合)

Slide 22

Slide 22 text

2.4.5.1. Definitions 1. サンプリング及び計算が容易 2. 同一の(写像の)値域分布 3. クローを見つけるのが困難 定義2.4.6の条件1と定義2.4.3の条件1は類似している。なお、 クローフリー関数の集合は強い一方向性関数の集合を生じる。 • クローフリーペアの置換の集合 の場合、確率変数 は 上で一様に分布し、 と は 上の置換となる。 22 定義 2.4.6(クローフリー集合) 定義 2.4.3(一方向性関数の集合) 1.サンプリング及び計算が容易 2.逆計算が困難

Slide 23

Slide 23 text

2.4.5.2. The DLP Claw-Free Collection 23 クローフリーの集合が、特定の計算困難性仮定の下で存在することを示す →素数の有限体に対する離散対数問題(DLP)が扱いにくいという仮定の 下で、示してみる インデックス集合は(P, G, Z)から成る • は素数 • は有限体内の元Pの原始元 • は有限体(Pの剰余類)の元 例 𝑃 = 17とすると 有限体𝔽 = {0,1, … , 16} G: 𝐺, 𝐺 , … , 𝐺 を𝑝で割った余りがすべて 異なり、その余りは1から𝑝 − 1を一巡する ここでいうG=3 Z: 0~16の任意

Slide 24

Slide 24 text

2.4.5.2. The DLP Claw-Free Collection 24 インデックス をもつ二つの関数は同じドメインをもち の集合に等しい。ドメインサンプリングアルゴリズムは この集合から均等に要素を選ぶ。関数としては以下で表せる。 二つの関数は であることが容易に分かる。実際、関数 , , は、セクション2.4.3.で示された , と一致する。 さらに、インデックス のクローを形成する性能は、基数 に 対して の に対する離散対数を見つける性能を導く。 ( が を導出するため)

Slide 25

Slide 25 text

2.4.5.2. The DLP Claw-Free Collection 25 したがって、無視できない割合のインデックス集合に対してクローを形 成する能力は、セクション2.4.3に提示されたDLPコレクションの逆計算 能力に相当する。言い換えれば、DLPの集合が一方向である場合、式 (2.13)で定義された置換のペアの集合はクローフリーとなる。 こういった集合は、容易に認識可能なインデックス集合をもたない、と いった追加の特性をもつ。というのも、素数に対する原始元を効率的に みつける方法が知られていないためである。 →以降は、DLPの困難性に関するわずかに強い仮定 を作り、素数に対する原始元を効率的にみつける 方法に関する説明

Slide 26

Slide 26 text

2.4.5.2. The DLP Claw-Free Collection 26 具体的には... DLPが乗法群のサイズの素因数分解(例: の素因数分解)が追加の入 力として与えられた場合に計算困難とする。この仮定により、インデッ クスの記述に の素因数分解を追加することが可能となる。これに より、インデックスが効率的に計算可能になる。(これは が におい ける原子元かどうか確かめる際、 を の素因数として、 ( )/ で 確かめられるから。) 例 で より、 で、 ・ の場合: , →5は原始元でない どの が原始元の可能性が低いかを効率的に絞り込める。

Slide 27

Slide 27 text

2.4.5.2. The DLP Claw-Free Collection 27 もし、 ( は素数)の場合、DLPの計算はさらに困難になるが、 が における原子元かどうか確かめるのは簡単になる。 ( と ( )/ を計算し、どちらも1と異なるかを計算する)

Slide 28

Slide 28 text

2.4.5.3. Claw-Free Collections Based on Factoring 28 ここでは、クローフリーの関数集合が存在することを、整数因数分解が 困難であるという仮定の下で示す。 準備1.平方剰余 以下の合同式が、解 を持つとき整数 は法 の平方剰余という 例: で、 より、 は法11の平方剰余 準備2. ルジャンドル記号 2つの整数 を引数にとる関数で( )とかく ( ) が で割り切れる が奇素数 を法として平方剰余 が奇素数 を法として非平方剰余

Slide 29

Slide 29 text

2.4.5.3. Claw-Free Collections Based on Factoring 29 ここでは、クローフリーの関数集合が存在することを、整数因数分解が 困難であるという仮定の下で示す。 準備3. ヤコビ記号 2つの整数 を引数にとり、 とかく。 と が互いに素で、 と素因数分解できるとき、以下のようにかく。 ( ) ( )( ) ( ) ただし、左辺はヤコビ記号で、右辺はルジャドル記号である。 例を次頁にしめす。

Slide 30

Slide 30 text

2.4.5.3. Claw-Free Collections Based on Factoring 30 準備4: ブラム数( に合同な二つの素数の積)の構造的特性を用い る(詳しくはAppendix)。特に、ブラム数 に対して以下が成り立つ。 • のヤコビ記号は+1 なお、 (resp., )を、 を法とする乗法群内の剰余で、ヤコビ記号 が+1(resp.,-1)の集合とする。 例:𝑝 = 3, 𝑞 = 7, 𝑁 = 21とする。 ・ − 1 mod 21 ≡ 20のヤコビ記号 を計算 1. = となる。 2. を計算 →𝑥 ≡ 20 𝑚𝑜𝑑3を計算→解なしなので = −1 3. を計算→同様→解なしなので = −1 4. よって、 = = −1 −1 = +1 • 各平方剰余の解の半数は ヤコビ記号1をもつ 例:𝑝 = 3, 𝑞 = 7, 𝑁 = 21とする。 ・平方剰余である𝑎 = 1は、𝑥 = 1,8,13,20の解をもつ ・𝑁に対する𝑥のヤコビ記号を計算 1. = 1, = −1, = −1, = 1 2. 確かに半数がヤコビ記号1を持つ

Slide 31

Slide 31 text

2.4.5.3. Claw-Free Collections Based on Factoring 31 ここでは、クローフリーの関数集合が存在することを、整数因数分解が 困難であるという仮定の下で示す。 前述の三つの条件の観点から見ていく。 1. サンプリング及び計算が容易 2. 同一の(写像の)値域分布 3. クローを見つけるのが困難

Slide 32

Slide 32 text

2.4.5.3. Claw-Free Collections Based on Factoring 32 1. サンプリング及び計算が容易 • 集合のインデックスは、同じ長さの二つの素数から成るすべての ブラム数で構成される • インデックス選択アルゴリズムは、入力に対して に合同 な二つの素数を選び、 を出力 • インデックス の二つの関数 と に対応するドメインは異なる • ドメインサンプリングアルゴリズム は、対応するドメインで平方剰余 に基づいて計算される

Slide 33

Slide 33 text

2.4.5.3. Claw-Free Collections Based on Factoring 33 2.同一の(写像の)値域分布 • 関数 と は、それぞれ異なるドメイン と で定義 されているが、 を法とした平方剰余の集合に均等に分布する • これにより、どちらの関数も値域内の要素を均等に扱うため、 同一の分布を持つ

Slide 34

Slide 34 text

2.4.5.3. Claw-Free Collections Based on Factoring 34 3.クローを見つけるのが困難 クローを見つける困難さは、2つの剰余が次の事実から生じる ・ かつ に対して、それらの平方がmod で等しい。 (つまり ) → -1 ( は乗法群)であるので であり、 と の最大公約数が の因数分解となる. →こういった を見つけるのが困難 参考: (resp., )を、 を法とする乗法群内の剰余で、ヤコビ記号が +1(resp.,-1)の集合とする。

Slide 35

Slide 35 text

2.4.5.3. Claw-Free Collections Based on Factoring 35 →よってクローフリーであるための三つの条件が満たされた。 1. サンプリング及び計算が容易 2. 同一の(写像の)値域分布 3. クローを見つけるのが困難 上述の集合は、2対1のペア(ただし、異なるドメイン上で定義)で構成 されているが、修正しクローフリーの置換の集合を得ることも可能

Slide 36

Slide 36 text

2.4.6.(P.63) On Proposing Candidates 2.4.6.の概要 一方向関数の実際の応用を考えると… ・ 効率的に評価可能 ・ 逆関数の計算が困難 な具体的な関数の提案が求められる。 36

Slide 37

Slide 37 text

2.4.6.(P.63) 一方向性関数が存在すると信じられているが、その単なる存在は実際の 応用には十分ではない。 • 応用には、具体的な関数の仕様が必要 → 一方向性関数の合理的な候補を提案しなければならない .合理的な候補とは? 関数を評価するための非常に効率的なアルゴリズムを持つ 重要:一方向性関数として提示される場合、ドメインサンプラーと関数 評価アルゴリズムは非常に効率的であるべき。 参考 ドメインサンプラー:特定のアルゴリズムが操作する入力値の集合から効率的にランダム な要素を選択するプロセス 関数評価アルゴリズム: 入力に対して特定の関数を実行し、出力するプロセス (RSAでいう、平文を暗号化するプロセス) 37

Slide 38

Slide 38 text

2.4.6.(P.63) 重要:一方向性関数として提示される場合、ドメインサンプラーと関数 評価アルゴリズムは非常に効率的であるべき。 しかし、提案する候補の逆計算の難しさが真剣に考慮されていない。 →候補は、「平均的に」逆関数を求めるのが難しいこと、そして「最悪の場合」 だけでなく、「平均」が候補関数によって決定されるインスタンス分布に関して 取られるべき インスタンス分布…関数が生成する出力値(または問題が提示するシナリオ)の分布 38

Slide 39

Slide 39 text

2.4.6.(P.63) この分野の歴史の中で、結果として良くない提案がなされた例… グラフ同型問題の推測される困難さに基づいた、(悪い)提案例 39 A B C D E A B C D E 置換 多項式時間で解けないとされているが、 頂点次数の統計を使って同型性を判定する方法等で逆計算が容易 →平均的な困難さを満たしていない 無向グラフ 無向グラフ

Slide 40

Slide 40 text

発表は以上です 40