liveBook · Manning

Oblivious pseudorandom function

As explained in Real-World Cryptography

An oblivious pseudorandom function is a two-party protocol that lets one party obtain a pseudorandom-function output on a secret input without revealing the input to the key holder or the key to the input holder.

An oblivious pseudorandom function (OPRF) lets one party obtain a pseudorandom-function result for a secret input without revealing the input to the key holder or the key to the input holder. section 11.2.2

A typical OPRF exchange proceeds in four steps:

  • Alice converts her input into a group element and blinds it with a fresh random blinding factor. section 11.2.2
  • Alice sends the blinded input to Bob, who applies the PRF using his secret key. section 11.2.2
  • Bob returns the still-blinded result, which is useless to him without Alice’s blinding factor. section 11.2.2
  • Alice unblinds the result to obtain the real PRF output; the output stays consistent for the same input despite fresh blinding factors. section 11.2.2

Private set intersection

Alice obtains OPRF values for every word in her list, while Bob computes values for his own words. Comparing the values reveals matching words without revealing either original list. section 15.1.1

Figure 11.4 An oblivious PRF (OPRF) is a construction that allows one party to compute a PRF over the input of another party without learning that input. To do this, Alice first generates a random blinding factor, then blinds her input with that before sending it to Bob. Bob uses his secret key to compute the PRF over the blinded value, then sends the blinded output to Alice who can unblind it. The result does not depend on the value of the blinding factor.

Follow the protocol flow from blinding through keyed evaluation to unblinding. section 11.2.2

How Real-World Cryptography covers it

How deep it goes
Explains blinding, keyed evaluation, unblinding, fresh randomness, and group-based construction without giving implementation details.
Examples
Uses password-derived keys, OPAQUE registration and login, and word-list intersection as concrete protocol examples.
What it assumes
Assumes pseudorandom functions and introduces oblivious computation through a two-party blinding exchange.
What you can do after
Apply it via OPAQUE or private set intersection to compare or derive values without exposing inputs or PRF keys.
How it connects
Connects OPRFs to pseudorandom functions, OPAQUE, password-authenticated key exchange, and private set intersection.

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Real-World Cryptography. The section links point to the parts of the book it draws on.