Defining Encryption Lecture 2 1 Roadmap 2 Roadmap First, - - PowerPoint PPT Presentation

defining encryption
SMART_READER_LITE
LIVE PREVIEW

Defining Encryption Lecture 2 1 Roadmap 2 Roadmap First, - - PowerPoint PPT Presentation

Defining Encryption Lecture 2 1 Roadmap 2 Roadmap First, Symmetric Key Encryption 2 Roadmap First, Symmetric Key Encryption Defining the problem Well do it elaborately, so that it will be easy to see different levels of security 2


slide-1
SLIDE 1

Defining Encryption

Lecture 2

1

slide-2
SLIDE 2

Roadmap

2

slide-3
SLIDE 3

Roadmap

First, Symmetric Key Encryption

2

slide-4
SLIDE 4

Roadmap

First, Symmetric Key Encryption Defining the problem We’ll do it elaborately, so that it will be easy to see different levels of security

2

slide-5
SLIDE 5

Roadmap

First, Symmetric Key Encryption Defining the problem We’ll do it elaborately, so that it will be easy to see different levels of security Solving the problem In theory and in practice

2

slide-6
SLIDE 6

Roadmap

First, Symmetric Key Encryption Defining the problem We’ll do it elaborately, so that it will be easy to see different levels of security Solving the problem In theory and in practice Today: defining encryption

2

slide-7
SLIDE 7

Building the Model

3

slide-8
SLIDE 8

Building the Model

Alice, Bob and Eve. Alice and Bob share a key (a bit string)

Eve’ s Program

Key Key

Alice’ s Program Bob’ s Program

3

slide-9
SLIDE 9

Building the Model

Alice, Bob and Eve. Alice and Bob share a key (a bit string) Alice wants Bob to learn a message, “without Eve learning it”

Eve’ s Program

Key Key

Alice’ s Program Bob’ s Program

3

slide-10
SLIDE 10

Building the Model

Alice, Bob and Eve. Alice and Bob share a key (a bit string) Alice wants Bob to learn a message, “without Eve learning it” Alice can send out a bit string on the channel. Bob and Eve both get it

Eve’ s Program

Key Key

Alice’ s Program Bob’ s Program

3

slide-11
SLIDE 11

Encryption: Syntax

Key Key

Eve’ s Program Alice’ s Program Bob’ s Program

4

slide-12
SLIDE 12

Encryption: Syntax

Three algorithms Key Generation: What Alice and Bob do a priori, for creating the shared secret key Encryption: What Alice does with the message and the key to

  • btain a “ciphertext”

Decryption: What Bob does with the ciphertext and the key to get the message out of it

Key Key

Eve’ s Program Alice’ s Program Bob’ s Program

4

slide-13
SLIDE 13

Encryption: Syntax

Three algorithms Key Generation: What Alice and Bob do a priori, for creating the shared secret key Encryption: What Alice does with the message and the key to

  • btain a “ciphertext”

Decryption: What Bob does with the ciphertext and the key to get the message out of it All of these are (probabilistic) computations

Key Key

Eve’ s Program Alice’ s Program Bob’ s Program

4

slide-14
SLIDE 14

Modeling Computation

input

  • utput

5

slide-15
SLIDE 15

Modeling Computation

In our model (standard model) parties are programs (computations, say Turing Machines)

input

  • utput

5

slide-16
SLIDE 16

Modeling Computation

In our model (standard model) parties are programs (computations, say Turing Machines)

input

  • utput

5

slide-17
SLIDE 17

Modeling Computation

In our model (standard model) parties are programs (computations, say Turing Machines) Effect of computation limited to be in a blackbox manner (only through input/

  • utput functionality)

input

  • utput

5

slide-18
SLIDE 18

Modeling Computation

In our model (standard model) parties are programs (computations, say Turing Machines) Effect of computation limited to be in a blackbox manner (only through input/

  • utput functionality)

input

  • utput

5

slide-19
SLIDE 19

Modeling Computation

In our model (standard model) parties are programs (computations, say Turing Machines) Effect of computation limited to be in a blackbox manner (only through input/

  • utput functionality)

No side-information (timing, electric signals, ...) unless explicitly modeled

input

  • utput

5

slide-20
SLIDE 20

Modeling Computation

In our model (standard model) parties are programs (computations, say Turing Machines) Effect of computation limited to be in a blackbox manner (only through input/

  • utput functionality)

No side-information (timing, electric signals, ...) unless explicitly modeled Can be probabilistic

input

  • utput

5

slide-21
SLIDE 21

Modeling Computation

In our model (standard model) parties are programs (computations, say Turing Machines) Effect of computation limited to be in a blackbox manner (only through input/

  • utput functionality)

No side-information (timing, electric signals, ...) unless explicitly modeled Can be probabilistic

input

  • utput

coin flips

