This package implements the cryptographic functions and benchmarking tests for the paper "HERatio: Homomorphic Encryption of Rationals using Laurent polynomials" originaly submitted for the 29th Australasian Conference on Information Security and Privacy (ACISP 2024).
To run the performance benchmarks, you'll need to install Golang (i.e., Go). Both actions are covered in the next subsection.
To install the latest version of Go refer to the Golang Download Page and follow the instructions related to your Operating System (e.g., MacOS, Windows, Linux).
Clone the Github repository into a folder:
git clone git@github.com:Algemetric/HERatio_go.gitTip
Open a terminal and navigate to a folder where you can organize github projects. Issue the previous command from there.
After installing Go and cloning the github project, move inside the benchmark folder by executing:
cd ./HERatio_go/benchmarkNow, execute the set of benchmark functions by issuing:
go test -bench=. -benchmemThe system will list the performance and memory use of functions related to key generation, encryption, decryption, encoding, decoding, and basic mathematical operations over ciphertexts.