This repository contains a modified implementation of PIRANA (https://eprint.iacr.org/2022/1401) for FABLE (https://eprint.iacr.org/2025/1081). The implementation is based on https://github.com/mhmughees/vectorized_batchpir rather than PIRANA's official implementation (https://github.com/zju-abclab/PIRANA), as it was not released at the time FABLE was developed.
Warning
This library is not intended to be used as a standalone implementation for batchPIR, as it contains a lot of modifications tailored for FABLE. You don't need to build and install this library if you intend to build FABLE (https://github.com/cmu-cryptosystems/FABLE).
Although the code is not intended to be built as a standalone library, you could still build it and run it as a PIR protocol.
To build the repository, first install the following libraries globally.
To build the project, run
cmake -S . -B build -DLUT_INPUT_SIZE=20 -DLUT_OUTPUT_SIZE=64
cmake --build build --parallelOnce the build process is complete, run the following command to execute the Batch PIR:
./build/bin/vectorized_batch_pirWe appreciate Muhammad Haris Mughees for the open-sourced implementation of batch PIR.