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

ppoprf

Puncturable Partially-Oblivious Pseudo-Random Function

5 unstable releases

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

#1400 in Cryptography

Download history 42/week @ 2024-07-22 40/week @ 2024-07-29 62/week @ 2024-08-05 44/week @ 2024-08-12 9/week @ 2024-08-19 198/week @ 2024-08-26 1/week @ 2024-09-02 37/week @ 2024-09-16 65/week @ 2024-09-23 27/week @ 2024-09-30 171/week @ 2024-10-07 46/week @ 2024-10-14 9/week @ 2024-10-21 3/week @ 2024-10-28 5/week @ 2024-11-04

76 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
~108K SLoC