feat(oprf): add LEAP-style truly unlinkable OPRF with commit-challenge protocol
- Implement commit-challenge protocol to prevent fingerprint attack - Use Learning With Rounding (LWR) instead of reconciliation helpers - Add mathematical analysis document (docs/LEAP_ANALYSIS.md) - 8 new tests, 197 total tests passing - Benchmark: ~108µs (102x faster than OT-based, truly unlinkable) The key insight: client commits to r BEFORE server sends challenge ρ, so server cannot predict H(r||ρ) to extract A·s+e fingerprint.
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
pub mod fast_oprf;
|
||||
pub mod hybrid;
|
||||
pub mod leap_oprf;
|
||||
pub mod ot;
|
||||
pub mod ring;
|
||||
pub mod ring_lpr;
|
||||
@@ -30,3 +31,10 @@ pub use unlinkable_oprf::{
|
||||
UnlinkableServerKey, UnlinkableServerResponse, client_blind_unlinkable,
|
||||
client_finalize_unlinkable, evaluate_unlinkable, server_evaluate_unlinkable,
|
||||
};
|
||||
|
||||
pub use leap_oprf::{
|
||||
LeapClientCommitment, LeapClientMessage, LeapClientState, LeapOprfOutput, LeapPublicParams,
|
||||
LeapServerChallenge, LeapServerKey, LeapServerResponse, client_blind as leap_client_blind,
|
||||
client_commit as leap_client_commit, client_finalize as leap_client_finalize, evaluate_leap,
|
||||
server_challenge as leap_server_challenge, server_evaluate as leap_server_evaluate,
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user