defining encryption
play

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


  1. Defining Security The REAL/IDEAL Paradigm Eve shouldn’t produce any more effects than she could have in the Key/ Key/ ideal world Enc Dec IDEAL world: Message sent over a (physically) secure channel. No encryption in this world. Env 8

  2. Defining Security The REAL/IDEAL Paradigm Eve shouldn’t produce any more effects than she could have in the Key/ Key/ ideal world Enc Dec IDEAL world: Message sent over a (physically) secure channel. No encryption in this world. REAL world: Using encryption Env 8

  3. Defining Security The REAL/IDEAL Paradigm Eve shouldn’t produce any more effects than she could have in the Key/ Key/ ideal world Enc Dec 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, Env an Eve’ can do in the IDEAL world 8

  4. Defining Security The REAL/IDEAL Paradigm Key/ Key/ Enc Dec Env REAL 9

  5. Defining Security The REAL/IDEAL Paradigm Key/ Key/ Recv Send Enc Dec Env Env REAL IDEAL 9

  6. Defining Security The REAL/IDEAL Paradigm Key/ Key/ Recv Send Enc Dec A scheme is secure (and correct) if: Env Env REAL IDEAL 9

  7. Defining Security The REAL/IDEAL Paradigm Key/ Key/ Recv Send Enc Dec A scheme is secure (and correct) if: ∀ Env Env REAL IDEAL 9

  8. Defining Security The REAL/IDEAL Paradigm Key/ Key/ Recv Send Enc Dec A scheme is secure (and correct) if: ∀ ∃ s.t. Env Env REAL IDEAL 9

  9. Defining Security The REAL/IDEAL Paradigm Key/ Key/ Recv Send Enc Dec A scheme is secure (and correct) if: ∀ ∃ s.t. ∀ Env Env REAL IDEAL 9

  10. Defining Security The REAL/IDEAL Paradigm Key/ Key/ Recv Send Enc Dec A scheme is secure (and correct) if: ∀ ∃ s.t. ∀ output of is distributed Env Env REAL identically in IDEAL REAL and IDEAL 9

  11. Ready to go... 10

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

  13. 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

  14. 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

  15. 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

  16. 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

  17. 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

  18. Onetime Encryption 11

  19. Onetime Encryption The Syntax 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 11

  20. Onetime Encryption Perfect Secrecy 12

  21. Onetime Encryption Perfect Secrecy For all messages m, m’ in M {Enc(m,K)} K ← KeyGen = {Enc(m’,K)} K ← KeyGen 12

  22. Onetime Encryption Perfect Secrecy For all messages m, m’ in M K 0 1 2 3 {Enc(m,K)} K ← KeyGen = {Enc(m’,K)} K ← KeyGen M a x y y z b y x z y 12

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

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

  25. Onetime Encryption Perfect Secrecy For all messages m, m’ in M K 0 1 2 3 {Enc(m,K)} K ← KeyGen = {Enc(m’,K)} K ← KeyGen M Distribution of ciphertext is defined by a x y y z the randomness in the key b y x z y 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 12

  26. Onetime Encryption Perfect Secrecy For all messages m, m’ in M K 0 1 2 3 {Enc(m,K)} K ← KeyGen = {Enc(m’,K)} K ← KeyGen M Distribution of ciphertext is defined by a x y y z the randomness in the key b y x z y 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 12

  27. Onetime Encryption SIM-Onetime Security Key/ Key/ Recv Send Enc Dec SIM-Onetime secure if: ∀ ∃ s.t. ∀ REAL=IDEAL Env Env IDEAL REAL 13

  28. Onetime Encryption SIM-Onetime Security Class of environments which send only one message Key/ Key/ Recv Send Enc Dec SIM-Onetime secure if: ∀ ∃ s.t. ∀ REAL=IDEAL Env Env IDEAL REAL 13

  29. Onetime Encryption Equivalent to perfect secrecy + correctness SIM-Onetime Security Class of environments which send only one message Key/ Key/ Recv Send Enc Dec SIM-Onetime secure if: ∀ ∃ s.t. ∀ REAL=IDEAL Env Env IDEAL REAL 13

  30. Perfect Secrecy + Correctness ⇒ SIM-Onetime Security Key/ Key/ Recv Send Enc Dec Env Env IDEAL REAL 14

  31. Perfect Secrecy + Correctness ⇒ SIM-Onetime Security Consider this Key/ Key/ simulator: Runs Recv Send Enc Dec adversary internally and lets it talk to the environment directly! Env Env IDEAL REAL 14

  32. Perfect Secrecy + Correctness ⇒ SIM-Onetime Security Consider this Key/ Key/ simulator: Runs Recv Send Enc Dec adversary internally and lets it talk to the environment directly! Env Env IDEAL REAL 14

  33. Perfect Secrecy + Correctness ⇒ SIM-Onetime Security Consider this Key/ Key/ simulator: Runs Recv Send Enc Dec adversary internally and lets it talk to the environment directly! Feeds it encryption of a dummy m* message Env Env IDEAL REAL 14

  34. Perfect Secrecy + Correctness ⇒ SIM-Onetime Security Consider this Key/ Key/ simulator: Runs Recv Send Enc Dec adversary internally and lets it talk to the environment directly! Feeds it encryption of a dummy m* message Can show that REAL=IDEAL Env Env IDEAL REAL 14

  35. Implicit Details 15

  36. Implicit Details Random coins used by the encryption scheme is kept private within the programs of the scheme (KeyGen, Enc, Dec) 15

  37. 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

  38. 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

  39. 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

  40. 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

  41. 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

  42. 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

  43. Onetime Encryption IND-Onetime Security 16

  44. Onetime Encryption IND-Onetime Security IND-Onetime Experiment 16

  45. Onetime Encryption IND-Onetime Security IND-Onetime Experiment . 16

  46. Onetime Encryption IND-Onetime Security IND-Onetime Experiment . 16

  47. Onetime Encryption IND-Onetime Security IND-Onetime Experiment Experiment picks a random bit b. It also runs KeyGen to get a key K . b ← {0,1} 16

  48. Onetime Encryption IND-Onetime Security IND-Onetime Experiment Key/ Experiment picks a random bit b. It Enc also runs KeyGen to get a key K . b ← {0,1} 16

  49. Onetime Encryption IND-Onetime Security IND-Onetime Experiment Key/ Experiment picks a random bit b. It Enc also runs KeyGen to get a key K Adversary sends two messages m 0 , m 1 to the experiment m 0 ,m 1 . b ← {0,1} 16

  50. Onetime Encryption IND-Onetime Security IND-Onetime Experiment Key/ Experiment picks a random bit b. It Enc also runs KeyGen to get a key K Adversary sends two messages m 0 , m 1 to the experiment Experiment replies with Enc(m b ,K) m 0 ,m 1 . b ← {0,1} 16

  51. Onetime Encryption IND-Onetime Security IND-Onetime Experiment Key/ Experiment picks a random bit b. It Enc also runs KeyGen to get a key K Enc(m b ,K) Adversary sends two messages m 0 , m b m 1 to the experiment Experiment replies with Enc(m b ,K) m 0 ,m 1 . b ← {0,1} 16

  52. Onetime Encryption IND-Onetime Security IND-Onetime Experiment Key/ Experiment picks a random bit b. It Enc also runs KeyGen to get a key K Enc(m b ,K) Adversary sends two messages m 0 , m b m 1 to the experiment Experiment replies with Enc(m b ,K) m 0 ,m 1 Adversary returns a guess b’ b’ . b ← {0,1} 16

  53. Onetime Encryption IND-Onetime Security IND-Onetime Experiment Key/ Experiment picks a random bit b. It Enc also runs KeyGen to get a key K Enc(m b ,K) Adversary sends two messages m 0 , m b m 1 to the experiment Experiment replies with Enc(m b ,K) m 0 ,m 1 Adversary returns a guess b’ b’ . b ← {0,1} b’=b? 16

  54. Onetime Encryption IND-Onetime Security IND-Onetime Experiment Key/ Experiment picks a random bit b. It Enc also runs KeyGen to get a key K Enc(m b ,K) Adversary sends two messages m 0 , m b m 1 to the experiment Experiment replies with Enc(m b ,K) m 0 ,m 1 Adversary returns a guess b’ b’ . Experiments outputs 1 iff b’=b b ← {0,1} b’=b? Yes/No 16

  55. Onetime Encryption IND-Onetime Security IND-Onetime Experiment Key/ Experiment picks a random bit b. It Enc also runs KeyGen to get a key K Enc(m b ,K) Adversary sends two messages m 0 , m b m 1 to the experiment Experiment replies with Enc(m b ,K) m 0 ,m 1 Adversary returns a guess b’ b’ . Experiments outputs 1 iff b’=b b ← {0,1} b’=b? IND-Onetime secure if for every Yes/No adversary, Pr[b=b’] = 1/2 16

  56. Onetime Encryption Equivalent to IND-Onetime Security perfect secrecy IND-Onetime Experiment Key/ Experiment picks a random bit b. It Enc also runs KeyGen to get a key K Enc(m b ,K) Adversary sends two messages m 0 , m b m 1 to the experiment Experiment replies with Enc(m b ,K) m 0 ,m 1 Adversary returns a guess b’ b’ . Experiments outputs 1 iff b’=b b ← {0,1} b’=b? IND-Onetime secure if for every Yes/No adversary, Pr[b=b’] = 1/2 16

  57. Symmetric-Key Encryption The Syntax 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 17

  58. Symmetric-Key Encryption SIM-CPA Security Key/ Key/ Recv Send Enc Dec SIM-CPA secure if: ∀ ∃ s.t. ∀ REAL ≈ IDEAL Env Env IDEAL REAL 18

  59. Symmetric-Key Encryption SIM-CPA Security Same as SIM-onetime security, but not restricted to environments which send only one message Key/ Key/ Recv Send Enc Dec SIM-CPA secure if: ∀ ∃ s.t. ∀ REAL ≈ IDEAL Env Env IDEAL REAL 18

  60. Symmetric-Key Encryption SIM-CPA Security Same as SIM-onetime security, but not restricted to environments which send only one message Key/ Key/ Recv Send Enc Dec SIM-CPA secure if: ∀ ∃ s.t. ∀ REAL ≈ IDEAL Env Env Later IDEAL REAL 18

Recommend


More recommend