Oblivious Pseudorandom Functions (OPRFs)
- OPRFs are defined as two-party protocols that allow a client to obtain F_K(x) without revealing its input while the server keeps the secret key K.
- Implementations include RSA-based and DDH-based constructions that use blinding to ensure correctness, obliviousness, and pseudorandomness.
- Extensions like Blocklisted OPRFs support privacy-preserving checks in federated authentication, secure password registration, and malware detection.
An Oblivious Pseudorandom Function (OPRF) is a two-party cryptographic primitive in which a client and a server jointly compute a keyed pseudorandom function —the client receives the output for its private input , while the server holds the secret key , but neither party learns anything more about the other's secret than what is inherent in the function output. OPRFs form a foundational building block for privacy-preserving protocols, enabling applications such as federated authentication, secure password registration, and blacklisting with input privacy maintained throughout. Their rigorous security stems from cryptographic assumptions such as the RSA inversion assumption or the Decisional Diffie-Hellman (DDH) problem, coupled with blinding techniques and, in advanced variants, privacy-preserving set intersection and embedding strategies (Buccafurri et al., 1 Dec 2025, Zhang et al., 21 Jul 2025).
1. Formal Definition and Properties
Let denote a family of keyed functions, parameterized by server-generated key . An OPRF protocol operates between a client input and a server holding , satisfying three core guarantees:
- Correctness: Upon completion, the client obtains output .
- Obliviousness: The server learns nothing about ; the client learns nothing about beyond what is implied by .
- Pseudorandomness: is computationally indistinguishable from uniform to the client, assuming an honest server.
This is formally realized by protocols decomposing into the sequence:
- Client: Compute and send to server.
- Server: and send to client.
- Client: to obtain .
Correct protocol execution ensures that and the above security properties hold even if one party is malicious (Buccafurri et al., 1 Dec 2025, Zhang et al., 21 Jul 2025).
2. Concrete Constructions
RSA-Based OPRF
A standard OPRF construction uses RSA blind signatures. The server (central service) possesses an RSA key with , . Hash functions are modeled as random oracles. The PRF is defined as:
Protocol steps:
- Client picks , computes ; sends to server.
- Server computes ; returns .
- Client computes ; output is .
In some applications, the outer hash may be omitted and the domain-specific used directly (Buccafurri et al., 1 Dec 2025).
DDH-Based OPRF (Naor–Pinkas)
With cyclic group of prime order (DDH-hard), and hash :
- Client chooses random , sends .
- Server computes for secret .
- Client unblinds: .
- Final output: using a key-derivation function (Zhang et al., 21 Jul 2025).
Security requires the DDH assumption, random oracle modeling, and blinding to protect .
3. Extensions: Blocklisted OPRFs (B-OPRF)
Blocklisted OPRFs (B-OPRFs) generalize OPRFs to allow the server to enforce a blocklist (possibly “fuzzy,” via metric embedding). The evaluation only succeeds if ; otherwise, the process aborts without revealing (Zhang et al., 21 Jul 2025).
The architecture involves:
- Metric-space embedding: Transform to (embedding key ), compute .
- Two-phase protocol:
- Explicit check: OPRF-based embedding and private distance-aware set intersection. Abort if too close to .
- Commit token: Upon passing, compute (), then OPRF on gives output; stores .
- Implicit check: For subsequent queries, recomputes , allows efficient evaluation bypassing set intersection.
- Security: The client’s chance to evade blocklisting combines unpredictability of the permutation, PRF security, and false accept/reject rates parameterized by the blocklist embedding (Zhang et al., 21 Jul 2025).
4. Domain-Specific and Privacy-Preserving Transformations
To enforce unlinkability across federated authentication domains, a domain-specific exponent is used by each identity provider (IdP):
- Each applies to the blinded input, yielding .
- CTS computes .
- IdP retrieves .
This transformation ensures that each IdP derives a pseudonymous identifier specific to its own domain, with no raw user identifier or possibility for cross-domain linkage, while still enabling global duplicate-registration checks (Buccafurri et al., 1 Dec 2025).
5. Security Analysis
The core security rests on established cryptographic assumptions:
- RSA inversion (for RSA-based OPRF): Given and , inverting is computationally infeasible.
- Random Oracle Model: and (or ) behave as ideal random functions.
- DDH (for group-based OPRF): The indistinguishability of from random group elements.
Obliviousness for the input arises from the one-wayness of blinding (e.g., masks ), and pseudorandomness follows from standard reduction arguments. In B-OPRFs, cheating probabilities are bounded by the unpredictability of embedding permutations and the blocklist embedding’s statistical parameters. The security of embedding and blocklist checks is ensured through the use of additional OPRF/VOLE wrappers and cryptographic hashing that hides intermediate values (Buccafurri et al., 1 Dec 2025, Zhang et al., 21 Jul 2025).
6. Efficiency and Practical Implementations
The computational and communication overhead of OPRF protocols is well-understood and practical:
| Actor | Computation | Communication |
|---|---|---|
| Client (IdP) | 1 hash, 1 , 2 exponentiations, 1 inversion | -bit value to server; receives -bit result |
| Server (CTS) | 1 exponentiation | -bit response |
For $2048$-bit RSA, evaluation time is in the low-millisecond range. OPRF-based blocklisting incurs higher cost due to private set intersection, but supports efficient repeat evaluations via token caching, reducing repeated cost to . In password-blocklisting experiments with (embedded to ), explicit check latency is $1.42$ s and subsequent implicit check is $11$ ms; communication is correspondingly $5.6$ MB and $21$ KB. For blocklisted MACs in malware applications with , explicit check is $41.3$ s and $102$ MB, implicit check just $4.7$ s and $49$ KB (Buccafurri et al., 1 Dec 2025, Zhang et al., 21 Jul 2025).
7. Applications and Protocol Flows
Federated Authentication
The privacy-preserving protocol for federated identity relies on OPRF for blinded registration and duplicate-enrollment detection while resisting cross-domain correlation. Each enrollment proceeds as:
- User submits UPI to IdP.
- IdP blinds UPI, applies domain exponent, and transmits to CTS.
- CTS evaluates OPRF, returns result for unblinding.
- IdP derives pseudonymous domain identifier and proves key possession.
- CTS stores (PID, status) and issues a blind signature token (Buccafurri et al., 1 Dec 2025).
Blocklisting in PAKE and Executable MACs
B-OPRFs enable privacy-preserving password blocklisting in augmented PAKE and blocklisted MAC computation for malware-free executables:
- PAKE blocklisting: Input is checked against both exact and near matches of known weak passwords (edit distance ); explicit check requires set intersection, implicit (repeat) check is fast.
- Executable MAC: Inputs are compared to blocklisted malware embeddings using PSI, with communication and latency improvements over monolithic approaches (Zhang et al., 21 Jul 2025).
These demonstrations highlight OPRFs’ adaptability to stringent privacy and efficiency requirements in diverse privacy-preserving distributed systems.