5

slide-22
SLIDE 22

Modeling Computation

In our model (standard model) parties are programs (computations, say Turing Machines) Effect of computation limited to be in a blackbox manner (only through input/

  • utput functionality)

No side-information (timing, electric signals, ...) unless explicitly modeled Can be probabilistic

input

  • utput

coin flips

Probabilistic view: Several possible ways the system could evolve, with different probabilities.

5

slide-23
SLIDE 23

Modeling Computation

In our model (standard model) parties are programs (computations, say Turing Machines) Effect of computation limited to be in a blackbox manner (only through input/

  • utput functionality)

No side-information (timing, electric signals, ...) unless explicitly modeled Can be probabilistic

input

  • utput

coin flips

Probabilistic view: Several possible ways the system could evolve, with different probabilities. Ideal coin flips: If n coins flipped, each outcome has probability 2-n

5

slide-24
SLIDE 24

Modeling Computation

In our model (standard model) parties are programs (computations, say Turing Machines) Effect of computation limited to be in a blackbox manner (only through input/

  • utput functionality)

No side-information (timing, electric signals, ...) unless explicitly modeled Can be probabilistic Sometimes stateful

input

  • utput

coin flips

Probabilistic view: Several possible ways the system could evolve, with different probabilities. Ideal coin flips: If n coins flipped, each outcome has probability 2-n

5

slide-25
SLIDE 25

Modeling Computation

In our model (standard model) parties are programs (computations, say Turing Machines) Effect of computation limited to be in a blackbox manner (only through input/

  • utput functionality)

No side-information (timing, electric signals, ...) unless explicitly modeled Can be probabilistic Sometimes stateful

input

  • utput

coin flips

Probabilistic view: Several possible ways the system could evolve, with different probabilities. Ideal coin flips: If n coins flipped, each outcome has probability 2-n

state

5

slide-26
SLIDE 26

Key/ Enc Key/ Dec

The Environment

6

slide-27
SLIDE 27

Key/ Enc Key/ Dec

Where does the message come from?

The Environment

6

slide-28
SLIDE 28

Key/ Enc Key/ Dec

Where does the message come from? Eve might already have partial information about the message, or might receive such information later

The Environment

6

slide-29
SLIDE 29

Key/ Enc Key/ Dec

Where does the message come from? Eve might already have partial information about the message, or might receive such information later In fact, Eve might influence the choice of the message

The Environment

6

slide-30
SLIDE 30

Key/ Enc Key/ Dec

Env

Where does the message come from? Eve might already have partial information about the message, or might receive such information later In fact, Eve might influence the choice of the message The environment

The Environment

6

slide-31
SLIDE 31

Key/ Enc Key/ Dec

Env

Where does the message come from? Eve might already have partial information about the message, or might receive such information later In fact, Eve might influence the choice of the message The environment Includes the operating systems and

  • ther programs run by the participants,

as well as other parties, if in a network

The Environment

6

slide-32
SLIDE 32

Key/ Enc Key/ Dec

Env

Where does the message come from? Eve might already have partial information about the message, or might receive such information later In fact, Eve might influence the choice of the message The environment Includes the operating systems and

  • ther programs run by the participants,

as well as other parties, if in a network

The Environment

6

slide-33
SLIDE 33

Key/ Enc Key/ Dec

Env

Where does the message come from? Eve might already have partial information about the message, or might receive such information later In fact, Eve might influence the choice of the message The environment Includes the operating systems and

  • ther programs run by the participants,

as well as other parties, if in a network Abstract entity from which the input comes and to which the output goes. Arbitrarily influenced by Eve

The Environment

6

slide-34
SLIDE 34

Defining Security

Key/ Enc Key/ Dec

Env

7

slide-35
SLIDE 35

Defining Security

Eve shouldn’t be able to produce any “bad effects” in any environment

Key/ Enc Key/ Dec

Env

7

slide-36
SLIDE 36

Defining Security

Eve shouldn’t be able to produce any “bad effects” in any environment Effects in the environment: modeled as a bit in the environment (called the output bit)

Key/ Enc Key/ Dec

Env

7

slide-37
SLIDE 37

Defining Security

Eve shouldn’t be able to produce any “bad effects” in any environment Effects in the environment: modeled as a bit in the environment (called the output bit) What is bad?

Key/ Enc Key/ Dec

Env

7

slide-38
SLIDE 38

Defining Security

Eve shouldn’t be able to produce any “bad effects” in any environment Effects in the environment: modeled as a bit in the environment (called the output bit) What is bad? Anything that Eve couldn’t have caused if an “ideal channel” was used

Key/ Enc Key/ Dec

Env

7

slide-39
SLIDE 39

The REAL/IDEAL Paradigm

Key/ Enc Key/ Dec

Env

Defining Security

8

slide-40
SLIDE 40

