Decidability of a Sound Set of Inference Rules for Computational - - PowerPoint PPT Presentation

decidability of a sound set of inference rules for
SMART_READER_LITE
LIVE PREVIEW

Decidability of a Sound Set of Inference Rules for Computational - - PowerPoint PPT Presentation

Decidability of a Sound Set of Inference Rules for Computational Indistinguishability Adrien Koutsos LSV, CNRS, ENS Paris-Saclay June 29, 2019 Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 1 / 34 Introduction Motivation


slide-1
SLIDE 1

Decidability of a Sound Set of Inference Rules for Computational Indistinguishability

Adrien Koutsos

LSV, CNRS, ENS Paris-Saclay

June 29, 2019

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 1 / 34

slide-2
SLIDE 2

Introduction

Motivation

Security protocols are distributed programs which aim at providing some security properties. They are extensively used, and bugs can be very costly. Security protocols are often short, but the security properties are complex. ⇒ Need to use formal methods.

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 2 / 34

slide-3
SLIDE 3

Introduction

Goal of this work

We focus on fully automatic proofs of indistinguishability properties in the computational model:

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 3 / 34

slide-4
SLIDE 4

Introduction

Goal of this work

We focus on fully automatic proofs of indistinguishability properties in the computational model: Computational model: the adversary is any probabilistic polynomial time Turing machine. This offers strong security guarantees.

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 3 / 34

slide-5
SLIDE 5

Introduction

Goal of this work

We focus on fully automatic proofs of indistinguishability properties in the computational model: Computational model: the adversary is any probabilistic polynomial time Turing machine. This offers strong security guarantees. Indistinguishability properties: e.g. strong secrecy, anonymity or unlinkability.

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 3 / 34

slide-6
SLIDE 6

Introduction

Goal of this work

We focus on fully automatic proofs of indistinguishability properties in the computational model: Computational model: the adversary is any probabilistic polynomial time Turing machine. This offers strong security guarantees. Indistinguishability properties: e.g. strong secrecy, anonymity or unlinkability. Fully automatic: we want a complete decision procedure.

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 3 / 34

slide-7
SLIDE 7

1 Introduction 2 The Bana-Comon Model 3 Inference Rules

Unitary Inference Rules Inference Rules

4 Decision Result 5 Conclusion

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 4 / 34

slide-8
SLIDE 8

1 Introduction 2 The Bana-Comon Model 3 Inference Rules

Unitary Inference Rules Inference Rules

4 Decision Result 5 Conclusion

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 5 / 34

slide-9
SLIDE 9

The Private Authentication Protocol

A’ : nA’

$

← B : nB

$

← 1 : A’ − → B : {A’ , nA’}pk(B) 2 : B − → A’ :

  • {nA’ , nB}pk(A)

if A’ = A {nB , nB}pk(A)

  • therwise

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 6 / 34

slide-10
SLIDE 10

Bana-Comon Model: Messages

Messages

We use terms to model protocol messages, build upon: Names N, e.g. nA, nB, for random samplings. Function symbols F, e.g.: A, B, _ , _ , πi(_), {_}_ , pk(_), sk(_), if_then_else_, eq(_, _) Variables X.

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 7 / 34

slide-11
SLIDE 11

Bana-Comon Model: Messages

Messages

We use terms to model protocol messages, build upon: Names N, e.g. nA, nB, for random samplings. Function symbols F, e.g.: A, B, _ , _ , πi(_), {_}_ , pk(_), sk(_), if_then_else_, eq(_, _) Variables X.

Examples

nA , A π1(nB) {A’ , nA’}pk(B)

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 7 / 34

slide-12
SLIDE 12

Bana-Comon Model: Messages

The Private Authentication Protocol

1 : A’ − → B : {A’ , nA’}pk(B) 2 : B − → A’ : nA’ , nB

  • pk(A)

if A’ = A {nB , nB}pk(A)

  • therwise

How do we represent the adversary’s inputs?

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 8 / 34

slide-13
SLIDE 13

Bana-Comon Model: Messages

The Private Authentication Protocol

1 : A’ − → B : {A’ , nA’}pk(B) 2 : B − → A’ : nA’ , nB

  • pk(A)

