Next Article in Journal
Event-Triggered Bounded Consensus Tracking for Second-Order Nonlinear Multi-Agent Systems with Uncertainties
Next Article in Special Issue
Physical Layer Security: Channel Sounding Results for the Multi-Antenna Wiretap Channel
Previous Article in Journal
A Novel Strategy for Extracting Richer Semantic Information Based on Fault Detection in Power Transmission Lines
Previous Article in Special Issue
Quality of Security Guarantees for and with Physical Unclonable Functions and Biometric Secrecy Systems
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Secure Ring Signature Scheme for Privacy-Preserving Blockchain

1
State Key Laboratory of Public Big Data, College of Computer Science and Technology, Guizhou University, Guiyang 550025, China
2
Key Laboratory of Advanced Manufacturing Technology, Ministry of Education, Guizhou University, Guiyang 550025, China
*
Author to whom correspondence should be addressed.
Entropy 2023, 25(9), 1334; https://doi.org/10.3390/e25091334
Submission received: 7 August 2023 / Revised: 9 September 2023 / Accepted: 13 September 2023 / Published: 14 September 2023
(This article belongs to the Special Issue Information Security and Privacy: From IoT to IoV)

Abstract

:
Blockchain integrates peer-to-peer networks, distributed consensus, smart contracts, cryptography, etc. It has the unique advantages of weak centralization, anti-tampering, traceability, openness, transparency, etc., and is widely used in various fields, e.g., finance and healthcare. However, due to its open and transparent nature, attackers can analyze the ledger information through clustering techniques to correlate the identities between anonymous and real users in the blockchain system, posing a serious risk of privacy leakage. The ring signature is one of the digital signatures that achieves the unconditional anonymity of the signer. Therefore, by leveraging Distributed Key Generation (DKG) and Elliptic Curve Cryptography (ECC), a blockchain-enabled secure ring signature scheme is proposed. Under the same security parameters, the signature constructed on ECC has higher security in comparison to the schemes using bilinear pairing. In addition, the system master key is generated by using the distributed key agreement, which avoids the traditional method of relying on a trusted third authorizer (TA) to distribute the key and prevents the key leakage when the TA is not authentic or suffers from malicious attacks. Moreover, the performance analysis showed the feasibility of the proposed scheme while the security was ensured.

1. Introduction

Blockchain technology is the underlying technology of Bitcoin, a concept mentioned by Nakamoto [1] in his Bitcoin white paper published in 2008, which has triggered new industrial and technological revolutions and is a popular research area at present. In essence, blockchain is a kind of distributed database [2], and its underlying chain structure is the data blocks arranged in chronological order, which inherits the technologies of smart contracts [3], peer-to-peer networks (P2P) [4], the consensus mechanism [5], cryptography, etc., has the unique advantages of weak centralization, being tamper-proof, traceability, openness, transparency, etc., and is able to realize the direct circulation of value between untrusted nodes without the need for third-party institutions, which not only reduces the trust cost of transactions, but also greatly shortens the interaction time. It is considered as a key technology to realize the transformation of the “information Internet” to the “value Internet” [6].
Blockchain’s technical advantages make it applicable to various domains. One of them is digital currencies, where Bitcoin and its derivatives are expanding fast. According to a 2017 report by ARK Investments, there are more than 10 million Bitcoin users worldwide, with over USD 150-million in daily transactions [7]. In the financial sector, blockchain technology is highly valued by central banks, who design their own digital currencies by applying or studying it. They use blockchain technology to enhance the traditional financial system, which suffers from long delays and low efficiency in reconciliation, clearing, and cross-border settlement, as well as the high costs of maintaining central ledger data. In healthcare, the companies and stakeholders are benefiting from blockchain technology, which helps them streamline business processes, improve patient outcomes, manage patient data, comply with regulations, cut costs, and leverage healthcare-related data more effectively [8]. In the energy sector, blockchain technology, which is based on decentralization, is seen as a game-changing technology for creating distributed energy systems. It offers a decentralized trust mechanism that can be used for distributed energy operations and can help overcome management weaknesses and challenges in distributed energy systems [9]. In the field of cultural industry, the data inerrancy and high trustworthiness of the blockchain industry can be utilized to carry out many businesses such as certificate storage, digital property rights protection, and cultural relic identification. Furthermore, there are other fields such as justice, military, and supply chains that are gradually using blockchain to improve the problems existing in each field.
As blockchain technology continues to develop and become widely used, the privacy leakage concerns confronting it are becoming increasingly noticeable and must be given sufficient attention. While the blockchain mechanism avoids potential failures of individual servers and the exposure of data in terms of data storage, all transactions have to be made public to all nodes in order to reach consensus among the decentralized blockchain nodes. This exposes the privacy of the transactions greatly, and a main challenge is the safeguarding of users’ identity privacy. Identity privacy refers to the connection between a user’s real identity and the blockchain nodes. The blockchain stores data in an unchangeable way as a distributed ledger that any node can access. Transactions on the blockchain are somewhat anonymous, but not completely secure against privacy breaches. With advanced computing techniques, an attacker can track and analyze the correlation of public data in a global ledger to reveal sensitive information. For example, if there are consistent and correlated transactions, an attacker can extract some user characteristics using a graph of transactions between different addresses [10]. Moreover, an attacker can search all possible transactions to obtain the transaction addresses and estimate the balances, which can help to infer the user’s identity and location [11]. Cryptography is the prevalent method for privacy protection among researchers. Therefore, it should be combined with blockchain technology to offer a suitable solution for the blockchain’s privacy issue and guarantee the safety of users’ data.
A common security technique in blockchain systems is to use digital signatures to check the integrity of a document or a message. This ensures non-repudiation. The ring signature scheme [12] is a special type of group signature [13], which uses a group of L in a user’s private key and L in all the users’ public keys to complete the signature; the signature of the verifier can only verify that the signature comes from the group, but who signed the name is unknown. The ring signature does not need a trusted center and can hide the identity of the signer, which protects the user’s privacy. Considering its features, the scheme can be applied to anonymous payment applications or untraceable transactions and also to other scenarios that require privacy protection, such as elections, voting, and identity verification. Therefore, we propose a new privacy protection scheme by combining the ring signature algorithm and blockchain technology. However, the key generation link of traditional ring signature algorithms requires a secret key management center, which will face the risk of key leakage and increase the probability of attackers forging ring signatures. Moreover, most of the ring signatures are constructed based on bilinear pairing, and the computational complexity is usually high, which may lead to longer signing and verification time. It also lacks security. In order to improve the efficiency and security of ring signatures, we also made a new design of the scheme.
To solve the above-mentioned issues in the blockchain system, this paper studied and analyzed the related ring signature schemes and designed a new ring signature scheme suitable for the blockchain environment by using the anonymity feature of the ring signature. The scheme is based on Shamir verification secret sharing theory [14] and the Feldmanprotocol [15]; the key generation link in the scheme was improved, and the main body of the scheme adopted the elliptic curve cryptography principle.
The main contributions of the paper are stated as follows:
  • The algorithm exploits the concept of distributed key generation to create a system master key, which enhances the process of distributing the key by a trusted authorizer (TA) in traditional signature algorithms and eliminates the risk of key leakage when the TA is untrustworthy or subjected to malicious attacks.
  • This scheme is a ring signature constructed based on ECC, which provides better security with the same length of key compared to the scheme based on bilinear pairing. This algorithm strengthens the signature’s unforgeability, which reduces the attackers’ probability of succeeding in cracking the key.
  • This scheme improves the efficiency of ring signature generation and verification and is more compatible with the environment of blockchain systems.
