+ All Categories
Home > Documents > 論文紹介 M. Abadi and P.Rogaway: Reconciling...

論文紹介 M. Abadi and P.Rogaway: Reconciling...

Date post: 06-May-2019
Category:
Upload: trandiep
View: 221 times
Download: 0 times
Share this document with a friend
56
M. Abadi and P.Rogaway: Reconciling Two Views of Cryptography (The Computational Soundness of Formal Encryption) J. Cryptology (2002) 15: 103-127 論文紹介
Transcript

M. Abadi and P.Rogaway: Reconciling Two Views of

Cryptography (The Computational Soundness of Formal Encryption)

J. Cryptology (2002) 15: 103-127

論文紹介

概要:(暗号)メッセージの形式的表現を計算論的に正当化

• 形式的(Formal)– メッセージは形式的・代数的“表現”

– プロトコルの形式的解析に有用

– 具体的実現とギャップがある

• 計算論的(Computational)– メッセージはビット列

– 厳密かつエレガント

– 確率と計算量理論が必要

Formal View

形式的表現(メッセージ)

• 形式的表現の集合Exp:

• 構文的同一性を“=”で表す

Symmetric

次のような等価性を定義したい

• 等価性:「復号できる部分が等しい」

• 様相論理の意味を与えるのに便利:

「ある参加者からは同じに見える」

復号できない部分(ランダムな文字列に見える)

Entailment

