Satisfiability of Dolev-Yao Constraints Laurent Mazar e - - PowerPoint PPT Presentation

satisfiability of dolev yao constraints
SMART_READER_LITE
LIVE PREVIEW

Satisfiability of Dolev-Yao Constraints Laurent Mazar e - - PowerPoint PPT Presentation

Satisfiability of Dolev-Yao Constraints Laurent Mazar e laurent.mazare@imag.fr Laboratoire VERIMAG Grenoble, France Satisfiability of Dolev-Yao Constraints p.1/17 Motivation Constraints are used to verify secrecy with a bounded


slide-1
SLIDE 1

Satisfiability of Dolev-Yao Constraints

Laurent Mazar´ e

laurent.mazare@imag.fr

Laboratoire VERIMAG Grenoble, France

Satisfiability of Dolev-Yao Constraints – p.1/17

slide-2
SLIDE 2

Motivation

Constraints are used to verify secrecy with a bounded number of sessions.

Satisfiability of Dolev-Yao Constraints – p.2/17

slide-3
SLIDE 3

Motivation

Constraints are used to verify secrecy with a bounded number of sessions. Needham-Schroeder constraint:

NS

  • E
✁ ✂

NC

A

KC

☎ ✂

x

A

KB

E

✁ ✂

NC

A

KC

✁ ✂

x

NB

KA

☎ ✂

NC

y

KA

E

✁ ✂

NC

A

KC

✁ ✂

x

NB

KA

✁ ✂

y

KC

NB

Satisfiability of Dolev-Yao Constraints – p.2/17

slide-4
SLIDE 4

Motivation

Constraints are used to verify secrecy with a bounded number of sessions. Needham-Schroeder constraint:

NS

  • E
✁ ✂

NC

A

KC

☎ ✂

x

A

KB

E

✁ ✂

NC

A

KC

✁ ✂

x

NB

KA

☎ ✂

NC

y

KA

E

✁ ✂

NC

A

KC

✁ ✂

x

NB

KA

✁ ✂

y

KC

NB

Extensions: Inequations, Multiple Intruders, Opacity (Strong Secrecy).

Satisfiability of Dolev-Yao Constraints – p.2/17

slide-5
SLIDE 5

Messages and Constraints

Messages are defined by:

m ::

  • a
  • x
  • f

m1

✁ ✂ ✂ ✂ ✁

mn

m1

m2

m1

m2

a : atom, x: variable, f : first order symbol

Satisfiability of Dolev-Yao Constraints – p.3/17

slide-6
SLIDE 6

Messages and Constraints

Messages are defined by:

m ::

  • a
  • x
  • f

m1

✁ ✂ ✂ ✂ ✁

mn

m1

m2

m1

m2

a : atom, x: variable, f : first order symbol Constraints are defined by:

C ::

  • C

C

  • C

C

  • CA

CA ::

  • T

m

U

  • m
  • n

m, n: messages, T, U: finite sets of messages.

Satisfiability of Dolev-Yao Constraints – p.3/17

slide-7
SLIDE 7

Models

A substitution σ is a model of constraint C iff σ

  • C where
  • is

the smallest relation defined by: Usual definitions for

,

,

Satisfiability of Dolev-Yao Constraints – p.4/17

slide-8
SLIDE 8

Models

A substitution σ is a model of constraint C iff σ

  • C where
  • is

the smallest relation defined by: Usual definitions for

,

,

σ

  • m
  • n

Satisfiability of Dolev-Yao Constraints – p.4/17

slide-9
SLIDE 9

Models

A substitution σ is a model of constraint C iff σ

  • C where
  • is

the smallest relation defined by: Usual definitions for

,

,

σ

  • m
  • n

σ

  • T

m

U

where T

  • m

U

is defined as

  • except the decode rule:

T

m

u

U

u

U T

  • m

U

Satisfiability of Dolev-Yao Constraints – p.4/17

slide-10
SLIDE 10

Well-Formed Constraints

A constraint C is well-formed iff C

  • Co and for each Co:

Satisfiability of Dolev-Yao Constraints – p.5/17

slide-11
SLIDE 11

Well-Formed Constraints

A constraint C is well-formed iff C

  • Co and for each Co:

If T

m

U

and T

m

U