The REAL/IDEAL Paradigm

Eve shouldn’t produce any more effects than she could have in the ideal world

Key/ Enc Key/ Dec

Env

Defining Security

8

slide-41
SLIDE 41

The REAL/IDEAL Paradigm

Eve shouldn’t produce any more effects than she could have in the ideal world IDEAL world: Message sent over a (physically) secure channel. No encryption in this world.

Key/ Enc Key/ Dec

Env

Defining Security

8

slide-42
SLIDE 42

The REAL/IDEAL Paradigm

Eve shouldn’t produce any more effects than she could have in the ideal world IDEAL world: Message sent over a (physically) secure channel. No encryption in this world. REAL world: Using encryption

Key/ Enc Key/ Dec

Env

Defining Security

8

slide-43
SLIDE 43

The REAL/IDEAL Paradigm

Eve shouldn’t produce any more effects than she could have in the ideal world IDEAL world: Message sent over a (physically) secure channel. No encryption in this world. REAL world: Using encryption Encryption is secure if whatever an Eve can do in the REAL world, an Eve’ can do in the IDEAL world

Key/ Enc Key/ Dec

Env

Defining Security

8

slide-44
SLIDE 44

Key/ Enc Key/ Dec

Env REAL

The REAL/IDEAL Paradigm

Defining Security

9

slide-45
SLIDE 45

Key/ Enc Key/ Dec

Env

Send Recv

Env REAL IDEAL

The REAL/IDEAL Paradigm

Defining Security

9

slide-46
SLIDE 46

A scheme is secure (and correct) if:

Key/ Enc Key/ Dec

Env

Send Recv

Env REAL IDEAL

The REAL/IDEAL Paradigm

Defining Security

9

slide-47
SLIDE 47

A scheme is secure (and correct) if: ∀

Key/ Enc Key/ Dec

Env

Send Recv

Env REAL IDEAL

The REAL/IDEAL Paradigm

Defining Security

9

slide-48
SLIDE 48

A scheme is secure (and correct) if: ∀ ∃ s.t.

Key/ Enc Key/ Dec

Env

Send Recv

Env REAL IDEAL

The REAL/IDEAL Paradigm

Defining Security

9

slide-49
SLIDE 49

A scheme is secure (and correct) if: ∀ ∃ s.t. ∀

Key/ Enc Key/ Dec

Env

Send Recv

Env REAL IDEAL

The REAL/IDEAL Paradigm

Defining Security

9

slide-50
SLIDE 50

A scheme is secure (and correct) if: ∀ ∃ s.t. ∀

  • utput of

is distributed identically in REAL and IDEAL

Key/ Enc Key/ Dec

Env

Send Recv

Env REAL IDEAL

The REAL/IDEAL Paradigm

Defining Security

9

slide-51
SLIDE 51

Ready to go...

10

slide-52
SLIDE 52

Ready to go...

REAL/IDEAL (a.k.a simulation-based) security forms the basic template for a large variety of security definitions

10

slide-53
SLIDE 53

Ready to go...

REAL/IDEAL (a.k.a simulation-based) security forms the basic template for a large variety of security definitions We will see three definitions of encryption

10

slide-54
SLIDE 54

Ready to go...

REAL/IDEAL (a.k.a simulation-based) security forms the basic template for a large variety of security definitions We will see three definitions of encryption Security of “one-time encryption”

10

slide-55
SLIDE 55

Ready to go...

REAL/IDEAL (a.k.a simulation-based) security forms the basic template for a large variety of security definitions We will see three definitions of encryption Security of “one-time encryption” Security of (muti-message) encryption

10

slide-56
SLIDE 56

Ready to go...

REAL/IDEAL (a.k.a simulation-based) security forms the basic template for a large variety of security definitions We will see three definitions of encryption Security of “one-time encryption” Security of (muti-message) encryption Security against “active attacks”

10

slide-57
SLIDE 57

Ready to go...

REAL/IDEAL (a.k.a simulation-based) security forms the basic template for a large variety of security definitions We will see three definitions of encryption Security of “one-time encryption” Security of (muti-message) encryption Security against “active attacks” Will also see alternate (but essentially equivalent) security definitions

10

slide-58
SLIDE 58

Onetime Encryption

11

slide-59
SLIDE 59

Shared-key (Private-key) Encryption Key Generation: Randomized K ← K , uniformly randomly drawn from the key-space (or according to a key-distribution) Encryption: Deterministic Enc: M ×K →C Decryption: Deterministic Dec: C ×K → M

The Syntax

Onetime Encryption

11

slide-60
SLIDE 60

Perfect Secrecy

Onetime Encryption

12

slide-61
SLIDE 61

Perfect Secrecy

For all messages m, m’ in M {Enc(m,K)}K←KeyGen = {Enc(m’,K)}K←KeyGen

