Rust implementation of a hybrid Private Information Retrieval (PIR) protocol, using CIP-PIR as the multi-server, and SealPIR as the single-server protocol, including Android example.
CIP-PIR: implementation, paper
SealPIR: implementation, paper
- Rust (
rustup
) - Android NDK 21.0.6113669
- copy/link/merge cargo-config.toml into ~/.cargo/config, adjusting paths as necessary
$ rustup target add aarch64-linux-android armv7-linux-androideabi
$ ./build.sh
to build Rust project and create libraries for Android project- Run
$ ./gradlew installRunDebug
inandroid/
to build and run APK
libc++_shared.so
errors: Adjustandroid/app/src/main/jniLibs/*/libc++_shared.so
links- Rust build errors: Check NDK paths in
~/.cargo/config
andbuild.sh