are in Co, then T

T

  • r

T

T (Environment Inclusion).

Satisfiability of Dolev-Yao Constraints – p.5/17

slide-12
SLIDE 12

Well-Formed Constraints

A constraint C is well-formed iff C

  • Co and for each Co:

If T

m

U

and T

m

U

are in Co, then T

T

  • r

T

T (Environment Inclusion).

If T

m

U

☎ ✁

Co and x

var

T

, then there exists

T

m

U

Co such that x

var

m

, U

U and T

  • T (Variable Introduction).

Satisfiability of Dolev-Yao Constraints – p.5/17

slide-13
SLIDE 13

Well-Formed Constraints

A constraint C is well-formed iff C

  • Co and for each Co:

If T

m

U

and T

m

U

are in Co, then T

T

  • r

T

T (Environment Inclusion).

If T

m

U

☎ ✁

Co and x

var

T

, then there exists

T

m

U

Co such that x

var

m

, U

U and T

  • T (Variable Introduction).

A constraint C quasi-well-formed iff

Satisfiability of Dolev-Yao Constraints – p.5/17

slide-14
SLIDE 14

Well-Formed Constraints

A constraint C is well-formed iff C

  • Co and for each Co:

If T

m

U

and T

m

U

are in Co, then T

T

  • r

T

T (Environment Inclusion).

If T

m

U

☎ ✁

Co and x

var

T

, then there exists

T

m

U

Co such that x

var

m

, U

U and T

  • T (Variable Introduction).

A constraint C quasi-well-formed iff Variable Introduction.

Satisfiability of Dolev-Yao Constraints – p.5/17

slide-15
SLIDE 15

Well-Formed Constraints

A constraint C is well-formed iff C

  • Co and for each Co:

If T

m

U

and T

m

U

are in Co, then T

T

  • r

T

T (Environment Inclusion).

If T

m

U

☎ ✁

Co and x

var

T

, then there exists

T

m

U

Co such that x

var

m

, U

U and T

  • T (Variable Introduction).

A constraint C quasi-well-formed iff Variable Introduction. There exists a closed message m that occurs in any environment of Co.

Satisfiability of Dolev-Yao Constraints – p.5/17

slide-16
SLIDE 16

Constraints

Reducing usual well-formed constraints to our constraints:

1

  • i
  • n Tiσ
  • miσ

σ

  • k1
✂✄ ✄ ✄ ✂

keys

T

m

1

i1

i2

✞ ✄ ✄ ✄ ✞

in

n

T1

k1

✄ ☎ ✆ ✂ ✂ ✂ ✆

T1

m1

k1

✁ ✂ ✂ ✂ ✁

ki1

☎ ✠ ✆ ✟

T2

ki1

1

k1

✁ ✂ ✂ ✂ ✁

ki1

☎ ✆ ✂ ✂ ✂ ✆

T2

m2

k1

✁ ✂ ✂ ✂ ✁

ki2

☎ ✠ ✆ ✂ ✂ ✂ ✆ ✟

Tn

kin

1

1

k1

✁ ✂ ✂ ✂ ✁

kin

1

☎ ✆ ✂ ✂ ✂ ✆

Tn

mn

k1

✁ ✂ ✂ ✂ ✁

kin

☎ ✠

Satisfiability of Dolev-Yao Constraints – p.6/17

slide-17
SLIDE 17

Satisfiability 1 : Rewriting

T

a

U

T

a

U

  • T

f

m1

✁ ✂ ✂ ✂ ✁

mn

✄ ✄

U

T

f

m1

✁ ✂ ✂ ✂ ✁

mn

✄ ✄

U

  • T
☎ ☎

m

n

✆ ✄

U

  • T

m

U

☎ ✆

T

n

U

T

☎ ✂

m

n

U

T

☎ ✂

m

n

U

  • T

m

U

☎ ✆

T

n

U

Satisfiability of Dolev-Yao Constraints – p.7/17

slide-18
SLIDE 18

Satisfiability 2 : Properties

C1

  • C2, if C1 is well-formed, then C2 is well-formed too.

Satisfiability of Dolev-Yao Constraints – p.8/17

slide-19
SLIDE 19

Satisfiability 2 : Properties

C1

  • C2, if C1 is well-formed, then C2 is well-formed too.