Onetime Encryption

12

slide-62
SLIDE 62

Perfect Secrecy

For all messages m, m’ in M {Enc(m,K)}K←KeyGen = {Enc(m’,K)}K←KeyGen 1 2 3 a b x y y z y x z y M K

Onetime Encryption

12

slide-63
SLIDE 63

Perfect Secrecy

For all messages m, m’ in M {Enc(m,K)}K←KeyGen = {Enc(m’,K)}K←KeyGen Distribution of ciphertext is defined by the randomness in the key 1 2 3 a b x y y z y x z y M K

Onetime Encryption

12

slide-64
SLIDE 64

Perfect Secrecy

For all messages m, m’ in M {Enc(m,K)}K←KeyGen = {Enc(m’,K)}K←KeyGen Distribution of ciphertext is defined by the randomness in the key In addition, require correctness ∀ m, K, Dec( Enc(m,K), K) = m 1 2 3 a b x y y z y x z y M K

Onetime Encryption

12

slide-65
SLIDE 65

Perfect Secrecy

For all messages m, m’ in M {Enc(m,K)}K←KeyGen = {Enc(m’,K)}K←KeyGen Distribution of ciphertext is defined by the randomness in the key In addition, require correctness ∀ m, K, Dec( Enc(m,K), K) = m E.g. One-time pad: M = K = C = {0,1}n and Enc(m,K) = m⊕K, Dec(c,K) = c⊕K 1 2 3 a b x y y z y x z y M K

Onetime Encryption

12

slide-66
SLIDE 66

Perfect Secrecy

For all messages m, m’ in M {Enc(m,K)}K←KeyGen = {Enc(m’,K)}K←KeyGen Distribution of ciphertext is defined by the randomness in the key In addition, require correctness ∀ m, K, Dec( Enc(m,K), K) = m E.g. One-time pad: M = K = C = {0,1}n and Enc(m,K) = m⊕K, Dec(c,K) = c⊕K More generally M = K = C = G (a finite group) and Enc(m,K) = m+K, Dec(c,K) = c-K 1 2 3 a b x y y z y x z y M K

Onetime Encryption

12

slide-67
SLIDE 67

SIM-Onetime secure if: ∀ ∃ s.t. ∀

Key/ Enc Key/ Dec

Env

Send Recv

Env REAL IDEAL

SIM-Onetime Security

Onetime Encryption

REAL=IDEAL

13

slide-68
SLIDE 68

SIM-Onetime secure if: ∀ ∃ s.t. ∀

Key/ Enc Key/ Dec

Env

Send Recv

Env REAL IDEAL

Class of environments which send only one message

SIM-Onetime Security

Onetime Encryption

REAL=IDEAL

13

slide-69
SLIDE 69

SIM-Onetime secure if: ∀ ∃ s.t. ∀

Key/ Enc Key/ Dec

Env

Send Recv

Env REAL IDEAL

Class of environments which send only one message

Equivalent to perfect secrecy + correctness

SIM-Onetime Security

Onetime Encryption

REAL=IDEAL

13

slide-70
SLIDE 70

Send Recv

Env

Key/ Enc Key/ Dec

Env

Perfect Secrecy + Correctness ⇒ SIM-Onetime Security

REAL IDEAL

14

slide-71
SLIDE 71

Send Recv

Env

Key/ Enc Key/ Dec

Env Consider this simulator: Runs adversary internally and lets it talk to the environment directly!

Perfect Secrecy + Correctness ⇒ SIM-Onetime Security

REAL IDEAL

14

slide-72
SLIDE 72

Send Recv

Env

Key/ Enc Key/ Dec

Env Consider this simulator: Runs adversary internally and lets it talk to the environment directly!

Perfect Secrecy + Correctness ⇒ SIM-Onetime Security

REAL IDEAL

14

slide-73
SLIDE 73

Send Recv

Env

Key/ Enc Key/ Dec

Env

m*

Consider this simulator: Runs adversary internally and lets it talk to the environment directly! Feeds it encryption

  • f a dummy

message

Perfect Secrecy + Correctness ⇒ SIM-Onetime Security

REAL IDEAL

14

slide-74
SLIDE 74

Send Recv

Env

Key/ Enc Key/ Dec

Env

m*

Consider this simulator: Runs adversary internally and lets it talk to the environment directly! Feeds it encryption

  • f a dummy

message Can show that REAL=IDEAL

Perfect Secrecy + Correctness ⇒ SIM-Onetime Security

REAL IDEAL

14

slide-75
SLIDE 75

Implicit Details

15

slide-76
SLIDE 76

Implicit Details

Random coins used by the encryption scheme is kept private within the programs of the scheme (KeyGen, Enc, Dec)

15

slide-77
SLIDE 77

Implicit Details

