A method for carrying out multi-party transactions in which at least one
party or user has information which he considers private, the method
comprising: a first determining step, in which it is determined which
parties will take part in the transaction; a second determining step, in
which it is determined, for each party taking part in the transaction,
what information about the user that party requires in order to complete
the corresponding part of the transaction; a selecting step, which may
occur before or after the determining steps, in which one or more nonces,
GUIDs, or other tokens are selected, to represent the user in the course
of the transaction; a providing step, in which each party determined in
the first determining step is provided with information comprising the
corresponding information about the user determined in the second
determining step, and one or more of the nonces, GUIDs, or other tokens
selected in the selecting step; an execution step, in which the parties
to the transaction complete the transaction, using the information about
the user that they have been given, and the one or more nonces, GUIDs, or
other tokens, to determine and communicate the details of the fulfillment
while minimizing the amount of unneeded private information that is
transmitted or otherwise exposed.