Correctness and Completness

Satisfiability of Dolev-Yao Constraints – p.8/17

slide-20
SLIDE 20

Satisfiability 2 : Properties

C1

  • C2, if C1 is well-formed, then C2 is well-formed too.

Correctness and Completness Termination

Satisfiability of Dolev-Yao Constraints – p.8/17

slide-21
SLIDE 21

Satisfiability 2 : Properties

C1

  • C2, if C1 is well-formed, then C2 is well-formed too.

Correctness and Completness Termination Normal Forms:

T

x

U

☎ ✠ ✆ ✟

m

  • n

Satisfiability of Dolev-Yao Constraints – p.8/17

slide-22
SLIDE 22

Satisfiability 3 : Inequations

Let P be the constraint

m1

  • n1
✆ ✂ ✂ ✂ ✆

mj

  • nj

If P is satisfiable, then for any substitution σ such that Pσ is closed and xσ

  • x
  • y,

There exists an integer k such that k

j

1 and σk is a

model of P.

Satisfiability of Dolev-Yao Constraints – p.9/17

slide-23
SLIDE 23

Satisfiability 3 : Inequations

Let P be the constraint

m1

  • n1
✆ ✂ ✂ ✂ ✆

mj

  • nj

If P is satisfiable, then for any substitution σ such that Pσ is closed and xσ

  • x
  • y,

There exists an integer k such that k

j

1 and σk is a

model of P. Application:

m

✁ ✂ ✂ ✂ ✁

m

Satisfiability of Dolev-Yao Constraints – p.9/17

slide-24
SLIDE 24

Satisfiability 4 : Results

Satisfiability for well-formed constraints is decidable (and NP-complete).

Satisfiability of Dolev-Yao Constraints – p.10/17

slide-25
SLIDE 25

Satisfiability 4 : Results

Satisfiability for well-formed constraints is decidable (and NP-complete). Same thing for quasi-well-formed constraints.

Satisfiability of Dolev-Yao Constraints – p.10/17

slide-26
SLIDE 26

Satisfiability 4 : Results

Satisfiability for well-formed constraints is decidable (and NP-complete). Same thing for quasi-well-formed constraints. Security for protocols with inequations (bounded number of sessions).

Satisfiability of Dolev-Yao Constraints – p.10/17

slide-27
SLIDE 27

Opacity: Definitions

An intruder C observes a protocol session between A and B. Could he deduce any property on the parameters of this protocol ?

Satisfiability of Dolev-Yao Constraints – p.11/17

slide-28
SLIDE 28

Opacity: Definitions

An intruder C observes a protocol session between A and B. Could he deduce any property on the parameters of this protocol ? Example : electronic vote.

A

  • B :

vote

k

If vote

✁ ✂

yes

no

, the intruder could infer yes or no using Dolev-Yao, could he guess the value of vote ?

Satisfiability of Dolev-Yao Constraints – p.11/17

slide-29
SLIDE 29

Opacity: Definitions

An intruder C observes a protocol session between A and B. Could he deduce any property on the parameters of this protocol ? Example : electronic vote.

A

  • B :

vote

k

If vote

✁ ✂

yes

no

, the intruder could infer yes or no using Dolev-Yao, could he guess the value of vote ? Intuitive definition of opacity of property φ.

Satisfiability of Dolev-Yao Constraints – p.11/17

slide-30
SLIDE 30

Similarity

Simultaneous Deductions: E

E

  • m

m

  • n1
✁✂ ✂ ✂ ✁

nk

j

  • n

1

✁✂ ✂ ✂ ✁

n

k

j

ni

n

i

E

E

☎ ✆

n1

n

1

E

E

☎ ✆

n2

n

2

E

E

☎ ✆ ✝

n1

n2

✞ ✁ ✝

n

1

n

2

E

E

☎ ✆ ✝

n1

n2

✞ ✁ ✝

n

1

n

2

E

E

☎ ✆

n1

n

1

E

E

☎ ✆ ✝

n1

n2

✞ ✁ ✝

n

1

n

2

E

E

☎ ✆

n2

n

2

E

E

☎ ✆
  • n1

n2

  • n

1

n

2

E

E

☎ ✆

n2

n

2

E

E

