symmetric key encryption constructions
play

Symmetric-Key Encryption: constructions Lecture 4 PRG, Stream - PowerPoint PPT Presentation

Symmetric-Key Encryption: constructions Lecture 4 PRG, Stream Cipher Story So Far Story So Far We defined (passive) security of Symmetric Key Encryption (SKE) Story So Far We defined (passive) security of Symmetric Key Encryption (SKE)


  1. Symmetric-Key Encryption: constructions Lecture 4 PRG, Stream Cipher

  2. Story So Far

  3. Story So Far We defined (passive) security of Symmetric Key Encryption (SKE)

  4. Story So Far We defined (passive) security of Symmetric Key Encryption (SKE) SIM-CPA = IND-CPA + approximate correctness

  5. Story So Far We defined (passive) security of Symmetric Key Encryption (SKE) SIM-CPA = IND-CPA + approximate correctness Exploits the restriction to PPT entities

  6. Story So Far We defined (passive) security of Symmetric Key Encryption (SKE) SIM-CPA = IND-CPA + approximate correctness Exploits the restriction to PPT entities Allows negligible advantage to the adversary

  7. Story So Far We defined (passive) security of Symmetric Key Encryption (SKE) SIM-CPA = IND-CPA + approximate correctness Exploits the restriction to PPT entities Allows negligible advantage to the adversary Today: Constructing SKE from Pseudorandomness

  8. Story So Far We defined (passive) security of Symmetric Key Encryption (SKE) SIM-CPA = IND-CPA + approximate correctness Exploits the restriction to PPT entities Allows negligible advantage to the adversary Today: Constructing SKE from Pseudorandomness Next time: Pseudorandomness ← One-Way Permutations

  9. Constructing SKE schemes

  10. Constructing SKE schemes Basic idea: “stretchable” pseudo-random one-time pads (kept compressed in the key)

  11. Constructing SKE schemes Basic idea: “stretchable” pseudo-random one-time pads (kept compressed in the key) (Will also need a mechanism to ensure that the same piece of the one-time pad is not used more than once)

  12. Constructing SKE schemes Basic idea: “stretchable” pseudo-random one-time pads (kept compressed in the key) (Will also need a mechanism to ensure that the same piece of the one-time pad is not used more than once) Approach used in practice today: complex functions which are conjectured to have the requisite pseudo-randomness properties (stream-ciphers, block-ciphers)

  13. Constructing SKE schemes Basic idea: “stretchable” pseudo-random one-time pads (kept compressed in the key) (Will also need a mechanism to ensure that the same piece of the one-time pad is not used more than once) Approach used in practice today: complex functions which are conjectured to have the requisite pseudo-randomness properties (stream-ciphers, block-ciphers) Theoretical Constructions: Security relies on certain computational hardness assumptions related to simple functions

  14. Pseudorandomness Generator (PRG)

  15. Pseudorandomness Generator (PRG) Expand a short random seed to a “random-looking” string

  16. Pseudorandomness Generator (PRG) Expand a short random seed to a “random-looking” string First, PRG with fixed stretch: G k : {0,1} k → {0,1} n(k) , n(k) > k

  17. Pseudorandomness Generator (PRG) Expand a short random seed to a “random-looking” string First, PRG with fixed stretch: G k : {0,1} k → {0,1} n(k) , n(k) > k How does one define random-looking?

  18. Pseudorandomness Generator (PRG) Expand a short random seed to a “random-looking” string First, PRG with fixed stretch: G k : {0,1} k → {0,1} n(k) , n(k) > k How does one define random-looking? Next-Bit Unpredictability: PPT adversary can’ t predict i th bit of a sample from its first (i-1) bits (for every i ∈ {0,1,...,n-1})

  19. Pseudorandomness Generator (PRG) Expand a short random seed to a “random-looking” string First, PRG with fixed stretch: G k : {0,1} k → {0,1} n(k) , n(k) > k How does one define random-looking? Next-Bit Unpredictability: PPT adversary can’ t predict i th bit of a sample from its first (i-1) bits (for every i ∈ {0,1,...,n-1}) A “more correct” definition:

  20. Pseudorandomness Generator (PRG) Expand a short random seed to a “random-looking” string First, PRG with fixed stretch: G k : {0,1} k → {0,1} n(k) , n(k) > k How does one define random-looking? Next-Bit Unpredictability: PPT adversary can’ t predict i th bit of a sample from its first (i-1) bits (for every i ∈ {0,1,...,n-1}) A “more correct” definition: PPT adversary can’ t distinguish between a sample from {G k (x)} x ← {0,1}k and one from {0,1} n(k)

  21. Pseudorandomness Generator (PRG) Expand a short random seed to a “random-looking” string First, PRG with fixed stretch: G k : {0,1} k → {0,1} n(k) , n(k) > k How does one define random-looking? Next-Bit Unpredictability: PPT adversary can’ t predict i th bit of a sample from its first (i-1) bits (for every i ∈ {0,1,...,n-1}) A “more correct” definition: PPT adversary can’ t distinguish between a sample from {G k (x)} x ← {0,1}k and one from {0,1} n(k) Turns out they are equivalent!

  22. Pseudorandomness Generator (PRG) Expand a short random seed to a “random-looking” string First, PRG with fixed stretch: G k : {0,1} k → {0,1} n(k) , n(k) > k How does one define random-looking? Next-Bit Unpredictability: PPT adversary can’ t predict i th bit of a sample from its first (i-1) bits (for every i ∈ {0,1,...,n-1}) A “more correct” definition: PPT adversary can’ t distinguish between a sample from {G k (x)} x ← {0,1}k and one from {0,1} n(k) | Pr y ← PRG [A(y)=0] - Pr y ← rand [A(y)=0] | Turns out they are equivalent! is negligible for all PPT A

  23. Computational Indistinguishability

  24. Computational Indistinguishability Distribution ensemble: A sequence of distributions (typically on a growing sample-space) indexed by k. Denoted {X k }

  25. Computational Indistinguishability Distribution ensemble: A sequence of distributions (typically on a growing sample-space) indexed by k. Denoted {X k } E.g., ciphertext distributions, indexed by security parameter

  26. Computational Indistinguishability Distribution ensemble: A sequence of distributions (typically on a growing sample-space) indexed by k. Denoted {X k } E.g., ciphertext distributions, indexed by security parameter Two distribution ensembles {X k } and {X’ k } are said to be computationally indistinguishable if

  27. Computational Indistinguishability Distribution ensemble: A sequence of distributions (typically on a growing sample-space) indexed by k. Denoted {X k } E.g., ciphertext distributions, indexed by security parameter Two distribution ensembles {X k } and {X’ k } are said to be computationally indistinguishable if ∀ (non-uniform) PPT distinguisher D, ∃ negligible ν (k) such that

  28. Computational Indistinguishability Distribution ensemble: A sequence of distributions (typically on a growing sample-space) indexed by k. Denoted {X k } E.g., ciphertext distributions, indexed by security parameter Two distribution ensembles {X k } and {X’ k } are said to be computationally indistinguishable if ∀ (non-uniform) PPT distinguisher D, ∃ negligible ν (k) such that | Pr x ← X k [D(x)=1] - Pr x ← X’ k [D(x)=1] | ≤ ν (k)

  29. Computational Indistinguishability Two distribution ensembles {X k } and {X’ k } are said to be computationally indistinguishable if ∀ (non-uniform) PPT distinguisher D, ∃ negligible ν (k) such that | Pr x ← X k [D(x)=1] - Pr x ← X’ k [D(x)=1] | ≤ ν (k)

  30. Computational Indistinguishability Two distribution ensembles {X k } and {X’ k } are said to be X k ≈ X’ k computationally indistinguishable if ∀ (non-uniform) PPT distinguisher D, ∃ negligible ν (k) such that | Pr x ← X k [D(x)=1] - Pr x ← X’ k [D(x)=1] | ≤ ν (k)

  31. Computational Indistinguishability Two distribution ensembles {X k } and {X’ k } are said to be X k ≈ X’ k computationally indistinguishable if ∀ (non-uniform) PPT distinguisher D, ∃ negligible ν (k) such that | Pr x ← X k [D(x)=1] - Pr x ← X’ k [D(x)=1] | ≤ ν (k) cf.: Two distribution ensembles {X k } and {X’ k } are said to be statistically indistinguishable if ∀ functions T, ∃ negligible ν (k) s.t. | Pr x ← X k [T(x)=1] - Pr x ← X’ k [T(x)=1] | ≤ ν (k)

  32. Computational Indistinguishability Two distribution ensembles {X k } and {X’ k } are said to be X k ≈ X’ k computationally indistinguishable if ∀ (non-uniform) PPT distinguisher D, ∃ negligible ν (k) such that | Pr x ← X k [D(x)=1] - Pr x ← X’ k [D(x)=1] | ≤ ν (k) cf.: Two distribution ensembles {X k } and {X’ k } are said to be statistically indistinguishable if ∀ functions T, ∃ negligible ν (k) s.t. | Pr x ← X k [T(x)=1] - Pr x ← X’ k [T(x)=1] | ≤ ν (k) Can rewrite as, ∃ negligible ν (k) s.t. Δ (X k ,X’ k ) ≤ ν (k) where Δ (X k ,X’ k ) := max T | Pr x ← X k [T(x)=1] - Pr x ← X’ k [T(x)=1] |

  33. Computational Indistinguishability Two distribution ensembles {X k } and {X’ k } are said to be X k ≈ X’ k computationally indistinguishable if ∀ (non-uniform) PPT distinguisher D, ∃ negligible ν (k) such that | Pr x ← X k [D(x)=1] - Pr x ← X’ k [D(x)=1] | ≤ ν (k) cf.: Two distribution ensembles {X k } and {X’ k } are said to be statistically indistinguishable if ∀ functions T, ∃ negligible ν (k) s.t. | Pr x ← X k [T(x)=1] - Pr x ← X’ k [T(x)=1] | ≤ ν (k) Can rewrite as, ∃ negligible ν (k) s.t. Δ (X k ,X’ k ) ≤ ν (k) where Δ (X k ,X’ k ) := max T | Pr x ← X k [T(x)=1] - Pr x ← X’ k [T(x)=1] | If X k , X’ k are short (say a single bit), X k ≈ X’ k iff X k , X’ k are statistically indistinguishable (Exercise)

  34. Pseudorandomness Generator (PRG)

Recommend


More recommend