Random coins used by the encryption scheme is kept private within the programs of the scheme (KeyGen, Enc, Dec) If key is used for anything else (i.e., leaked to the environment) no more guarantees

15

slide-78
SLIDE 78

Implicit Details

Random coins used by the encryption scheme is kept private within the programs of the scheme (KeyGen, Enc, Dec) If key is used for anything else (i.e., leaked to the environment) no more guarantees In REAL, Eve only sees the ciphertext from Alice to Bob

15

slide-79
SLIDE 79

Implicit Details

Random coins used by the encryption scheme is kept private within the programs of the scheme (KeyGen, Enc, Dec) If key is used for anything else (i.e., leaked to the environment) no more guarantees In REAL, Eve only sees the ciphertext from Alice to Bob In particular no timing attacks

15

slide-80
SLIDE 80

Implicit Details

Random coins used by the encryption scheme is kept private within the programs of the scheme (KeyGen, Enc, Dec) If key is used for anything else (i.e., leaked to the environment) no more guarantees In REAL, Eve only sees the ciphertext from Alice to Bob In particular no timing attacks Message space is finite and known to Eve (and Eve’)

15

slide-81
SLIDE 81

Implicit Details

Random coins used by the encryption scheme is kept private within the programs of the scheme (KeyGen, Enc, Dec) If key is used for anything else (i.e., leaked to the environment) no more guarantees In REAL, Eve only sees the ciphertext from Alice to Bob In particular no timing attacks Message space is finite and known to Eve (and Eve’) Alternately, if message length is variable, it is given out to Eve’ in IDEAL as well

15

slide-82
SLIDE 82

Implicit Details

Random coins used by the encryption scheme is kept private within the programs of the scheme (KeyGen, Enc, Dec) If key is used for anything else (i.e., leaked to the environment) no more guarantees In REAL, Eve only sees the ciphertext from Alice to Bob In particular no timing attacks Message space is finite and known to Eve (and Eve’) Alternately, if message length is variable, it is given out to Eve’ in IDEAL as well Also, Eve’ allowed to learn when a message is sent

15

slide-83
SLIDE 83

IND-Onetime Security

Onetime Encryption

16

slide-84
SLIDE 84

IND-Onetime Experiment

IND-Onetime Security

Onetime Encryption

16

slide-85
SLIDE 85

IND-Onetime Experiment

.

IND-Onetime Security

Onetime Encryption

16

slide-86
SLIDE 86

IND-Onetime Experiment

.

IND-Onetime Security

Onetime Encryption

16

slide-87
SLIDE 87

IND-Onetime Experiment Experiment picks a random bit b. It also runs KeyGen to get a key K

.

b←{0,1}

IND-Onetime Security

Onetime Encryption

16

slide-88
SLIDE 88

IND-Onetime Experiment Experiment picks a random bit b. It also runs KeyGen to get a key K

Key/ Enc

.

b←{0,1}

IND-Onetime Security

Onetime Encryption

16

slide-89
SLIDE 89

IND-Onetime Experiment Experiment picks a random bit b. It also runs KeyGen to get a key K Adversary sends two messages m0, m1 to the experiment

Key/ Enc

.

b←{0,1} m0,m1

IND-Onetime Security

Onetime Encryption

16

slide-90
SLIDE 90

IND-Onetime Experiment Experiment picks a random bit b. It also runs KeyGen to get a key K Adversary sends two messages m0, m1 to the experiment Experiment replies with Enc(mb,K)

Key/ Enc

.

b←{0,1} m0,m1

IND-Onetime Security

Onetime Encryption

16

slide-91
SLIDE 91

IND-Onetime Experiment Experiment picks a random bit b. It also runs KeyGen to get a key K Adversary sends two messages m0, m1 to the experiment Experiment replies with Enc(mb,K)

Key/ Enc

.

b←{0,1} m0,m1 mb Enc(mb,K)

IND-Onetime Security

Onetime Encryption

16

slide-92
SLIDE 92

IND-Onetime Experiment Experiment picks a random bit b. It also runs KeyGen to get a key K Adversary sends two messages m0, m1 to the experiment Experiment replies with Enc(mb,K) Adversary returns a guess b’

Key/ Enc

.

b←{0,1} m0,m1 mb Enc(mb,K) b’

IND-Onetime Security

Onetime Encryption

16

slide-93
SLIDE 93

IND-Onetime Experiment Experiment picks a random bit b. It also runs KeyGen to get a key K Adversary sends two messages m0, m1 to the experiment Experiment replies with Enc(mb,K) Adversary returns a guess b’

Key/ Enc

.

b←{0,1} b’=b? m0,m1 mb Enc(mb,K) b’

IND-Onetime Security

Onetime Encryption

16

slide-94
SLIDE 94

