Next Article in Journal
Instance-Level Contrastive Learning for Weakly Supervised Object Detection
Previous Article in Journal
From Identification to Sensing: RFID Is One of the Key Technologies in the IoT Field
Previous Article in Special Issue
5G-BSS: 5G-Based Universal Blockchain Smart Sensors
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Verifiable Delay Function and Its Blockchain-Related Application: A Survey

1
Engineering Research Center of Digital Forensics, Ministry of Education, School of Computer Science, Nanjing University of Information Science & Technology, Nanjing 210044, China
2
Beijing Institute of Computer Technology & Application, Beijing 100082, China
3
College of Computer Science & Technology, Nanjing University of Aeronautics & Astronautics, Nanjing 211106, China
*
Author to whom correspondence should be addressed.
Sensors 2022, 22(19), 7524; https://doi.org/10.3390/s22197524
Submission received: 3 September 2022 / Revised: 25 September 2022 / Accepted: 29 September 2022 / Published: 4 October 2022
(This article belongs to the Special Issue Blockchain-Enabled Privacy-Preserving for Internet of Things)

Abstract

:
The concept of verifiable delay functions has received attention from researchers since it was first proposed in 2018. The applications of verifiable delay are also widespread in blockchain research, such as: computational timestamping, public random beacons, resource-efficient blockchains, and proofs of data replication. This paper introduces the concept of verifiable delay functions and systematically summarizes the types of verifiable delay functions. Firstly, the description and characteristics of verifiable delay functions are given, and weak verifiable delay functions, incremental verifiable delay functions, decodable verifiable delay functions, and trapdoor verifiable delay functions are introduced respectively. The construction of verifiable delay functions generally relies on two security assumptions: algebraic assumption or structural assumption. Then, the security assumptions of two different verifiable delay functions are described based on cryptography theory. Secondly, a post-quantum verifiable delay function based on super-singular isogeny is introduced. Finally, the paper summarizes the blockchain-related applications of verifiable delay functions.

1. Introduction

The concept of a verifiable delay function was first proposed in 2018 by Boneh et al. [1], who proposed several candidate structures for constructing verifiable delay functions and it is an important tool to add time delay in decentralized applications [2,3,4,5]. To be exact, the verifiable delay function is a function f : X Y that takes a prescribed wall-clock time to compute, even on a parallel processor, ond outputs a unique result that can effectively output the verification. In short, even if it is evaluated on a large number of parallel processors and still requires evaluation of f in a specified number of sequential steps. Most importantly, given an input x and an output y, anyone must quickly verify the output y = f ( x ) . That is to say, for all x X and y Y , this function f : X Y satisfies the following requirements:
x x 2 x 2 2 x 2 3 x 2 T mod N = y .
The verifiable delay function is a cryptographic function that requires to be computed in T sequential steps and produces a unique, efficiently and publicly verified output [6]. Because the verifiable delay function satisfies the characteristic of sequentiality, the iterated value does depend on the order of the iterated elements. Choose the tuple ( N , x , T ) as the puzzle, and the verifiable delay function is defined as
e : = 2 T mod φ ( N ) , y : = x e mod N .
where N = p · q is an RSA modulus [7], x Z N * is a random seed, T N is time parameter and knows the group order φ ( N ) = ( p 1 ) · ( q 1 ) .
Although verifiable delay functions have been roughly described in the review of verifiable delay functions published by Boneh et al. [8], the summary is not comprehensive with the emergence of more candidate structures of verifiable delay functions. In addition, the application of different kinds of verifiable delay functions in the blockchain is not explained in detail. Therefore, this paper makes a more comprehensive and detailed summary.
The verifiable delay function has several important characteristics, such as being T-sequential, uniqueness and effective verifiability, as shown in Table 1.
The remainder of this paper is organized as follows. Section 2 introduces the descriptions of verifiable delay functions. Section 3 describes verifiable delay functions based on various algebraic assumptions. In Section 4, verifiable delay functions based on various structural assumptions are introduced in detail. Section 5 the postquantum-secure verifiable delay function. Section 6 describes applications of verifiable delay functions combined with blockchain. Section 7 gives a summary.

2. Descriptions of Verifiable Delay Functions

The concept of the verifiable delay function first proposed by Boneh and Fisch. The verifiable delay function requires a specified number of sequential steps to evaluate and will produce a function with a unique output that can be validated effectively and publicly. Next, a triple of algorithm (Setup, Eval, Verify) of verifiable delay functions are described as follows [9]. The algorithm flow is shown in Figure 1 and the different types of verifiable delay functions are described in Table 2.
S e t u p ( λ , T ) p p = ( e k , v k ) is a randomized algorithm that takes a delay parameter T and a security parameter λ as input and outputs public parameters p p composed of the evaluation key e k and the verification key v k . Because S e t u p algorithm is limited by security parameter λ , the running time cannot be too long. In addition, S e t u p algorithm usually needs a secret random as a parameter to ensure meaningful security, so it is difficult to avoid that the scheme needs a trusted setup to select the random.
E v a l ( e k , x ) ( y , π ) is a slow cryptographic algorithm that takes the evaluation key e k and a random seed x X as input and outputs a y Y together with a possibly empty proof π . To ensure sequentiality, E v a l must run in time T with no more than a polynomial logarithm of T parallel processors.
V e r i f y ( v k , x , y , π ) { a c c e p t , r e j e c t } is a deterministic cryptographic algorithm, in which the algorithm inputs verification key v k , random seed x, outputs y and proof π . If f ( x ) = y , output a c c e p t ; Otherwise output r e j e c t . V e r i f y is much faster than E v a l and it must run in total time polynomial in l o g ( T ) and λ .

2.1. Weak Verifiable Delay Functions

Definition 1.
(Weak verifiable delay functions.) The system V = ( S e t u p , E v a l , V e r i f y ) is a weak verifiable delay function if the verifiable delay function allows E v a l to achieve O ( T ) parallelism. ( T 2 , o ( T ) ) -sequentiality can only be meaningful for a weak verifiable delay function if E v a l is allowed strictly less that T o ( T ) on fewer than T 2 parallel processors, otherwise the honest computation of E v a l would require more parallelism than even the adversary is allowed.
The weak verifiable delay function can be constructed based on the existence of degree T injective rational maps [10] that cannot be inverted faster than computing polynomial greatest common denominators of degree T polynomials.
Injective rational maps. Define the reverse problem of an injective rational map F = ( f 1 , . . . , f m ) on algebraic sets Y F q n to X F q m , where each f i : F q n F q is a rational function in F q ( X 1 , . . . , X n ), for i = { 1 , . . . , m } . An algebraic set Y is the set of vanish points of some set of polynomial S.
Boneh et. al. abstract weak verifiable delay functions from an injective rational map. First, let F: F q n F q be a rational function that is an injective map from Y to X : = F ( Y ) . At the same time, X is required to be efficiently sampleable and F can be evaluated efficiently for all y Y . If you need to use the injective rational map function F in the verifiable delay function, you must guarantee | X | > λ T 3 to prevent brute force attacks, where a delay parameter T and a security parameter λ as input to the S e t u p algorithm.
Verifiable delay functions construct a weak verifiable delay function by function family F : = ( q , F , X , Y ) λ , T with a security parameter λ and a delay parameter T as input parameters.
S e t u p ( λ , T ) p p = ( ( q , F ) , ( q , F ) ) is a randomized algorithm that takes a delay parameter T and a security parameter λ as input and choose a ( q , F , X , Y ) F , then outputs public parameters p p composed of the ( q , F ) .
E v a l ( ( q , F ) , x ) ( y , π ) is a slow cryptographic algorithm that takes the ( q , F ) and a random seed x X F q m as input and compute a y Y together with a possibly empty proof π .
V e r i f y ( ( q , F ) , x , y , π ) { a c c e p t , r e j e c t } is a deterministic cryptographic algorithm, in which the algorithm inputs ( q , F ) , random seed x , outputs y and proof π . If F ( x ) = y , output a c c e p t ; Otherwise output r e j e c t .
In order to ensure that the solution y is unique, F is required to be injective on Y.

2.2. Incremental Verifiable Delay Functions

