Expand description
InsPIRe: Communication-Efficient PIR with Server-side Preprocessing
This crate implements the InsPIRe PIR protocol from the paper: “InsPIRe: Communication-Efficient PIR with Server-side Preprocessing”
Key components:
- InspiRING: Novel ring packing algorithm (LWE → RLWE) using only 2 key-switching matrices
- Homomorphic polynomial evaluation for reduced response size
- CRS model for server-side preprocessing
Re-exports§
pub use pir::encode_column;pub use pir::encode_database;pub use pir::encode_direct;pub use pir::extract;pub use pir::extract_inspiring;pub use pir::extract_two_packing;pub use pir::extract_with_variant;pub use pir::inverse_monomial;pub use pir::query;pub use pir::query_seeded;pub use pir::respond;pub use pir::respond_inspiring;pub use pir::respond_one_packing;pub use pir::respond_seeded;pub use pir::respond_seeded_inspiring;pub use pir::respond_seeded_packed;pub use pir::respond_seeded_with_variant;pub use pir::respond_with_variant;pub use pir::setup;pub use pir::ClientQuery;pub use pir::ClientState;pub use pir::EncodedDatabase;pub use pir::InspireCrs;pub use pir::PackingMode;pub use pir::SeededClientQuery;pub use pir::ServerCrs;pub use pir::ServerResponse;pub use pir::ShardData;pub use pir::load_shard_binary;pub use pir::respond_mmap;pub use pir::respond_mmap_inspiring;pub use pir::respond_mmap_one_packing;pub use pir::save_shards_binary;pub use pir::MmapDatabase;pub use params::InspireParams;pub use params::InspireVariant;pub use params::SecurityLevel;
Modules§
- cost
- Cost Attribution Estimator
- ethereum_
db - Ethereum database integration for InsPIRe PIR
- inspiring
- InspiRING: Ring packing algorithm for InsPIRe PIR
- ks
- Key-switching module
- lwe
- LWE (Learning With Errors) encryption module.
- math
- Mathematical primitives for InsPIRe PIR.
- params
- Parameter sets for InsPIRe PIR
- pir
- InsPIRe PIR Protocol Implementation
- rgsw
- RGSW (Ring-GSW) encryption module
- rlwe
- RLWE (Ring Learning With Errors) encryption module