Skip to main content

Sycret

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.

Installation

pip install sycret

Integration with PySyft

The Python package is called from PySyft, like in this branch.

Development instructions

Structure

  • 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.

Build

  • Create a Python environment from dev-requirements.txt
  • maturin develop -b cffi --release to build the crate, bind it to the Python package and install the package locally.

Test

  • cargo test to test the Rust functionality.
  • pytest test to test the Python package.

Publish

See docs/publish.md for details.

Metadata

Release files for sycret 0.2.8

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distributions (wheels)

Table of built distributions (wheels) for sycret 0.2.8
File
sycret-0.2.8-py3-none-win_amd64.whl Python 3 none Windows x86-64 Details
sycret-0.2.8-py3-none-manylinux_2_24_x86_64.whl Python 3 none Linux glibc 2.24+ x86-64 Details
sycret-0.2.8-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl Python 3 none Linux glibc 2.17+ ARM64 Details
sycret-0.2.8-py3-none-macosx_10_7_x86_64.whl Python 3 none macOS 10.7+ x86-64 Details

Total release size: 700.5 kB

Release files / sycret-0.2.8-py3-none-win_amd64.whl

Download URL sycret-0.2.8-py3-none-win_amd64.whl
Size 136.3 kB
Tags Python 3 Windows x86-64
SHA-256 checksum
How to use checksums
628090d69127ad6b08c42bf30430a1fb9b97efaee63ae2bdac6fd251375ab840
BLAKE2b-256 checksum
How to use checksums
d93f6036c8d035716ceb98cc26d12b2b96501d2a4d88d6c081fe0a4bb9e3775a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/0.11.4

Release files / sycret-0.2.8-py3-none-manylinux_2_24_x86_64.whl

Download URL sycret-0.2.8-py3-none-manylinux_2_24_x86_64.whl
Size 199.8 kB
Tags Linux glibc 2.24+ x86-64 Python 3
SHA-256 checksum
How to use checksums
3889691f4c22273b7b0c2796db4bff5f5266817067986a5dab62dfcee991abf2
BLAKE2b-256 checksum
How to use checksums
8019facef4e57c6f4fbd8bcd8a305ce2a638f40592b57101b1ec23ac62c815c8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/0.11.4

Release files / sycret-0.2.8-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL sycret-0.2.8-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 183.0 kB
Tags Linux glibc 2.17+ ARM64 Python 3
SHA-256 checksum
How to use checksums
75a8b3feb1897df53e9f8259e846949582ba04a63aba49c11a49e720014458dd
BLAKE2b-256 checksum
How to use checksums
1f53efe152b248d77d0257d109d547fcc21f62c1a7e26de06e5a804c773f1a43
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/0.11.4

Release files / sycret-0.2.8-py3-none-macosx_10_7_x86_64.whl

Download URL sycret-0.2.8-py3-none-macosx_10_7_x86_64.whl
Size 181.5 kB
Tags Python 3 macOS 10.7+ x86-64
SHA-256 checksum
How to use checksums
2d4118b517acd6c7f0c20297a3f28dd687ee76ad422a234517b177ec7915e0a8
BLAKE2b-256 checksum
How to use checksums
0896d602df9c9725b50069063c9d2fba18168b59fb25a2fc5fc4680819204c01
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/0.11.4
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page