Definition 2.
(Incremental verifiable delay functions.) The system V = ( S e t u p , E v a l , V e r i f y ) is a incremental verifiable delay function if the time parameter T of the verifiable delay function is not uniquely determined and is allowed to be determined in the output π of E v a l , which does not generate additional proofs.
Since the verifiable delay function is a sequential function [11], Boneh et. al. propose the use of tight incremental verifiable computation to construct an incremental verifiable delay function construction. Next, here’s how to build an incremental verifiable delay function with a tight incremental verifiable computation.
Incremental verifiable computation was first proposed by Valiant [12]. After that, Bitansky et al. [13] applied it to distributed computions and to other proof systems. The incremental verifiable computation is to guarantee that the prover can generate a proof that a certain state is indeed the current state of the computation at every incremental step of the computation. The proof is updated after every step of the computation to produce a new proof. Iterative sequence functions can be implemented via tight incremental verifiable computation, which captures the primitives required by verifiable delay functions.
Let f λ : N × X X be an interated sequential function with round function g λ having ( T , ϵ ) -sequentiality. An incremental verifiable computation system for an interated sequential function f λ is polynomial time algorithm ( I V C G e n , I V C P r o v e , I V C V e r i f y ) that satisfy completeness, succinctness and soundness.
Completeness.
x X , Pr IVCVerify ( vk , x , y , k , π ) = Yes | ( vk , ek ) R IVCGen ( λ , f ) | ( y , π ) R IVCProve ( ek , k , x ) = 1
Succinctness. The length of a proof is bounded by p l o y ( λ , l o g ( k T ) ) .
Soundness. The soundness satisfied by the incremental verifiable computation is sub-exponential soundness. For all algorithm A running in time 2 o ( λ ) .
Pr I V C V e r i f y y ( v k , x , y , k , π ) = Yes | ( vk , ek ) R IVCGen ( λ , f ) f ( k , x ) y | ( x , y , k , π ) R A ( λ , v k , e k ) < negl ( λ )
Next, we introduce the verifiable delay function construction based on tight incremental verifiable computation. Let a family f λ , where each f λ , N × X λ X λ is defined by f λ ( k , x ) = g λ k ( x ) . Here g λ is a (T, ϵ )-sequential function on an efficiently sampleable domain of size O ( 2 λ ) .
S e t u p ( λ , T ) p p = ( ( e k , k ) , v k ) is a randomized algorithm that takes a delay parameter T and a security parameter λ as input and outputs public parameters p p composed of the evaluation key e k , a largest integer k and the verification key v k . Generate ( e k , v k ) by running I V C G e n ( λ , f λ ).
E v a l ( ( e k , k ) , x ) ( y , π ) is a slow cryptographic algorithm that takes the evaluation key e k , a largest integer k and a random seed x as input and runs I V C P r o v e ( e k , k, x), and outputs a y together with a possibly empty proof π .
V e r i f y ( v k , x , y , π ) { a c c e p t , r e j e c t } is a deterministic cryptographic algorithm, in which the algorithm runs and outputs I V C V e r i f y ( v k , x, y, k, π ). If f λ ( x , k ) = y , output a c c e p t ; Otherwise output r e j e c t .
Since T is fixed in the public parameters p p . However, it is also possible to directly assign the T to E v a l algorithm. Therefore, a tight incremental verifiable computation based the verifiable delay function is an incremental verifiable delay function.

2.3. Decodable Verifiable Delay Functions

Definition 3.
(Decodable verifiable delay functions.) The system V = ( S e t u p , E v a l , V e r i f y ) is a decodable verifiable delay function if there is an algorithm in the verifiable delay function that can decode input x backwards from output y. If the decoding is efficient then no additional proof π is required [14].
Using a slow and easy to verify function with exponentiation [15] based calculations in a finite group can be constructed a decodable verifiable delay function. Boneh et al. propose a simple exponentiation-based decodable verifiable delay functions with bounded pre-computation. However, the adversary cannot run a long pre-computation between the time the public parameter p p is exposed and the time that the verifiable delay function is computed.
Next, we introduce a decodable verifiable delay function based on an exponentiation in a finite group. Let L = { ι 1 , ι 2 , . . . , ι T } be the first T odd promes, namely ι 1 = 3 , ι 2 = 5 , etc. Let P be the product of the primes in L, namely P : = ι 1 · ι 2 · . . . · ι T .
S e t u p ( λ , T , b ) p p = ( e k , v k ) is a randomized algorithm that takes a delay parameter T, a security parameter λ and a preprocessing security parameter b as input and outputs public parameters p p composed of the evaluation key e k and the verification key v k .
In algorithm S e t u p , let a integer module N multiplicative group G := ( Z /N N ) * and a random hash function H : Z G . The algorithm needs to compute h i H ( i ) G , for i { 1 , 2 , . . . , b = 2 30 } then compute g i : = h i 1 / P . It outputs the evaluation key e k := ( G , H, g 1 , g 2 , ..., g b ) and the verification key v k := ( G , H).
E v a l ( e k , x ) y is a slow cryptographic algorithm that takes the evaluation key e k and a random seed x as input and outputs a y.
In algorithm E v a l , using random hash function to map a random seed x to a size of λ random subset L x L and random subset S x of λ values in { 1 , 2 . . . , b = 2 30 } . At the same time, let P x be the product of all prime numbers in L x . Let g be g : = Π i S x g i G and the seed solution y is simply y g P / P x G .
V e r i f y ( v k , x , y , π ) { a c c e p t , r e j e c t } is a deterministic cryptographic algorithm, in which the algorithm inputs verification key v k , random seed x, outputs y and proof π . If f ( x ) = y , output a c c e p t ; Otherwise output r e j e c t .
In algorithm V e r i f y , let h be h : = Π i S x H ( i ) G and if and only if y P x = h G , where P x and S x are calculated by the algorithm E v a l ( e k , x ) .
The preprocessing parameter b in an exponentiation-based the decodable verifiable delay function ensures the security of the construction. The construction requires a trusted setup [16,17], but can be eliminated by choosing a random number large enough.

2.4. Trapdoor Verifiable Delay Functions

Definition 4.
(Trapdoor verifiable delay functions.) The system V = ( K e y g e n , T r a p d o o r , E v a l , V e r i f y ) is a trapdoor verifiable delay function if there is a secret key s k that can quickly get the output of E v a l through the input of E v a l . In other words, the trapdoor verifiable delay function can bypass the delay parameter to quickly calculate the result through the trapdoor [18].
Given a pair of Alice’s public-secret keys ( p k , s k ), where p k is Alice’s public key and s k is the secret key. Alice is able to quickly evaluate trap [19,20] functions T r a p d o o r s k on x with a secret key s k . Let T be an implicit time function about the security parameter λ and x be a piece of data. Except for Alice, everyone else can only compute the public evaluation function E v a l p k with the public key p k in T-sequential steps and the calculation is slow, but the result between E v a l p k and T r a p d o o r s k is equal. A trapdoor verifiable delay function comsists of four algorihtm ( K e y g e n , T r a p d o o r , E v a l , V e r i f y ).
G e n k e y ( λ ) ( p k , s k ) is a key generation algorithm that takes a security parameter λ as input and outputs Alice’s public key p k and the secret key s k . Meanwhile, Alice’s public key is publicly valid, and the secret key is known only to Alice herself.
T r a p d o o r s k ( x , T ) ( y , π ) is a slow cryptographic algorithm that takes an implicit time function T about the security parameter λ and a piece of data x as input, and uses the secret key s k to output y together with a possibly empty proof π . The function T is a sequence of sequential steps required to compute the same output y without knowledge of the secret key s k .
E v a l p k ( x , T ) ( y , π ) is a slow cryptographic algorithm to evaluate the function on x using only the public key p k . It produces an output y associated with y and a possibly empty proof π . This procedure is meant to be infeasible in time less than T (this will be expressed precisely in the security requirements).
V e r i f y ( x , T , y , π ) { a c c e p t , r e j e c t } is a deterministic cryptographic algorithm to verify if y is indeed the correct output for x, associated with the public key p k and the evaluation time T, possibly with the help of the proof π .
The time delay T is a function of the security parameter λ and T is an input to each algorithm, so the security parameter λ is implicitly an input to each of these procedures. Generate a public-secret key pair ( p k , s k ) through the key generation algorithm G e n k e y . Given a piece of data x and time delay parameter T, let T r a p d o o r s k ( x , T ) ( y , π ) and E v a l p k ( x , T ) ( y , π ) . If y = y and V e r i f y ( x , T , y , π ) = V e r i f y ( x , T , y , π ) output accept; Otherwise output reject.

3. Verifiable Delay Functions Based on Algebraic Assumptions

