Skip to content
/ liboprf Public

library providing OPRF and Threshold OPRF based on libsodium


Notifications You must be signed in to change notification settings


Folders and files

Last commit message
Last commit date

Latest commit


Repository files navigation


This library implements the basic OPRF(ristretto255, SHA-512) variant from the IRTF CFRG Draft:

Additionally it implements a threshold OPRF variant based on by Krawczyk et al. which is compatible with the CFRG OPRF(ristretto255, SHA-512) variant.

For the threshold OPRF this library also provides distributed key-generation (DKG) implementation that is based on a trusted party handling the broadcasts necessary for the DKG, this is based on the JF-DKG (fig 1.) a variant on Pedersens DKG from the paper "Secure Distributed Key Generation for Discrete-Log Based Cryptosystems" by R. Gennaro, S. Jarecki, H. Krawczyk, and T. Rabin.

Additionally a python wrapper is provided, which can be installed using pip install pyoprf

This library depends on libsodium.