A delay function is a cryptographic technique used for adding delay into the function computation. A verifiable delay function or VDF (Boneh et al., CRYPTO ’18) is a publicly-verifiable function that takes a predetermined amount of to compute, regardless of parallelization.
The downside of standard VDFs is that intermediate steps of the computation are not verifiable; this was recently solved (Ephraim et al., EUROCRYPT ’20) with the introduction of continuous verifiable delay functions or cVDFs. However, this technique is not efficient in terms of proof size and verification time. Further, while cVDFs provide a way to make VDFs outsourceable, their primitive is insecure and cannot handle double spending by the outsourced party (i.e., the outsourced party can return a slightly earlier result, continue computation, and claim the reward from the server before the legitimate party can do so).
We’re looking at ways to create efficient cVDFs with succinct proofs, while also enabling secure outsourcing and selling of intermediate results.