Skip to main content

Trustable homomorphic computation

Project description

Trustable homomorphic computation

THC is a Python package that provides a practical framework for cost-effective trustable homomorphic computation.

It leverages the modular extension technique, which was developed to protect embedded cryptographic implementations against fault injection attacks, to ensure the integrity of a computation delegated to an untrusted third-party.

The paper describing THC has been accepted at CANS 2021. It can be found on the IACR ePrint Archive as report 2021/1118.


You can either install THC from PyPI using pip with the following command:

$ pip3 install thc

Or you can download its source code and run the following command in the root directory of the repository:

$ pip3 install .

You can check that the installation went well by running the included test demo:

$ python3 -m thc.demo.faults


THC depends on the pycryptodomex package to generate prime numbers.

You can probably install it using your distribution's package manager: it's the python3-pycryptodome package on Debian and derivatives.

If you choose to let pip install pycryptodomex, you will need to have some Python development packages installed as it needs to compile C extensions. On Debian and derivatives, the necessary packages are named python3-dev and python3-wheel.


In addition to the previously mentioned test demo of THC, an electronic voting software (server and client) is provided in the thc.demo.evoting package.

Please refer to its README for more information.

Project details

Download files

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

Source Distribution

thc-0.2.4.tar.gz (15.8 kB view hashes)

Uploaded source

Built Distribution

thc-0.2.4-py3-none-any.whl (19.8 kB view hashes)

Uploaded py3

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