The rest of this paper is organized as follows. In Section 2, we review different blockchain privacy-preserving schemes. In Section 3, we provide some preliminary concepts, including general ring signature algorithms and security model definitions. Section 4 describes the algorithms and system models of secure ring signature schemes. Section 5 proves the security of the proposed scheme, and Section 6 gives the efficiency and performance comparison of the signature schemes. Finally, the paper is summarized in Section 7.

2. Related Works

Blockchain technology faces challenges in its development in existing industries due to privacy breaches and other security issues. To protect users’ identity privacy in blockchain, different schemes have been suggested to increase the anonymity level. In order to resist the book analysis technique, researchers propose a defense mechanism for exchanging assets and obfuscating addresses, i.e., the address obfuscation mechanism, in response to the assumptions on which the technique is based. In 2014, Bonneau et al. [16] proposed the Mixcoin protocol, which enhances asset security through an electronic-signature-based commitment mechanism. In 2015, Valenta et al. [17] proposed the Blindcoin protocol, which guarantees the internal privacy of centralized hybrid coin schemes by using blind signature techniques. In 2018, Ziegeldorf et al. [18] proposed CoinParty; it occupies a unique position in the design space of hybrid services by decrypting the novel combination of hybrid nets and threshold signatures, combining the advantages of previously proposed centralized and decentralized hybrid services into a single system. The address obfuscation mechanism can protect the privacy of the ledger to a certain extent; however, the result of address obfuscation will still be stored in the public ledger, and an attacker can threaten user privacy to a certain extent by analyzing the obfuscated transactions with features.
Ledger information hiding mainly preserves the confidentiality of the ledger by encrypting the private data in the ledger and provides “credentials” through cryptographic techniques to keep the correctness of the blockchain ledger verifiable. Most of the existing techniques for the implementation of the ledger-information-hiding mechanism belong to zero-knowledge proof techniques [19], which means that zero-knowledge proofs do not convey any proof of knowledge other than the correctness of the proposition under discussion. Li et al. [20], based on the ring-zero-proof-of-knowledge and blockchain technology, proposed a secure and efficient fair transaction mechanism for a sharing environment. The mechanism utilizes ring-zero-knowledge proofs to hide transaction contents and relationships without affecting authentication by adding a new trusted player. However, zero-knowledge proofs have a high computational cost and storage space, require the use of complex cryptographic algorithms and a large number of data structures, and may affect the performance and scalability of blockchain systems.
Ring signature schemes allow participants to sign messages with the group name and preserve the confidentiality of the signer’s identity from disclosure. The ring signature technique has two main features: first, any member of the group can issue the correct signature alone; second, any member of the group only knows whether he or she has initiated the signature, and members outside the group only know whether the signer belongs to the group. A higher level of privacy is achieved by VOTOR, a practical remote voting scheme that uses product anonymization channels and linkable ring signatures. It was proposed by Thomas et al. [21]. An information sharing system that ensures the confidentiality of applicants was created by Patil et al. [22] using an ID-based ring signature technique. They removed the certificate validation process to make the system secure and reliable. A new ring signature scheme based on elliptic curves was proposed by Li et al. [23], which improves the signature unforgeability and anonymity compared with the traditional ring signature scheme. Wang et al. [24] proposed a flexible threshold ring signature scheme in chronological order, which in practice has the advantage of solving both the update problem and the chronological order problem. In addressing the difficulty of sharing medical records between healthcare organizations, Lai et al. [25] introduced a secure medical-data-sharing scheme based on traceable ring signatures and blockchain. Samra et al. [26] proposed a new framework, a certificate-less aggregation scheme based on traceable ring signatures (CLA-TRS), which ensures conditional privacy-preserving authentication in vehicular ad-hoc network (VANET) communications. Table 1 summarizes the application scenarios, techniques, advantages, etc., of the above schemes. It can be seen that most of the above schemes are based on bilinear pairing construction, and their security needs to be improved. Moreover, most of them rely on a trusted key generation center (KGC), which cannot avoid attacks and reduces the difficulty of forging signatures.

