Distributed Random Beacon for Blockchain Based on Share Recovery Threshold Signature
Abstract
:1. Introduction
- 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.
2. Related Work
2.1. Simple Approach
2.2. Distributed Randomness Beacon
- 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
- 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.
3. Preliminaries
3.1. BLS Signature
- 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
- 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:
- 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
- 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 . LetStep 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
- 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
4.1. Application Scenario
4.2. System Architecture
- 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
- 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 .
5. Decentralized Random Beacon with Share Recovery Threshold Signature
5.1. System Definition
- Setup. This step runs to initialize the scheme. It takes as input a security parameter , and outputs the system public parameter .
- Decentralized key generation. Decentralized random beacon committee members take public parameters as input and run this step to generate their own key share , recovery polynomial , and public signature verification key .
- Share recovery. Once a participant of the committee loses his share of the key, the rest of the participants assist him in recovering the key share. Other participants send to . After receiving more than recovery shares, he can recover the signature shares himself.
- Threshold signature. participants take as the input the system public parameters and the message recorded in the last round block m; they share their own key share and output threshold signature .
- Signature verification. Committee members verify the validity of the signature . It takes as the input the system public parameters , message m, signature , the shared signature verify public key , and the output 1 if and only if the unique signature is valid (otherwise outputs 0).
- Randomness generation. The unique verified signature is entered into the verifiable random function for the calculation. The output of the randomness calculation and the evidence of the calculation are stored in the block of the current round.
5.2. Random Beacon with Share Recovery Threshold Signature Construction
- Setup. This involves the gap Diffie–Hellman groups of suitable elliptic curve points with values in a group of units . For each group, we set the generator, . Their relationship e satisfies Equation (3). A one-way hash function with values in . E is an elliptic curve over . g is a generator on the curve E and its order is prime q. We also need the same as DFINITY [5] to calculate the obtained threshold signature eventually to the VRF. So, we need the committee’s VRF private key and verification public key . The system parameter is .
- Decentralized key generation. All committee participants generate the threshold signature key via the distributed key generation, Algorithm 1. It is important to emphasize that the polynomials we use are not symmetric bivariate polynomials . Moreover, the bivariate polynomial dimension has the same degree t. Unlike the previous work, we refer to this as the homogeneous bivariate polynomial. The participants interact with each other by the described algorithm. Eventually, they complete the interaction, participant will obtain a commitment about the polynomial , recovery polynomial . also have , and the verification public key for the threshold signature. Ultimately, the secret private key for the threshold signature is . It can be the Lagrange reconstruction by the algorithm. They both satisfies the polynomial distribution. The following mathematical expressions were designed by the authors.
Algorithm 1 Decentralized key generation for the participant | |||
1: | upon setup finished do | ||
2: | choose a random homogeneous bivariate polynomial of degree with , i.e., | ||
3: | for and | ▹ is a matrix | |
4: | set | ||
5: | |||
6: | ▹ is a polynomial of where | ||
7: | |||
8: | |||
9: | for do | ||
10: | |||
11: | ▹ is a value | ||
12: | send “send, ” to | ||
13: | upon receiving from do | ▹ do | |
14: | check the correctness of by | ||
15: | upon correct | ||
16: | set | ||
17: | ▹ ∘ is Hadamard product | ||
18: | |||
19: | |||
20: | ▹ is extracted from | ||
21: | return |
- Share recovery. Our scheme assumes that the active adversary launches a reboot attack on no more than participants (at least honest participant alive). The process of key recovery is illustrated in Figure 2. The attacked participant can recover the key share via Algorithm 2. The following mathematical equations were performed by the authors.
Algorithm 2 Share recovery for participant | ||
1: | upon reboot attack effect do | |
2: | send “help, ” to | |
3: | upon receiving “help, ” from | |
4: | do | |
5: | send “echo, , ” to | |
6: | upon receiving “echo, , ” from | |
7: | check the correctness of by | |
8: | upon correct | |
9: | ||
10: | if echo ≥ then Lagrange from | ▹ satisfy polynomial distribution |
11: | return | ▹ is extracted from |
- Threshold signature. Participants sign a message from the last round block m by the decentralized key generation. Participants compute the message hash . Then, the participants compute the signature of the message using their own secret key where :The participant calculates the share of signatures and broadcasts it to other participants. After obtaining the signature shares of others, the participants verify the correctness of . The above signature correctness verification is passed and signature reconstruction is performed. Any or more correct shares subset R compute the signature:
- Signature verification. Verify the correctness of the signatures generated in the reconstruction phase. This phase is the same as the BLS signature. The signature is only valid if the following equation holds.
- Randomness generation. After the threshold signature and signature verification phase, the committee obtains a uniquely determined threshold signature. The threshold signature can be input to a verifiable random function for the calculation. The decentralized random beacon committee inputs signature with into a verifiable random function. The VRF evaluation algorithm produces a pseudorandom output randomness R and the output corresponding proof on input and a message . Decentralized random beacon committee participants can verify the algorithm to verify output correctness. It is verified by the proof , given the verification key and the message .
5.3. Correctness Analysis
- (1)
- The generation of key shares can obtain a valid signature
- (2)
- Participants’ key share can be recovered by where .
- (3)
- The generation of the valid BLS signature that could be verified.
- (4)
- The randomness R generated by the BLS signature and VRF committee secret key can be verified.
- -
- Decentralized key generation correctness.According to the decentralized key generation phase, key shares . The participants interact with each other . Thus, satisfy the polynomial distribution. In all, the decentralized key generation is correct.
- -
- Share recovery correctness.In the decentralized key generation phase, every participant holds a recovery polynomial . The participants interact with each other . During the key recovery process, sends to . The degrees of , two dimensions, are both t. satisfy the polynomial distribution. Therefore, once recovery shares are received that satisfy the threshold , the participant can recover the share . Thus, the share recovery phase is correct.
- -
- Signature correctness.Based on decentralized key generation and share recovery correctness, the committee participants’ secret key satisfy the polynomial distribution. The threshold signature secret is . Moreover, . Thus, the share signature can be verified.
- -
- Availability randomness correctness.Based on the threshold signature correctness, the threshold signature phase can output a unique signature . The reason for the uniqueness of BLS signatures includes two aspects. The first reason is the non-adaptive “random k value“ involved in the calculation. Moreover, as in Equation (7), the unique public key is involved in the signature verification. The randomness of the output comes from the one-way function of the signed message m.
5.4. Security Analysis
6. Evaluation
Performance Analysis
7. Conclusions
Author Contributions
Funding
Institutional Review Board Statement
Informed Consent Statement
Data Availability Statement
Conflicts 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]
Scheme | Polynomial | Comm. Cost | Trust Setup |
---|---|---|---|
Cachine | Bivariate symmetric polynomial | ✗ | |
HAVEN | Two-layer polynomial | ✗ | |
HAVSS | Asymmetric bivariate polynomial | ✗ | |
Basu | Polynomial+DPRF | ✓ | |
Our scheme | Homogeneous bivariate polynomial | ✗ |
Technique | Setup Assumption | Comm. Cost | Adaptive Adversary | Recovery | |
---|---|---|---|---|---|
TSS | DFINITY [5] | DKG | ✗ | ✗ | |
TSS | Cachine [17] | DKG | ✗ | ✗ | |
VRF | Algorand [4] | CRS | ✗ | ✗ | |
VDF | RandRunner [28] | CRS | ✓ | ✓ | |
VSS | Ouroboros [1] | CRS | ✗ | ✗ | |
Hash | POW | CRS | ✓ | ✓ | |
TSS | Our scheme | DKG | ✓ | ✓ |
HAVEN [39] | Our Scheme | |
---|---|---|
Key Generation | ||
Threshold Signature | ||
Share Recovery |
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/).
Share and Cite
Zhu, Y.; Li, B.; Yang, Y.; Ding, Z.; Zheng, H.; He, G.; Hou, S. Distributed Random Beacon for Blockchain Based on Share Recovery Threshold Signature. Sensors 2022, 22, 6004. https://doi.org/10.3390/s22166004
Zhu Y, Li B, Yang Y, Ding Z, Zheng H, He G, Hou S. Distributed Random Beacon for Blockchain Based on Share Recovery Threshold Signature. Sensors. 2022; 22(16):6004. https://doi.org/10.3390/s22166004
Chicago/Turabian StyleZhu, Yan, Bingyu Li, Yang Yang, Zhenyang Ding, Haibing Zheng, Guangyu He, and Shengjie Hou. 2022. "Distributed Random Beacon for Blockchain Based on Share Recovery Threshold Signature" Sensors 22, no. 16: 6004. https://doi.org/10.3390/s22166004
APA StyleZhu, Y., Li, B., Yang, Y., Ding, Z., Zheng, H., He, G., & Hou, S. (2022). Distributed Random Beacon for Blockchain Based on Share Recovery Threshold Signature. Sensors, 22(16), 6004. https://doi.org/10.3390/s22166004