Skip to main content

Homomorphic Encryption processing Unit (HEU) is a subproject of Secretflow that implements high-performance homomorphic encryption algorithms.

Project description

HEU

CircleCI

Homomorphic Encryption processing Unit (HEU) is a subproject of Secretflow that implements high-performance homomorphic encryption algorithms.

The purpose of HEU is to lower the threshold for the use of homomorphic encryption, so that users can use homomorphic encryption algorithms to build privacy-preserving applications without professional cryptography knowledge.

Documentation

https://www.secretflow.org.cn/docs/heu/

Background

This project consists of two parts:

HE Library (currently implemented): This project can be used as a high-performance and complete homomorphic encryption library, which integrates almost all homomorphic encryption algorithms in the industry. At the same time, HEU encapsulates each algorithm and provides a uniform interface. You can switch between different HE algorithms at any time without modifying business code.

HE device (in work): As a component of Secretflow, HEU abstracts the homomorphic encryption algorithms into a programmable device, making it easy for users to flexibly build applications using the homomorphic encryption technology without professional knowledge. HEU (device) aims to build a complete computing solution through HE, that is, based on HE, any type of computing can be completed. Compared with PPU, HEU's computation is purely local without any network communication, so HEU and PPU are complementary

Depending on the computing power, HEU has 4 working modes:

working mode Supported calculation types Number of calculations HE algorithms Calculating speed Ciphertext size
PHEU addition Unlimited Paillier, OU Fast Small
LHEU addition, multiplication Limited BGV, CKKS Fast (packed mode) Least (packed mode)
FHEU (low precision) addition, mux, LUT Unlimited TFHE (Torus) Fastest Large
FHEU (high precision) addition, multiplication, comparison, mux Unlimited TFHE (Bitwise) Very slow Largest

Repo status

PHE has been basically developed, LHE and FHE are under development

Build & UnitTest

Build all

# build all
bazel build heu/...

# test all (optional)
bazel test heu/...

Build python lib

# build and install python library
sh build_wheel_entrypoint.sh

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

sf_heu-0.5.0.dev20231118-cp38-cp38-macosx_11_0_arm64.whl (3.0 MB view details)

Uploaded CPython 3.8 macOS 11.0+ ARM64

File details

Details for the file sf_heu-0.5.0.dev20231118-cp38-cp38-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for sf_heu-0.5.0.dev20231118-cp38-cp38-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7cafe12ca7a248c532a9e16ad39468f9cf4ee0f2d95f9715d9aa34066692bad4
MD5 f613067c3163313353a9a340766165b9
BLAKE2b-256 1352148695e8f2115a07a9c3055f791a222604a31ec2b94f9105a6eae4f5fd5e

See more details on using hashes here.

File details

Details for the file sf_heu-0.5.0.dev20231118-cp38-cp38-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for sf_heu-0.5.0.dev20231118-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 eab946c65b226ee01546e28d96575b693f0a78da9db53d90a48d2ed98697533b
MD5 47ad989847b591654a049df407743bfa
BLAKE2b-256 735a1f961f427cefde26c7e526be0a606f0598fde0df76c90c11120bb4c8aa5e

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page