Google Answers Logo
View Question
 
Q: A theoretical question about randomization, communications, and cheating ( No Answer,   1 Comment )
Question  
Subject: A theoretical question about randomization, communications, and cheating
Category: Computers > Security
Asked by: cronodas-ga
List Price: $5.00
Posted: 13 Feb 2005 07:57 PST
Expires: 15 Mar 2005 07:57 PST
Question ID: 473760
These questions were inspired by the problem of designing a
cheat-proof program to play Magic: The Gathering over the Internet
that does not require a trusted third party. You don't have to answer
both questions if you don't want to.

Question 1:

Alice and Bob want to play a game over the Internet that is like a
simplified version of poker. These are the rules:

Alice and Bob ante one point.
Alice and Bob are each "dealt" a "card" with a random value from one
to ten. They can see their own card but cannot see their opponent's
card.
Alice and Bob may then wager additional points according to standard
poker procedure. (You may assume that Alice bets first.)
If neither player folds, Alice and Bob reveal their card to their
opponent. The player with the higher card value wins all the points
that were wagered. (Ignore ties.)

Neither Alice nor Bob considers the other trustworthy, and no third
party that is trusted by both Alice and Bob is available. How can this
game be played fairly?

Question 2:

Alice and Bob want to play "guess the number." The rules are:

Alice secretly chooses 0 or 1.
Bob publicly chooses either 0 or 1.
Alice reveals whether she originally chose 0 or 1.
If Bob's choice is the same as Alice's choice, Bob wins. If they are
different, Alice wins.

Once the game begins, Alice and Bob can only interact through a
communications system that can only send a message in one direction at
a time. Before the game begins but after they agree on a method of
playing the game, both players have as much time as they want to
prepare. (If they want 10^100 years, they have it, but they don't have
infinite time.) On the other hand, once the game actually begins,
Alice and Bob can't perform computationally infeasable calculations.
Neither player trusts the other, and no third party is available. How
can this game be played fairly?
Answer  
There is no answer at this time.

Comments  
Subject: Re: A theoretical question about randomization, communications, and cheating
From: cronodas-ga on 14 Mar 2005 13:14 PST
 
Well, that's not quite what I had in mind. You're assuming the program
is a neutral third party; I should have made it clear that Alice and
Bob each have to run their own copy of all software they use, and are
capable of writing software that lies. What I really wanted to know
is, if the only way Alice and Bob can interact with each other is by
sending messages to each other, is there a way to ensure that if one
player tries to cheat, the other can always find out?

The basic problem seems to be this:
Suppose Alice and Bob want to play "guess the number: 0 or 1." They
want to devise a communications protocol so that neither of these
scenarios are possible:

Scenario 1
Alice: Here's my choice. It's [encrypted text: 0].
Bob decrypts the text and finds that it's 0.
Bob: I guess that you picked 0.
Alice: Here's the decryption key.
Bob: I was correct. I win.

Scenario 2
Alice: Here's my choice. It's [gibberish].
Bob: Here's my choice. It's 0.
Alice calculates a decryption key that will turn [gibberish] into 1.
Alice: Here's my decryption key.
Bob: I was wrong. You win.

Here's why the game can't be played. For this game, any decryption
method can be regarded as a function of two inputs, the decryption key
and the encrypted message. The range of this function can be
considered to be the set {0, 1, neither}. Once the message is chosen,
either there exists keys A and B such that F(A, message) = 0 and F(B,
message) = 1, or there isn't. If there are such keys, Alice could lie
to Bob about what she picked. If there are no such keys, Bob can find
out Alice's choice before he makes his own. The only loophole I can
see is to find encryption/decryption methods that make it extremely
difficult to find such keys (which is how cryptography is supposed to
work, I think).

Important Disclaimer: Answers and comments provided on Google Answers are general information, and are not intended to substitute for informed professional medical, psychiatric, psychological, tax, legal, investment, accounting, or other professional advice. Google does not endorse, and expressly disclaims liability for any product, manufacturer, distributor, service or service provider mentioned or any opinion expressed in answers or comments. Please read carefully the Google Answers Terms of Service.

If you feel that you have found inappropriate content, please let us know by emailing us at answers-support@google.com with the question ID listed above. Thank you.
Search Google Answers for
Google Answers  


Google Home - Answers FAQ - Terms of Service - Privacy Policy