3.1. Construction Based on Finite Abelian Groups of Unknown Order

Verifiable delay functions can be constructed by showing Rivests-Shamir-Wagner (RSW) when the time-lock puzzle [21,22] is publicly verifiable. To be precise, giving a statistically sound public-coin protocol [23] to prove that a tuple ( T , N , x , y ) satisfies y = x t ( m o d N ) verifiers do not know the decomposition of N and its running time is mainly to solve the puzzle, where the time t = 2 T is a power of two. This construction solves an instance of the time-lock puzzle, and computes a proof of correctness, which allows anyone to efficiently verify the result.
Pietrzak [24] proposed a verifiable delay function based on finite abelian groups [25,26] of unknown order consisting of four algorithm ( S e t u p , G e n k e y , S l o t h , V e r i f y ) .
S e t u p ( 1 λ ) N inputs the statistical security parameter 1 λ output N, where the λ defines another security parameter λ R S A specifying the bitlength of an λ R S A modulus and N is the single λ R S A bit RSA modulus of public parameters. The N : = p · q is composed of two λ R S A / 2 -bit secure prime numbers p and q randomly selected by the S e t u p algorithm.
G e n k e y ( N , T ) ( x , T ) samples a random number x Q R + and outputs ( x , T ) .
Define Q R N = def { z 2 m o d N : z Z N * } as quadratic residues and the signed quadratic residues [27] are the group Q R + = def { | x | : x Q R N } . In a verifiable delay function, calculating x 2 T is difficult in ( Z N * , · ) . Pietrzak uses ( Q R N + , ) instead of ( Z N * , · ) . Because | Q R N | = | Z N * | / 4 , the probability that a random number in ϵ is also in Q R N is 1/4. Therefore, if one can break the assumption with probability ϵ over Q R N , the assumption can also be broken over Z N * with probability ϵ / 4 . Then, they uses ( Q R N , · ) instead of ( Q R N + , ) in the proof. This approach can make the proof more efficient because the multiplication mod N in Q R N is more convenient and simpler than the ∘ operation in Q R N + . Since ( Q R N , · ) and ( Q R + , ) are isomorphic, it is proved ( Q R N , · ) means ( Q R + , ) has the same security.
Let random number x Q R N and y = x 2 T m o d N in ( Q R N , · ) , and x = | x | and y = ( x = | y | in ( Q R N + , ) , where y = | y | and y = | y | 1 , and y y , N y . Although it is not certain whether y = y or y = N y , y has a 1/2 probability of getting the correct value. This shows that given an algorithm that calculates x 2 T in Q R N + with probability ϵ in time T, it is possible to obtain an algorithm that calculates x 2 T in Q R N + in time when time T and probability ϵ / 2 are essentially the same.
S l o t h ( N , ( x , T ) ) ( y , π ) is a slow algorithm that takes the N and a random seed x and time delay parameter T as input and outputs a y together with π , where y = x 2 T is the solution of the RSW time-lock puzzle in Q R N + and π = { u i } i [ T ] is a possibly empty proof that y has been correctly evaluated. It is derived by applying the Fiat-Shamir heuristic [28,29] to the protocol.
V e r i f y ( N , ( x , T ) , ( y , π ) ) { a c c e p t , r e j e c t } is a deterministic cryptographic algorithm to verify if x, y and all u i are in Q R N + . If these are not the case output r e j e c t . Otherwise, all x i and y i should be calculated, and y T + 1 = ? x T + 1 2 should be judged. If all the above are satisfied, output a c c e p t .

3.2. Construction Based on Elliptic Curve Cryptography

De Feo et al. [30] designed a new verifiable delay function using isogenic and bilinear pairs [31,32] of super-singular elliptic curves [33], and this framework is non-interactive in nature, the output can be effectively verified without additional proofs. Before describing this structure, let’s introduce some basic factors of super-singular curves, pairings and isogenies.
Elliptic curves on finite fields are described in detail in [34,35,36] and their use in cryptography is described in detail in [37,38,39]. In addition, the ideal class group of quadratic imaginary fields are explained in [40] and the maximal orders of quaternion algebras are introduced in [41,42].
Let C be an elliptic curve defined over a finite field F q characterized by p and the order of C ( F q ) is # C ( F q ) = q + 1 L , where L is the trace of the Frobenius endomorphism π . If and only when p divided L, the curve can be called a super-singular elliptic curve. Each super-singular curve is isomorphic to the curve defined on F p 2 , and for the fixed prime number p, there are only a finite number of super-singular curves until isomorphism.
Weil pairing [43] e N : C [ N ] × C [ N ] μ N with bilinear pairs is defined on super-singular curves are used to describe verifiable delay functions. That pairing needs to be satisfied the compatibility condition e N ( φ ( P ) , Q ) = e N ( P , φ ˜ ( Q ) ) for any isogeny φ : C C and points P C [ N ] , Q C [ N ] .
Verifiable delay functions from super-singular curves. Let X 1 , X 2 , Y 1 , Y 2 , G be groups of prime order N. Let e X : X 1 × X 2 G and e Y : Y 1 × Y 2 G be non degenerate bilinear pairings, where a pair of bijections φ : X 1 Y 1 and φ ˜ : Y 2 X 2 and φ and φ ˜ are group isomorphisms. Let g be any generator of X 1 and ( N , X 1 , X 2 , Y 1 , Y 2 , G , e X , e Y , g , φ ( g ) ) be the public parameters. The verifiable delay function is the map φ ˜ and the maps φ , φ ˜ are also part of the public parameters. To verify the output, one checks that e X ( g , φ ˜ ( Q ) ) = e Y ( φ ( g ) , Q ) , where Q Y 1 is the point at which E v a l calculates the value.
De Feo et al. propose verifiable delay functions for super-singular curves over prime field F p and F p 2 , using super-singular elliptic curves for the pairing groups, and isogenies of prime power degree for the maps φ , φ ˜ . Next, we mainly introduce verifiable delay functions with super-singular curves over a prime field F p .
Let p be prime so that p + 1 contains the larger prime factor N. Let degree l = 2 , p = 7 m o d 8 or a small prime such that ( p l ) = 1 . Take the super-singular elliptic curve C / F p , and denote by e N ( · , · ) the Weil pairing on C [ N ] .
S e t u p ( λ , T ) ( e k , v k ) = ( φ ˜ , ( C , C , g , φ ( g ) ) ) is a randomized algorithm that takes a delay parameter T and a security parameter λ as input. First, a super-singular curve C / F p needs to be chosen and a direction needs to be chosen on the horizontal l-isogeny graph to compute a cyclic isogeny φ : C C of degree l T and its dual φ ˜ in this algorithm. Next, the algorithm chooses a generator g of X 1 = v 1 ( C ˜ [ N ] C ˜ ( F p ) ) ) and compute φ ( g ) , where μ F p is a non quadratic residue and C ˜ is a quadratic twist of C. Finally, the algorithm outputs public parameters ( e k , v k ) = ( φ ˜ , ( C , C , g , φ ( g ) ) ) , where ( e k , v k ) composed of the evaluation key e k and the verification key v k , and ( φ ˜ , ( C , C , g , φ ( g ) ) ) composed of the map φ ˜ , the cyclic isogeny C C , generator of X 1 and the map φ ( g ) of generator g .
E v a l ( φ ˜ , Q Y 1 ) φ ˜ ( Q ) is a slow cryptographic algorithm that takes the map φ ˜ and a point Q Y 1 as input and outputs φ ˜ ( Q ) .
V e r i f y ( C , C , g , Q , φ ( g ) , φ ˜ ( Q ) ) { a c c e p t , r e j e c t } is a deterministic cryptographic algorithm. The algorithm needs to verify that φ ˜ ( Q ) X 2 = C [ N ] C ( F p ) and e N ( g , φ ˜ ( Q ) ) = e N ( φ ( g ) , Q ) . If all the above are satisfied, output a c c e p t ; Otherwise, output r e j e c t .

4. Verifiable Delay Functions Based on Structural Assumptions

