I need a way to distribute knowledge among multiple parties - lets start with two. The idea is while the knowledge is originally created by one party I need to transform it into a situation where no party can access the information without the other's help.

I actually have an idea about how to solve this but cryptography is not my strong suit and I would like to ask you if there is a better way to do it.

# Scenario #

Alice and Bob each have written their favorite movies on cards (one movie per card). I need a way for them to address each card in a way that neither of them knows what movie is on the card.

**Edit:** It is totally acceptable to know to whom a card belongs. As for being honest about the reveal, that's what my [other question](http://crypto.stackexchange.com/questions/2407/proofing-item-association-without-reavealing-one-of-the-associated-items) was about. Each party would have to pass a commitment token along with the random number.

## Proposed Solution ##

1. Both parties assign random numbers to each of their movies.
2. They write cards with those numbers, shuffle them and hand it to the other party.
3. The other party assigns new random numbers to each of the received numbers.
4. They write cards with those new numbers, shuffle them and place it openly in the middle.

Now if I'm right, neither of them should know which numbered card corresponds to which movie, yet each card uniquely represents one of those movies.

## Extension for more parties ##

* Option A: The cards go through all parties, each assigning a new number. All parties are required to determine the movie.
* Option B: Each party distributes his number cards equally among the other parties but no further iterations is performed. Only two parties are required to determine a movie but not always the same...