☎ ✆

n1

n

1

E

E

☎ ✆

n1

n

1

E

E

☎ ✆

n2

n

2

E

E

☎ ✆
  • n1

n2

  • n

1

n

2

Satisfiability of Dolev-Yao Constraints – p.12/17

slide-31
SLIDE 31

Similarity

Simultaneous Deductions: E

E

  • m

m

  • n1
✁✂ ✂ ✂ ✁

nk

j

  • n

1

✁✂ ✂ ✂ ✁

n

k

j

ni

n

i

E

E

☎ ✆

n1

n

1

E

E

☎ ✆

n2

n

2

E

E

☎ ✆ ✝

n1

n2

✞ ✁ ✝

n

1

n

2

E

E

☎ ✆ ✝

n1

n2

✞ ✁ ✝

n

1

n

2

E

E

☎ ✆

n1

n

1

E

E

☎ ✆ ✝

n1

n2

✞ ✁ ✝

n

1

n

2

E

E

☎ ✆

n2

n

2

E

E

☎ ✆
  • n1

n2

  • n

1

n

2

E

E

☎ ✆

n2

n

2

E

E

☎ ✆

n1

n

1

E

E

☎ ✆

n1

n

1

E

E

☎ ✆

n2

n

2

E

E

☎ ✆
  • n1

n2

  • n

1

n

2

Similarity:

a

  • Atomes

a

a u1

u2 v1

v2

u1

v1

✞ ✁ ✝

u2

v2

env1

env2

k

k u

v

  • u

k

  • v

k

env1

k

env2

k

  • u

k

  • v

k

Satisfiability of Dolev-Yao Constraints – p.12/17

slide-32
SLIDE 32

Hypothesis

The intruder C follows Dolev-Yao model against a protocol implying A and B (Active Intruder).

Satisfiability of Dolev-Yao Constraints – p.13/17

slide-33
SLIDE 33

Hypothesis

The intruder C follows Dolev-Yao model against a protocol implying A and B (Active Intruder). The intruder knows the protocol used and the trace of the protocol followed during this session.

Satisfiability of Dolev-Yao Constraints – p.13/17

slide-34
SLIDE 34

Hypothesis

The intruder C follows Dolev-Yao model against a protocol implying A and B (Active Intruder). The intruder knows the protocol used and the trace of the protocol followed during this session. The intruder has an initial knowledge c0. For example :

c0

k1

  • k2

Satisfiability of Dolev-Yao Constraints – p.13/17

slide-35
SLIDE 35

Hypothesis

The intruder C follows Dolev-Yao model against a protocol implying A and B (Active Intruder). The intruder knows the protocol used and the trace of the protocol followed during this session. The intruder has an initial knowledge c0. For example :

c0

k1

  • k2

Protocols without branching (if).

Satisfiability of Dolev-Yao Constraints – p.13/17

slide-36
SLIDE 36

Opacity Constraints

Two sessions are not similar iff C is satisfiable.

Satisfiability of Dolev-Yao Constraints – p.14/17

slide-37
SLIDE 37

Opacity Constraints

Two sessions are not similar iff C is satisfiable. Constraint related to the active intruder is:

CAI

  • T1

T

  • 1

m1

m

  • 1

T2

T

  • 2

m2

m

  • 2
✆ ✂ ✂ ✂ ☎

Satisfiability of Dolev-Yao Constraints – p.14/17

slide-38
SLIDE 38

Opacity Constraints

Two sessions are not similar iff C is satisfiable. Constraint related to the active intruder is:

CAI

  • T1

T

  • 1

m1

m

  • 1

T2

T

  • 2

m2

m

  • 2
✆ ✂ ✂ ✂ ☎

Sessions are not similar:

CS

i

T

  • α

ni

  • n
  • i

Satisfiability of Dolev-Yao Constraints – p.14/17

slide-39
SLIDE 39

Opacity Constraints

Two sessions are not similar iff C is satisfiable. Constraint related to the active intruder is:

CAI

  • T1

T

  • 1

m1

m

  • 1

T2

T

  • 2

m2

m

  • 2
✆ ✂ ✂ ✂ ☎

Sessions are not similar:

CS

i

T

  • α

ni

  • n
  • i

Eventually,

C

  • CAI