if A’ = A {nB , nB}pk(A)

  • therwise

How do we represent the adversary’s inputs?

We use adversarial functions symbols, typically g. g takes as input the current knowledge of the adversary (the frame).

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 8 / 34

slide-14
SLIDE 14

Bana-Comon Model: Messages

The Private Authentication Protocol

1 : A’ − → B : {A’ , nA’}pk(B) 2 : B − → A’ : nA’ , nB

  • pk(A)

if A’ = A {nB , nB}pk(A)

  • therwise

How do we represent the adversary’s inputs?

We use adversarial functions symbols, typically g. g takes as input the current knowledge of the adversary (the frame). Intuitively, they can be any probabilistic polynomial time algorithm. Moreover, branching of the protocol is done using if_then_else_.

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 8 / 34

slide-15
SLIDE 15

Bana-Comon Model: Messages

The Private Authentication Protocol

1 : A’ − → B : {A’ , nA’}pk(B) 2 : B − → A’ : nA’ , nB

  • pk(A)

if A’ = A {nB , nB}pk(A)

  • therwise

Term Representing the Messages in PA

t1 = {A’ , nA’}pk(B) t2 = if eq(π1(dec(g(t1), sk(B))); A) then

  • π2(dec(g(t1), sk(B))), nB
  • pk(A)

else {nB , nB}pk(A)

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 9 / 34

slide-16
SLIDE 16

Bana-Comon Model: Protocol Execution

Protocol Execution

The execution of a protocol P is a sequence of terms using adversarial function symbols: uP

1 , . . . , uP n

where uP

i is the i-th message sent on the network by P.

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 10 / 34

slide-17
SLIDE 17

Bana-Comon Model: Protocol Execution

Protocol Execution

The execution of a protocol P is a sequence of terms using adversarial function symbols: uP

1 , . . . , uP n

where uP

i is the i-th message sent on the network by P.

Remark

This is only possible for a bounded number of messages.

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 10 / 34

slide-18
SLIDE 18

Bana-Comon Model: Security Properties

Formula

Formulas are build using: For every n ∈ N, the predicate ∼n of arity 2n.

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 11 / 34

slide-19
SLIDE 19

Bana-Comon Model: Security Properties

Formula

Formulas are build using: For every n ∈ N, the predicate ∼n of arity 2n.

Examples

n ∼ if g() then n else n’

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 11 / 34

slide-20
SLIDE 20

Bana-Comon Model: Security Properties

Formula

Formulas are build using: For every n ∈ N, the predicate ∼n of arity 2n.

Examples

n ∼ if g() then n else n’ Privacy of the PA protocol can be expressed by the ground formula: tA

1 , tA 2

∼ tC

1 , tC 2

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 11 / 34

slide-21
SLIDE 21

Bana-Comon Model: Security Properties

Formula

Formulas are build using: For every n ∈ N, the predicate ∼n of arity 2n. Boolean connectives ∧, ∨, ¬, →. First-order quantifier ∀.

Examples

n ∼ if g() then n else n’ Privacy of the PA protocol can be expressed by the ground formula: tA

1 , tA 2

∼ tC

1 , tC 2

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 11 / 34

slide-22
SLIDE 22

1 Introduction 2 The Bana-Comon Model 3 Inference Rules

Unitary Inference Rules Inference Rules

4 Decision Result 5 Conclusion

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 12 / 34

slide-23
SLIDE 23

Unitary Inference Rules

Unitary Inference Rules

We know that some atomic formulas are valid: Using α-renaming of random samplings: nA, nB ∼ nC, nD

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 13 / 34

slide-24
SLIDE 24

Unitary Inference Rules

Unitary Inference Rules

We know that some atomic formulas are valid: Using α-renaming of random samplings: nA, nB ∼ nC, nD Using cryptographic assumptions on the security primitives, e.g. if the encryption scheme is ind-cca1.

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 13 / 34

slide-25
SLIDE 25

Unitary Inference Rules: Cryptographic Assumptions

CCA1 Rules

{m0}pk ∼ {m1}pk

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 14 / 34

slide-26
SLIDE 26

Unitary Inference Rules: Cryptographic Assumptions

CCA1 Rules

