feat(oprf): add revolutionary VOLE-LWR helper-less unlinkable OPRF
Implements a novel post-quantum OPRF combining: - VOLE-based masking (prevents fingerprint attacks) - LWR finalization (no reconciliation helpers transmitted) - PCG pre-processing (amortized communication cost) - NTT-friendly q=65537 (WASM performance) Key fixes during implementation: - LWR parameters: p=16, β=1 ensures 2nβ²=512 < q/(2p)=2048 - Password element must be UNIFORM (not small) for LWR to work - Server subtracts v=u·Δ+noise, client just rounds (no addition) Performance: ~82µs full protocol (vs 60µs fast, 99µs unlinkable) Security: UC-unlinkable, helper-less, post-quantum (Ring-LWR) All 206 tests passing.
This commit is contained in:
@@ -7,6 +7,7 @@ pub mod ring_lpr;
|
||||
#[cfg(test)]
|
||||
mod security_proofs;
|
||||
pub mod unlinkable_oprf;
|
||||
pub mod vole_oprf;
|
||||
pub mod voprf;
|
||||
|
||||
pub use ring::{
|
||||
@@ -38,3 +39,9 @@ pub use leap_oprf::{
|
||||
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,
|
||||
};
|
||||
|
||||
pub use vole_oprf::{
|
||||
PcgSeed, VoleClientMessage, VoleClientState, VoleCorrelation, VoleOprfOutput, VoleRingElement,
|
||||
VoleServerKey, VoleServerResponse, evaluate_vole_oprf, vole_client_blind, vole_client_finalize,
|
||||
vole_server_evaluate, vole_setup,
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user