CS

Satisfiability of Dolev-Yao Constraints – p.14/17

slide-40
SLIDE 40

Restricted Version: Vote Protocol

Only two possible sessions: v

  • y (for T) and v
  • n (for T
  • ).

Satisfiability of Dolev-Yao Constraints – p.15/17

slide-41
SLIDE 41

Restricted Version: Vote Protocol

Only two possible sessions: v

  • y (for T) and v
  • n (for T
  • ).

New constraint:

CS

T

  • α

y

n

T

  • α

n

y

Satisfiability of Dolev-Yao Constraints – p.15/17

slide-42
SLIDE 42

Restricted Version: Vote Protocol

Only two possible sessions: v

  • y (for T) and v
  • n (for T
  • ).

New constraint:

CS

T

  • α

y

n

T

  • α

n

y

The vote value is opaque (φ

v

  • y

) iff C is not satisfiable.

Satisfiability of Dolev-Yao Constraints – p.15/17

slide-43
SLIDE 43

Restricted Version: Vote Protocol

Only two possible sessions: v

  • y (for T) and v
  • n (for T
  • ).

New constraint:

CS

T

  • α

y

n

T

  • α

n

y

The vote value is opaque (φ

v

  • y

) iff C is not satisfiable. Constraint C only uses

so satisfiability is decidable.

Satisfiability of Dolev-Yao Constraints – p.15/17

slide-44
SLIDE 44

Dumb Vote Protocol

S is the authority collecting votes, A is a voter. S

  • A :

k A

  • S :

v

k

And T

  • T

y

n

kC

k

  • 1

C

.

Satisfiability of Dolev-Yao Constraints – p.16/17

slide-45
SLIDE 45

Dumb Vote Protocol

S is the authority collecting votes, A is a voter. S

  • A :

k A

  • S :

v

k

And T

  • T

y

n

kC

k

  • 1

C

. Constraint C is:

T

T

x

x

T;

y

x

T

  • ;

n

x

☎ ☎

y

n

Satisfiability of Dolev-Yao Constraints – p.16/17

slide-46
SLIDE 46

Dumb Vote Protocol

S is the authority collecting votes, A is a voter. S

  • A :

k A

  • S :

v

k

And T

  • T

y

n

kC

k

  • 1

C

. Constraint C is:

T

T

x

x

T;

y

x

T

  • ;

n

x

☎ ☎

y

n C is satisfiable (x

  • x
  • kC). Immediate attack.

Satisfiability of Dolev-Yao Constraints – p.16/17

slide-47
SLIDE 47

Conclusion

Decision procedure for constraint with inequations, first order symbols, multiple "knowledges".

Satisfiability of Dolev-Yao Constraints – p.17/17

slide-48
SLIDE 48

Conclusion

Decision procedure for constraint with inequations, first order symbols, multiple "knowledges". Decision procedure for opacity with an active (Dolev-Yao) intruder.

Satisfiability of Dolev-Yao Constraints – p.17/17

slide-49
SLIDE 49

Conclusion

Decision procedure for constraint with inequations, first order symbols, multiple "knowledges". Decision procedure for opacity with an active (Dolev-Yao) intruder. Future Works:

Satisfiability of Dolev-Yao Constraints – p.17/17

slide-50
SLIDE 50

Conclusion

Decision procedure for constraint with inequations, first order symbols, multiple "knowledges". Decision procedure for opacity with an active (Dolev-Yao) intruder. Future Works: General opacity problem.

Satisfiability of Dolev-Yao Constraints – p.17/17

slide-51
SLIDE 51

Conclusion

Decision procedure for constraint with inequations, first order symbols, multiple "knowledges". Decision procedure for opacity with an active (Dolev-Yao) intruder. Future Works: General opacity problem. General constraints (allow to modelize Fairness/Protocol Composition...).

Satisfiability of Dolev-Yao Constraints – p.17/17

slide-52
SLIDE 52

Conclusion

Decision procedure for constraint with inequations, first order symbols, multiple "knowledges". Decision procedure for opacity with an active (Dolev-Yao) intruder. Future Works: General opacity problem. General constraints (allow to modelize Fairness/Protocol Composition...). Add equational theories.

Satisfiability of Dolev-Yao Constraints – p.17/17