IND-Onetime Experiment Experiment picks a random bit b. It also runs KeyGen to get a key K Adversary sends two messages m0, m1 to the experiment Experiment replies with Enc(mb,K) Adversary returns a guess b’ Experiments outputs 1 iff b’=b

Key/ Enc

.

b←{0,1} b’=b? m0,m1 mb Enc(mb,K) b’ Yes/No

IND-Onetime Security

Onetime Encryption

16

slide-95
SLIDE 95

IND-Onetime Experiment Experiment picks a random bit b. It also runs KeyGen to get a key K Adversary sends two messages m0, m1 to the experiment Experiment replies with Enc(mb,K) Adversary returns a guess b’ Experiments outputs 1 iff b’=b IND-Onetime secure if for every adversary, Pr[b=b’] = 1/2

Key/ Enc

.

b←{0,1} b’=b? m0,m1 mb Enc(mb,K) b’ Yes/No

IND-Onetime Security

Onetime Encryption

16

slide-96
SLIDE 96

IND-Onetime Experiment Experiment picks a random bit b. It also runs KeyGen to get a key K Adversary sends two messages m0, m1 to the experiment Experiment replies with Enc(mb,K) Adversary returns a guess b’ Experiments outputs 1 iff b’=b IND-Onetime secure if for every adversary, Pr[b=b’] = 1/2

Key/ Enc

.

b←{0,1} b’=b? m0,m1 mb Enc(mb,K) b’ Yes/No Equivalent to perfect secrecy

IND-Onetime Security

Onetime Encryption

16

slide-97
SLIDE 97

Shared-key (Private-key) Encryption Key Generation: Randomized K ← K , uniformly randomly drawn from the key-space (or according to a key-distribution) Encryption: Randomized Enc: M ×K ×R →C. During encryption a fresh random string will be chosen uniformly at random from R Decryption: Deterministic Dec: C ×K → M

The Syntax

Symmetric-Key Encryption

17

slide-98
SLIDE 98

SIM-CPA secure if: ∀ ∃ s.t. ∀

Key/ Enc Key/ Dec

Env

Send Recv

Env REAL IDEAL

SIM-CPA Security

REAL ≈ IDEAL

Symmetric-Key Encryption

18

slide-99
SLIDE 99

SIM-CPA secure if: ∀ ∃ s.t. ∀

Key/ Enc Key/ Dec

Env

Send Recv

Env REAL IDEAL

SIM-CPA Security

Same as SIM-onetime security, but not restricted to environments which send only one message

REAL ≈ IDEAL

Symmetric-Key Encryption

18

slide-100
SLIDE 100

SIM-CPA secure if: ∀ ∃ s.t. ∀

Key/ Enc Key/ Dec

Env

Send Recv

Env REAL IDEAL

SIM-CPA Security

Same as SIM-onetime security, but not restricted to environments which send only one message

REAL ≈ IDEAL

Symmetric-Key Encryption

Later

18

slide-101
SLIDE 101

Key/ Enc

IND-CPA Security

Symmetric-Key Encryption

19

slide-102
SLIDE 102

Experiment picks a random bit b. It also runs KeyGen to get a key K

Key/ Enc

b←{0,1}

IND-CPA Security

Symmetric-Key Encryption

19

slide-103
SLIDE 103

Experiment picks a random bit b. It also runs KeyGen to get a key K For as long as Adversary wants

Key/ Enc

b←{0,1}

IND-CPA Security

Symmetric-Key Encryption

19

slide-104
SLIDE 104

Experiment picks a random bit b. It also runs KeyGen to get a key K For as long as Adversary wants Adv sends two messages m0, m1 to the experiment

Key/ Enc

b←{0,1}

IND-CPA Security

Symmetric-Key Encryption

19

slide-105
SLIDE 105

Experiment picks a random bit b. It also runs KeyGen to get a key K For as long as Adversary wants Adv sends two messages m0, m1 to the experiment Expt returns Enc(mb,K) to the adversary

Key/ Enc

b←{0,1}

IND-CPA Security

Symmetric-Key Encryption

19

slide-106
SLIDE 106

Experiment picks a random bit b. It also runs KeyGen to get a key K For as long as Adversary wants Adv sends two messages m0, m1 to the experiment Expt returns Enc(mb,K) to the adversary

Key/ Enc

b←{0,1} m0,m1

IND-CPA Security

Symmetric-Key Encryption

19

slide-107
SLIDE 107

b

Experiment picks a random bit b. It also runs KeyGen to get a key K For as long as Adversary wants Adv sends two messages m0, m1 to the experiment Expt returns Enc(mb,K) to the adversary

Key/ Enc

b←{0,1} m0,m1

IND-CPA Security

Symmetric-Key Encryption

19

slide-108
SLIDE 108

b

Experiment picks a random bit b. It also runs KeyGen to get a key K For as long as Adversary wants Adv sends two messages m0, m1 to the experiment Expt returns Enc(mb,K) to the adversary

