home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1993 #1 / NN_1993_1.iso / spool / sci / crypt / 6378 < prev    next >
Encoding:
Internet Message Format  |  1993-01-04  |  2.7 KB

  1. Path: sparky!uunet!gatech!concert!rutgers!sgigate!sgi!wdl1!wdl39!mab
  2. From: mab@wdl39.wdl.loral.com (Mark A Biggar)
  3. Newsgroups: sci.crypt
  4. Subject: Re: Telephonic Poker?
  5. Message-ID: <1993Jan4.223458.25517@wdl.loral.com>
  6. Date: 4 Jan 93 22:34:58 GMT
  7. References: <1993Jan3.185628.2976@zip.eecs.umich.edu>
  8. Sender: news@wdl.loral.com
  9. Organization: Loral Western Development Labs
  10. Lines: 45
  11.  
  12. In article <1993Jan3.185628.2976@zip.eecs.umich.edu> positron@quip.eecs.umich.edu (Jonathan Haas) writes:
  13. >I was reading a paper that explained the RSA algorithm
  14. >in layman's terms, and among other things it said, "An
  15. >interesting side benefit of this algorithm is that it
  16. >makes it possible for two people who do not trust each
  17. >other to play poker by telephone." I've thought about
  18. >it, and I can't for the life of me figure out HOW. The
  19. >paper did not elaborate. Can someone explain to me the
  20. >algorithm with which two mutually distrusting players can
  21. >play poker by phone (or, more simply, have a fair coin
  22. >toss)?
  23.  
  24. Method for fair coin toss over the phone (or a computer network):
  25.  
  26. 1. both parties agree upon a Pseudo-random number algorithm and
  27.     a method for computing a coin toss from the output of the PRNG.
  28. 2. party A selects a seed for the PRNG, excrypts it using ANY excryption
  29.     function, and sends the encrypted seed to party B.
  30. 3. B then selects an interger N and sends it to A.
  31. 4. A iterates the PRNG N times and uses the result to determine the coin flip
  32.     using the pre-agreeded upon method.
  33. 5. A now sends the result of the coin flip and the encryption key to B.
  34. 6. B can now decrypt the seed and verify that A did iterate the PRNG
  35.     N times and correctly determined the result of the coin toss.
  36.  
  37. This can easily be extended to generating die rolls, card draws etc.
  38. Also a sequence of random values can be fairly produced by having B 
  39. specify a monotonic increasing sequence of integers {N1, N2, N3, N4,...}.
  40. A then uses the ith integer in the sequence to produce the ith random value 
  41. with B being able to verify the fairness of the sequence after the fact.  
  42. Note that B can generate the integer sequence incrementaly so that values
  43. are only generated as needed, like for a game (Poker for example!)
  44.  
  45. Note: that RSA is not needed for this algorithm and any encryption algorithm 
  46. that is strong enough to be unbreakable during the time it takes to generate 
  47. the random values is good enough (even an encryption algorithm that both 
  48. parties know how to break is good enough, if the time to break it is larger 
  49. than the time needed to produce the random sequence.)
  50.  
  51. P.S. Does this question come up often enough to be in the FAQ?  If so, please
  52. feel free to use the above write up for that purpose.
  53.  
  54. --
  55. Mark Biggar
  56. mab@wdl1.wdl.loral.com
  57.