1 / 169

Practical Aspects of Modern Cryptography

Explore the practical aspects of modern cryptography, including the problem of remote coin flipping, and learn about a protocol that allows Alice and Bob to remotely make decisions without being in the same place.

deleond
Download Presentation

Practical Aspects of Modern Cryptography

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Practical Aspects of Modern Cryptography Josh Benaloh & Brian LaMacchia

  2. Cryptography is ... • Protecting Privacy of Data • Authentication of Identities • Preservation of Integrity … basically any protocols designed to operate in an environment absent of universal trust. Practical Aspects of Modern Cryptography

  3. Characters Alice Practical Aspects of Modern Cryptography

  4. Characters Bob Practical Aspects of Modern Cryptography

  5. Basic Communication Alice talking to Bob Practical Aspects of Modern Cryptography

  6. Another Character Eve Practical Aspects of Modern Cryptography

  7. Basic Communication Problem Eve listening to Alice talking to Bob Practical Aspects of Modern Cryptography

  8. Two-Party Environments Alice Bob Practical Aspects of Modern Cryptography

  9. Remote Coin Flipping • Alice and Bob decide to make a decision by flipping a coin. • Alice and Bob are not in the same place. Practical Aspects of Modern Cryptography

  10. Ground Rule Protocol must be asynchronous. • We cannot assume simultaneous actions. • Players must take turns. Practical Aspects of Modern Cryptography

  11. Is Remote Coin Flipping Possible? Two-part answer: • NO – I will sketch a formal proof. • YES – I will provide an effective protocol. Practical Aspects of Modern Cryptography

  12. A Protocol Flow Tree A: B: A: B: Practical Aspects of Modern Cryptography

  13. A Protocol Flow Tree A: B: B B B A B A A: A B B B B A B A B: B A B B A B A Practical Aspects of Modern Cryptography

  14. Pruning the Tree A A A A B B B B Practical Aspects of Modern Cryptography

  15. Pruning the Tree A: A A   B: B B   Practical Aspects of Modern Cryptography

  16. A Protocol Flow Tree A: B: B B B A B A A: A B B B B A B A B: B A B B A B A Practical Aspects of Modern Cryptography

  17. A Protocol Flow Tree A: B: B B B A B A A: A B B B B B A B A B: A B A Practical Aspects of Modern Cryptography

  18. A Protocol Flow Tree A: B: B B B A B A A: A B B B B B B A B A B: Practical Aspects of Modern Cryptography

  19. A Protocol Flow Tree A: B: B B A B A B A A: B B B B B A B A B: Practical Aspects of Modern Cryptography

  20. A Protocol Flow Tree A: B: B B A A B A B A A: B B B B A B: Practical Aspects of Modern Cryptography

  21. A Protocol Flow Tree A: B: B B A A A B A B A A: B B B B: Practical Aspects of Modern Cryptography

  22. A Protocol Flow Tree A: B: B B A A A B B A B A A: B: Practical Aspects of Modern Cryptography

  23. A Protocol Flow Tree A: B B: B A A B A B A A: B: Practical Aspects of Modern Cryptography

  24. A Protocol Flow Tree A: B A B: B A B B A A: B: Practical Aspects of Modern Cryptography

  25. A Protocol Flow Tree A: B A B B: B B A A: B: Practical Aspects of Modern Cryptography

  26. A Protocol Flow Tree A: B A B B B: A: B: Practical Aspects of Modern Cryptography

  27. A Protocol Flow Tree A A: B: A: B: Practical Aspects of Modern Cryptography

  28. A Protocol Flow Tree A Practical Aspects of Modern Cryptography

  29. Completing the Pruning When the pruning is complete one will end up with either • a winner before the protocol has begun, or • a useless infinite game. Practical Aspects of Modern Cryptography

  30. Conclusion of Part I Remote coin flipping is utterly impossible!!! Practical Aspects of Modern Cryptography

  31. How to Remotely Flip a Coin The INTEGERS 0 4 8 12 16 … 1 5 9 13 17 … 2 6 10 14 18 … 3 7 11 15 19 … Practical Aspects of Modern Cryptography

  32. How to Remotely Flip a Coin The INTEGERS 0 4 8 12 16 … 1 5 9 13 17 … 2 6 10 14 18 … 3 7 11 15 19 … Even Practical Aspects of Modern Cryptography

  33. How to Remotely Flip a Coin The INTEGERS 0 4 8 12 16 … 1 5 9 13 17 … 2 6 10 14 18 … 3 7 11 15 19 … 4n + 1: 4n -1: Practical Aspects of Modern Cryptography

  34. How to Remotely Flip a Coin The INTEGERS 0 4 8 12 16 … 1 5 9 13 17 … 2 6 10 14 18 … 3 7 11 15 19 … Type +1: Type-1: Practical Aspects of Modern Cryptography

  35. How to Remotely Flip a Coin Fact 1 Multiplying two (odd) integers of the same type always yields a product of Type +1. (4p+1)(4q+1)= 16pq+4p+4q+1 = 4(4pq+p+q)+1 (4p–1)(4q–1) =16pq–4p–4q+1 = 4(4pq–p–q)+1 Practical Aspects of Modern Cryptography

  36. How to Remotely Flip a Coin Fact 2 There is no known method (other than factoring) to distinguish a product of two “Type +1” integers from a product of two “Type –1” integers. Practical Aspects of Modern Cryptography

  37. How to Remotely Flip a Coin Fact 3 Factoring large integers is believed to be much harder than multiplying large integers. Practical Aspects of Modern Cryptography

  38. Alice Randomly select a bit b{1} and two large integers P and Q – both of type b. Compute N = PQ. Send N to Bob. Bob How to Remotely Flip a Coin Practical Aspects of Modern Cryptography

  39. How to Remotely Flip a Coin Alice Bob N Practical Aspects of Modern Cryptography

  40. Alice Randomly select a bit b{1} and two large integers P and Q – both of type b. Compute N = PQ. Send N to Bob. Bob How to Remotely Flip a Coin Practical Aspects of Modern Cryptography

  41. Bob After receiving N from Alice, guess the value of band send this guess to Alice. How to Remotely Flip a Coin Alice • Randomly select a bit b{1} and two large integers P and Q – both of type b. • Compute N = PQ. • Send N to Bob. Practical Aspects of Modern Cryptography

  42. How to Remotely Flip a Coin Alice Bob b Practical Aspects of Modern Cryptography

  43. Bob After receiving N from Alice, guess the value of band send this guess to Alice. How to Remotely Flip a Coin Alice • Randomly select a bit b{1} and two large integers P and Q – both of type b. • Compute N = PQ. • Send N to Bob. Practical Aspects of Modern Cryptography

  44. Bob After receiving N from Alice, guess the value of band send this guess to Alice. Alice Randomly select a bit b{1} and two large integers P and Q – both of type b. Compute N = PQ. Send N to Bob. How to Remotely Flip a Coin Bob wins if and only if he correctly guesses the value of b. Practical Aspects of Modern Cryptography

  45. Bob After receiving N from Alice, guess the value of band send this guess to Alice. Alice Randomly select a bit b{1} and two large integers P and Q – both of type b. Compute N = PQ. Send N to Bob. After receiving bfrom Bob, reveal Pand Q. How to Remotely Flip a Coin Bob wins if and only if he correctly guesses the value of b. Practical Aspects of Modern Cryptography

  46. How to Remotely Flip a Coin Alice Bob P,Q Practical Aspects of Modern Cryptography

  47. Bob After receiving N from Alice, guess the value of band send this guess to Alice. Alice Randomly select a bit b{1} and two large integers P and Q – both of type b. Compute N = PQ. Send N to Bob. After receiving bfrom Bob, reveal Pand Q. How to Remotely Flip a Coin Bob wins if and only if he correctly guesses the value of b. Practical Aspects of Modern Cryptography

  48. Can Alice Cheat? • Randomly pick large integers p, q, r, and s. • Send Bob N= (4p+1)(4q+1)(4r–1)(4s–1). • If Bob guesses –1, send P = (4p+1)(4q+1) and Q = (4r–1)(4s–1). • If Bob guesses +1, send P = (4p+1)(4r–1) and Q = (4q+1)(4s–1). Practical Aspects of Modern Cryptography

  49. Bob After receiving N from Alice, guess the value of band send this guess to Alice. Alice Randomly select a bit b{1} and two large integers P and Q – both of type b. Compute N = PQ. Send N to Bob. After receiving bfrom Bob, reveal Pand Q. How to Remotely Flip a Coin Bob wins if and only if he correctly guesses the value of b. Practical Aspects of Modern Cryptography

  50. Bob After receiving N from Alice, guess the value of band send this guess to Alice. Alice Randomly select a bit b{1} and two large primesP and Q – both of type b. Compute N = PQ. Send N to Bob. After receiving bfrom Bob, reveal Pand Q. How to Remotely Flip a Coin Bob wins if and only if he correctly guesses the value of b. Practical Aspects of Modern Cryptography

More Related