Key/ Enc

b←{0,1} m0,m1 mb Enc(mb,K)

IND-CPA Security

Symmetric-Key Encryption

19

slide-109
SLIDE 109

b

Experiment picks a random bit b. It also runs KeyGen to get a key K For as long as Adversary wants Adv sends two messages m0, m1 to the experiment Expt returns Enc(mb,K) to the adversary

Key/ Enc

b←{0,1} m0,m1 mb Enc(mb,K)

IND-CPA Security

Symmetric-Key Encryption

19

slide-110
SLIDE 110

b

Experiment picks a random bit b. It also runs KeyGen to get a key K For as long as Adversary wants Adv sends two messages m0, m1 to the experiment Expt returns Enc(mb,K) to the adversary Adversary returns a guess b’

Key/ Enc

b←{0,1} m0,m1 mb Enc(mb,K) b’

IND-CPA Security

Symmetric-Key Encryption

19

slide-111
SLIDE 111

b

Experiment picks a random bit b. It also runs KeyGen to get a key K For as long as Adversary wants Adv sends two messages m0, m1 to the experiment Expt returns Enc(mb,K) to the adversary Adversary returns a guess b’ Experiment outputs 1 iff b’=b

Key/ Enc

b←{0,1} b’=b? m0,m1 mb Enc(mb,K) b’ Yes/No

IND-CPA Security

Symmetric-Key Encryption

19

slide-112
SLIDE 112

b

Experiment picks a random bit b. It also runs KeyGen to get a key K For as long as Adversary wants Adv sends two messages m0, m1 to the experiment Expt returns Enc(mb,K) to the adversary Adversary returns a guess b’ Experiment outputs 1 iff b’=b IND-CPA secure if for all “feasible” adversaries Pr[b’=b] ≈ 1/2

Key/ Enc

b←{0,1} b’=b? m0,m1 mb Enc(mb,K) b’ Yes/No

IND-CPA Security

Symmetric-Key Encryption

19

slide-113
SLIDE 113

b

Experiment picks a random bit b. It also runs KeyGen to get a key K For as long as Adversary wants Adv sends two messages m0, m1 to the experiment Expt returns Enc(mb,K) to the adversary Adversary returns a guess b’ Experiment outputs 1 iff b’=b IND-CPA secure if for all “feasible” adversaries Pr[b’=b] ≈ 1/2

Key/ Enc

b←{0,1} b’=b? m0,m1 mb Enc(mb,K) b’ Yes/No

IND-CPA Security

Symmetric-Key Encryption

IND-CPA + ~correctness equivalent to SIM-CPA

19

slide-114
SLIDE 114

Key/ Enc Key/ Dec

Env

Send Recv

Env REAL IDEAL

SIM-CCA Security

Symmetric-Key Encryption

SIM-CCA secure if: ∀ ∃ s.t. ∀ REAL ≈ IDEAL

20

slide-115
SLIDE 115

Key/ Enc Key/ Dec

Env

Send Recv

Env REAL IDEAL

SIM-CCA Security

Symmetric-Key Encryption

An active adversary can inject messages into the channel

SIM-CCA secure if: ∀ ∃ s.t. ∀ REAL ≈ IDEAL

20

slide-116
SLIDE 116

Key/ Enc Key/ Dec

Env

Send Recv

Env REAL IDEAL

SIM-CCA Security

Symmetric-Key Encryption

An active adversary can inject messages into the channel

SIM-CCA secure if: ∀ ∃ s.t. ∀ REAL ≈ IDEAL

20

slide-117
SLIDE 117

Key/ Enc Key/ Dec

Env

Send Recv

Env REAL IDEAL Replay Filter

SIM-CCA Security

Symmetric-Key Encryption

An active adversary can inject messages into the channel

SIM-CCA secure if: ∀ ∃ s.t. ∀ REAL ≈ IDEAL

20

slide-118
SLIDE 118

Experiment picks b←{0,1} and K←KeyGen For as long as Adversary wants Adv sends two messages m0, m1 to the experiment Expt returns Enc(mb,K) to the adversary Adversary returns a guess b’ Experiments outputs 1 iff b’=b IND-CCA secure if for all feasible adversaries Pr[b’=b] ≈ 1/2

b

Key/ Enc

b←{0,1} b’=b? m0,m1 mb b’ Yes/No Enc(mb,K)

IND-CCA Security

Symmetric-Key Encryption

21

slide-119
SLIDE 119

Experiment picks b←{0,1} and K←KeyGen For as long as Adversary wants Adv sends two messages m0, m1 to the experiment Expt returns Enc(mb,K) to the adversary Adversary returns a guess b’ Experiments outputs 1 iff b’=b IND-CCA secure if for all feasible adversaries Pr[b’=b] ≈ 1/2

b

Key/ Enc

b←{0,1} b’=b? m0,m1 mb b’ Yes/No

Adv gets (guarded) access to DecK oracle

Enc(mb,K)

Key/ Dec

IND-CCA Security

Symmetric-Key Encryption

21

slide-120
SLIDE 120

Experiment picks b←{0,1} and K←KeyGen For as long as Adversary wants Adv sends two messages m0, m1 to the experiment Expt returns Enc(mb,K) to the adversary Adversary returns a guess b’ Experiments outputs 1 iff b’=b IND-CCA secure if for all feasible adversaries Pr[b’=b] ≈ 1/2

b

Key/ Enc

b←{0,1} b’=b? m0,m1 mb b’ Yes/No

Adv gets (guarded) access to DecK oracle

Enc(mb,K)

Key/ Dec

No challenge ciphertext answered

IND-CCA Security

Symmetric-Key Encryption

21

slide-121
SLIDE 121

Experiment picks b←{0,1} and K←KeyGen For as long as Adversary wants Adv sends two messages m0, m1 to the experiment Expt returns Enc(mb,K) to the adversary Adversary returns a guess b’ Experiments outputs 1 iff b’=b IND-CCA secure if for all feasible adversaries Pr[b’=b] ≈ 1/2

b

Key/ Enc

b←{0,1} b’=b? m0,m1 mb b’ Yes/No

Adv gets (guarded) access to DecK oracle

Enc(mb,K)

Key/ Dec

No challenge ciphertext answered

IND-CCA Security

Symmetric-Key Encryption

IND-CCA + ~correctness equivalent to SIM-CCA

21

slide-122
SLIDE 122

Perspective on Definitions

22

slide-123
SLIDE 123

Perspective on Definitions

“Technical” vs. “Convincing”

22

slide-124
SLIDE 124

Perspective on Definitions

“Technical” vs. “Convincing” For simple scenarios technical definitions could be convincing

22

slide-125
SLIDE 125

Perspective on Definitions

“Technical” vs. “Convincing” For simple scenarios technical definitions could be convincing e.g. Perfect Secrecy

22

slide-126
SLIDE 126

Perspective on Definitions

“Technical” vs. “Convincing” For simple scenarios technical definitions could be convincing e.g. Perfect Secrecy IND- definitions tend to be technical: more low-level details, but may not make the big picture clear. Could have “weaknesses”

22

slide-127
SLIDE 127

Perspective on Definitions

“Technical” vs. “Convincing” For simple scenarios technical definitions could be convincing e.g. Perfect Secrecy IND- definitions tend to be technical: more low-level details, but may not make the big picture clear. Could have “weaknesses” SIM- definitions give the big picture, but may not give details

  • f what is involved in satisfying it. Could be “too strong”

22

slide-128
SLIDE 128

Perspective on Definitions

“Technical” vs. “Convincing” For simple scenarios technical definitions could be convincing e.g. Perfect Secrecy IND- definitions tend to be technical: more low-level details, but may not make the big picture clear. Could have “weaknesses” SIM- definitions give the big picture, but may not give details

  • f what is involved in satisfying it. Could be “too strong”

Best of both worlds when they are equivalent: use IND- definition while say proving security of a construction; use SIM- definition when low-level details are not important

22

slide-129
SLIDE 129

Summary

23

slide-130
SLIDE 130

Summary

Security definitions:

23

slide-131
SLIDE 131

Summary

Security definitions: SIM-Onetime, SIM-CPA, SIM-CCA

23

slide-132
SLIDE 132

Summary

Security definitions: SIM-Onetime, SIM-CPA, SIM-CCA IND-Onetime/Perfect Secrecy, IND-CPA, IND-CCA

23

slide-133
SLIDE 133

Summary

Security definitions: SIM-Onetime, SIM-CPA, SIM-CCA IND-Onetime/Perfect Secrecy, IND-CPA, IND-CCA Next Lecture

23

slide-134
SLIDE 134

Summary

Security definitions: SIM-Onetime, SIM-CPA, SIM-CCA IND-Onetime/Perfect Secrecy, IND-CPA, IND-CCA Next Lecture For multi-message schemes we relaxed the “perfect” simulation requirement

23

slide-135
SLIDE 135

Summary

Security definitions: SIM-Onetime, SIM-CPA, SIM-CCA IND-Onetime/Perfect Secrecy, IND-CPA, IND-CCA Next Lecture For multi-message schemes we relaxed the “perfect” simulation requirement But what is ≈ ?

23

slide-136
SLIDE 136

Summary

Security definitions: SIM-Onetime, SIM-CPA, SIM-CCA IND-Onetime/Perfect Secrecy, IND-CPA, IND-CCA Next Lecture For multi-message schemes we relaxed the “perfect” simulation requirement But what is ≈ ? And, how to build symmetric-key encryption schemes

23