Secure computation compiler for homomorphic encryption and arithmetic circuits in general
Project description
Oraqle
The oraqle compiler lets you generate arithmetic circuits from high-level Python code. It also lets you generate code using HElib.
This repository uses a fork of fhegen as a dependency and adapts some of the code from fhegen, which was written by Johannes Mono, Chiara Marcolla, Georg Land, Tim Güneysu, and Najwa Aaraj. You can read their theoretical work at: https://eprint.iacr.org/2022/706.
Setting up
The best way to get things up and running is using a virtual environment:
- Set up a virtualenv using
python3 -m venv venv
in the directory. - Enter the virtual environment using
source venv/bin/activate
. - Install the requirements using
pip install requirements.txt
. - To overcome import problems, run
pip install -e .
, which will create links to your files (so you do not need to re-install after every change).
We are currently setting up documentation to be rendered using GitHub Actions.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file oraqle-0.1.0.tar.gz
.
File metadata
- Download URL: oraqle-0.1.0.tar.gz
- Upload date:
- Size: 65.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/5.1.1 CPython/3.12.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3f1ec7d93bee01abe89e5199cba59ef7593811d7b05301098e6bae7b0c017e55 |
|
MD5 | 9769cd1e13ccf2ab92a6b30b28ae2907 |
|
BLAKE2b-256 | eeb36bf5c6a834e8d6d4a21ff5a7559d71deb652092a1de48ac4393d4c6ff6c8 |
File details
Details for the file oraqle-0.1.0-py3-none-any.whl
.
File metadata
- Download URL: oraqle-0.1.0-py3-none-any.whl
- Upload date:
- Size: 93.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/5.1.1 CPython/3.12.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b20f4d1b21bde56b25549fed160e8ec87efc56f4d0c1fedfa167d8e571693750 |
|
MD5 | a5908363cb224bcc0afa7b20ff6ba500 |
|
BLAKE2b-256 | d2d16e6f1206c17b23f673a9f07d49ae3d3f2d2c1f4242b2b730c4b25fc8517d |