Python library for Function Secret Sharing with an efficient Rust backend using the AES-NI hardware acceleration. It is used in PySyft for ARIANN: Low-Interaction Privacy-Preserving Deep Learning via Function Secret Sharing.
Disclaimer. Sycret is not production-ready yet. It is intended for research and prototyping purposes.
pip install sycret
The Python package is called from PySyft, like in this branch.
src
: the Rust crate.rustfss
: the Python package calling the Rust crate with Maturin. tests
: tests for the Rust crate.test
: tests for the Python wrapper.dev-requirements.txt
maturin develop -b cffi --release
to build the crate, bind it to the Python package and install the package locally.cargo test
to test the Rust functionality.pytest test
to test the Python package.See docs/publish.md for details.