perfect secrecy
play

Perfect Secrecy Chester Rebeiro IIT Madras CR STINSON : chapter 2 - PowerPoint PPT Presentation

Perfect Secrecy Chester Rebeiro IIT Madras CR STINSON : chapter 2 Encryption K K untrusted communication link Alice Bob E D #%AR3Xf34^$ Attack at Dawn!! decryption encryption (ciphertext) Plaintext Plaintext Attack at


  1. Perfect Secrecy Chester Rebeiro IIT Madras CR STINSON : chapter 2

  2. Encryption K K untrusted communication link Alice Bob E D #%AR3Xf34^$ “Attack at Dawn!!” decryption encryption (ciphertext) Plaintext Plaintext “Attack at Dawn!!” How do we design ciphers? Mallory CR 2

  3. Cipher Models (What are the goals of the design?) Computation Security Provable Security (Hardness relative to My cipher can withstand all attacks with complexity less a tough problem) than 2 2048 The best attacker with the best computation resources If my cipher can be would broken then large broken then large take 3 centuries to attack take 3 centuries to attack my cipher numbers can be factored easily Unconditional Security My cipher is secure against all attacks irrespective of the attacker’s power. I can prove this!! This model is also known as Perfect Secrecy. Can such a cryptosystem be built? We shall investigate this. CR 3

  4. Analyzing Unconditional Security • Assumptions – Ciphertext only attack model The attacker only has information about the ciphertext. The key and plaintext are secret. ciphertext. The key and plaintext are secret. • We first analyze a single encryption then relax this assumption by analyzing multiple encryptions with the same key CR 4

  5. Encryption plaintext set ciphertext set e k C P • For a given key, the encryption (e k ) defines an injective mapping between the plaintext set ( P ) and ciphertext set ( C ) • We assume that the key and plaintext are independent Alice picks a plaintext x ∈ P and encrypts it to obtain a ciphertext y ∈ C • CR 5

  6. Plaintext Distribution Plaintext Distribution • X be a discrete random variable over the set P Let X • Alice chooses x from P based on some probability distribution – Let Pr[ X X = x] be the probability that x is chosen – This probability may depend on the language a Plaintext set Pr[ X =a] = 1/2 b Pr[ X =b] = 1/3 Pr[ X =c] = 1/6 c P Note : Pr[a] + Pr[b] + Pr[c] = 1 CR 6

  7. Key Distribution Key Distribution • Alice & Bob agree upon a key k chosen from a key set K • Let K be a random variable denoting this choice e k1 keyspace Pr[ K =k 1 ] = ¾ Pr[ K =k 2 ] = ¼ e k2 There are two keys in the keyset thus there are two possible encryption mappings CR 7

  8. Ciphertext Distribution e k1 • Y be a discrete random variable over the set C Let Y a P • The probability of obtaining a particular ciphertext y Q b depends on the plaintext and key probabilities R ∑ = = c Pr[ Y y ] Pr( k ) Pr( d k y ( )) k Pr[Y = P] = Pr(k 1 ) * Pr(c) + Pr(k 2 ) * Pr(c) Pr[Y = P] = Pr(k ) * Pr(c) + Pr(k ) * Pr(c) e k2 = (3/4 * 1/6) + (1/4 * 1/6) = 1/6 a P Pr[Y = Q] = Pr(k 1 ) * Pr(b) + Pr(k 2 ) * Pr(a) b Q = (3/4 * 1/3) + (1/4 * 1/2) = 3/8 R c Pr[Y = R] = Pr(k 1 ) * Pr(a) + Pr(k 2 ) * Pr(b) = (3/4 * 1/2) + (1/4 * 1/3) = 11/24 plaintext Pr[ X =a] = 1/2 keyspace Pr[ X =b] = 1/3 Pr[ K =k 1 ] = ¾ Note: Pr[Y=P] + Pr[Y=Q] + Pr[Y=R] = 1 Pr[ X =c] = 1/6 Pr[ K =k 2 ] = ¼ CR 8

  9. Attacker’s Probabilities • The attacker wants to determine the plaintext x • Two scenarios – Attacker does not have y (a priori Probability) • Probability of determining x is simply Pr[x] • Depends on plaintext distribution (eg. Language charcteristics) – Attacker has y (a posteriori probability) • Probability of determining x is simply Pr[x|y] CR 9

  10. A posteriori Probabilities = = Pr[ X x | Y y ] • How to compute the attacker’s a posteriori probabilities? – Bayes’ Theorem × Pr[ x ] Pr[ y | x ] = Pr[ x | y ] ? ? Pr[ y ] The probability that y is obtained The probability that y is obtained probability of the plaintext given x depends on the keys which provide such a mapping ∑ = Pr[ y | x ] Pr[ k ] probability of this ciphertext = { k : d ( y ) x } k CR 10

  11. Pr[y|x] Pr[P|a] = 0 e k1 a P Pr[P|b] = 0 Q b R Pr[P|c] = 1 c Pr[Q|a] = Pr[k 2 ] = ¼ 2 Pr[Q|b] = Pr[k 1 ]= ¾ Pr[Q|b] = Pr[k ]= ¾ e k2 a P Pr[Q|c] = 0 b Q Pr[R|a] = Pr[k 1 ] = ¾ R c Pr[R|b] = Pr[k 2 ] = ¼ Pr[R|c] = 0 keyspace Pr[ K =k 1 ] = ¾ Pr[ K =k 2 ] = ¼ CR 11

  12. Computing A Posteriori Probabilities × Pr[ x ] Pr[ y | x ] plaintext ciphertext Pr[y|x] = Pr[ x | y ] Pr[ X =a] = 1/2 Pr[ Y =P] = 1/6 Pr[P|a] = 0 Pr[ y ] Pr[P|b] = 0 Pr[ X =b] = 1/3 Pr[ Y =Q] = 3/8 Pr[P|c] = 1 Pr[ X =c] = 1/6 Pr[ Y =R] = 11/24 Pr[Q|a] = ¼ Pr[Q|b] = ¾ Pr[Q|b] = ¾ Pr[a|P] = 0 Pr[a|P] = 0 Pr[b|P] = 0 Pr[b|P] = 0 Pr[c|P] = 1 Pr[c|P] = 1 Pr[Q|c] = 0 Pr[a|Q] = 1/3 Pr[b|Q] = 2/3 Pr[c|Q] = 0 Pr[R|a] = ¾ Pr[R|b] = ¼ Pr[a|R] = 9/11 Pr[b|R] = 2/11 Pr[c|R] = 0 Pr[R|c] = 0 If the attacker sees ciphertext P then she would know the plaintext was c If the attacker sees ciphertext R then she would know a is the most likely plaintext Not a good encryption mechanism!! CR 12

  13. Perfect Secrecy • Perfect secrecy achieved when a posteriori probabilities = a priori probabilities = = Pr[ Pr[ x x | | y y ] ] Pr[ Pr[ x x ] ] i.e the attacker learns nothing from the ciphertext CR 13

  14. Perfect Secrecy Example • Find the a posteriori probabilities for the following scheme e k1 • Verify that it is perfectly secret. a P Q b plaintext R c Pr[ X =a] = 1/2 e e k2 Pr[ X =b] = 1/3 a P Pr[ X =c] = 1/6 b Q keyspace R c Pr[ K =k 1 ] = 1/3 Pr[ K =k 2 ] = 1/3 e k3 a P Pr[K=k 3 ] = 1/3 b Q R c CR 14

  15. Observations on Perfect Secrecy Perfect Secrecy iff = = = = Pr[ Y y | X x ] Pr[ Y y ] Follows from Baye’s theorem Perfect Indistinguishability ∀ , ∀ ∈ ∈ = = = = = = = = = = x x 1 , x x P P Pr[ Pr[ Y Y y y | | X X x x ] ] Pr[ Pr[ Y Y y y | | X X x x ] ] 2 1 2 Perfect secrecy has nothing to do with plaintext distribution. Thus a crypto-scheme will achieve perfect secrecy irrespective of the language used in the plaintext. CR 15

  16. Shift Cipher with a Twist • Plaintext set : P = {0,1,2,3 …, 25} • Ciphertext set : C = {0,1,2,3 …, 25} • Keyspace : K = {0,1,2,3 …, 25} • Encryption Rule : e K (x) = (x + K) mod 26, • Encryption Rule : e K (x) = (x + K) mod 26, • Decryption Rule : d k (x) = (x – K) mod 26 where K ∈ K and x ∈ P The Twist : the key changes after every encryption CR 16

  17. The Twisted Shift Cipher is Perfectly Secure Keys chosen with uniform probability This is 1 because the sum is over all values of x all values of x y P C For every pair of y and x, there is exactly one key . Probability of CR that key is 1/26 17

  18. The Twisted Shift Cipher is Perfectly Secure CR 18

  19. Shannon’s Theorem If | K | = | C | = | P | then the system provides perfect secrecy iff (1) every key is used with equal probability 1/| K |, and (2) for every x ∈ P and y ∈ C , there exists a unique key k ∈ K such that e k (x) = y Intuition : Every y ∈ C can result from any of the possible plaintexts x Every y ∈ C can result from any of the possible plaintexts x Since |K| = |P| there is exactly one mapping from each plaintext to y Since each key is equi-probable, each of these mappings is equally probable CR 19

  20. One Time Pad (Verman’s Cipher) length L plaintext ciphertext plaintext ciphertext block exor key key ⊕ = x k y Encryption : ⊕ = y k x Decryption : length L chosen uniformly from keyspace of size 2 L Pr[ K = k] = 1/2 L CR 20

  21. One Tme Pad (Example) CR 21

  22. One Time Pad is Perfectly Secure • Proof using indistinguishability = = = = = = ⊕ = Pr[ Y y | X x ] Pr[ X x , K k | X x ] from x k y 1 = = = Pr[ K k ] L 2 2 1 = = = = = = Pr[ Y y | X x ] Pr[ Y y | X x ] 1 2 L 2 ∀ ∈ x , x X 1 2 This implies perfect Indistinguishability that is independent of the plaintext distribution CR 22

  23. Limitations of Perfect Secrecy • Key must be at least as long as the message – Limits applicability if messages are long • Key must be changed for every encryption – If the same key is used twice, then an adversary can compute – If the same key is used twice, then an adversary can compute the ex-or of the messages ⊕ = x k y 1 1 ⊕ = x k y 2 2 ⊕ = ⊕ x x y y 1 2 1 2 The attacker can then do language analysis to determine y 1 and y 2 CR 23

  24. Computational Security • Perfect secrecy is difficult to achieve in practice • Instead we use a crypto-scheme that cannot be broken in reasonable time with reasonable success • This means, • This means, – Security is only achieved against adversaries that run in polynomial time – Attackers can potentially succeed with a very small probability (attackers need to be very lucky to succeed) CR 24

  25. Quantifying Information CR 25

  26. Quantifying Information • Alice thinks of a number (0 or 1) • The choice is denoted by a discrete random variable X. What is X? X • What is the information in X? • What is Mallory’s uncertainty about X? – Depends on the probability distribution of X CR 26

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend