目录
目录README.md

Distributed Function Secret Sharing and Applications

Source code and the implementation of the NDSS’25 accepted paper - Distributed Function Secret Sharing and Applications.

Introduction

We introduce distributed key generation schemes for FSS-based distributed point function and distributed comparison function, supporting both input and output to be arithmetic-shared. We further design crucial FSS-based components optimized for online efficiency, serving as the building blocks for advanced protocols. Finally, we propose a framework leverages the periodic property of trigonometric functions, ubiquitous in scientific computations, reducing the bit length of input during FSS evaluation.

Contents

This repository consists of the following parts:

  • src: Implementations for our 2PC FSS scheme and case studies.
  • 2pc_test: Demonstrations for function usage and performance test.

Installation

NOTE: Our implementation is built based on EzPC and a complete compilation process of EzPC is required. For any issues occurred during step 1 to 4, please refer to EzPC troubleshooting.

  1. Clone EzPC repository (At this step, you do not have to clone our repo. If you have already done so, it is recommended to execute cd ..).
git clone http://github.com/mpc-msri/EzPC/
cd EzPC
  1. Install dependencies. This installs required tools like g++, cmake, boost and ocaml. This takes a long time.
./setup_env_and_build.sh quick
  1. Recompile EzPC compiler.
cd EzPC/EzPC/
eval `opam env`
make
cd ../../
  1. Compile FSS backend.
cd FSS/
mkdir build
cd build
cmake -DCMAKE_INSTALL_PREFIX=./install -DCMAKE_BUILD_TYPE=Release ../
make install
cd ../../../
  1. Clone this repository.
git clone https://github.com/xingpz2008/dealerless-FSS_public.git
  1. Update our code to LLAMA folder.
cd EzPC/FSS
cp -r ../../dealerless-FSS_public/* ./
  1. Recompile LLAMA framework again
rm -rf ./build
mkdir build
cd build
cmake -DCMAKE_INSTALL_PREFIX=./install -DCMAKE_BUILD_TYPE=Release ../
make install

Usage

For detailed useage, refer to 2pc_test folder.

Currently, our framework can not be directly used with Athos as the end-to-end backend and we are still working on this. As the alternative, you may directly invoke our FSS protocol as the wrapper function in the post-compiled file generated by Athos.

Disclaimer

This repository is a proof-of-concept prototype.

关于

NDSS'25 - Distributed Function Secret Sharing and Application

29.6 MB
邀请码