3. Preliminaries

In this context, we will present some preliminary knowledge including elliptic curves, difficult assumptions, and the general ring signature algorithm and its security models below.

3.1. Elliptic Curve

An elliptic curve is not an ellipse; it is called an elliptic curve because the equation for the curve is similar to the equation for calculating the perimeter of an ellipse. In general, the curve equation of an elliptic curve is a cubic equation of the following form:
y 2 + a x y + b y = x 3 + c x 2 + d x + e ,
where a , b , c , d , and e are real numbers satisfying some simple conditions.
Elliptic curves over finite fields are commonly used in cryptography, which refers to the curve defined by Equation (1) in which all coefficients are elements in a finite field G F ( q ) , where q is a large prime number. The most-commonly used of these is the curve defined by Equation (2):
y 2 m o d q = ( x 3 + a x + b ) m o d q ,
where a , b G F ( q ) and = ( 4 a 3 + 27 b 2 ) mod q 0 .
An elliptic curve is symmetric with respect to the X-axis, and the addition operation on it is defined as follows: if three points lie on the same line, the sum of them is O. Addition on an elliptic curve is defined as follows:
  • O is the additive identity element, that is, for any point P of the elliptic curve, P + O = P .
  • Let P 1 = ( x , y ) be a point on an elliptic curve whose additive inverse element is defined as P 2 = P 1 = ( x , y ) . This is because, when the connection of P 1 and P 2 is extended to infinity, another point O on the elliptic curve is obtained, that is the three points P 1 , P 2 , and O on the elliptic curve are collinear, so P 1 + P 2 + O = O , P 1 + P 2 = O , that is P 2 = P 1 .
  • Let P = ( x p , y p ) , Q = ( x q , y q ) and P Q , then R = P + Q = ( x r , y r ) is determined by the following rule:
    x r ( λ 2 x p x q ) m o d q ,
    y r ( λ 2 ( x p x r ) y p ) m o d q ,
    where
    λ = y q y p x q x p m o d q , i f P Q 3 x p 2 + a 2 y p m o d q , i f P = Q
  • The multiple of a point P is defined as 2 P = P + P .

3.2. Problem Assumptions

Definition 1.
Elliptic curve discrete logarithm problem (ECDLP): Given any two points P, Q on an elliptic curve E ( F p ) , solving for the value x satisfying the equation Q = x · P is unsolvable in polynomial time.

3.3. Ring-Signature-Generation Algorithm

The ring signature is a unique type of group signature that uses a set of public keys instead of one. It hides the identity of the actual signer from the verifier. Unlike other group signatures, ring signatures do not require a manager or any coordination among the members. The basic ring signature has three components: KeyGen(), Sign(), and Verify():
  • KeyGen(): This algorithm needs to input a security parameter l and, then, generate a key pair ( p k , s k ) for each user, where p k is the public key and s k is the private key.
  • Sign(): This algorithm takes the message m, which needs to be encrypted, the private key s k of a ring member, and the public key set L = { p k 1 , p k 2 , , p k n } of the selected ring members and generates a signature σ for the message m. One of the parameters in the signature σ follows a ring according to certain rules.
  • Verify(): This algorithm is a deterministic algorithm, which takes the public key set L = { p k 1 , p k 2 , , p k n } , the message m, and the signature σ as the input and outputs “accept” if the verification passes and “reject” otherwise.

3.4. Security Models

The ring signature scheme is supposed to satisfy the requirements of correctness, unconditional anonymity, and unforgeability.

3.4.1. Game I Correctness