{m0}pk ∼ {m1}pk Assuming: sk occurs only in decryption position in m0, m1

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 14 / 34

slide-27
SLIDE 27

Unitary Inference Rules: Cryptographic Assumptions

CCA1 Rules

{m0}nr

pk ∼

{m1}nr

pk

Assuming: sk occurs only in decryption position in m0, m1 nr does not appear in m0, m1

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 14 / 34

slide-28
SLIDE 28

Unitary Inference Rules: Cryptographic Assumptions

CCA1 Rules

{m0}nr

pk ∼

{m1}nr

pk

Assuming: sk occurs only in decryption position in m0, m1 nr does not appear in m0, m1

Theorem

The CCA1 rules are valid when the encryption and decryption functions form an ind-cca1 encryption scheme.

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 14 / 34

slide-29
SLIDE 29

Unitary Inference Rules: Cryptographic Assumptions

CCA1 Rules

  • v, {m0}nr

pk ∼

v, {m1}nr

pk

Assuming: sk occurs only in decryption position in m0, m1, v nr does not appear in m0, m1, v

Theorem

The CCA1 rules are valid when the encryption and decryption functions form an ind-cca1 encryption scheme.

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 14 / 34

slide-30
SLIDE 30

Unitary Inference Rules: Cryptographic Assumptions

CCA1 Rules

  • v, {m0}nr

pk ∼

v, {m1}nr

pk

Assuming: sk occurs only in decryption position in m0, m1, v nr does not appear in m0, m1, v

Theorem

The CCA1 rules are valid when the encryption and decryption functions form an ind-cca1 encryption scheme.

Remark

This is an axiom schema!

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 14 / 34

slide-31
SLIDE 31

Inference Rules

Proof Technique

If u ∼ v is not directly valid, we try to prove it through a succession of rule applications:

  • s ∼

t

  • u ∼

v This is the way cryptographers do proofs.

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 15 / 34

slide-32
SLIDE 32

Inference Rules

Proof Technique

If u ∼ v is not directly valid, we try to prove it through a succession of rule applications:

  • s ∼

t

  • u ∼

v This is the way cryptographers do proofs. Validity by reduction: given a winning adversary against u ∼ v, we can build winning adversary againstan adversary winning s ∼ t.

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 15 / 34

slide-33
SLIDE 33

Inference Rules

Proof Technique

If u ∼ v is not directly valid, we try to prove it through a succession of rule applications:

  • s ∼

t

  • u ∼

v This is the way cryptographers do proofs. Validity by reduction: given a winning adversary against u ∼ v, we can build winning adversary againstan adversary winning s ∼ t.

Example

x ∼ y Sym y ∼ x

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 15 / 34

slide-34
SLIDE 34

Structural Rules

Duplicate

x ∼ y Dup x, x ∼ y, y

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 16 / 34

slide-35
SLIDE 35

Structural Rules

Duplicate

  • wl, x ∼

wr, y Dup

  • wl, x, x ∼

wr, y, y

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 16 / 34

slide-36
SLIDE 36

Structural Rules

Function Application

If you cannot distinguish the arguments, you cannot distinguish the images. x1, . . . , xn ∼ y1, . . . , yn FA f (x1, . . . , xn) ∼ f (y1, . . . , yn)

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 17 / 34

slide-37
SLIDE 37

Structural Rules

Function Application

If you cannot distinguish the arguments, you cannot distinguish the images.

  • wl, x1, . . . , xn ∼

wr, y1, . . . , yn FA

  • wl, f (x1, . . . , xn) ∼

wr, f (y1, . . . , yn)

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 17 / 34

slide-38
SLIDE 38

Structural Rules

Case Study

If we use Function Application on if_then_else_: b, u, v ∼ b′, u′, v′ FA if b then u else v ∼ if b′ then u′ else v′

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 18 / 34

slide-39
SLIDE 39

Structural Rules

Case Study

If we use Function Application on if_then_else_: b, u, v ∼ b′, u′, v′ FA if b then u else v ∼ if b′ then u′ else v′ But we can do better: b, u ∼ b′, u′ b, v ∼ b′, v′ CS if b then u else v ∼ if b′ then u′ else v′

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 18 / 34

slide-40
SLIDE 40

Rewriting Rules

