Abstract
Random beacons play a crucial role in blockchains. Most random beacons in a blockchain are performed in a distributed approach to secure the generation of random numbers. However, blockchain nodes are in an open environment and are vulnerable to adversary reboot attacks. After such an attack, the number of members involved in a random number generation decreases. The random numbers generated by the system become insecure. To solve this problem while guaranteeing fast recovery of capabilities, we designed a threshold signature scheme based on share recovery. A bivariate polynomial was generated among the participants in the distributed key generation phase. While preserving the threshold signature key share, it can also help participants who lost their shares to recover. The same threshold setting for signing and recovery guarantees the security of the system. The results of our scheme show that we take an acceptable time overhead in distributed key generation and simultaneously enrich the share recovery functionality for the threshold signature-based random number generation scheme.
1. Introduction
Distributed randomness has played a crucial role since the birth of blockchain technology. In the classic Nakamoto consensus, the winner of the consensus would be inseparable from the generation of publicly verifiable randomness, which is calculated by a hash function. The verifiability of public randomness allows the verifier to quickly determine the validity of the solution to the proof-of-work puzzle.
As blockchain technology evolves, many excellent protocols are being devised. Distributed randomness generation remains a significant protocol component of these protocols. Blockchain protocols that incorporate distributed random beacons as protocol components mainly include proof-of-stake (PoS) consensus [1], leader [2], and committee selection [3] of a Byzantine fault tolerant (BFT) consensus [4], blockchain sharding [5], anonymous selection [6], etc.
The development of blockchain technology has also contributed to the development of the direction of generating distributed randomness by relying on cryptography primitives. Threshold signature (TSS) [3], verifiable delay function(s) (VDF) [7], publicly verifiable secret sharing (PVSS) [8], verifiable random function (VRF) [9], and homomorphic encryption (HE) [10] are essential instruments for constructing distributed random beacons. The design of distributed random beacons has also become the focus of designing an optimized blockchain protocol [11].
Secure distributed random beacons are expected to consistently generate publicly verifiable, unpredictable, bias-resistant randomness. However, distributed randomness generation participants are in open networks. Participants may be subject to attacks by active adversaries [12]. The active adversary may restart the honest random beacon protocol participants. Then the honest participants under such an attack will lose the ability to participate in the protocol, which in turn compromises the security of the randomness generation. Further, it poses a significant threat to the blockchain system. Malicious adversaries can arbitrarily control the output of random numbers. This attack behavior eventually leads to blockchain systems becoming untrustworthy [13].
The group of participants involved in randomness generation in the blockchain is in the public network. The adaptive adversary can corrupt participants in the group. The adversary can adaptively destroy a limited number of nodes over a while. Active adversaries restart the nodes, causing them to lose stored information and thus the ability to participate in random number generation. Therefore, a method that can help participants regain the ability to generate random numbers while ensuring the security of random number generation needs to be considered in the design of distributed random beacon.
Typically, in a random beacon protocol employing threshold signatures, an active adversary may launch an attack on the participants, causing it to lose its own key share. After suffering such an attack, the participants can no longer participate in the threshold signature generation process [14]. This dramatically reduces the security requirements against the bias-resistance initiated by the adversary on the randomness [3], and the adversary can readily gain profit in the protocol [15]. Active adversaries have the ability to interfere with the generation of random numbers. Ultimately, this attack leads to the generation of random numbers becoming insecure.
In this work, a share recovery threshold signature scheme is proposed for the above adversary attack scenario. After a participant is subjected to an active adversary attack, it can restart to obtain the correct share with the assistance of other honest nodes and, thus, continue to receive the randomness generation capability. Our proposed scheme utilizes the dual homogeneous asymmetric polynomial. One dimension of the polynomial is employed for the threshold signature. Another dimension of the polynomial is used to help participants who suffer from active adversary attacks to recover the lost key share. After a theoretic analysis and experiment evaluation, the presented random beacon scheme can guarantee the properties of bias resistance, unpredictability, and public verifiability of randomness.
The main contributions of this paper are as follows.
- 1.
- Secure. After the execution of the key generation, the participants have a signature key share and a binary polynomial to assist other participants in recovering the private key share. A dual homogeneous asymmetric polynomial scheme can prevent the adversary from recovering the secret information below the threshold range. The remaining participants can help the lost share participant to recover the private key share by simply issuing lightweight information.
- 2.
- Robust. Robust threshold signature schemes are devised. The share recovery mechanism for the threshold signature can be employed to help participants who have lost their key shares recover them. The perfection of the threshold signature key recovery function effectively prevents active adversary attacks and enhances the availability and bias-resistance of the random beacon.
- 3.
- Trustworthiness. The process of key generation is performed in a way. The random number generation process does not have any trusted participants. Our proposed scheme addresses the challenge of the dual homogeneous asymmetric polynomial generation.
The rest of this paper is organized as follows. In Section 2, we describe the related work on the distributed randomness beacon. In Section 3, we present the preliminaries of our protocol. Section 4 describes the system model and an overview of our robust distributed beacon. In Section 5, we describe the robust distributed beacon in detail and analyze its correctness and security. Section 6 presents our prototype implementation and evaluation results. In Section 7, we present our conclusions.
2. Related Work
Blum’s two-node coin tossing protocol [16] can be considered the beginning of the distributed random beacon research. Since then, a series of technical approaches to distribute random beacons using different models have been introduced [17,18,19]. This paper focuses on the random number generation solutions adopted in the blockchain. Recovering lost key shares is another important topic of discussion in this paper. Key share recovery has been a hot topic in recent research. We also present the state-of-the-art research advances in share recovery.
2.1. Simple Approach
The most straightforward approach to obtaining a random beacon is to rely on a public organization or a single node, such as NIST [20], Oraclize.it (accessed on 20 June 2022), [21] and Random.org (accessed on 20 June 2022) [22]. However, the above-described methods may have the risk of backdoor embedding. Blockchain technology completes the trust establishment between peer-to-peer nodes and should not be powered by random external beacons to provide randomness.
2.2. Distributed Randomness Beacon
As mentioned above, distributed random beacons play a crucial role in the secure operations of blockchain protocols. The academic community is filled with research on distributed random beacons. In this section, we summarize the design of distributed beacons in blockchain by classifying them according to cryptography techniques.
- Threshold signature-based randomness beacon.The core of the threshold signature [23] is to split the secret private key information into multiple participant scenarios, thus achieving multi-party confirmation. In the normal threshold signature scheme, n denotes the total number of participants and t is the threshold value for obtaining a valid signature. When any t (or more than t) participants sign the same message, the signature of the community for this message is obtained. However, any less than t participants (e.g., ) are unable to obtain a valid signature. Eventually, any participant can verify the correctness of the signature using the public key. The unpredictable and unique property of the result of the threshold signature is an excellent random beacon. DFINITY is a typical project in blockchain research that employs threshold signatures as a random source [3]. Participants are randomly assigned to different committee members based on the random number set in the genesis block. A distributed key generation algorithm is run within each committee to generate the private key share of each participant and the verified public key of the committee. The committee members adopt the last round of random numbers as messages and generate a BLS signature [24]. Each participant who collects a valid signature share that satisfies the threshold can recover a unique valid signature. The uniqueness of the threshold signature guarantees that the correct signature recovered by all nodes is the same for all participants. There is no divergence in the final signatures due to the different selected sets of signature shares. The final signatures are treated as inputs of the VRF to obtain randomness for this round.
- Verified random function-based randomness beacon.Verified random functions have evolved from the pseudorandom oracle [25]. The pseudorandom oracle enables the input of an initial seed s that can map a random sequence of a bit-lengths to a pseudorandom sequence of b bit-lengths. The output pseudorandom sequence is indistinguishable in polynomial time from the b bit-length random sequence. The pseudorandom oracle cannot be employed as a distributed random beacon because the randomness of the random output sequence is not verifiable. Goldreich et al. [26] proposed a verifiable random function to address this issue. For input x, the output of the verified random function cannot be computed in polynomial time, and the correctness of the output can be verified. In the blockchain protocol research, Ouroboros Praos [1], Algorand [4], RandChain [27], and DFINITY [3] use this component as part of the protocol. In a recent study, two verified random functions were proposed and analyzed by strict cryptography; the random numbers they output had strong bias-resistance and pseudo randomness properties.
- Verified delay function-based randomness beacon.Boneh et al. [7] proposed a technique called the verifiable delay function. During the computation of the function, multiple processors cannot be in parallel to obtain the result faster. A predetermined amount of time must elapse before the calculator obtains the result. Moreover, the result of the computation can be verified relatively rapidly [28]. This feature makes it impossible for the calculator to predict the outcome, so the final output is unpredictable randomness. Later, Lenstra and Wesolowski proposed a slow-time hash function sloth to construct a verified delay function that allowed multi-participant input (outputting a random result). This makes the verified delay function a better distributed random beacon. RANDAO [29] is an Ethereum smart contract based on a verified delay function. Participants submit their local randomness to the smart contract. After calculation, the smart contract outputs global randomness.
- Public verified secret sharing-based randomness beacon.Classical secret-sharing schemes share a secret message among a group of participants, with a specified number of authorized users participating to recover it by a specific method. With large-scale applications, the verification of the correctness of the secret share becomes an important issue. Both the shares given by the dealer to the participants and the shares used by the participants for reconstruction can be incorrect, resulting in the secrets not being reconstructed. The proposal of verifiable secret sharing ensures that the correctness of shares can be verified before the dealer and the participant. Feldman’s verifiable secret-sharing [30] scheme provides verifiability, correctness, and privacy. Stadler [31] proposed publicly verifiable secret sharing. Any arbitrary user in the system can verify the correctness of the share by available information. The publicly verifiable feature makes publicly verifiable secret sharing an essential component of distributed random beacon. Distributed random beacon schemes based on verifiable secret-sharing constructs are popularly employed in the blockchain. The following is an example of Ouroboros, which describes the general working process of publicly verifiable secret sharing. However, this orientation is not the primary focus of the article’s research. Randomness generation in Ouroboros consists of two phases: commit and open. In the commit phase, participants encrypt the shared information by running PVSS. The participants submit the communicated information on the blockchain. In the open phase, each participant decrypts all of the encrypted shares using the public key. Then, each participant uses the decrypted shares to compute a local random value, publishing it to the blockchain. Finally, the beacon output is calculated by performing an XOR operation on all published local random values. Recently, Bhat [32] proposed OptRand based on PVSS. OptRand employed PVSS and non-interactive zero-knowledge proofs to build a linear size publicly verifiable random sharing.
- Decentralized randomness from the blockchain.The blockchain itself has a lot of randomnesses. The collection of arbitrary transactions in the block and the unpredictability of signatures of transactions are potential sources of randomness [33]. Although there are some applications in lottery gaming, the proof of bias resistance for these protocols is a difficult challenge to cross.
2.3. Share Recovery
The study of share recovery has been a key topic of research in the field of secret sharing. The research focuses on two aspects. One is the scenario under active adversary attack, where the adversary reboots the participant, resulting in the loss of key share. The second is in asynchronous verifiable secret sharing. There is an issue pertaining to how to overcome the problem that some participants do not receive the secret share due to the transmission delay.
- Verified secret sharing with share recovery.In active adversary attack research, the key consideration of the share recovery scheme is not to give the recoverer the ability to reconstruct the secret. The earliest research traces back to Herzberg [12]. They proposed a scheme in which proactive secret sharing was used. However, the complexity of the scheme was high; the remaining nodes needed to generate a polynomial for the recovery node and the communication complexity was similar to the distributed key generation. A similar scheme was used in MPSS [34] in combination with the PBFT consensus process. The key recovery process was applied to prevent new group members from gaining access to the key while they gained access to key shares. Adversary capability in our research followed Herzberg’s study. In this work, a more efficient scheme was proposed. The remaining participants did not generate independent polynomials for shares. In another class of studies, a single secret sharing could contain multiple secrets by batching the secret sharing [35]. The overhead of average communication complexity was reduced in this way. Recently Basu [36] proposed the use of a distributed pseudorandom function (DPRF) for efficient secret sharing. The DPRF was used as a mask for the original polynomial share, and the key recoverer i could remove the value taken by the DPRF at i. The share was recovered efficiently by the above approach.
- Asynchronous verified secret sharing.The first practical verifiable secret sharing scheme was proposed by Cachin [37]. This scheme uses a binary polynomial where each participant i obtains and . If a participant loses a share, it can be recovered by evaluations and evaluations . The recovery process requires communication overhead. The asynchronous network assumption model in blockchain becomes a priority consideration. The asymmetric bivariate polynomial was used in the HAVSS [38] scheme proposed by Kogias. Asymmetric bivariate polynomial dimension is employed as the key recovery. Alhaddad proposed the use of a “two-layer secret sharing” scheme, HAVEN [39]. The trusted dealer constructs a degree f polynomial of secret . Then for each share , a polynomial degree f polynomial is constructed (). Although the above asynchronous verifiable secret sharing has a different purpose than our secret recovery scheme, it provided us with a lot of inspiration.
Based on the above study on share recovery, our comparison of the share recovery scheme is shown in Table 1.
Table 1.
Comparison of the existing share recovery protocol.
3. Preliminaries
In this section, we introduce the cryptographic preliminaries used in our scheme.
3.1. BLS Signature
The most well-known threshold signature scheme is the pair-based threshold signature scheme [24]. The BLS signature consists of Setup, KeyGen, SigGen, and Verification—four polynomial algorithms.
- Setup. The BLS signature uses bilinear pairing with a non-degenerative property. Gap Diffie–Hellman groups of suitable elliptic curve points with values in a group of units . For each group, set the generator . The BLS signature also needs a hash function with values in .
- KeyGen. Generate a secret key and public key based on the parameters chosen in the setup phase.Step 1: select a random integer x as the secret key in group .Step 2: compute the public key .
- SigGen. Sign a message m by the key generated in the KeyGen phase.Step 1: compute the hash value of the message.Step 2: compute the signature of the message using the secret key x.
- Verification. Verify the correctness of the signatures s generated in the SigGen phase. Verify: the signature is only valid if the following equation holds.Proof of Correctness: the above equation can verify the correctness of the signature for the following reason.
3.2. Threshold BLS Signature
Boldyreva [23] proposed a well-known threshold BLS signature. Our scheme utilizes the same threshold signature scheme as DFINITY.
- Setup. In the threshold BLS signature, the set of n participants along with the secret key set are used as the -threshold Shamir secret sharing of the value s. In this set, any values from this key set cannot reveal any information about x. There exists the Lagrangian interpolation algorithm, which takes as input any t, or more values from this key set can output x. This algorithm is expressed as:The secret set corresponds to the public key set . The public key set and x corresponding y are available to all participants.
- SigshareGen. Participants sign a message m by the key generated in the KeyGen phase.Step 1: participants compute the hash value of the message.Step 2: participants compute the signature of the message using their own secret key where :The participant calculates the share of signatures and broadcasts it to the other participants.
- Sigreconstruction.Step 1: After obtaining the signature shares of others, participants verify the correctness of . The verification process uses the same equation as the BLS signature above. The correctness of the equation is the same as the verification of the correctness of the BLS signature. The above signature correctness verification is passed and the signature reconstruction operation is performed.Step 2: any or more correct shares of subset R compute the signature:where is the appropriate Lagrange coefficient for the correct signature share set.
- SigVerification. Verify the correctness of the signatures s generated in the Sigreconstruction phase. This phase is the same as the BLS signature.Verify: the signature is only valid if the following equation holds.Proof of Correctness: the above equation can verify the correctness of the signature for the following reason.
3.3. Decentralized Key Generation
To implement a threshold signature key generation system between participants, the distributed key generation phase needs to be applied. In order to implement the recovery of the lost key shares, our scheme improves on the existing basic protocol. Improvements of the distributed key generation are described in detail in Section 5.
- Setup. In the setup phase, some public parameters were created.is the subgroup of of the order q, where p, q are both large primes, q divides , and g is the generator of . Our scheme denotes a group of n participants as .
- KeyGen. The threshold public key y is constructed by the share public keys of all members.Step 1: computes its share public key .Step 2: broadcasts a commitment to all participants.Step 3: every participant computes the public key . y can verify the correctness of the reconstructed signature; thus, the threshold secret key .
- Broadcast. shares its own generated polynomial to all of the participants without revealing the coefficients.Step 1: construct a random polynomial of degree t, such that the secret key . Letwhere .Step 2: compute commitment , where .Step 3: broadcast and to other participants. At this time, .
- Verification. verifies the correctness of sent from .Step 1: computes .Step 2: sends with the corresponding signature to through a secure channelStep 3: verifies the signature and then checks the correctness by the following equation.If the condition is not satisfied, the interaction will end. The subsequent interaction in the above case is an interesting issue, but not the focus of this paper. Moreover, will broadcast the error to all members.
- Reconstruction. By defining , could compute . Thus is a share of .computes its share where is received from other j participants and its own . Afterward, can be used as the private key share of the threshold signature.
3.4. Verifiable Random Function
The verifiable random function is the final progress of our scheme to generate randomness. A verifiable random function is defined as a tuple of the following algorithms.
- KeyGen. Input value r; the algorithm generates a secret key and an output verification key .
- Eval. The evaluation algorithm produces a pseudorandom output R, the output corresponding proof on input , and a message m.
- Verify. Verify the algorithm outputs 1 if and only if the output produced by the evaluation algorithm is R and is verified by the proof given the verification key and the message m.
4. Decentralized Random Beacon Committee for Blockchain
In this section, an overview of the random beacon committee for blockchain is presented, including the application scenario, system architecture, and security properties.
4.1. Application Scenario
Random beacon committees can be very instrumental for blockchain. DFINITY uses this approach to assign different participants to different committees. However, members of the committee may be attacked by active adversaries. Active adversaries launch reboot attacks against some of these members. Members lose their secret share, which in turn leads to the loss of the ability to participate in randomness generation. This eventually results in the random number output of the committee becoming insecure. The adversary can easily influence the entire committee. Ultimately, the above attack behavior leads to the generation of biased randomness.
Addressing this issue allows for capacity enhancements to the existing blockchain. On the one hand, the key recovery process requires a straightforward process. Share recovery for any one participant does not cause all nodes to change. The scenario for share recovery should be provisioned during protocol initialization. On the other hand, the components of the system cannot have a trusted third party. Therefore, the design of our protocol focuses on the design of polynomials that initialize the decentralized key generation.
4.2. System Architecture
The randomness generation beacon committee for blockchain consists of three sub-modules: blockchain participant, decentralized random beacon committee, and blockchain system. The system architecture is depicted in Figure 1.
Figure 1.
The architecture of our scheme.
- Blockchain participants are the base members of the blockchain. They are composed of different committees for normal transaction validations according to the randomnesses generated by the random number committee. The participants perform the basic processes of transaction initiations, confirmation, and consensus of the blockchain.
- The decentralized random beacon committee is the core of the system. Committee members run the distributed key generation. After the key generation, the committee members run the distributed threshold signature scheme and output the threshold signature shares. After the signature share reconstruction process, the final signature is an output. It is worth noting that the reconstructed signatures are verified for correctness by the public key and then a consistent threshold signature is an output. The final threshold signature is input to the verifiable delay function to output the final random number. The random number obtained by the committee is used to determine the committee composition of the participants for the next round.
- The blockchain system records the transactions in which the nodes operate normally. Meanwhile, the randomness generated in a round is recorded in each block in order to implement the next round of randomness generation. This random number is used in the next round of signed messages to generate randomnesses.
4.3. Security Properties
The randomness generation beacon committee for blockchain that we proposed was designed to achieve the following property requirements. For the unpredictability, bias-resistance, public verifiability, and availability properties, we refer to the excellent work by Raikwar [11]. The following mathematical formulas are referenced from the work by Raikwar. The recovery property was due to the new security requirements brought about by our solution design. In the following, definition is a security parameter and is a negligible function of .
- Unpredictability. Let be a probabilistic polynomial time algorithm that receives secret shares where and the current state as the input values. Let output the a value for any value (future rounds) , and for all rounds . The following relation is satisfied.
- Bias resistance. Let , ) for where be probabilistic polynomial time algorithms that receive the values and the current as input and output one bit: 0 or 1. Let bit denote the i-th bit in the binary representation of , let be the number of bits of . Then, for every , every , and for all .
- Public verifiability. Verify( ) as a public probabilistic polynomial time algorithm run by an external randomness verifier. The verifier at the end of round e receives and the as input values, and outputs a bit 0 or 1 based on the verification of using . Then, for every round .
- Availability. Let be an adversary controlling a fraction of participants and be a set of honest participants in the decentralized randomness beacon protocol. The number of is more than . Given and , for every round and for every participant .
- Recovery. Let be an adaptive adversary rebooting a fraction of participants and be a set of dishonest participants in the decentralized randomness beacon protocol. The number of is less than t. Given and , for every round and for every participant .
6. Evaluation
We compared the schemes based on the above study of the distributed random beacon. Table 2 compares the above scheme and our scheme in terms of setup assumptions, communication overhead, active adversaries, and recovery. The scheme proposed in this paper strengthens the DFINITY scheme against active adversary attacks. Participates in RandRunner and the POW random beacon scheme can compete against active adversaries. However, both schemes require a common reference string as the setup assumption. In our proposed scheme, the initialization of the system is accomplished through the distributed key generation. Our scheme has better performance in terms of trustworthiness.
Table 2.
Comparison of the existing random beacon protocols.
HAVEN is different from our proposed scenario in terms of the scenarios. It is more concerned with the impact of network assumptions on the scheme. We analyzed our scheme in a theory comparison with HAVEN [39], as shown in Table 3. E represents the exponentiation calculation and represents the Lagrange interpolation. We have the same computational overhead for the signature generation and share recovery compared to HAVEN. However, our proposed scheme has less computational overhead in the generation phase.
Table 3.
Comparison of recent asynchronous verifiable secret sharing protocols.
In terms of the experimental simulation, we implemented the scheme simulation based on the PROJECT [40]. The environment of our simulation was Intel(R) Core(TM) i5-1135G7 @ 2.40 GHz, RAM 16.0 GB, and Ubuntu 9.4.0, JAVA openjdk version 11.0.15. We deployed five to eight nodes to implement the distributed key generation and key recovery. In system deployments with varying node sizes, we executed our program (50 rounds, consecutively) and recorded the execution times. The performances of our DKG scheme and share recovery scheme with different nodes are present in Figure 3 and Figure 4.
Figure 3.
The performance of our DKG scheme with different nodes.
Figure 4.
The performance of our share recovery scheme with different nodes.
After the DKG execution, we performed the threshold signature and input the results into VRF. Using five nodes as an example, we compared our threshold signature scheme with the Libert threshold signature scheme [41]. Finally, the program output randomness, see Figure 5. It should be noted that the message transmission delay between nodes was considered in our time calculation.
Figure 5.
The performance of our threshold signature and randomness generation.
Performance Analysis
From Figure 3, we can see that our DKG runtime function increased as the number of nodes increased. This is because our scheme is designed to use the homogeneous bivariate polynomial. As the number of nodes increases, the number of interactions between nodes also needs to increase. At the same time, the computation and verification times of the nodes for messages need to increase. This again confirms the design of our solution. As presented in Figure 4, the node share recovery time in our scheme increases as the number of nodes increases. The reason is that the threshold setting for the share recovery is set at the same level as the key recovery setting. From Figure 5, one can see that our scheme has no impact on the efficiency of the threshold signature and VRF computation. The share recovery function was performed before signing. We must enrich the random number generation function based on the threshold signature.
7. Conclusions
We presented a key recovery threshold signature randomness beacon scheme for blockchain. This scheme allows participants to recover the key share after an active adversary reboot attack. Moreover, it is proven that our random beacon scheme can avoid generating unpredictability, bias-resistance, and public verifiability randomness. Moreover, our scheme supports the availability and recoverability of randomness generation. As shown in the performance analysis, our practical solution gains new functionality at a fraction of the cost. The number of nodes increases by one node, and the time of DKG and the share recovery add approximately 0.4 s. In the future, additional research needs to focus on the study of the effect of the network assumption on random number generation. At the same time, robust and secure generation of random numbers in asynchronous networks should be investigated. To summarize, due to the recovery and efficiency, our key recovery threshold signature randomness beacon scheme applies to randomness generating for blockchain.
Author Contributions
Conceptualization, Y.Z., B.L., Y.Y., S.H.; software, Y.Z., Z.D.; formal analysis, Y.Z., B.L.; writing—original draft preparation, Y.Z., G.H.; writing—review and editing, Y.Z., Y.Y., H.Z. G.H. All authors have read and agreed to the published version of the manuscript.
Funding
This work is supported by the Open Program of Neusoft Corporation, Item number NCBETOP2101, the National Key R&D Program of China through project 2020YFB1005600, the Beijing Natural Science Foundation through project M21031, the Natural Science Foundation of China through projects U21A20467, 61932011, 61972019 and 62002011, the China Postdoctoral Science Foundation 2021M700347.
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
- David, B.; Gaži, P.; Kiayias, A.; Russell, A. Ouroboros praos: An adaptively-secure, semi-synchronous proof-of-stake blockchain. In Proceedings of the Annual International Conference on the Theory and Applications of Cryptographic Techniques, 2018; Springer: Berlin/Heidelberg, Germany, 2018; pp. 66–98. [Google Scholar]
- Gilad, Y.; Hemo, R.; Micali, S.; Vlachos, G.; Zeldovich, N. Algorand: Scaling byzantine agreements for cryptocurrencies. In Proceedings of the ACM Symposium on Operating Systems Principles, Shanghai, China, 28 October 2017; pp. 51–68. [Google Scholar]
- Hanke, T.; Movahedi, M.; Williams, D. Dfinity Technology Overview Series, Consensus System. arXiv 2018, arXiv:1805.04548. [Google Scholar]
- Castro, M.; Liskov, B. Practical Byzantine Fault Tolerance. OsDI 1999, 1999, 173–186. [Google Scholar]
- Kokoris-Kogias, E.; Jovanovic, P.; Gasser, L.; Gailly, N.; Syta, E.; Ford, B. Omniledger: A secure, scale-out, decentralized ledger via sharding. In Proceedings of the IEEE Symposium on Security and Privacy, San Francisco, CA, USA, 21–23 May 2018; pp. 583–598. [Google Scholar]
- Goyal, V.; Kothapalli, A.; Masserova, E.; Parno, B.; Song, Y. Storing and retrieving secrets on a blockchain. In Proceedings of the IACR International Conference on Public-Key Cryptography, Virtual Event, 8–11 March 2022; Springer: Berlin/Heidelberg, Germany, 2022; pp. 252–282. [Google Scholar]
- Boneh, D.; Bonneau, J.; Bünz, B.; Fisch, B. Verifiable delay functions. In Proceedings of the Annual International Cryptology Conference, Barbara, CA, USA, 19–23 August 2018; Springer: Berlin/Heidelberg, Germany, 2018; pp. 757–788. [Google Scholar]
- Schoenmakers, B. A simple publicly verifiable secret sharing scheme and its application to electronic voting. In Proceedings of the Annual International Cryptology Conference, Santa Barbara, CA, USA, 15–19 August 1999; Springer: Berlin/Heidelberg, Germany, 1999; pp. 148–164. [Google Scholar]
- Galindo, D.; Liu, J.; Ordean, M.; Wong, J.M. Fully distributed verifiable random functions and their application to decentralised random beacons. In Proceedings of the IEEE European Symposium on Security and Privacy, Virtual, 6–10 September 2021; pp. 88–102. [Google Scholar]
- Nguyen-Van, T.; Nguyen-Anh, T.; Le, T.D.; Nguyen-Ho, M.P.; Nguyen-Van, T.; Le, N.Q.; Nguyen-An, K. Scalable distributed random number generation based on homomorphic encryption. In Proceedings of the IEEE International Conference on Blockchain, Atlanta, GA, USA, 14–17 July 2019; pp. 572–579. [Google Scholar]
- Raikwar, M.; Gligoroski, D. SoK: Decentralized Randomness Beacon Protocols. arXiv 2022, arXiv:2205.13333. [Google Scholar]
- Herzberg, A.; Jarecki, S.; Krawczyk, H.; Yung, M. Proactive secret sharing or: How to cope with perpetual leakage. In Proceedings of the Annual International Cryptology Conference, Santa Barbara, CA, USA, 27–31 August 1995; Springer: Berlin/Heidelberg, Germany, 1995; pp. 339–352. [Google Scholar]
- Tekiner, E.; Acar, A.; Uluagac, A.S.; Kirda, E.; Selcuk, A.A. SoK: Cryptojacking malware. In Proceedings of the IEEE European Symposium on Security and Privacy, Virtual, 6–10 September 2021; pp. 120–139. [Google Scholar]
- Zhou, L.; Schneider, F.B.; Van Renesse, R. APSS: Proactive Secret Sharing in Asynchronous Systems; ACM: New York, NY, USA, 2005; Volume 8, pp. 259–286. [Google Scholar]
- Maram, S.K.D.; Zhang, F.; Wang, L.; Low, A.; Zhang, Y.; Juels, A.; Song, D. CHURP: Dynamic-committee proactive secret sharing. In Proceedings of the ACM SIGSAC Conference on Computer and Communications Security, London, UK, 11–15 November 2019; pp. 2369–2386. [Google Scholar]
- Blum, M. Coin Flipping by Telephone a Protocol for Solving Impossible Problems; ACM: New York, NY, USA, 1983; Volume 15, pp. 23–27. [Google Scholar]
- Cachin, C.; Kursawe, K.; Shoup, V. Random Oracles in Constantinople: Practical Asynchronous Byzantine Agreement Using Cryptography; Springer: Berlin/Heidelberg, Germany, 2005; Volume 18, pp. 219–246. [Google Scholar]
- Azouvi, S.; McCorry, P.; Meiklejohn, S. Winning the Caucus Race: Continuous Leader Election via Public Randomness. arXiv 2018, arXiv:1801.07965. [Google Scholar]
- Canetti, R.; Rabin, T. Fast asynchronous Byzantine agreement with optimal resilience. In Proceedings of the Annual ACM Symposium on Theory of Computing, San Diego, CA, USA, 9–11 June 1993; pp. 42–51. [Google Scholar]
- Kelsey, J.; Brandao, L.T.; Peralta, R.; Booth, H. A Reference for Randomness Beacons: Format and Rrotocol Version 2; Technical Report; National Institute of Standards and Technology: Gaithersburg, MD, USA, 2019. [Google Scholar]
- Oraclize.it. Provable Random Number Generator. Available online: https://provable.xyz (accessed on 20 June 2022).
- Haahr, M. Random.org: True Random Number Service. Available online: https://http://random.org/ (accessed on 20 June 2022).
- Boldyreva, A. Threshold signatures, multisignatures and blind signatures based on the gap-diffie-hellman-group signature scheme. In Proceedings of the International Workshop on Public Key Cryptography, Miami, FL, USA, 6–8 January 2003; Springer: Berlin/Heidelberg, Germany, 2003; pp. 31–46. [Google Scholar]
- Boneh, D.; Lynn, B.; Shacham, H. Short signatures from the weil pairing. In Proceedings of the International Conference on the Theory and Application of Cryptology and Information Security, Gold Coast, QLD, Australia, 9–13 December 2001; Springer: Berlin/Heidelberg, Germany, 2001; pp. 514–532. [Google Scholar]
- Goldreich, O.; Goldwasser, S.; Micali, S. How to Construct Random Functions; ACM: New York, NY, USA, 1986; Volume 33, pp. 792–807. [Google Scholar]
- Micali, S.; Rabin, M.; Vadhan, S. Verifiable random functions. In Proceedings of the Annual Symposium on Foundations of Computer Science, Redondo Beach, CA, USA, 20–22 November 1999; pp. 120–130. [Google Scholar]
- Han, R.; Lin, H.; Yu, J. RandChain: A Scalable and Fair Decentralised Randomness Beacon. Cryptology ePrint Archive, Paper 2020/1033. 2020. Available online: https://eprint.iacr.org/2020/1033 (accessed on 20 June 2022).
- Schindler, P.; Judmayer, A.; Hittmeir, M.; Stifter, N.; Weippl, E. RandRunner: Distributed randomness from trapdoor VDFs with strong uniqueness. In Proceedings of the ISOC Network and Distributed System Security Symposium, Diego, CA, USA, 27 February–3 March 2022. [Google Scholar]
- Randao: Verifiable Random Number Generation. Available online: https://randao.org/whitepaper/Randao_v0.85_en.pdf (accessed on 20 June 2022).
- Feldman, P. A practical scheme for non-interactive verifiable secret sharing. In Proceedings of the Annual Symposium on Foundations of Computer Science, Los Angeles, CA, USA, 20–22 November 1987; pp. 427–438. [Google Scholar]
- Stadler, M. Publicly verifiable secret sharing. In Proceedings of the International Conference on the Theory and Applications of Cryptographic Techniques, Trondheim, Norway, 30 May–3 June 1996; Springer: Berlin/Heidelberg, Germany, 1996; pp. 190–199. [Google Scholar]
- Bhat, A.; Kate, A.; Nayak, K.; Shrestha, N. OptRand: Optimistically Responsive Distributed Random Beacons. Cryptology ePrint Archive, Paper 2022/193. 2022. Available online: https://eprint.iacr.org/2022/193 (accessed on 20 June 2022).
- Bentov, I.; Gabizon, A.; Zuckerman, D. Bitcoin Beacon. arXiv 2016, arXiv:1605.04559. [Google Scholar]
- Schultz, D.; Liskov, B.; Liskov, M. MPSS: Mobile Proactive Secret Sharing; ACM: New York, NY, USA, 2010; Volume 13, pp. 1–32. [Google Scholar]
- Kiribuchi, N.; Kato, R.; Nishide, T.; Yoshiura, H. Batching multiple protocols to improve efficiency of multi-party computation. In Proceedings of the International Conference on Information Security and Cryptology, Seoul, Korea, 30 November–2 December 2011; Springer: Berlin/Heidelberg, Germany, 2011; pp. 289–308. [Google Scholar]
- Basu, S.; Tomescu, A.; Abraham, I.; Malkhi, D.; Reiter, M.K.; Sirer, E.G. Efficient verifiable secret sharing with share recovery in BFT protocols. In Proceedings of the ACM SIGSAC Conference on Computer and Communications Security, London, UK, 11–15 November 2019; pp. 2387–2402. [Google Scholar]
- Cachin, C.; Kursawe, K.; Lysyanskaya, A.; Strobl, R. Asynchronous verifiable secret sharing and proactive cryptosystems. In Proceedings of the ACM Conference on Computer and Communications Security, Vienna, Austria, 24–28 October 2002; pp. 88–97. [Google Scholar]
- Kogias, E.K.; Malkhi, D.; Spiegelman, A. Asynchronous distributed key generation for computationally-secure randomness, consensus, and threshold signatures. In Proceedings of the ACM SIGSAC Conference on Computer and Communications Security, Denver, CO, USA, 12–16 October 2020; pp. 1751–1767. [Google Scholar]
- Alhaddad, N.; Varia, M.; Zhang, H. High-threshold AVSS with optimal communication complexity. In Proceedings of the International Conference on Financial Cryptography and Data Security, Virtual, 1–5 March 2021; Springer: Berlin/Heidelberg, Germany, 2021; pp. 479–498. [Google Scholar]
- Resch, J. PROTECT. Available online: https://github.com/jasonkresch/protect (accessed on 20 June 2022).
- Libert, B.; Joye, M.; Yung, M. Born and Raised Distributively: Fully Distributed Non-Interactive Adaptively-Secure Threshold Signatures with Short Shares; Elsevier: Amsterdam, The Netherlands, 2016; Volume 645, pp. 1–24. [Google Scholar]
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations. |
© 2022 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).