Re: How to flip a coin over e-mail?
From: Mike Williams (nospam_at_econym.demon.co.uk)
Date: 06/17/04
- Next message: Dgates: "Re: Maze-ish Simple Game"
- Previous message: C. Bond: "Re: JSH: Attacking the conclusion"
- In reply to: Jon Haugsand: "How to flip a coin over e-mail?"
- Messages sorted by: [ date ] [ thread ]
Date: Thu, 17 Jun 2004 18:49:03 +0100
Wasn't it Jon Haugsand who wrote:
>I have a real practical problem where I am going to place several
>people in the same number of rooms. However, the rooms are of
>different quality so the actual room any person get is done by
>random. There are som preconditions, so I can list all acceptable
>outcomes and the problem is to find some way to choose randomly
>between these outcomes.
>
>How can I do this when all I have is e-mail communication between the
>participants?
>
>My own solution is to make a file where I denumerate each outcome and
>shuffle them randomly. I pad this file with some secret random
>numbers at the end, and I send a cryptographic hash (md5) to all
>participants. I then ask the others for a number between 1 and N and
>this number will point to the actual outcome. I then send them the
>file such that all of them can check that I did not make this file
>after I got the number drawn.
>
>However, this method requires that my friends have trust in the md5
>cryptographic hash. Of course, they should, but I cannot demand such
>knowledge.
There's a well known system which uses any commutative coding system.
(I.e. one where the sequence Encode-with-A, Encode-with-B, Decode-with-
A, Decode-with-B restores the plain text).
You encode the room descriptions with your key A, coding each entry
separately and pass it to the next person in the ring. Each other person
in turn picks one of the entries, removes that entry from the list and
passes it to the next person. When the list gets round the loop back to
you, there's one entry left on the list which you can decode to
determine your room.
Each of the other people in the ring encodes their chosen entry with
their personal key and sends the result back to you. You decode it with
your key and send it back to them. They decode it with their key to
reveal the contents.
E.g. person C has an entry which is encoded with A, they encode that
with C and send you the result encoded AC. You decode with A, so it's
now encoded only with C and you can't read it. You send that back to C
who can decode it and read it. C can tell that you haven't fiddled the
results by the fact that the text produces a sensible result when
decoded with a key that you don't know.
In this way, the rooms are allocated fairly. In addition, nobody, even
you, knows which room was allocated to another person.
-- Mike Williams Gentleman of Leisure
- Next message: Dgates: "Re: Maze-ish Simple Game"
- Previous message: C. Bond: "Re: JSH: Attacking the conclusion"
- In reply to: Jon Haugsand: "How to flip a coin over e-mail?"
- Messages sorted by: [ date ] [ thread ]
Relevant Pages
|