Ephraim et al. design continuous verifiable delay functions based on a high arity tree [44], where each intermediate state of the computation can be verified and proofs of the computation can be efficiently merged. It is a verifiable delay function based on the assumption of tree structure constructed on the basis of the repeated square [45] assumption. The continuous verifiable delay function only depends on the Fiat-Shamir heuristic for a constant round proof system. Next, we introduce continuous verifiable delay functions based on high arity trees.
First, the computational steps correspond to a specific traversal of a ( k + 1 ) -ary tree of height h = l o g k B . Each node in the ( k + 1 ) -ary tree is related to a statement ( x , y , T , π ) of the underlying verifiable delay functions, where the output value y = x 2 T and the possible empty proof π are the corresponding proofs of correctness. If x is the node’s input, the difficulty T = k h l is determined by its height in ( k + 1 ) -ary tree and l is root node.
Next, they define a tree structure. Starting from the root node with input x 0 and difficulty T = k h , divide the tree structure into k segments x 1 , x 2 , . . . , x k similar to the verifiable delay functions structure. In a tree-based verifiable delay functions structure, only calculating the input x of a leaf node from the previous state can guarantee that each step of calculation corresponds to the calculation of a single leaf’s statement.
Before introducing continuous verifiable delay functions, let’s review unique verifiable delay functions. Next, the interactive proof that language L N , B corresponding to repeated squares is transformed into unique verifiable delay functions by using the Fiat-Shamir heuristic, where
L N , B = x 0 , y , T : y 2 = ( x 0 ) 2 T + 1 mod N , x 0 is valid and T B 3 y = , othersize
A unique verifiable delay function is composed of the following four algorithm ( u V D F . G e n , u V D F . S a m p l e , u V D F . E v a l , u V D F . V e r i f y ).
u V D F . G e n ( 1 λ ) p p = ( N , B , k , d , h a s h ) is a randomized algorithm that takes a statistical security parameter 1 λ as input and outputs public parameters p p composed of the RSA modulus N, the upper bound B, the arity k, a constant d and a hash function h a s h , where h a s h H , k = λ and B = B ( λ ) .
u V D F . S a m p l e ( 1 λ , p p ) x 0 takes a statistical security parameter 1 λ and the public parameters p p and sample and output a random element x 0 Z N * such that g c d ( x 0 ± 1 , N ) = 1 and x 0 = | x 0 | .
u V D F . E v a l ( 1 λ , p p , ( x 0 , T ) ) ( y , π ) is a slow cryptographic algorithm that takes a statistical security parameter 1 λ , the public parameters p p , a random element x 0 and the time delay parameter T as input and outputs a y together with a possibly empty proof π .
u V D F . V e r i f y ( 1 λ , p p , ( x 0 , T ) , ( y , π ) ) { 0 , F S V e r i f y ( p p , ( x 0 , T ) , ( y , π ) ) } is a deterministic cryptographic algorithm. If all the above are satisfied, output a c c e p t . Otherwise, output F S V e r i f y ( p p , ( x 0 , T ) , ( y , π ) ) . The F S V e r i f y is a verification algorithm for Fiat-Shamir transformations defined on the protocol for language L N , B relative to some hash family H . For details of the algorithm, see [46]. Then, we review the definition of a continuous verifiable delay function and describe it in detail.
Definition 5.
(Continuous verifiable delay functions.) Let B , l : N N and ϵ ( 0 , 1 ) . A ( B , l , ϵ ) -continuous verifiable delay function is a tuple ( c V D F . G e n , c V D F . S a m p l e , c V D F . E v a l , c V D F . v e r i f y ) such that ( c V D F . G e n , c V D F . S a m p l e , c V D F . E v a l ) is a (a, B, l, ϵ)-iteratively sequential function, ( c V D F . E v a l , c V D F . v e r i f y ) is a B-sound function.
At a high level, the continuous verifiable delay function will iteratively compute each leaf node in a ( p p u V D F , d , g ) -puzzle tree, where p p u V D F = (N, B, k, d, h a s h ) are the public parameters of the underlying unique verifiable delay function and g is the starting point of the tree given by u V D F . S a m p l e .
Next, we define a frontier. At a high level, for a leaf s, the frontier of s will correspond to the state of the continuous verifiable delay function upon reaching s. Specifically, it will contain all nodes whose values have been computed at that point, but whose parents’ values have not yet been computed.
Definition 6.
(Frontier.) For a node s in a ( p p u V D F , d , g ) -puzzle tree, the frontier of s, denoted f r o n t i e r ( s ) , is the set of pairs ( s , v a l ( s ) ) for nodes s that are left siblings of any of the ancestors of s. We note that s is included as one of its ancestors.
Next, we review the formal details of continuous verifiable delay functions, which is a tuple ( c V D F . G e n , c V D F . S a m p l e , c V D F . E v a l , c V D F . V e r i f y ).
c V D F . G e n ( 1 λ ) p p = ( p p u V D F , d , h g t ) is a randomized algorithm that takes a statistical security parameter 1 λ as input and outputs public parameters p p composed of the p p u V D F = ( N , B , k , d , h a s h ) , a constant d and a tree height h g t = l o g k ( B ) d .
c V D F . S a m p l e ( 1 λ , p p ) v = ( g , 0 h , ϕ ) takes a statistical security parameter 1 λ and public parameters p p as input and outputs a random element v, where g u V D F . S a m p l e ( 1 λ , p p u V D F ) is sampled by the S a m p l e algorithm of unique verifiable delay functions.
c V D F . E v a l ( 1 λ , p p , v ) v takes a state v corresponding to a leaf s in the tree and computes the next state v corresponding to the next leaf. Each state v will be of the form ( g , s , F ) , where s is the current leaf in the tree, F is the frontier of s and g is the starting point of the tree given by u V D F . S a m p l e .
c V D F . V e r i f y ( 1 λ , p p , ( v , T ) , v ) { a c c e p t , r e j e c t } verifies the state v by recursively running this verification algorithm and whether v is correct. Output a c c e p t if all the check conditions of the continuous verifiable delay function are satisfied; Otherwise output r e j e c t .
The heart of our construction is the c V D F . E v a l functionality which takes a state v corresponding to a leaf s in the tree and computes the next state v corresponding to the next leaf. Each state v will be of the form ( g , s , F ) , where s is the current leaf in the tree and F is the frontier of s. Then, c V D F . E v a l ( 1 λ , p p , ( g , s , f r o n t i e r ( s ) ) will output (g, s + 1 , f r o n t i e r ( s + 1 ) ). There are three phases of the algorithm c V D F . E v a l . First, it checks that its input is well-formed. It then computes v a l ( s ) using f r o n t i e r ( s ) , and then computes f r o n t i e r ( s + 1 ) using both f r o n t i e r ( s ) and v a l ( s ) .

5. Post-Quantum Verifiable Delay Functions

In 2021, Jorge Chavez-Saab et al. [47] researched the problem of constructing post-quantum secure verifiable delay functions, especially verifiable delay functions based on super-singular isogeny. They propose an arithmetic structure specifically for homologous settings using succinct non-interacting arguments (SNARGs) [48] to achieve good asymptotic efficiency. This isogeny-based verifiable delay functions has the advantages of post-quantum security [49], quasi-logarithmic verification, and does not require a trusted setup. Since the E v a l algorithm for postquantum verifiable delay functions involves isogeny walks on super-singular elliptic curves that can be publicly verified through a SNARG-based verification process. Formally, a verifiable delay function is composed of three main algorithm:
S e t u p ( λ , T ) p p = ( e k , v k ) takes a delay parameter T and a security parameter λ as input and outputs public parameters p p composed of the evaluation key e k and the verification key v k .
E v a l ( e k , x ) ( y , π ) takes the evaluation key e k and a certain input x as input and calculates an output y and a possibly empty proof π .
The function involves computing walks of length T in the 2-isogeny graph of super-singular curves on F p 2 , where p 2 9 m o d 16 (which is required to apply Kong’s square root algorithm [50]) and p = p o l y ( T ) . Given a time delay parameter T, and the evaluator needs to compute a walk of length T on the 2-isogeny graph, where the exact path is determined by a string s and the path is not backtracking. Given the two v-invariant curves v i and v i + 1 , they are 2-isogenous over F p 2 if and only if the modular polynomial Φ ( v i , v i + 1 ) vanishes. For a fixed v i the next curve in the path can be calculated by finding the root of Φ ( v i , A ) . If A = v i 1 is a known root of Φ ( A ) = A 3 + a A 2 + b A + c then Φ ( A ) can rewrite Φ ( A ) = ( A v i 1 )( A 2 + (a + v i 1 )A + b + a v i 1 + v i 1 2 ) and focus on finding the roots of the quadratic factor. After the square root is calculated, the evaluator selects the symbol using the input string, resulting in a definite traversal process.
V e r i f y ( v k , x , y , π ) { a c c e p t , r e j e c t } inputs verification key v k , a certain input x, a output y and a proof π . If f ( x ) = y , output a c c e p t ; Otherwise output r e j e c t .
Since the postquantum verifiable delay functions is constructed over SNARG, a deterministic process and a fixed symbol are required for the SNARG verification process. For the validation process, the evaluator keeps track the results of the evaluation and construct an SNARG, and the values resulting from the evaluation process must be satisfied.
De-Feo et al. proposed a new verifiable delay function framework based on the assumption of elliptic curve cryptography, and instantiated this framework using super-singular elliptic curves and bilinear pairs. The structure of this verifiable delay function is non-interactive in nature, and the output can be effectively verified without additional proofs. However, the only secure way to instantiate a verifiable delay function requires a trusted setup to perform a random isogeny traversal. In fact, this setup needs to start with super-singular elliptic curves with unknown autohomomorphic rings. In order to explain how to implement the proposed verifiable delay function on elliptic curves with commutative self-homomorphic rings, Shani later used the idea of verifiable delay functions based on isogeny and pairing proposed by De-Feo et al. to construct developed a verifiable delay function based on isogeny without pairing. The scheme is a combination of a time-lock puzzle and a trapdoor verifiable delay function.
However, neither scheme is quantum secure. Thus, Chavez-Saab et al. studied the problem of constructing post-quantum secure verifiable delay functions, especially verifiable delay functions based on super-singular isogeny. They propose an arithmetic structure specifically for homologous settings using SNARGs to achieve good asymptotic efficiency. This isogeny-based verifiable delay function has the advantages of post-quantum security, quasi-logarithmic verification, and does not require a trusted setup.
This verifiable delay function construction finds codomain curves, which are computed from any three-point evaluation, so the problem in the verifiable delay function setting could be regarded as a general problem. The precomputation time allowed in the setting is given before learning the isogeny to be evaluated, suggesting that this verifiable delay function construction uses a different isogeny for each input. This verifiable delay function relies on a very weak assumption, so it is more secure. Starting from a public curve means we do not need a trusted setup. Next, we analyze two security properties of post-quantum verifiable delay functions based on super-singular elliptic curves: sequentiality and soundness.
Sequentiality. Any protocol that does not prescribe isogeny walk in some way is insecure in terms of sequentiality. The evaluator can be asked to provide SNARG proof of any large degree of isogeny and consider this to be a good proof of sequentiality even if the output is not unique. However, if the evaluator is free to choose the path, this does not constitute a proof of sequential computation. The sequentiality of post-quantum verifiable delay functions relies on isogeny shortcut problem of De Feo et al.. If no pair of random algorithms A 0 (running in total time p o l y ( T , λ ) ) and A 1 (running in parallel time less than T) can win the following sequential game with non-negligible probability, then the post-quantum verifiable delay functions based on super-singular elliptic curves is sequential. The S e t u p must use secret randomness to choose the starting curve, and the S e t u p is left with choosing isogeny and generators, both of which can use public randomness. Furthermore, A 0 allows for p o l y ( T ) computations, so it can compute isogeny on generators. Therefore, setting aside the choice of starting curve, the S e t u p can be absorbed into A 0 , which proves that the verifiable delay function of the post-quantum is sequential.
Soundness. The soundness of post-quantum verifiable delay functions based on super-singular elliptic curves completely depends on the SNARG proofs. Succinctness and non-interactiveness are achieved by generating SNARG through a transform that acts on any probabilistic checkable proofs. As long as the hash function is collision-resistant, it is straightforward to prove that the soundness of the structure reduces to the soundness of the original probabilistic checkable proofs. Therefore, the post-quantum verifiable delay functions construction based on super-singular elliptic curves is sufficiently soundness.

6. Verifiable Delay Functions Applications

With the proposal of more and more verifiable delay function schemes, the application of verifiable delay function in distributed systems is also well known. Next, as shown in Figure 2, this paper introduces several particularly important applications. In Table 3, the blockchain-related applications of verifiable delay functions are described.
Computational Timestamping. Almost all know proof-of-stake [51] systems face the problem of long-range attack [52]. In a proof-of-stake protocol, a group of stakeholders has voting rights proportional to their stake at any time. Assume that the majority of stakeholders have no reason to break the system, since the stakeholders themselves are incentivized. However, when too many stakeholders sell their stake, they can collude to create a new longer system to replace history. An external timestamp mechanism [53] can prove to the user that the true history of the system is much older.
Incremental verifiable delay functions can provide computational evidence that a given version of the state system is older by proving that long-running verifiable delay function computations has been performed on the true history after divergence from the fraud history. This has the potential to detect long-range attack without relying on external timestamping mechanisms. In 2019, Landerreche et al. [54] presented the first treatment of non-interactive publicly verifiable timestamping schemes and a secure timestamping scheme based on a verifiable delay function is proved. The timestamping scheme [55] consists of sequence of verifiable delay function proofs linked to each other by a cryptographic hash function, modeled as a sequence of random oracles. Add verifiable delay functions to the sequence to increase the structure, thus preserving the safety guarantees of the structure.
Public Randomness Beacons. Verifiable delay functions are useful for methods of obtaining random numbers from public sources. For example, constructing public randomness beacons [56] from stock prices, election audit or proof-of-work blockchains [57]. In the stock market, a strong enough stock trader can change the random output of stock prices by influencing the market trend, which greatly affects the fairness of the stock market [58]. The verifiable delay function can increase the security of public verifiable nonces by adding a long enough delay to calculate the beacon, which helps ensure that malicious traders do not have enough time to adjust the market. In a proof-of-work blockchain’s computational puzzle solving, miners continuously mine and publish puzzles for monetary rewards. However, similarly powerful enough stock traders may manipulate stock prices, sufficiently powerful miners may manipulate beacon results by refusing to publish blocks [59] that produce unfavorable beacon outputs.
In addition, the verifiable delay function can also add some random beacon schemes involving multiple parties. For example, in “commit-and-reveal” [60], the attacker can wait until the end of the reveal phase to decide whether to reveal his or her commitment. If the following three conditions are met: discard the commit phase; integrate everyone’s input at the end of the protocol and put it into the verifiable delay function instead of directly as the result of a random number; set the time parameter T long enough and later than the deadline for the last submission; then even the last-minute submitter has no way of knowing the result of the random number.
Resource Efficient Blockchains. When the blockchain [61] is forked, the consensus participants will choose to mortgage assets on different forked chains to participate in the block generation for their own interests, so that the forked chain may always exist and there will be more and more forks. Seriously endanger the consistency of the system and the consumption of resources. However, resource-efficient mining suffers from nothing-at-stake attacks. Intuitively, since mining is not computationally expensive, miners can easily try to produce many individual forks.
To prevent nothing-at-stake attacks [62], random beacons are used to select a new leader at intervals. At the same time, a verifiable delay function can also be used to increase the security of random beacons in the consensus protocol that uses random beacons to select a new leader. Most of the random number schemes used by these protocols remain secure only when there is a majority of honest participants. Utilizing a verifiable delay function can improve the participation of any honest party.
In addition to the electoral scheme, Cohen proposes to combine proof of resources [63] with an incremental verifiable delay function and use the product of proven resources and induced delay as a measure of blockchain [64,65] quality. This scheme prevents nothing-at-stake attacks by simulating the proof-of-work mining process. The timing of mining blocks is unpredictable, and each miner competes with each other to be the first to mine a block. The difference from the proof-of-work [66] is that this scheme does not actually need to consume too much time resources for parallel computing, and only has certain space resources when entering mining.
Proof of Data Replication. Proof of data replication [67,68,69] is a special type of proof of storage of data that allows a client to verify that it has a unique replica of some data stored on an untrusted server, even if the data is readily available from a public storage source. Proof of data replication is meant to prove that the server has a replica of the data, not that it owns the data. Boneh et al. proposed to provide a publicly verifiable solution using a decodable verifiable delay function that is asymmetric in time. The decodable verifiable delay function prevents the server from dynamically computing the client’s replica when challenged to prove that it correctly stored a replica of the data.
Gritti proposes a publicly verifiable proof of data replication scheme using verifiable delayed functions, and explains the scheme in detail along with a security proof. Given a unique replicator identifier i d . Then the server divides the file into b-bit sized file blocks Bi and calculate B i d = B i ( i | | i d ) where H is a collision-resistant hash function H : { 0 , 1 } { 0 , 1 } b and i { 1 , . . . , n } . The output value y i can be obtained by taking the calculated B i d as part of the E v a l algorithm input of the decodable verifiable delay function. The server stores all y i and the client continuously randomly selects i to challenge the server to return y i . If the server can respond to the corresponding result to the client within the specified time and the client can obtain B i by decoding y i in a very short time to complete the verification. If the server does not respond to the client correctly, y i must be calculated in T steps, but this calculation cannot be completed within the specified time.
Verifiable delay functions are widely used in blockchains. However, verifiable delay functions based on finite groups of unknown order are insecure against an adversary with access to a quantum computer. Quantum computers can easily compute the order of a group using Shor’s algorithm, making it easy to break the application of verifiable delay functions in blockchains. In addition, the post-quantum secure verifiable delay function based on supersingular elliptic curves needs to be verified by SNARG, and the structure is in its infancy and can only be limited to the field of elliptic curves. Therefore, it is an open problem to develop a verifiable delay function that has a simple structure in quantum computers and can be safely applied to blockchain.

7. Conclusions and Perspectives

Verifiable delay function is a basic and important tool in the field of cryptography, and it has been widely used in distributed systems. This article firstly introduces the types of verifiable delay functions, and describes the construction schemes of different kinds of verifiable delay functions in detail. Secondly, in the algebraic assumption scheme, verifiable delay function schemes based on finite abelian groups of unknown order and super-singular elliptic curve cryptography scheme are introduced respectively, both of which are not quantum secure. Thirdly, the unique verifiable delay functions and the continuous verifiable delay functions based on tree-structure assumptions are introduced. The continuous verifiable delay function achieves effective verification of the output of each intermediate iteration through continuous iteration, and can efficiently incorporate proofs of final computation. Fourthly, this paper presents a postquantum secure verifiable delay function scheme based on super-singular isogeny, And the security analysis of the verifiable delay function is carried out. Finally, the application of verifiable delay function in different aspects of the blockchain is summarized.
Verifiable delay functions have been extensively studied, and the research results obtained cover various branches of verifiable delay function research. However, the application of the verifiable delay function in the existing research results has not been fully integrated into the blockchain, and the application in the blockchain still needs further research. We hope that this work will stimulate new practical applications of verifiable delay functions in blockchains and continue to investigate theoretically optimal verifiable delay function constructions in the future.

Author Contributions

Q.W., Y.R. and S.J. conceived the mechanism design and wrote the paper, S.W. (Shenqing Wang) built the models. L.X. and S.W. (Shiren Wang) developed the mechanism, Y.R. and S.J. revised the manuscript. All authors have read and agreed to the published version of the manuscript.

Funding

This work was supported by the National Key R&D Program of China (Grant No. 2021YFB2700500), and it was also supported by the National Natural Science Foundation of China (Grant No. 62072249). This work was also supported by the National Key R&D Program of Guangdong Province (Grant No. 2020B0101090002), and the Natural Science Foundation of Jiangsu Province (Grant No. BK20200418, BE2020106). Shan Ji is the corresponding authors.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

Not applicable.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Boneh, D.; Bonneau, J.; Bünz, B.; Fisch, B. Verifiable delay functions. In Proceedings of the Annual International Cryptology Conference, Santa Barbara, CA, USA, 18–22 August 2018; pp. 757–788. [Google Scholar]
  2. Rotem, L. Simple and efficient batch verification techniques for verifiable delay functions. In Proceedings of the Theory of Cryptography Conference, Raleigh, NC, USA, 8–11 November 2021. [Google Scholar]
  3. Zhou, M.; Lin, X.; Liu, A.; Che, Y. An improved blockchain consensus protocol with distributed verifiable delay function. In Proceedings of the 2021 IEEE International Conference on Electronic Technology, Communication & Information, Changchun, China, 27–29 August 2021; pp. 330–337. [Google Scholar]
  4. Öztürk, E. Design and implementation of a low-latency modular multiplication algorithm. IEEE Trans. Circuits Syst. 2020, 67, 1902–1911. [Google Scholar] [CrossRef]
  5. Lombardi, A.; Vaikuntanathan, V. Fiat-Shamir for repeated squaring with applications to PPAD-hardness and VDFs. In Proceedings of the 40th Annual International Cryptology Conference, Santa Barbara, CA, USA, 17–21 August 2020; pp. 632–651. [Google Scholar]
  6. Döttling, N.; Garg, S.; Malavolta, G.; Vasudevan, P.N. Tight verifiable delay functions. In Proceedings of the 12th International Conference on Security and Cryptography for Networks, Amalfi, Italy, 14–16 September 2020; pp. 65–84. [Google Scholar]
  7. Raghunandan, K.R.; Aithal, G.; Shetty, S. Comparative analysis of encryption and decryption techniques using mersenne prime numbers and phony modulus to avoid factorization attack of RSA. In Proceedings of the 2019 International Conference on Advanced Mechatronic Systems, Kusatsu, Japan, 26–28 August 2019; pp. 152–157. [Google Scholar]
  8. Boneh, D.; Benedikt, B.; Ben, F. A survey of two verifiable delay functions. In Proceedings of the International Association for Cryptologic Research, Brisbane, QLD, Australia, 2–6 December 2018; pp. 712–725. [Google Scholar]
  9. Medley, L.; Quaglia, E.A. Collaborative verifiable delay functions. In Proceedings of the 17th International Conference on Information Security and Cryptology, Virtual Event, 12–14 August 2021; pp. 507–530. [Google Scholar]
  10. Blanc, J.; Canci, J.K.; Elkies, N.D. Moduli spaces of quadratic rational maps with a marked periodic point of small order. Int. Math. Res. Not. 2015, 2015, 12459–12489. [Google Scholar] [CrossRef] [Green Version]
  11. Moradi, M. On sequential decoding metric function of polarization-adjusted convolutional (PAC) codes. IEEE Trans. Commun. 2021, 69, 7913–7922. [Google Scholar] [CrossRef]
  12. Valiant, P. Incrementally verifiable computation or proofs of knowledge imply time/space efficiency. In Theory of Cryptography, Proceedings of the Fifth Theory of Cryptography Conference, New York, NY, USA, 19–21 March 2008; Springer: Berlin/Heidelberg, Germany, 2008; pp. 1–18. [Google Scholar]
  13. Bitansky, N.; Canetti, R.; Chiesa, A.; Tromer, E. Recursive composition and bootstrapping for SNARKs and proof-carrying data. In Proceedings of the Forty-Fifth Annual ACM Symposium on Theory of Computing, Palo Alto, CA, USA, 2–4 June 2013; pp. 111–120. [Google Scholar]
  14. Gritti, C. Publicly verifiable proofs of data replication and retrievability for cloud storage. In Proceedings of the 2020 International Computer Symposium Conference, Tainan, Taiwan, 17–19 December 2020; pp. 431–436. [Google Scholar]
  15. Abadi, A.; Kiayias, A. Multi-instance publicly verifiable time-lock puzzle and its applications. In Proceedings of the 25th International Conference on Financial Cryptography and Data Security, Virtual Event, 1–5 March 2021; pp. 541–559. [Google Scholar]
  16. Burdges, J.; Feo, L.D. Delay encryption. In Proceedings of the 40th Annual International Conference on the Theory and Applications of Cryptographic Techniques, Zagreb, Croatia, 17–21 October 2021; pp. 302–326. [Google Scholar]
  17. Ren, Y.J.; Zhu, F.J.; Kumar, S.P.; Wang, T.; Wang, J. Data query mechanism based on hash computing power of blockchain in Internet of Things. Sensors 2020, 20, 207. [Google Scholar] [CrossRef] [Green Version]
  18. Wesolowski, B. Efficient verifiable delay functions. J. Cryptol. 2020, 33, 2113–2147. [Google Scholar] [CrossRef]
  19. Santos, R.G.; Machovsky-Capuska, G.E.; Andrades, R. Plastic ingestion as an evolutionary trap: Toward a holistic understanding. Science 2021, 373, 56–60. [Google Scholar] [CrossRef]
  20. Isfandbod, M.; Martínez-Pañeda, E. A mechanism-based multi-trap phase field model for hydrogen assisted fracture. Int. J. Plast. 2021, 144, 103044. [Google Scholar] [CrossRef]
  21. Raikwar, M.; Gligoroski, D. R3V: Robust round robin VDF-based consensus. In Proceedings of the 2021 3rd Conference on Blockchain Research & Applications for Innovative Networks and Services, Paris, France, 27–30 September 2021; pp. 81–88. [Google Scholar]
  22. Jiang, P.; Qiu, B.; Zhu, L. Toward reliable and confidential release for smart contract via ID-based TRE. IEEE Internet Things J. 2022, 9, 11422–11433. [Google Scholar] [CrossRef]
  23. Acharya, J.; Canonne, C.L.; Tyagi, H. Inference under information constraints II: Communication constraints and shared randomness. IEEE Trans. Inf. Theory 2020, 66, 7856–7877. [Google Scholar] [CrossRef]
  24. Pietrzak, K. Simple verifiable delay functions. In Proceedings of the 10th Innovations in Theoretical Computer Science Conference, San Diego, CA, USA, 10–12 January 2019; pp. 1–15. [Google Scholar]
  25. Pan, R.; Abel, R.J.R.; Bunjamin, Y.A. Difference matrices with five rows over finite abelian groups. Des. Codes Cryptogr. 2022, 90, 367–386. [Google Scholar] [CrossRef]
  26. Li, F.; Yue, Q.; Wu, Y. LCD and self-Orthogonal group codes in a finite abelian p -group algebra. IEEE Trans Inf. Theory 2020, 66, 2717–2728. [Google Scholar] [CrossRef]
  27. Hong, S.; Park, H.; No, J.S.; Helleseth, T.; Kim, Y.S. Near-optimal partial hadamard codebook construction using binary sequences obtained from quadratic residue mapping. IEEE Trans Inf. Theory 2014, 60, 3698–3705. [Google Scholar] [CrossRef]
  28. Bettaieb, S.; Bidoux, L.; Blazy, O.; Gaborit, P. Zero-knowledge reparation of the véron and AGS code-based identification schemes. In Proceedings of the 2021 IEEE International Symposium on Information Theory, Melbourne, VIC, Australia, 12–20 July 2021; pp. 55–60. [Google Scholar]
  29. Liu, Y.; Zhou, Y.; Sun, S.; Wang, T.; Zhang, R.; Ming, J. On the security of lattice-based Fiat-Shamir signatures in the presence of randomness leakage. IEEE Trans. Inf. Forensics Secur. 2021, 16, 1868–1879. [Google Scholar] [CrossRef]
  30. De-Feo, L.; Masson, S.; Petit, C.; Sanso, A. Verifiable delay functions from super-singular isogenies and pairings. In Proceedings of the International Conference on the Theory & Application of Cryptology & Information Security, Kobe, Japan, 8–12 December 2019; pp. 248–277. [Google Scholar]
  31. Ali, I.; Chen, Y.; Ullah, N.; Afzal, M.; Wen, H.E. Bilinear pairing-based hybrid signcryption for secure heterogeneous vehicular communications. IEEE Trans. Veh. Technol. 2021, 70, 5974–5989. [Google Scholar] [CrossRef]
  32. Ren, Y.J.; Leng, Y.; Cheng, Y.P.; Wang, J. Secure data storage based on blockchain and coding in edge computing. Math. Biosci. Eng. 2019, 16, 1874–1892. [Google Scholar] [CrossRef]
  33. Onuki, H. On oriented super-singular elliptic curves. Finite Fields Their Appl. 2021, 69, 101777. [Google Scholar] [CrossRef]
  34. Saouter, Y. Constructions of LDPCs from Elliptic Curves over finite fields. IEEE Commun. Lett. 2017, 21, 2558–2561. [Google Scholar] [CrossRef]
  35. Sutter, G.D.; Deschamps, J.; Imana, J.L. Efficient Elliptic Curve point multiplication using digit-serial binary field operations. IEEE Trans. Ind. Electron. 2013, 60, 217–225. [Google Scholar] [CrossRef]
  36. Merad Boudia, O.R.; Senouci, S.M.; Feham, M. Elliptic Curve-Based Secure Multidimensional Aggregation for Smart Grid Communications. IEEE Sens. J. 2017, 17, 7750–7757. [Google Scholar] [CrossRef]
  37. Wang, J.; Li, J.; Wang, H.; Zhang, L.Y.; Cheng, L.M.; Lin, Q. Dynamic scalable Elliptic Curve cryptographic scheme and its application to in-vehicle security. IEEE Internet Things J. 2019, 6, 5892–5901. [Google Scholar] [CrossRef]
  38. Azarderakhsh, R.; Reyhani-Masoleh, A. Parallel and high-speed computations of Elliptic Curve cryptography using hybrid-double multipliers. IEEE Trans. Parallel Distrib. Syst. 2015, 26, 1668–1677. [Google Scholar] [CrossRef]
  39. Mehrabi, M.A.; Doche, C.; Jolfaei, A. Elliptic Curve cryptography point multiplication core for hardware security module. IEEE Trans Comput. 2020, 69, 1707–1718. [Google Scholar] [CrossRef]
  40. Lyu, S.; Porter, C.; Ling, C. Lattice reduction over imaginary quadratic fields. IEEE Trans. Signal Process. 2020, 68, 6380–6393. [Google Scholar] [CrossRef]
  41. Mushtaq, E.; Ali, S.; Hassan, S.A. On decoupled decoding of quasi orthogonal STBCs using quaternion algebra. IEEE Syst. J. 2019, 13, 1580–1586. [Google Scholar] [CrossRef]
  42. Thomas, F. Approaching dual quaternions from matrix algebra. IEEE Trans. Robot. 2014, 30, 1037–1048. [Google Scholar] [CrossRef] [Green Version]
  43. Laurian, A.G.; Emmanuel, F.; Nadia, E.M.; Aminatou, P.N. Faster beta Weil pairing on BLS pairing friendly curves with odd embedding degree. Math. Comput. Sci. 2022, 16, 1–23. [Google Scholar] [CrossRef]
  44. Mann, Z.Á. A comment on “Process placement in multicore clusters: Algorithmic issues and practical techniques”. IEEE Trans. Parallel Distrib. Syst. 2016, 27, 2475–2476. [Google Scholar] [CrossRef]
  45. Nguyen, H.; Nguyen, T.M.N.C.; Nguyen, L.; Custovic, E. An FPGA-based implementation for repeated square-and-multiply polynomials. In Proceedings of the 7th International Conference on Broadband Communications and Biomedical Applications, Melbourne, VIC, Australia, 21–24 November 2011; pp. 173–178. [Google Scholar]
  46. Ephraim, N.; Freitag, C.; Komargodski, I.; Pass, R. Continuous verifiable delay functions. In Proceedings of the 39th Annual International Conference on the Theory & Applications of Cryptographic Techniques, Zagreb, Croatia, 10–14 May 2020; pp. 125–154. [Google Scholar]
  47. Chávez-Saab, J.; Rodríguez-Henríquez, F.; Tibouchi, M. Verifiable isogeny walks: Towards an isogeny-based postquantum VDF. In Proceedings of the International Conference on Selected Areas in Cryptography, Virtual Event, 1–5 March 2021; pp. 441–460. [Google Scholar]
  48. Parno, B.; Howell, J.; Gentry, C.; Raykova, M. Pinocchio: Nearly practical verifiable computation. Commun. ACM 2016, 59, 103–112. [Google Scholar] [CrossRef]
  49. Akleylek, S.; Soysaldı, M.; Lee, W.K.S.; Hwang, O.; Wong, D.C.K. Novel Postquantum MQ-based signature scheme for Internet of things with parallel implementation. IEEE Internet Things J. 2021, 8, 6983–6994. [Google Scholar] [CrossRef]
  50. Kong, F.; Cai, Z.; Jia, Y.; Li, D. Improved generalized Atkin algorithm for computing square roots in finite fields. Inform. Process. Lett. 2006, 98, 1–5. [Google Scholar] [CrossRef]
  51. Ren, Y.J.; Zhu, F.J.; Wang, J.; Sharma, P.; Ghosh, U. Novel vote scheme for decision-making feedback based on blockchain in internet of vehicles. IEEE Trans. Intell. Transp. Syst. 2022, 23, 1639–1648. [Google Scholar] [CrossRef]
  52. Feng, X.; Ma, J.; Miao, Y.; Liu, X.; Choo, K.K.R. Regulatable and hardware-based proof of stake to approach nothing at stake and long range attacks. IEEE Trans. Serv. Comput. 2022, 1, 1–12. [Google Scholar] [CrossRef]
  53. Clarke, M.; Schluter, P.; Reinhold, B.; Reinhold, B. Designing robust and reliable timestamps for remote patient monitoring. IEEE J. Biomed. Health Inform. 2015, 19, 1718–1723. [Google Scholar] [CrossRef]
  54. Landerreche, E.; Stevens, M.; Schaffner, C. Non-interactive cryptographic timestamping based on verifiable delay functions. In Proceedings of the 24th International Conference on Financial Cryptography & Data Security, Kota Kinabalu, Malaysia, 10–14 February 2020; pp. 541–558. [Google Scholar]
  55. Wu, Q.; Han, Z.; Mohiuddin, G.; Ren, Y.J. Distributed timestamp mechanism based on verifiable delay functions. Comput. Syst. Sci. Eng. 2023, 44, 1633–1646. [Google Scholar] [CrossRef]
  56. Schindler, P.; Judmayer, A.; Hittmeir, M.; Stifter, N.; Weippl, E. RandRunner: Distributed randomness from trapdoor VDFs with strong uniqueness. In Proceedings of the 2020 Network & Distributed System Security Symposium Conference, San Diego, CA, USA, 23–26 February 2020; pp. 21–25. [Google Scholar]
  57. Ren, Y.Y.; Leng, Y.; Qi, J.; Pradip, K.S.; Wang, J. Multiple cloud storage mechanism based on blockchain in smart homes. Future Gener. Comput. Syst. 2021, 115, 304–313. [Google Scholar] [CrossRef]
  58. Pierrot, C.; Wesolowski, B. Malleability of the blockchain’s entropy. Cryptogr. Commun. 2018, 10, 211–233. [Google Scholar] [CrossRef] [Green Version]
  59. Gueron, S.; Persichetti, E.; Santini, P. Designing a practical code-based signature scheme from zero-knowledge proofs with trusted setup. Cryptography 2022, 6, 5–22. [Google Scholar] [CrossRef]
  60. Zhang, H.; Tong, L.; Yu, J.; Lin, J. Blockchain-aided privacy-preserving outsourcing algorithm of bilinear pairings for Internet of things devices. IEEE Internet Things J. 2021, 8, 15596–15607. [Google Scholar] [CrossRef]
  61. Toyoda, K.; Zhang, A.N. Mechanism design for an incentive-aware blockchain-enabled federated learning platform. In Proceedings of the 2019 IEEE International Conference on Big Data (Big Data), Los Angeles, CA, USA, 9–12 December 2019; pp. 395–403. [Google Scholar]
  62. Li, A.; Wei, X.H.; He, Z. Robust proof of stake: A new consensus protocol for sustainable blockchain systems. Sustainability 2020, 12, 2824–2839. [Google Scholar] [CrossRef] [Green Version]
  63. Ko, C.H.; Chou, C.C.; Meng, H.Y.; Wei, H.Y. Strategy-proof resource allocation mechanism for multi-flow wireless multicast. IEEE Trans. Wirel. Commun. 2015, 14, 3143–3156. [Google Scholar] [CrossRef]
  64. Ren, Y.J.; Zhu, K.; Gao, Y.Q.; Xia, J.Y.; Zhou, S. Long-term preservation of electronic record based on digital continuity in smart cities. Comput. Mater. Contin. 2021, 66, 3271–3287. [Google Scholar] [CrossRef]
  65. Sasikumar, A.; Karthikeyan, B.; Arunkumar, S.; Saravanan, P.; Subramaniyaswamy, V.; Ravi, L. Blockchain-based decentralized user authentication scheme for letter of guarantee in financial contract management. Malays. J. Comput. Sci. 2022, 1, 62–73. [Google Scholar]
  66. Kumar, G.; Saha, R.; Rai, M.K.; Thomas, R.; Kim, T.H. Proof-of-Work consensus approach in blockchain technology for cloud and fog computing using maximization-factorization statistics. IEEE Internet Things J. 2019, 6, 6835–6842. [Google Scholar] [CrossRef]
  67. Chen, D.; Yuan, H.; Hu, S.; Wang, Q.; Wang, C. BOSSA: A decentralized system for proofs of data retrievability and replication. IEEE Trans. Parallel Distrib. Syst. 2021, 32, 786–798. [Google Scholar] [CrossRef]
  68. Schäfer, D.R.; Rothermel, K.; Tariq, M.A. Replication schemes for highly available workflow engines. IEEE Trans. Serv. Comput. 2021, 14, 559–573. [Google Scholar] [CrossRef]
  69. Nelson, A.; Toth, G.; Linders, D.; Nguyen, C.; Rhee, S. Replication of smart-city Internet of Things assets in a municipal deployment. IEEE Internet Things J. 2019, 6, 6715–6724. [Google Scholar] [CrossRef]
Figure 1. The algorithmic flow of verifiable delay functions.
Figure 1. The algorithmic flow of verifiable delay functions.
Sensors 22 07524 g001
Figure 2. Verifiable delay functions applications.
Figure 2. Verifiable delay functions applications.
Sensors 22 07524 g002
Table 1. Characteristics of verifiable delay functions.
Table 1. Characteristics of verifiable delay functions.
CharacteristicsDescription
T-SequentialityThe function cannot be calculated in a sequential steps less than T to obtain the final result, even given a large amount of parallelism.
UniquenessFor the input of any verifiable delay functions, only one unique output result shall pass the inspection. Meanwhile, it is necessary to ensure that the probability of the verifier passes the verification because of the proof, but the output result is not the correct result is negligible.
Effective verifiabilityThe calculation results can be efficiently verified so that the honest party can calculate.
Table 2. Classification of verifiable delay functions.
Table 2. Classification of verifiable delay functions.
ClassificationDescription
Weak verifiable delay functionsThe function cannot be calculated in a sequential steps less than T to obtain the final result, even given a large amount of parallelism.
Incremental verifiable delay functionsAll verifiable delay functions need to require the E v a l algorithm to be completed in at least T steps. If the delay parameter T is not uniquely determined in the S e t u p algorithm, but is allowed to be determined in the Eval algorithm, then the verifiable delay function can be called as incremental verifiable delay function.
Decodable verifiable delay functionsFor any verifiable delay function scheme, as long as a random input element x can be obtained from the output value y in reverse, the verifiable delay function can be called a decodable verifiable delay function. Another output value π for the proof is empty.
Trapdoor verifiable delay functionsIf there is an algorithm that enables the party who knows a certain secret key value sk to calculate the output value of the verifiable delay function through the Eval algorithm too quickly, then the function is a trapdoor verifiable delay function.
Table 3. Blockchain-related applications of verifiable delay functions.
Table 3. Blockchain-related applications of verifiable delay functions.
ApplicationsSolutionPurpose
TimestampingA verifiable delay function is equivalent to a proof of the passage of time, with the input and output of a verifiable delay function on-chain to prove the history of a given block.Mitigating long-range attacks.
Randomness BeaconThe time delay parameter T of the verifiable delay function is set long enough, and the latest block header is used as part of the input in the verifiable delay function, and the final output is the random beacon result.Enhancing the security of public verifiable random numbers.
Permissionless ConsensusCombine proofs-of-resource with incremental verifiable delay functions and use the product of resource proved and delay induced as a measure of blockchain quality.Solving nothing-at-stake attacks.
Proof of ReplicationDecodable verifiable delay functions generate multiple puzzles, and then the solutions of these puzzles are combined with all replicas to generate new replicas.Preventing dynamic generation of replicas.
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Wu, Q.; Xi, L.; Wang, S.; Ji, S.; Wang, S.; Ren, Y. Verifiable Delay Function and Its Blockchain-Related Application: A Survey. Sensors 2022, 22, 7524. https://doi.org/10.3390/s22197524

AMA Style

Wu Q, Xi L, Wang S, Ji S, Wang S, Ren Y. Verifiable Delay Function and Its Blockchain-Related Application: A Survey. Sensors. 2022; 22(19):7524. https://doi.org/10.3390/s22197524

Chicago/Turabian Style

Wu, Qiang, Liang Xi, Shiren Wang, Shan Ji, Shenqing Wang, and Yongjun Ren. 2022. "Verifiable Delay Function and Its Blockchain-Related Application: A Survey" Sensors 22, no. 19: 7524. https://doi.org/10.3390/s22197524

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop