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