Cheat-proof games (dissertation)

58 views
Skip to first unread message

Sam Bull

unread,
Feb 8, 2018, 8:09:39 AM2/8/18
to sp...@googlegroups.com
I've been meaning to mention this for a while. But, just wanted to mention that
I used SPDZ for my MSc project, exploring the possibility of cheat-proof P2P
multiplayer games.

As part of the project, I implemented versions of the Mastermind and Battleships
board games in SPDZ (with some small TODO gaps).


As a quick bit of feedback on how SPDZ could be more useful for this kind of
work, these are the things that I feel were making it difficult to work with:

Firstly, there needs to be an easy way to run this as part of another
program. As an example, the possibility to do something like this in a Python
application would be perfect:

import spdz
p = spdz.Program(open("foo.mpc").read())
s = spdz.Server(peers=("127.0.0.1",))
s.connect(p)
outputs = s.run(input1, input2)

I saw something mentioned in the last release, that suggests this situation
may have improved, but that was after I finished the project, and I haven't
checked it out yet.


Secondly, it would be a lot easier to have some built-in tools that would
make it easy to perform basic cryptographic functions on secret values, e.g.
hashes and encrypting/decrypting. The AES implementation in one of the
example programs is too complex for me to work out how to copy and paste into
another program and get it working, I also wouldn't be sure that I hadn't
made an implementation mistake in doing so.


Also, as a side note, my computer recognises the .mpc extension as a playlist
file, so perhaps not the best extension to pick.
signature.asc

abdelrahaman aly

unread,
May 20, 2022, 2:08:23 PM5/20/22
to SPDZ/SCALE-MAMBA Discussion Group
Hello! 

To give you some feedback (if they are still valid), on some of your questions below:
Building it as a Third Party Library:
SCALE-MAMBA is a compiler together with a VM. You can think about it in the same way you think of a JVM, for instance. Hence it is not trivial to build it as a library. The good fellas at Fresco tried this a couple of year ago. :). 
Usability of Examples:
We have greatly expanded the examples for you to choose and work on since :). Including supporting Boolean circuits via HSS17 (and some t Do you have any concern in specific. 

Additionally, our apologies for coming back so late to this email. We are a small team and sometimes a message slips up after we mark it as read.. Sorry about that.  Hope  you kept doing some awesome MPC! :).

Kr,
Abdel
Reply all
Reply to author
Forward
0 new messages