#vdf #rsa #setup #verifiable #delay #wesolowski #unsolved-vdf

rsa-vdf

Verifiable Delay Function (Wesolowski 18)

1 unstable release

0.0.1 Apr 13, 2021

#14 in #vdf

GPL-3.0-or-later and AGPL-3.0-or-later

29KB
448 lines

RSA VDF

Simple RSA VDF in Rust (Wesolowski18)

let t = BigInt::sample(20); //time parameter 
// One public setup can work for many VDFs
let setup = SetupForVDF::public_setup(&t); 


// 1. challenger picks VDF challenge 
let unsolved_vdf = SetupForVDF::pick_challenge(&setup); 
// 2. challenger sends unsolved_vdf to solver
// 3. solver solves VDF
let solved_vdf = UnsolvedVDF::eval(&unsolved_vdf);
// 4. solver sends solved vdf to challenger 
// 5. challnger checks solution
let res = solved_vdf.verify(&unsolved_vdf);
assert!(res.is_ok())

Dependencies

~12MB
~202K SLoC