Hello,
The second implementation of MPC will be very different from VIFF in
that it is programmed in Java as opposed to Python. For some reason I
have still not been able to program in Python, and I only recently got
help translating my code to Python.
One of the points with early versions of VIFF was that they needed to
be started in a certain order and you had to distribute a
configuration file to each party. I found this cumbersome so I added a
facilitator (distributor). Each player connects to this distributor,
with information about the algorithm that they want to run and ip and
port that they are listening on. When enough players have connected to
this facilitator. It distributes a list to all players as to who the
other players are. The facilitator then plays no further part in the
MPC protocol.
In the protocol between players I am trying to shave things down,
currently the messages are about 15 bytes + bytes used to transmit the
share (the share is encoded as a BigInteger in some underlying field,
the underlying field is already transmitted in the first 15 bytes).
This might be shaved down to 10 bytes + bytes to transmit the share to
avoid overhead. Anyway I can control this protocol down to the last
bit, to make it as efficient as possible.
I am trying to replicate the numbering of the operations like it is
done in VIFF, but as I only have a wage idea of how it is done in VIFF
and since things are programmed differently this will be done in a
sightly different way. I am hoping to get a system working where all
instances of operations get unique 6 byte long IDs. So that a
operation from one player can instantly be compared to likewise
operations from different players. But this is the part that I am
working on.
Last but not least this MPC implementation will be thread safe, so
hopefully multiple instances of MPC can be run concurrently in the
same program, using my code as a library.
The programming of algorithms in my framework should be as working
with BigIntegers.
The thread that waits for the revealed values should either hang and
wait for the values, or get a Future object in return.
(Last, the code will not use Mercury or some other version tracking
system as I have not set it up yeat... sigh)
Tord
Siterer Martin Geisler <[EMAIL PROTECTED]>:
Tord Ingolf Reistad <[EMAIL PROTECTED]> writes:
[...] I will look closer at the code again when I have finished
programming another thing I am working on. (No, not my thesis, but a
full implementation of MPC in java, so I can get some real results for
my thesis).
Cool, another framework! Can you describe how this framework will be
different from the ideas behind VIFF?
--
Martin Geisler
_______________________________________________
viff-devel mailing list (http://viff.dk/)
viff-devel@viff.dk
http://lists.viff.dk/listinfo.cgi/viff-devel-viff.dk