Skip to content
TclyAugPublic

About

No description, website, or topics provided.

Resources

Stars

7 stars

Watchers

4 watching

Forks

Latest commit

 

History

4 Commits

Folders and files

Repository files navigation

PPLL

PPLL is a compact C++ library for executing Boolean and integer logic operators on TFHE ciphertexts. It wraps a small set of programmable bootstrapping based operators on top of the bundled TFHEpp dependency.

This repository intentionally contains only the reusable gate execution layer:

  • include/HomOP.h: public logic and arithmetic operator API.
  • include/HomGate.h: standard key-switch plus programmable bootstrap helpers.
  • src/Hom*.cpp: Boolean, add/subtract, comparison, equality, and constants.
  • examples/ppll_smoke.cpp: a minimal encrypted AND/OR/XOR smoke test.

It does not include application workflows, proof systems, experiments, benchmark logs, generated keys, or private datasets.

Build

cmake -S . -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build -j

Smoke Test

./build/ppll_smoke

Expected output:

AND=0 OR=1 XOR=1

API Sketch

#include "HomOP.h"

TFHEpp::HomAND(a_bits, b_bits, width, eval_key);
TFHEpp::HomOR(a_bits, b_bits, width, eval_key);
TFHEpp::HomXOR(a_bits, b_bits, width, eval_key);
TFHEpp::HomNOT(a_bits, width, eval_key);
TFHEpp::HomAdd(a_bits, b_bits, width, eval_key, false);
TFHEpp::HomSub(a_bits, b_bits, width, eval_key, false);
TFHEpp::HomGT(a_bits, b_bits, width, eval_key);
TFHEpp::HomEQ(a_bits, b_bits, width, eval_key);

Inputs and outputs are TFHEpp::TLWE<TFHEpp::lvl2param> ciphertexts using the bundled parameter set.

About

No description, website, or topics provided.

Resources

Stars

7 stars

Watchers

4 watching

Forks

Releases

Packages

Contributors

Languages