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.
Installation
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
Dependencies
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.
Demo
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.
Metadata
Release files for thc 0.2.4
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| thc-0.2.4.tar.gz | 15.8 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| thc-0.2.4-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 35.6 kB
Release files / thc-0.2.4.tar.gz
| Download URL | thc-0.2.4.tar.gz |
|---|---|
| Size | 15.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
f96271bbfd40f59efcf4a0d7c5e3f3aedd7781217fd5b3d556b2c3d91ee69796
|
|
BLAKE2b-256 checksum How to use checksums |
9ca3367379ce9e4756cd149f53ce515397b98711a7f5b961156c19536d2f7e77
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.3.0 pkginfo/1.4.2 requests/2.25.1 setuptools/52.0.0 requests-toolbelt/0.9.1 tqdm/4.57.0 CPython/3.9.2
|
Release files / thc-0.2.4-py3-none-any.whl
| Download URL | thc-0.2.4-py3-none-any.whl |
|---|---|
| Size | 19.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
9e6b8f2849b898debc261c9d0cc80cd7731985548e0d652e5a7bec61176ae639
|
|
BLAKE2b-256 checksum How to use checksums |
ca1d2375ee8bab1034d378b2a8f232815f9d29e12ee661e242155c105056a017
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.3.0 pkginfo/1.4.2 requests/2.25.1 setuptools/52.0.0 requests-toolbelt/0.9.1 tqdm/4.57.0 CPython/3.9.2
|
Security for thc 0.2.4
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.