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 sycretThe 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.
- Create a Python environment from
dev-requirements.txt maturin develop -b cffi --releaseto build the crate, bind it to the Python package and install the package locally.
cargo testto test the Rust functionality.pytest testto test the Python package.
See docs/publish.md for details.