Building block: Encryption Schemes - Templates

Generic frameworks for encryption schemes. Currently includes support for:

  • Generic encryption scheme (encryption_scheme.py);

  • Asymmetric encryption scheme (asymmetric_encryption_scheme.py);

  • Symmetric encryption scheme (symmetric_encryption_scheme.py);

  • Support for precomputation of randomness (randomized_encryption_scheme.py).

This building block is included in the TNO MPC Python Toolbox.

Note:

A significant performance improvement can be achieved by installing the GMPY2 library.

Install

Install the tno.mpc.encryption_schemes.templates package using one of the following options.

  • Personal access token

  • Deploy tokens

  • Cloning this repo (developer mode)

Personal access token

  1. Generate a personal access token with read_api scope. Instruction are found here.

  2. Install

    python -m pip install tno.mpc.encryption_schemes.templates --extra-index-url https://__token__:<personal_access_token>@ci.tno.nl/gitlab/api/v4/groups/3209/-/packages/pypi/simple
    

Deploy tokens

  1. Generate a deploy token with read_package_registry scope. Instruction are found here.

  2. Install

    python -m pip install tno.mpc.encryption_schemes.templates --extra-index-url https://<GITLAB_DEPLOY_TOKEN>:<GITLAB_DEPLOY_PASSWORD>@ci.tno.nl/gitlab/api/v4/groups/3209/-/packages/pypi/simple
    

Dockerfile

FROM python:3.8

ARG GITLAB_DEPLOY_TOKEN
ARG GITLAB_DEPLOY_PASSWORD

RUN python -m pip install tno.mpc.encryption_schemes.templates --extra-index-url https://$GITLAB_DEPLOY_TOKEN:$GITLAB_DEPLOY_PASSWORD@ci.tno.nl/gitlab/api/v4/groups/3209/-/packages/pypi/simple

Indices and tables