#protocols #secret-key #crypto #client #oprf

ppoprf

Puncturable Partially-Oblivious Pseudo-Random Function

5 unstable releases

new 0.4.1 Oct 11, 2024
0.4.0 Aug 27, 2024
0.3.1 Aug 8, 2023
0.3.0 Aug 1, 2023
0.2.1 Jul 19, 2023

#1335 in Cryptography

Download history 40/week @ 2024-06-26 38/week @ 2024-07-03 23/week @ 2024-07-10 28/week @ 2024-07-17 51/week @ 2024-07-24 49/week @ 2024-07-31 43/week @ 2024-08-07 38/week @ 2024-08-14 113/week @ 2024-08-21 94/week @ 2024-08-28 19/week @ 2024-09-11 52/week @ 2024-09-18 35/week @ 2024-09-25 31/week @ 2024-10-02 169/week @ 2024-10-09

290 downloads per month
Used in 2 crates

MPL-2.0 license

40KB
979 lines

ppoprf

An implementation of the Puncturable Partially Oblivious Pseudorandom Function designed in https://arxiv.org/abs/2109.10074.


lib.rs:

This module defines the combined functionality for producing a puncturable partially oblivious pseudorandom function (PPOPRF) protocol. The protocol combines the PPOPRF of Tyagi et al. with the classic GGM puncturable PRF.

The result is a POPRF that can provide forward-security guarantees related to the pseudorandomness of client-side outputs, by allowing the puncturing of metadata tags from the server secret key. Such guarantees hold when clients reveal POPRF outputs for a metadata tag t, after t has been punctured from the secret key. This functionality is used to provide forward-secure randomness to clients in the STAR protocol.

Dependencies

~3.5–5MB
~109K SLoC