Remark: ∼ is not a congruence!

Counter-Example: n ∼ n and n ∼ n′, but n, n ∼ n, n′.

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 19 / 34

slide-41
SLIDE 41

Rewriting Rules

Remark: ∼ is not a congruence!

Counter-Example: n ∼ n and n ∼ n′, but n, n ∼ n, n′.

Congruence

If eq(u; v) ∼ true then u and v are (almost always) equal ⇒ we have a congruence. u = v syntactic sugar for eq(u; v) ∼ true

Equational Theory: Protocol Functions

πi (x1, x2) = xi i ∈ {1, 2} dec({x}pk(y) , sk(y)) = x

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 19 / 34

slide-42
SLIDE 42

Rewriting Rules

Equational Theory: Protocol Functions

If Homomorphism: f ( u, if b then x else y, v) = if b then f ( u, x, v) else f ( u, y, v) if (if b then a else c) then x else y = if b then (if a then x else y) else (if c then x else y)

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 20 / 34

slide-43
SLIDE 43

Rewriting Rules

Equational Theory: Protocol Functions

If Homomorphism: f ( u, if b then x else y, v) = if b then f ( u, x, v) else f ( u, y, v) if (if b then a else c) then x else y = if b then (if a then x else y) else (if c then x else y) If Rewriting: if b then x else x = x if b then (if b then x else y) else z = if b then x else z if b then x else (if b then y else z) = if b then x else z

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 20 / 34

slide-44
SLIDE 44

Rewriting Rules

Equational Theory: Protocol Functions

If Homomorphism: f ( u, if b then x else y, v) = if b then f ( u, x, v) else f ( u, y, v) if (if b then a else c) then x else y = if b then (if a then x else y) else (if c then x else y) If Rewriting: if b then x else x = x if b then (if b then x else y) else z = if b then x else z if b then x else (if b then y else z) = if b then x else z If Re-Ordering: if b then (if a then x else y) else z = if a then (if b then x else z) else (if b then y else z) if b then x else (if a then y else z) = if a then (if b then x else y) else (if b then x else z)

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 20 / 34

slide-45
SLIDE 45

1 Introduction 2 The Bana-Comon Model 3 Inference Rules

Unitary Inference Rules Inference Rules

4 Decision Result 5 Conclusion

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 21 / 34

slide-46
SLIDE 46

Decidability

Decision Problem: Unsatisfiability

Input: A ground formula u ∼ v. Question: Is there a derivation of u ∼ v using Ax?

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 22 / 34

slide-47
SLIDE 47

Decidability

Decision Problem: Unsatisfiability

Input: A ground formula u ∼ v. Question: Is there a derivation of u ∼ v using Ax?

  • r equivalently

Decision Problem: Game Transformations

Input: A game u ∼ v. Question: Is there a sequence of game transformations in Ax showing that

  • u ∼

v is secure?

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 22 / 34

slide-48
SLIDE 48

Inference Rules: Summary

The Inference Rules in Ax

x ∼ y Dup x, x ∼ y, y x1, . . . , xn ∼ y1, . . . , yn FA f (x1, . . . , xn) ∼ f (y1, . . . , yn) b, u ∼ b′, u′ b, v ∼ b′, v′ CS if b then u else v ∼ if b′ then u′ else v′

  • u ′ ∼

v ′ R

  • u ∼

v when u =R u ′ and v =R v ′

  • u ∼

v CCA1

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 23 / 34

slide-49
SLIDE 49

Term Rewriting System

Theorem

There exists a term rewriting system →R ⊆ = such that: →R is convergent. = is equal to (R← ∪ →R)∗.

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 24 / 34

slide-50
SLIDE 50

Strategy

Deconstructing Rules

Rules CS, FA and Dup are decreasing transformations.

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 25 / 34

slide-51
SLIDE 51

Strategy

Deconstructing Rules

Rules CS, FA and Dup are decreasing transformations.

Problems

The rule R is not decreasing! CCA1 is a recursive schema.

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 25 / 34

slide-52
SLIDE 52

Strategy

Deconstructing Rules

Rules CS, FA and Dup are decreasing transformations.

Problems

The rule R is not decreasing! CCA1 is a recursive schema.

Naive Idea

R is convergent, so could we restrict proofs to terms in R-normal form?

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 25 / 34

slide-53
SLIDE 53

Difficulties

If Introduction: x → if b then x else x

n ∼ if g() then n else n’

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 26 / 34

slide-54
SLIDE 54

Difficulties

If Introduction: x → if b then x else x

if g() then n else n ∼ if g() then n else n’ n ∼ if g() then n else n’ R

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 26 / 34

slide-55
SLIDE 55

Difficulties

If Introduction: x → if b then x else x

n ∼ n g(), n ∼ g(), n FA n ∼ n’ g(), n ∼ g(), n’ FA if g() then n else n ∼ if g() then n else n’ CS n ∼ if g() then n else n’ R

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 26 / 34

slide-56
SLIDE 56

Difficulties

If Introduction: : x → if b then x else x

  • u, n ∼

u , n

  • u, g(

u), n ∼ u , g( u ), n

FA, Dup

  • u, n ∼

u , n’

  • u, g(

u), n ∼ u , g( u ), n’

FA, Dup

  • u, if g(

u) then n else n ∼ u , if g( u ) then n else n’ CS

  • u, n ∼

u , if g( u ) then n else n’ R

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 27 / 34

slide-57
SLIDE 57

Difficulties

If Introduction: : x → if b then x else x

  • u, n ∼

u , n

  • u, g(

u), n ∼ u , g( u ), n

FA, Dup

  • u, n ∼

u , n’

  • u, g(

u), n ∼ u , g( u ), n’

FA, Dup

  • u, if g(

u) then n else n ∼ u , if g( u ) then n else n’ CS

  • u, n ∼

u , if g( u ) then n else n’ R

Bounded Introduction

Still, the introduced conditional g( u ) is bounded by the other side.

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 27 / 34

slide-58
SLIDE 58

Decision Procedure

Proof Cut: Introduction of a Conditional on Both Sides

a, s ∼ b, t a, s ∼ b, t if a then s else s ∼ if b then t else t CS s ∼ t R

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 28 / 34

slide-59
SLIDE 59

Decision Procedure

Proof Cut: Introduction of a Conditional on Both Sides

a, s ∼ b, t a, s ∼ b, t if a then s else s ∼ if b then t else t CS s ∼ t R

Lemma

From a proof of a, s ∼ b, t we can extract a smaller proof of s ∼ t.

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 28 / 34

slide-60
SLIDE 60

Decision Procedure

Proof Cut: Introduction of a Conditional on Both Sides

a, s ∼ b, t a, s ∼ b, t if a then s else s ∼ if b then t else t CS s ∼ t R

Lemma

From a proof of a, s ∼ b, t we can extract a smaller proof of s ∼ t. ⇒ Proof Cut Elimination

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 28 / 34

slide-61
SLIDE 61

Decision Procedure

Proof Cut

a1, b2, b3, u4, w5, u6, v 7 ∼ d1, c 2, d3, s4, t5, r6, p7 a1 b2 u4 b3 w5 u6 v 7 ∼ d1 c 2 s4 d3 t5 r6 p7 FA(3) if a then u else v ∼ if c then s else t R where p ≡ if c then s else t

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 29 / 34

slide-62
SLIDE 62

Decision Procedure

Proof Cut

a1, b2, b3, u4, w5, u6, v 7 ∼ d1, c 2, d3, s4, t5, r6, p7 a1 b2 u4 b3 w5 u6 v 7 ∼ d1 c 2 s4 d3 t5 r6 p7 FA(3) if a then u else v ∼ if c then s else t R where p ≡ if c then s else t

Key Lemma

If b, b ∼ b′, b′′ can be shown using only FA, Dup and CCA1 then b′ ≡ b′′.

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 29 / 34

slide-63
SLIDE 63

Decision Procedure

Proof Cut

a1, b2, b3, u4, w5, u6, v 7 ∼ d1, c 2, d3, s4, t5, r6, p7 a1 b2 u4 b3 w5 u6 v 7 ∼ d1 c 2 s4 d3 t5 r6 p7 FA(3) if a then u else v ∼ if c then s else t R where p ≡ if c then s else t

Proof Cut Elimination