• M ` N : MからNが得られる

Entailmentの定義

パターン

• パターンの集合Pat:

• 復号できない部分を�で表す

表現からパターンへの変換

• p(M, T):鍵の集合Tを知っているとして、

表現Mの復号できない部分を�に書き換える

パターンへの変換の定義

表現のパターン

• 表現だけを見て、復号できない部分を�に

• 次のように定義

等価性

• 等価性の定義(「見え方が同じ」)

• 鍵の名前変えσの下での等価性

• 例

例(1)

•••

例(2)

but

例(3)

••

例(4)

• 平文の長さはわからない

• 繰り返しはわからない

• 同じ鍵で暗号化したかどうかわからない

同じ鍵 違う鍵

Computational View

準備

(セキュリティ・パラメータ)

(乱数)

暗号スキーム

• 暗号スキーム Π=(K , E, D)

• 復号によって戻る、戻せないとき0

計算結果が確率的に決まる

暗号文の長さ

暗号文の長さ|Ek(x)|は、

• 平文の長さ|x|• セキュリティ・パラメータηのみに依存 (ただし k2 K(η))

無視できる(negligible)

• 関数 ε : N! R が無視できる:

任意の c>0 に対し Nc が存在し、η ¸ Nc なら

ε(η)· η -c

• 「どんな 1/(多項式) よりも速く減少」

• 例:

無視できる 無視できない

確率

• Ensemble:(文字列集合上の)確率変数の列

• サンプリング

• サンプルxに関する事象Eが起こる確率

Ensembleの識別不能性

DηA(η)

0 or 1

A(η)

0 or 1

Dη’

x

x

識別不能 ⇔出力が1である確率の差が無視できる

確率的多項式時間チューリング機械(攻撃者)

Ensembleの識別不能性

2つのensemble

が識別不能である

とは、任意の確率的多項式時間攻撃者Aに対し次の関数が無視できることをいう

暗号スキームのセキュリティ

• 繰り返しを隠す(repetition-conceiling):2つの暗号文c, c’の平文が同じであるか判定できない

• どの鍵を使用したかを隠す(which-key conceiling):2つの暗号文c, c’の鍵が同じであるか判定できない

• メッセージの長さを隠す(length-conceiling):暗号文から平文の長さがわからない

暗号スキームのセキュリティ型

Repetition conceiling

Which-key conceiling

Length conceiling

Type-0 OK OK OK

Type-1 OK OK ?

Type-2 OK ? OK

Type-3 OK ? ?

Type-4 ? OK OK

アドバンテージ

fA

0 or 1

A

0 or 1

何らかの結果を返すオラクル

正しく暗号化するオラクル

g

Adv=出力が1である確率の差

……

Type-0

A

0 or 1

A

0 or 1

ゴミを暗号化

正しく暗号化

平文の長さを区別できるならAdvを大きくできる

同じ鍵

異なる鍵

この繰り返し

Type-0 セキュリティ

• Type-0: (repetition, which-key, length)任意の確率的多項式時間の攻撃者Aに対し次が無視できる

入力を暗号化するオラクル

入力を無視して0を暗号化するオラクル

Type-1

A

0 or 1

A

0 or 1

入力と同じ長さのゴミを暗号化使用した鍵を

区別できるならAdvを大きくできる

Type-1 セキュリティ

• Type-1: (repetition, which-key, length)

入力と同じ長さの0の列を暗号化するオラクル

Type-3

A

0 or 1

A

0 or 1

入力と同じ長さのゴミを暗号化

正しく暗号化

同じ平文かどうか区別できるならAdvを大きくできる

Type-3セキュリティ

• Type-3: (repetition, which-key, length)

暗号化オラクルを1つしか使えない(別の鍵で暗号化された暗号文を入手できない)

Type-0の実現

• ブロック暗号(DES, AESなど):固定長の入力

• CBCモード:任意長の入力(⇒Type-1)

• 詰め物・切り詰めによりType-0が得られる

暗号化 暗号化 暗号化

暗号化

乱数

健全性:等価性⇒識別不能性

• 主定理(健全性):暗号の循環が無いとき

ならば

Mを(Type-0の暗号スキームにより)実際に暗号化して作ったビット列(の確率変数(からなるensemble))

形式的表現をensembleに対応

• 形式的表現Mをビット列に変換

• 変換結果は(暗号スキームΠと)ηから確率的に決まり、この確率変数を«M¬Π[η]と書く

• «M¬Π[η]からensemble «M¬Π={«M¬Π[η]}が決ま

ランダムにτ(Ki)2 K(η)を選んでおく

CONVERT)τ(K6)

健全性:等価性⇒識別不能性

• 主定理(健全性):Type-0暗号スキームを仮定、暗号の循環が無いとき

• 例

循環

定理の証明

(“hybrid technique”の利用)

準備:鍵の名前換え

• M, N (M≅N)の鍵をある条件(次のスライド)を満たすように名前変えして M’, N’とする

• 名前変えによってensembleは変わらない

• したがって、次を示せばよい

名前換えの条件

• 復号可能な鍵を左から順にJi、それ以外をKi

• {… Ki …}Kj, {… {…}Ki …}Kj

の出現では i<j• M, N (M≅N) の例:

ハイブリッド・パターンM0=pattern(M’)=pattern(N’)=N0から開始して、{…}Ki

に相当する�を順に元の暗号文に戻す

ハイブリッド・パターンの定義

Mの鍵がJ1, J2,…; K1, K2, …, Kmのとき、

特に、M’ ≡ N’より

以降のあらすじ(hybrid tech.)«M’¬Πと«N’¬Πが識別不能でない

(識別可能)と仮定する(背理法)

途中の«Mi¬Π, «Mi+1¬Πの組

(または«Ni¬Π, «Ni+1¬Πの組)

いずれかが識別可能になる

«Mi¬Π, «Mi+1¬Πを識別する攻撃者からType-0暗号を

破る攻撃者を構成できる⇒Type-0に矛盾

準備:パターンをensembleに対応

• パターンからビット列への変換

• この変換からensembleが決まる(«Mi¬Π ,«Nj¬Πなどと書く)

CONVERT’τ(K0)は�専用の鍵

• 定理がなりたたないと仮定(背理法)すると、

«M’¬Πと«N’¬Πは識別不能でない(識別可能)、

つまり、ある攻撃者Aに対し次が無視できない

以下、このAを固定

大きいギャップの探索

ギャップの細分化

pi, qj:ハイブリッドMi, Nj に対しAが1を返す確率

– Mm=M’, Nn=N’, M’0=N’0から

ギャップの細分化p4p3p2p1p0

q0q1q2q3

=

«M4¬Πおよび«M3¬Πのサンプルに対し、

Aが1を返す確率の差

細分の中にも大きいギャップがある

• 右辺の和の各部分のうち一番大きいものは、

これらの平均値以上である、すなわち

• 各ηに対し上を満たすpi-pi-1(or qi-qi-1)がある、さらに、無限個のηに対し上を満たすものもある

無限回ギャップが大きくなるp4p3p2p1p0

q0q1q2q3

= …

|η|=1, 2, 3, 4, 5, …

無限個のηに対し λ(η)/(m+n) より大きくなる

Type-0との矛盾の導出

• pi-pi-1は次のようなものであった

• Aを用いて攻撃者A0を構成、アドバンテージをpi-pi-1を用いて評価

攻撃者A0

f

g

A0 or 1

M’に対応するビット列

A0

この形のM’の部分表現のみオラクルを利用

pi-pi-1

• 攻撃者A0f,gは、M’をビット列に変換しA(η, y)を

返す。ただし、 {M*}Kの暗号化関数は

– K=Kiのとき f– K2{J1, …, Jµ, K1, …, Ki-1}のときEτ(K)– K2{Ki+1, …, Km}のとき g

例(i=2):

• i=2の場合でki, k0をランダムな鍵とする

«Mi-1¬Π[η]]のサンプル

«Mi¬Π[η]のサンプルf=Eki

(¢), g=Ek0(¢)のとき

f=Ek0(0), g=Ek0

(0)のとき

• 次が成り立つ

«Mi¬Π[η]のサンプルyを構成して

A(η, y)を計算

«Mi-1¬Π[η]]のサンプルyを構成して

A(η, y)を計算

• Type-0暗号がA0に破られる確率を計算

• 無視できない⇒Type-0暗号でない⇒矛盾

定理の主張について

• 定理の主張は漸近的(η! 1 )であったが、証明からはより具体的主張(攻撃に必要な時間など)を導き出せる

• 定理の逆は成りたたない– 例)MおよびNがPlaintextの外のメッセージを暗号化する場合、MとNは等しいensembleに対応するが、MとNが形式的に等価とは限らない

– このような自明な例以外の場合は不明

(※completenessを証明した後の研究がある)


Recommended