The output of the ring-signature-generation algorithm serves as the input for the ring signature verification algorithm, which always outputs acceptance. The unforgeability and unconditional anonymity of a ring signature scheme are defined by a game between a simulator R and an adversary A . To begin with, we introduce A ’s inquirable oracle machines JO, CO, and SO:
  • Join oracle machine (JO(⊥) → P K ): With this query, a new user is added to the system and the public key P K of the new user is output.
  • Corruption oracle machine (CO( P K i ) → s k i : The user’s public key P K i is input, and the corresponding private key s k i is output.
  • Signed oracle machine (SO( m , n , L , P K ) → σ ): Input signed message m, and set L = { P K 1 , P K 2 , , P K n } of public keys of size n; the signer’s public key P K π ( 1 n π ) returns a valid ring signature σ .
The definition of the general ring signature and the ring signature defined in this paper contains four basic algorithms: system initialization algorithm, key-generation algorithm, ring signature generation, and ring signature verification. The key point is that the general ring signature puts forward more-specific requirements for the signature-value-generation process: Given a message M, the public key ( P K 1 , P K 2 , , P K n ) of n members, the signer’s private key s k π ( 1 π n ) , and a secure hash function, produce a set r 1 , r 2 , , r n , h 1 , h 2 , , h n , and finally, output the signature value σ , where r i r j , i j , h i ( 1 i n ) are the hash values determined by m , r i ( 1 i n ) and the public keys of the ring members, the signature value σ is completely determined by r 1 , r 2 , , r n , h 1 , h 2 , , h n , and message m is decided.

3.4.2. Game II Unforgeability

The unforgeability of a ring signature is defined by the following game between a simulator R and an adversary A :
  • R generates the system parameters params and sends them to A .
  • A adaptively queriesoracles JO, CO, and SO and random oracles H .
  • A outputs a signature message M * , a set S * consisting of n user public keys, and two forged signature values σ 0 * , σ 1 * .
A is said to have won the above game if the following four conditions are met:
Step 1: σ 0 * , σ 1 * are valid ring signatures on the message M * , that is RVerify( M * , S * , σ i * ), ( i { 0 , 1 } ) → accept.
Step 2: All public keys in S * are obtained by querying the oracle JO.
Step 3: All the public keys in S * are not corrupted, that is the adversary cannot obtain the private keys of any ring member in S * .
Step 4: σ * is not obtained by querying the signed oracle machine SO.
A ring signature scheme is said to be unforgeable if, for any PPT adversary A , the probability of winning the above game is negligible.

3.4.3. Game III Unconditional Anonymity

The unconditional anonymity of a ring signature scheme is defined by a game between a simulator R and an adversary A with infinite computational power as follows:
  • R generates the system parameters params and sends them to A .
  • A can adaptively query join oracle machine JO.
  • A sends a signature message M * and a set S * = P K 1 , P K 2 , , P K n consisting of public keys of n users to R , where all public keys are obtained by the JO query. R randomly selects π { 1 , 2 , , n } and computes a signature σ π = S i g n ( M * , n , S * , s k π ) , where s k π is the private key corresponding to P K π . Finally, R sends σ π to A .
  • A outputs a guess π { 1 , 2 , , n } .
A ring signature is said to satisfy unconditional anonymity if, for an adversary A with infinite computing power, the probability of guessing the correct signer π is at most 1 n , where n is the cardinality of the public key set S.

4. Secure Ring Signature Scheme

In this section, a secure blockchain ring signature scheme is proposed by incorporating the idea of distributed key generation. The following is a detailed description of the system model and the signature algorithm.

4.1. System Description

The system model is shown in Figure 1 and contains entities such as the group users, the distributed generation center KDC, and the blockchain network. The purpose of the KDC here is to generate the system parameters, validate and manage the cluster personnel, and verify the signature. The specific scheme is described as follows:
Step 1: The KDC picks the security parameter l and generates the system parameters for the signature.
Step 2: The user A π applies to the KDC to become a member of the group; A π sends I D π to the KDC; the KDC passes the verification, returns Q π , and adds the user A π to the group; the user completes the registration.
Step 3: The member A π interacts with other group members A i ( i = 1 , 2 , , n , i π ) through a secure channel to generate the system’s master private key and master public key.
Step 4: The member A π signs the data message m to generate signature σ π .
Step 5: All KDCs in the blockchain system verify the signature σ π and upload the data information and signatures to the blockchain database after verification.
Miner nodes in the blockchain network pack the set of transactions for a period of time and then continuously calculate the random numbers that meet the conditions to construct blocks that meet the predefined conditions for confirming the transactions. The KDCs mentioned in this paper can be considered as miner nodes, also known as full nodes, and users as regular nodes. Full nodes act as servers in the distributed network, and they maintain consensus rules among other nodes, as well as transaction validation. Ordinary nodes retain some of the information on the block. After the group users sign the data information, all KDCs verify the signatures and upload them into the blockchain network.

4.2. Algorithm Description

4.2.1. Setup Algorithm

The system server selects security parameters l and randomly picks a large prime number q > l . G is a base point on the elliptic curve. Let G 1 be an additive group of order q generated by the generating element P. The hash functions are: H 0 : { 0 , 1 } * E ( F q ) , H 1 : { 0 , 1 } * Z q * , H 2 : { 0 , 1 } * × G 1 Z q * , H 3 : { 0 , 1 } * G 1 . N represents the number of authorized users; { q , G , G 1 , H 0 , H 1 , H 2 , H 3 , N } is the public parameter. When the system parameters are determined, every authorized user A i , ( i = 1 , 2 , N ) picks a random polynomial of degree N 1 , f i ( x ) = a i 0 + a i 1 x + a i 2 x 2 + + a i ( N 1 ) x ( N 1 ) over Z q * , where f i ( 0 ) = a i 0 . Each A i computes and broadcasts T i j = P a i j ( m o d q ) ( j = 0 , 1 , , N 1 ) . Meanwhile, every authorized user A i transmits the calculated secret value s i k = f i ( k ) through a secure channel to the other A k = ( k = 0 , 1 , 2 , , N 1 , k i ) in the group. After that, every A k receives the secret value s i k and determines if it is correct by using the formula P s i k = ? j = 0 N 1 ( T i j ) i j ( m o d q ) . If the equation is not satisfied, the secret value is wrong, and A k sends an error message to A i , who has to resend the right secret value until the equation holds. Then, the master key S = i = 1 N 1 b i 0 ( m o d q ) and the master public key P 0 = S · P are established by the N authority members.

4.2.2. Key Generation

For each authorized signer of the system, A i transmits its identity information I D i to the KDC. Then, the KDC randomly selects k i Z q * , computes Q i = H 3 ( I D i | | k i ) , and secretly transmits it to A i over a secure channel. Next, signer A i computes D i = S · Q i , randomly picks x i Z q * , and computes its private key s k i = H 2 ( x i · D i ) and public key p k i = s k i G .

4.2.3. Signature Generation

Assuming that the signature user in the system is π , the public key is p k π = s k π G , and the private key is s k π = H 2 ( x π · D s ) . Choose a set L = { I D 1 , I D 2 , , I D n } consisting of n identities of other authorized users of the system, and if the public key p k π of the system is not in L, assign the attribute values Y i , A i for each public key p k i as follows:
Step 1: Randomly chose v i , t i , r i Z q * , and compute:
Y i = ( v i + t i ) G , i f i = π ( t i + r i ) p k i + v i G i f i π
A i = ( v i + t i ) H 0 ( p k i ) , i f i = π v i H 0 ( p k i ) + ( t i + r i ) I π i f i π
where: I π = s k π H 0 ( p k π ) is a message signature image that prevents double-spending attacks in the system. It is obtained by mapping p k i to a curve point in the finite field using H 0 ( p k i ) .
Step 2: Randomly select s Z q * , and then, calculate:
h = H 2 ( m | | s ) .
c i = H 1 ( h , Y 1 , , Y n , A 1 , , A n ) i = 1 , i π n c i i f i = π t i + r i i f i π ,
d i = ( v i + t i ) c i s k i i f i = π v i , i f i π
where: m stands for the content of the signature, and the final output of the transaction initiator π ’s ring signature for the message m is σ = ( I π , c 1 , c 2 , , c π , , c n , d 1 , d 2 , , d π , , d n ) .

4.2.4. Verify

The following steps can be used to verify the transaction signature σ by anyone who possesses the public keys of all the members in the ring signature.
ζ i = c i p k i + d i G η i = c i I π + d i H 0 ( p k i )
i = 1 n c i = H 1 ( h , ζ 1 , ζ 2 , , ζ n , η 1 , η 2 , , η n )
Compute ζ i , η i using Equation (9), and check if Equation (10) holds. If it does, the signature image I π in the signature is not used, and the signature is valid. If it does not, the signature image I π is used and the signature is invalid.

5. Security Analysis

5.1. Correctness Analysis

The verifier checks the transaction signature σ using Equation (10), and if it holds, the signature is valid. When i π , the conversion of ζ i is given as Equation (11) and η i is given as Equation (12):
ζ i = c i p k i + d i G = ( t i + r i ) p k i + v i G = Y i
η i = d i H 0 ( p k i ) + c i I π = v i H 0 ( p k i ) + ( t i + r i ) I π = A i
When i = π , the conversion of ζ i , η i is as follows:
ζ i = c i p k i + d i G = c i p k i + [ ( v i + t i ) c i s k i ] G = v i G + t i G = Y i
η i = d i H 0 ( p k i ) + c i I π = [ ( v i + t i ) c i s k i ] H 0 ( p k i ) + c i s k π H 0 ( p k π ) = v i H 0 ( p k i ) + t i H 0 ( p k i ) = A i
Therefore, based on the above relationship, the validity of our proposed scheme can be verified according to the following equation.
H 1 ( h , ζ 1 , ζ 2 , , ζ n , η 1 , η 2 , , η n ) = H 1 ( h , Y 1 , Y 2 , , Y π , , Y n , A 1 , A 2 , , A π , , A n ) = c π + i = 1 , i π n c i = i = 1 n c i

5.2. Unforgeability Analysis

Theorem 1.
Under a randomized oracle model, the messages m can be chosen adaptively by adversary A in Game II to attack. If there exists an algorithm that can win the ECDLP game in polynomial time T, then it is shown that the ECDLP hard problem can be broken with a non-negligible probability.
Proof. 
The purpose of challenger R is to compute the value of a when provided with a random instance of the discrete logarithm problem ( P , a P ) . The challenger R sets the public key of the signer U * as: p k i * = a P . In this scenario, R acts as a subroutine within A and takes on the role of the challenger in Game II. To simplify the discussion, let us assume that all queries made by the attacker A are distinct. Next, we elaborate on how the challenger R deals with A ’s query:
Step 1, initialization: The challenger R proceeds to execute the initialized algorithm with a security parameter of l to obtain the system parameters. Subsequently, these system parameters are transmitted from R to the adversary A .
Step 2, hash query: This step consists of the challenger R creating an empty table L, where L holds pairs of two values, such as ( x i , y i ) , where the challenger R randomly selects y i and sets H 1 ( x i ) = y i . When the adversary A queries H 1 ( x i ) , R hands over y i to A and appends ( x i , y i ) to list L.
Step 3, public key query: When the adversary A queries the public key of a user, the challenger R halts if s k i = s k i * ; otherwise, the challenger R gives the matching user public key p k i to adversary A .
Step 4, private key query: When the adversary A queries the private key of a user, if p k i = p k i * , then R stops operating, in the absence of this, the R sends the appropriate user private key s k i back to adversary A .
Step 5, ring signature query: The adversary A transmits information m and a public key collection L of N users to R , which returns a corresponding signature σ . Suppose there is a user identity p k π L such that p k s p k i * , then the adversary A signs the message using p k π as the real signer and gives the signature σ . Alternatively, the adversary A will conduct the next steps:
  • Randomly choose v i , t i , r i , s Z q * , and compute:
    Y i = ( v i + t i ) G , i f i = π v i G + ( t i + r i ) p k i * i f i π
    A i = ( v i + t i ) H 0 ( p k i * ) , i f i = π v i H 0 ( p k i * ) + ( t i + r i ) I π * i f i π
    h = H 2 ( m | | s ) ,
    c i = H 1 ( h , Y 1 , , Y n , A 1 , , A n ) i = 1 , i π n c i i f i = π t i + r i i f i π
    d i = ( v i + t i ) c i s k i * i f i = π v i , i f i π
  • The ring signature is given as σ * = ( I π * , c 1 , c 2 , , c π * , , d 1 , d 2 , , d π * , , d n ) .
Step 6, forgery: At last, the adversary A provides the signer p k i * with a signature with different information m * . This same result can be obtained by the challenger R , while both signatures σ and σ * are valid: σ = ( I π , c 1 , c 2 , , c π , , d 1 , d 2 , , d π , , d n ) , σ * = ( I π * , c 1 , c 2 , , c π * , , d 1 , d 2 , , d π * , , d n ) .
The challenger R returns the value corresponding to the private key a = s k π .
Hence, the adversary A for the instantiation ( P , a P ) can be found for a = s k π , which means that the ECDLP is solved. □
Assuming that A can forge valid ring signatures with a non-negligible probability, there exists an algorithm R that addresses the ECDLP in polynomial time. However, the ECDLP is known to be hard, so the probability of forging the ring signatures in our scheme will be negligible with a random oracle model. For the ring signature σ = ( I π , c 1 , c 2 , , c π , , d 1 , d 2 , , d π , , d n ) , the adversary needs to obtain the signer’s private key in the computation even if the adversary randomly selects v i , t i , r i to forge Y i , A i , Y π , A π , and d π . In the proposed scheme, the user’s public and private keys are calculated from the system’s master key pair, which is jointly generated by the authorized user group according to the distributed key-generation algorithm and is not issued by the trusted third party. Therefore, there is no third-party attack, so the user’s public and private keys are safe. Without knowing the key, it is infeasible to compute the key image I π = s k π H 0 ( p k π ) , so an attacker cannot create the signature σ . Therefore, the scheme in this paper is unforgeable.

5.3. Unconditional Anonymity

Theorem 2.
In the signature scheme proposed in this paper, the signer has unconditional anonymity, i.e., for any algorithm T , any participant ensemble L = p k 1 , p k 2 , , p k n , and any p k π L , the probability P r [ p k = p k ] is always 1 2 , where the signer of π creates a ring signature: σ = ( I π , c 1 , c 2 , , c π , , d 1 , d 2 , , d π , , d n ) .
Proof. 
Step 1: The challenger R computes the system parameters and gives them to the adversary A .
Step 2: The adversary A performs polynomially restricted ring signature queries adaptively.
Step 3: The adversary A outputs a message m, two different public keys p k 1 , p k 2 selected from the set of public keys L consisting of authorized users in the challenge phase, and delivers all of this information to R . Next, R randomly chooses one of the two public keys to generate the ring signature and transmits the ring signature σ = ( m , L , s k u ) to the adversary A .
Step 4: The adversary A performs polynomially restricted ring signature queries adaptively.
Step 5: Finally, the adversary A gives a public key p k { 0 , 1 } .
Step 6: The adversary A succeeds in this game if and only if p k = p k .
The output signature cannot be seen by any third party until the signer has voluntarily disclosed all information himself/herself. In the ring signature generation, the signer computes the Y i and A i values needed to obtain c i and d i by randomly picking the corresponding t i , v i , r i Z q * and also obtains the private key by randomly choosing x i Z q * and computing s k i = H 2 ( x i · D i ) Z q * . Therefore, the ring signature σ is uniformly distributed in G. The chance that a non-member can guess the real signer is at most 1 / ( n + 1 ) , and the chance that a member of the ring group can guess the real signer is at most 1 / n , so the ring signature scheme meets unconditional anonymity. □

6. Performance Evaluation

In this section, the computational efficiency of the secure ring signature scheme based on distributed key generation proposed in this paper is analyzed. To achieve a credible security level, we adopted the experiment that has been performed for the computation evaluation in [25]. The experimental environment was: an i58500 C P U @3.00 G H z , 8 G B R A M on an HP desktop, based on the Windows 10 operating system, under the Eclipse development environment, using JAVA Version 1.8.0 and JPBC Version 2.0.0 for the implementation, which uses the library Type A class curves to construct symmetric prime-order bilinear groups and performs Type A pairing on the super-singular elliptic curve E. The equation y 2 x 3 + x mod p defines E, where p 3 mod 4, the embedding degree is two, and the order of G 1 is q. The order of the group is 512 bit, and the order of the Galawa domain is 160 bit. The signatures of our scheme in the cryptographic operations can be found in Table 2. We define the execution time of some notations of the cryptography operations in milliseconds (ms) in Table 3.
In our proposed scheme, the user signature requires the ECC-based scalar multiplication operation, a hash operation mapping to points on elliptic curves, a multiplication operation, and a one-way hash operation mapping to a finite field of prime numbers, with the last one having negligible computational overhead. Therefore, the computational overhead of generating a signature is:
T S i g n = ( 4 n 2 ) T S M E + ( 2 n 1 ) T H P + T M
The signature verification process of this program mainly requires the ECC-based scalar multiplication operation. Thus, the computational cost is:
T V e r i f y = 4 n T S M E
The signature communication cost is ( 2 n + 1 ) L , where L is the bit length of the group G 1 , based on the signature-generation phase of our scheme. This shows that the signature length increases linearly with the number of users.
To conclude, the time consumption of the three different ring signature schemes in the signature-generation and signature-verification steps is summarized in Table 4. It was observed that our scheme took less time than the other schemes, both in the signature-generation phase and the signature-verification phase. This indicates that our signature scheme possesses higher signing and verification efficiency.

7. Conclusions

To address the privacy leakage problem faced by users in blockchain systems, this paper proposes a ring signature scheme suitable for blockchain. The design of the scheme is based on the elliptic curve cryptography and distributed key generation ideas. First of all, by generating the system master key through the DKG, the risk of key leakage when a trusted authorizer (TA) is attacked can be effectively reduced. Furthermore, the security analysis of the ring signature showed that the scheme enhances the unforgeability and anonymity of the signature. Under the same security parameter length, the elliptic-curve-based ring signature design is more secure than the traditional bilinear pairing design. Finally, by comparing with related signature schemes, our scheme had a shorter signature generation and verification time and higher efficiency. In view of the problem of the efficiency and communication overhead of the scheme increasing with the increase of the users, we will study the aggregation scheme of the ring signature in the future to improve the verification and communication efficiency.

Author Contributions

Conceptualization, C.P. and W.T.; Writing—original draft, L.W.; Supervision, C.P. and W.T.; Project administration, C.P. All authors have read and agreed to the published version of the manuscript.

Funding

This work was supported by the following projects: The National Key Research and Development Program of China (No. 2022YFB2701400), the National Natural Science Foundation of China (No. 62272124, No. 62361010), the Research Project of Guizhou University for Talent Introduction (No. [2020]61), the Cultivation Project of Guizhou University (No. [2019]56), and the Open Fund of Key Laboratory of Advanced Manufacturing Technology, Ministry of Education (GZUAMT2021KF[01]).

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. Nakamoto, S. Bitcoin: A Peer-to-Peer Electronic Cash System. Decentralized Business Review. 2008, p. 21260. Available online: https://bitcoin.org/en/bitcoin-paper (accessed on 5 August 2023).
  2. Kano, Y.; Nakajima, T. A novel approach to solve a mining work centralization problem in blockchain technologies. Int. J. Pervasive Comput. Commun. 2018, 14, 15–32. [Google Scholar] [CrossRef]
  3. Buterin, V. A next-generation smart contract and decentralized application platform. White Pap. 2014, 3, 1–2. [Google Scholar]
  4. Schollmeier, R. A definition of peer-to-peer networking for the classification of peer-to-peer architectures and applications. In Proceedings of the First International Conference on Peer-to-Peer Computing, Linköping, Sweden, 27–29 August 2001; pp. 101–102. [Google Scholar]
  5. DeGroot, M.H. Reaching a consensus. J. Am. Stat. Assoc. 1974, 69, 118–121. [Google Scholar] [CrossRef]
  6. Yuan, Y.; Wang, F.Y. Blockchain: The state of the art and future trends. Acta Autom. Sin. 2016, 42, 481–494. [Google Scholar]
  7. Burniske, C.; White, A. Bitcoin: Ringing the Bell for a New Asset Class. Ark Invest (January 2017). 2017. Available online: https://research.ark-invest.com/hubfs/1_Download_Files_ARK-Invest/White_Papers/Bitcoin-Ringing-The-Bell-For-A-New-Asset-Class.pdf (accessed on 5 August 2023).
  8. Agbo, C.C.; Mahmoud, Q.H.; Eklund, J.M. Blockchain technology in healthcare: A systematic review. Healthcare 2019, 7, 56. [Google Scholar] [CrossRef] [PubMed]
  9. Wang, Q.; Su, M. Integrating blockchain technology into the energy sector—from theory of blockchain to research and application of energy blockchain. Comput. Sci. Rev. 2020, 37, 100275. [Google Scholar] [CrossRef]
  10. Ron, D.; Shamir, A. Quantitative analysis of the full bitcoin transaction graph. In Proceedings of the Financial Cryptography and Data Security: 17th International Conference, FC 2013, Okinawa, Japan, 1–5 April 2013; pp. 6–24. [Google Scholar]
  11. Fleder, M.; Kester, M.S.; Pillai, S. Bitcoin transaction graph analysis. arXiv 2015, arXiv:1502.01657. [Google Scholar]
  12. Rivest, R.L.; Shamir, A.; Tauman, Y. How to leak a secret. In Proceedings of the Advances in Cryptology—ASIACRYPT 2001: 7th International Conference on the Theory and Application of Cryptology and Information Security, Gold Coast, Australia, 9–13 December 2001; pp. 552–565. [Google Scholar]
  13. Chaum, D.; Van Heyst, E. Group signatures. In Proceedings of the Advances in Cryptology—EUROCRYPT’91: Workshop on the Theory and Application of Cryptographic Techniques, Brighton, UK, 8–11 April 1991; pp. 257–265. [Google Scholar]
  14. Shamir, A. How to share a secret. Commun. ACM 1979, 22, 612–613. [Google Scholar] [CrossRef]
  15. Feldman, P. A practical scheme for non-interactive verifiable secret sharing. In Proceedings of the 28th Annual Symposium on Foundations of Computer Science, Washington, DC, USA, 12–14 October 1987; pp. 427–438. [Google Scholar]
  16. Bonneau, J.; Narayanan, A.; Miller, A.; Clark, J.; Kroll, J.A.; Felten, E.W. Mixcoin: Anonymity for bitcoin with accountable mixes. In Proceedings of the Financial Cryptography and Data Security: 18th International Conference, FC 2014, Christ Church, Barbados, 3–7 March 2014; pp. 486–504. [Google Scholar]
  17. Valenta, L.; Rowan, B. Blindcoin: Blinded, accountable mixes for bitcoin. In Proceedings of the Financial Cryptography and Data Security: FC 2015 International Workshops, BITCOIN, WAHC, and Wearable, San Juan, Puerto Rico, 30 January 2015; pp. 112–126. [Google Scholar]
  18. Ziegeldorf, J.H.; Matzutt, R.; Henze, M.; Grossmann, F.; Wehrle, K. Secure and anonymous decentralized Bitcoin mixing. Future Gener. Comput. Syst. 2018, 80, 448–466. [Google Scholar] [CrossRef]
  19. Goldwasser, S.; Micali, S.; Rackoff, C. The knowledge complexity of interactive proof-systems. In Providing Sound Foundations for Cryptography: On the Work of Shafi Goldwasser and Silvio Micali; ACM: New York, NY, USA, 2019; pp. 203–225. [Google Scholar]
  20. Li, B.; Wang, Y. RZKPB: A privacy-preserving blockchain-based fair transaction method for sharing economy. In Proceedings of the 2018 17th IEEE International Conference on Trust, Security and Privacy in Computing and Communications/12th IEEE International Conference on Big Data Science and Engineering (TrustCom/BigDataSE), New York, NY, USA, 1–3 August 2018; pp. 1164–1169. [Google Scholar]
  21. Haines, T.; Boyen, X. Votor: Conceptually simple remote voting against tiny tyrants. In Proceedings of the Australasian Computer Science Week Multiconference, Canberra, Australia, 2–5 February 2016; pp. 1–13. [Google Scholar]
  22. Patil, K.; Wasnik, C.T. An ID-based block ring signature system for secret sharing of data. In Proceedings of the 2017 International Conference on Computer Communication and Informatics (ICCCI), Coimbatore, India, 5–7 January 2017; pp. 1–5. [Google Scholar]
  23. Li, X.; Mei, Y.; Gong, J.; Xiang, F.; Sun, Z. A blockchain privacy protection scheme based on ring signature. IEEE Access 2020, 8, 76765–76772. [Google Scholar] [CrossRef]
  24. Wang, Z.; Fan, J. Flexible threshold ring signature in chronological order for privacy protection in edge computing. IEEE Trans. Cloud Comput. 2020, 10, 1253–1261. [Google Scholar] [CrossRef]
  25. Lai, C.; Ma, Z.; Guo, R.; Zheng, D. Secure medical data sharing scheme based on traceable ring signature and blockchain. Peer-Netw. Appl. 2022, 15, 1562–1576. [Google Scholar] [CrossRef]
  26. Samra, B.; Fouzi, S. New efficient certificateless scheme-based conditional privacy preservation authentication for applications in VANET. Veh. Commun. 2022, 34, 100414. [Google Scholar] [CrossRef]
  27. Cheng, X.; Guo, R.; Cheng, Y. Construction of efficient ring signature scheme with revocation of anonymity. Commun. Eng. Des. Mag. 2015, 36, 857–861. [Google Scholar]
  28. Mao, M.; Zhou, Z.X. A forward-secure anonymity signature scheme based on ring signature idea. Microcomput. Inf. 2010, 26, 62–63. [Google Scholar]
Figure 1. System model.
Figure 1. System model.
Entropy 25 01334 g001
Table 1. Comparison of ring signature schemes.
Table 1. Comparison of ring signature schemes.
SchemeScenarioTechniquesAdvantagesDrawbacks
 [21]VoteBilinear
Hash
Anonymous-
channel
Linkable
Practical
Relies on trusted center
Lack of efficiency analysis
 [22]Cloud computingBilinear
Hash
ID-based
Simplified management
High efficiency
Relies on trusted center
Does not support key
revocation and update
 [23]BlockchainECC
Hash
Improves unforgeability
Improves anonymity
Lack of efficiency analysis
Relies on trusted center
 [24]Edge computingBilinear
Hash
Threshold
Flexible
Renewable
Relies on trusted center
Lack of efficiency comparison
of related schemes
 [25]Medical sharingBilinear
Hash
DKG
Traceable
Controllable
High computational cost
 [26]VANETBilinear
Hash
ECC
Traceable
High efficiency
Relies on trusted center
Table 2. Notations of cryptography operation.
Table 2. Notations of cryptography operation.
NotationCrypto-Operation
S M E ECC-based scalar multiplication operation.
A E ECC-based point addition operation.
H P Map-to-point operation.
HOne-way hash function operation, which is negligible.
MMultiplication operation.
PBilinear pair operation.
EExponential calculation time.
Table 3. Cryptography operations’ time in milliseconds.
Table 3. Cryptography operations’ time in milliseconds.
Cryptography Operation T SM E T A E T H P T M T P T E
Execution time (ms) 1.70900.00754.4060.0425.0718.31
Table 4. Efficiency analysis of ring signature algorithms.
Table 4. Efficiency analysis of ring signature algorithms.
AlgorithmSignature GenerationSignature Verification
[27] 6 n T P + 4 n T E n T E + 2 n T P
[28] ( 2 n 1 ) T M + 4 n T E 2 n T E + 2 T P
[25] ( 4 n 1 ) T M + ( 4 n + 6 ) T E n T E + 2 T P
Ours ( 4 n 2 ) T S M E + ( 2 n 1 ) T H P + T M 4 n T S M E
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Wang, L.; Peng, C.; Tan, W. Secure Ring Signature Scheme for Privacy-Preserving Blockchain. Entropy 2023, 25, 1334. https://doi.org/10.3390/e25091334

AMA Style

Wang L, Peng C, Tan W. Secure Ring Signature Scheme for Privacy-Preserving Blockchain. Entropy. 2023; 25(9):1334. https://doi.org/10.3390/e25091334

Chicago/Turabian Style

Wang, Lin, Changgen Peng, and Weijie Tan. 2023. "Secure Ring Signature Scheme for Privacy-Preserving Blockchain" Entropy 25, no. 9: 1334. https://doi.org/10.3390/e25091334

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