b2, b3 ∼ c 2, d3 ⇒ c ≡ d.

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 30 / 34

slide-64
SLIDE 64

Decision Procedure

Proof Cut

a1, b2, b3, u4, w5, u6, v 7 ∼ d1, c 2, d3, s4, t5, r6, p7 a1 b2 u4 b3 w5 u6 v 7 ∼ d1 c 2 s4 d3 t5 r6 p7 FA(3) if a then u else v ∼ if c then s else t R where p ≡ if c then s else t

Proof Cut Elimination

b2, b3 ∼ c 2, d3 ⇒ c ≡ d. a1, b2 ∼ d1, c 2 ⇒ a ≡ b.

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 30 / 34

slide-65
SLIDE 65

Strategy: Theorem

Theorem

The following problem is decidable: Input: A ground formula u ∼ v. Question: Is there a derivation of u ∼ v using Ax?

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 31 / 34

slide-66
SLIDE 66

Strategy: Theorem

Theorem

The following problem is decidable: Input: A ground formula u ∼ v. Question: Is there a derivation of u ∼ v using Ax?

Remark: Unitary Inference Rules

This holds when using CCA2 as unitary inference rules.

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 31 / 34

slide-67
SLIDE 67

Strategy: Theorem

Theorem

The following problem is decidable: Input: A ground formula u ∼ v. Question: Is there a derivation of u ∼ v using Ax?

Remark: Unitary Inference Rules

This holds when using CCA2 as unitary inference rules.

Sketch

Commute rule applications to order them as follows: (2Box + R) · CS · FAif · FAf · Dup · U We do proof cut eliminations to get a small proof.

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 31 / 34

slide-68
SLIDE 68

1 Introduction 2 The Bana-Comon Model 3 Inference Rules

Unitary Inference Rules Inference Rules

4 Decision Result 5 Conclusion

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 32 / 34

slide-69
SLIDE 69

Conclusion

Contribution

Decidability of a set of inference rules for computational indistinguishability.

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 33 / 34

slide-70
SLIDE 70

Conclusion

Contribution

Decidability of a set of inference rules for computational indistinguishability.

Limitations

The complexity is high: 3-nexptime. The cryptographic primitives are fixed: only for CCA2.

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 33 / 34

slide-71
SLIDE 71

Conclusion

Contribution

Decidability of a set of inference rules for computational indistinguishability.

Limitations

The complexity is high: 3-nexptime. The cryptographic primitives are fixed: only for CCA2.

Future Works

Study the scope of the result: Support for a larger class of primitives and associated assumptions. Undecidability results for extensions of the set of axioms.

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 33 / 34

slide-72
SLIDE 72

Thanks for your attention

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 34 / 34

slide-73
SLIDE 73

Commutations

(R | Dup) Commutation

This application

  • u, s ∼

u ′, s′

  • u, t ∼

u ′, t′ R

  • u, t, t ∼

u ′, t′, t′ Dup

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 1 / 2

slide-74
SLIDE 74

Commutations

(R | Dup) Commutation

This application

  • u, s ∼

u ′, s′

  • u, t ∼

u ′, t′ R

  • u, t, t ∼

u ′, t′, t′ Dup Can be rewritten into:

  • u, s ∼

u ′, s′

  • u, s, s ∼

u ′, s′, s′ Dup

  • u, t, t ∼

u ′, t′, t′ R

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 1 / 2

slide-75
SLIDE 75

Commutations

(R | FA) Commutation

This application:

  • u1,

v1 ∼ u ′

1,

v ′

1

  • u,

v ∼ u ′, v ′ R

  • u, f (

v), u ′, f ( v ′) FA

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 2 / 2

slide-76
SLIDE 76

Commutations

(R | FA) Commutation

This application:

  • u1,

v1 ∼ u ′

1,

v ′

1

  • u,

v ∼ u ′, v ′ R

  • u, f (

v), u ′, f ( v ′) FA Can be rewritten into:

  • u1,

v1 ∼ u ′

1,

v ′

1

  • u1, f (

v1) ∼ u ′

1, f (

v ′

1) FA

  • u, f (

v), u ′, f ( v ′) R

Adrien Koutsos (LSV, ENS PS) Indistinguishability June 29, 2019 2 / 2