PIRonGPU is an innovative library that accelerates data retrieval while preserving user privacy through the implementation of Private Information Retrieval (PIR) technology. By modifying the existing SealPIR protocol with HEonGPU, PIRonGPU leverages the parallel processing capabilities of GPUs to perform computation-intensive tasks at significantly higher speeds. This approach not only ensures that the client’s data request remains confidential but also enhances performance in high-demand applications. With its modular and flexible design, PIRonGPU offers a secure and efficient solution for modern data querying needs, making it an ideal tool for applications requiring both privacy and high-performance computing.
- Original Paper: PIR with compressed queries and amortized query processing
- HEonGPU version paper: HEonGPU: a GPU-based Fully Homomorphic Encryption Library 1.0
- CMake >=3.26.4
- GCC
- CUDA Toolkit >=11.4
- HEonGPU >=1.1.0
To build and install PIRonGPU, follow the steps below. This includes configuring the project using CMake, compiling the source code, and installing the library on your system.
| GPU Architecture | Compute Capability (CMAKE_CUDA_ARCHITECTURES Value) |
|---|---|
| Volta | 70, 72 |
| Turing | 75 |
| Ampere | 80, 86 |
| Ada | 89, 90 |
$ cmake -S . -D CMAKE_CUDA_ARCHITECTURES=89 -B build
$ cmake --build ./build/To run examples:
$ cmake -S . -D PIRonGPU_BUILD_EXAMPLES=ON -D CMAKE_CUDA_ARCHITECTURES=89 -B build
$ cmake --build ./build/
$ ./build/bin/examples/<...>
$ Example: ./build/bin/examples/pir_exampleTo run examples:
$ cmake -S . -D PIRonGPU_BUILD_TESTS=ON -D CMAKE_CUDA_ARCHITECTURES=89 -B build
$ cmake --build ./build/
$ ./build/bin/tests/<...>This project contains portions of code originally from the Microsoft SealPIR project, which is licensed under the MIT License. All modifications and additions made by Alişah Özcan are licensed under the Apache License, Version 2.0.
For more details, please refer to the LICENSE file.
Contributions are welcome! Please check the CONTRIBUTING file for guidelines on how to contribute to the project.
If you have any questions or feedback, feel free to contact me:
- Email: alisah@sabanciuniv.edu
- LinkedIn: Profile