Skip to content
Closed
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 5 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,11 @@ RustFLPCP lets a client prove its input is valid, such as a one-hot vote or a ve
bounded norm, to a verifier that only computes linear functions of the input and the proof. The
check therefore works on data the verifier cannot read: inner-product functional encryption
(IPFE) ciphertexts or secret shares. It implements Theorem 4.3 of
[Boneh et al.](https://eprint.iacr.org/2019/188) as a generic engine for
[PEAR](https://eprint.iacr.org/2025/420): write a validity circuit once and get a prover,
explicit linear queries, and a decision procedure over any [arkworks](https://arkworks.rs)
FFT field.
[Boneh et al.](https://eprint.iacr.org/2019/188) as a generic engine and is the proof layer of
[PEAR](https://eprint.iacr.org/2025/420) (PETS 2025): write a validity circuit once and get a
prover, explicit linear queries, and a decision procedure over any
[arkworks](https://arkworks.rs) FFT field. Proving a 1,024-entry one-hot vector takes about
1.5 ms and verifying it about 0.12 ms on one CPU core (`cargo bench --bench flp`).

```rust
use ark_bls12_381::Fr;
Expand Down
Loading