Awesome
Before you start, be aware that the current FairplayMP requires multiple physical/virtual machines to run it.
Reference: [Readme]
Prerequisite
ant 1.8
, java
FairplayMP instructions
Stage 1 - SFDL program:
- Write your program in SFDL2.0 language, you can use the SFLD2.0 specification and examples in the project web site. (You can see the SecondPriceAuction.sfdl example in the package).
- From inside the compiler directory, compile your program using the command:
cp sfdl/SecondPriceAuction.sfdl compiler_v1_built/SecondPriceAuction-tocompile.sfdl
cd compiler_v1_built/compiler
java lab.Runner -f ../SecondPriceAuction-tocompile.sfdl
cd ..
ruby Convertor.rb SecondPriceAuction-tocompile.sfdl
# generating files with .cnv, .Opt.circuit , .Opt.fmt
mv *.cnv ..
mv *.Opt.circuit ..
mv *.Opt.fmt ..
OR
java -cp compiler_v2_built/ sfdl.Compiler sfdl/SecondPriceAuction.sfdl
(Compiler source code is not provided)
Stage 2 - Running the secure multiparty computation:
-
Create the
config.xml
file fit to the SFDL program. (You can use theconfig.xml
example in the package - just replace the ip addresses). -
Deploy the package to each participating computer and run:
java -cp runtime/build/classes FairplayMP <randomSeed>