To build this code, use the following commands:
cmake -S . -B build
cmake --build build
There also is a helper script running all tests:
tests/run.sh
Finally, if you want to run benchmarks, please specify
-DTIIMAT3_BUILD_BENCH=1
when running the first cmake
command.
We generate multiple tests for the BGV library and the triples implementation. For the BGV code, we individually test the random number implementation, the signed ring arithmetic and the mpz plaintext implementation. We also provide integration tests for the BGV scheme itself that show how to use the library.
For the triples, we provide multiple test files for the different combinations of hoisting and pre-rotation:
test_triples_00
: no hoisting, no pre-rotationtest_triples_01
: no hoisting, pre-rotationtest_triples_10
: hoisting, no pre-rotationtest_triples_11
: hoisting, pre-rotation
The accompanying paper is published at AsiaCCS 2023 and available on ePrint.