1. Introduction
Recently, the integration of blockchain and the industrial Internet of Things (IIoT) has emerged as a novel trend and area of research within industrial applications [
1,
2]. However, smart objects attached to the IIoT interact with humans and also process their private data [
3,
4]. Moreover, information is collected in large quantities and disclosed to the Internet without the consent of specific persons. In data storage, privacy disclosure stands out as one of the most serious threats within the IIoT [
5,
6].
In 2008, Nakamoto proposed blockchain for the first time [
7]. However, with the in-depth study of blockchain, more and more people take a skeptical attitude towards blockchain’s anonymity in bitcoin trading [
8,
9,
10,
11]. In 2016, Zerocash was designed, which satisfies anonymity [
12]. Saberhagen et al. designed the CryptoNote protocol [
13]. Afterwards, Monero was proposed based on this CryptoNote protocol by using a ring signature to achieve anonymity. Thus, the ring signature was proposed [
14]. Then, Liu et al. proposed a new kind of ring signature scheme, which was called the linkable ring signature (LRS) [
15]. In LRS, not only does the signer’s identity in a ring signature remain anonymous but two ring signatures that are signed by the same signer can also be linked [
16]. Considering its advantages, the LRS scheme is suitable in many different practical applications, such as e-voting, e-money, supply chains, and healthcare [
17,
18,
19]. However, it still faces a problem, which cannot be ignored in Monero and Zerocash [
20]. More specifically, in 2018, Fedorov clearly pointed out the security risks of quantum computing in blockchain [
21].
Fortunately, lattice-based cryptography has been proven to have anti-quantum security [
22]. Afterwards, Ajtai provided an innovative algorithm for constructing random short lattices [
23,
24]. Gentry et al. put forward a trapdoor function to construct a cryptographic algorithm [
25]. Subsequently, some lattice-based signature schemes were proposed based on the bonsai tree algorithm [
26]. In 2010, Agrawal et al. proposed an efficient lattice basis delegation algorithm [
27]. By using this algorithm, Wang proposed an identity-based ring signature scheme [
28]. Lyubashevsky provided the rejection sampling lemma for constructing lattice-based signatures without using the hash-and-sign methodology. This signature scheme is provably secure based on the worst-case hardness of the 
-SIVP problem [
29]. Then, a new ring signature scheme on lattice was proposed, and its security was proven under the random oracle model [
30].
Facing quantum computing attacks and privacy disclosure issues in blockchain-enabled IIoT, we propose a new LRS scheme and introduce it into blockchain to design a new post-quantum blockchain (PQB) with privacy protection for IIoT.
The rest of this study is organized as follows. In 
Section 2, some definitions and lemmas of the lattice theories are presented. In 
Section 3, we propose a secure LRS scheme based on lattice. A security proof is presented in 
Section 4. In 
Section 5, this LRS scheme is introduced into blockchain; we construct a privacy protection scheme for blockchain in IIoT and present a performance analysis and efficiency comparison of our scheme with other schemes. In 
Section 6, conclusions are provided.
  3. Lattice-Based LRS Scheme
  3.1. Formal Definition
Suppose that the number of users in the ring is k, and  represents all users in the ring.
Definition 4.  (Linkable ring signature): The linkable ring signature scheme is usually composed of five PPT algorithms as follows.
 Setup (): Select a security parameter n. This Setup algorithm outputs public parameters PP and the master key Mk.
KeyGen: Input public parameters, the KeyGen algorithm can output the secret key pair (pk, sk) and a corresponding public key I. So, we can obtain a public key set .
Ringsign : Input public key set R of the ring, the signer’s key pair  and the message . Run the Ringsign algorithm to output signature e of message M.
Ringverify (e, R, M): Input the public key set R, message M and ring signature e; if the signature e is reasonable, the Ringverify algorithm accepts or refuses.
Link : Take a set  and two signatures  and . Output “linked” or “independent”.
  3.2. Security Model
Generally speaking, the linkable ring signature scheme should satisfy three important security properties, namely anonymity, unforgeability and linkability.
Anonymity. The anonymity is defined by a game between adversary  with a challenger  as follows.
KeyGen (n). Input a security parameter n, challenger  runs KeyGen algorithm to output a private key sk and a public key pk for each game participant, and there are k participants, . So, challenger  obtains the public and private key pairs set .
Queries. Set the public key set . Suppose adversary  selects a participant I with his public key . Challenger  uses participant I’s public and private key pair  and runs Ringsign algorithm to output the signature ; then, he returns  to adversary .
Challenge. Adversary  submits a message , ring  and two other participants . The challenger  chooses a bit  and runs Ringsign algorithm to output signature , then returns  to adversary .
Verify. If adversary  outputs a guess  and , adversary  wins this game.
In this game, suppose that the probability of opponent a winning the game is , and the advantage of adversary  is . If for every probabilistic polynomial-time adversary , the advantage  is negligible, the ring signature scheme is anonymous.
Unforgeability. Unforgeability is defined by using the game between an adversary  with a challenger  as follows.
Setup. The challenger  runs Setup(n) algorithm to generate public parameters PP and MK, and sends PP to the adversary . Then, adversary  issues k queries on identity .
Queries. Set the public key set . Suppose adversary  selects a participant I with his public key . Challenger  uses participant I’s public and private key pair . Adversary  submits a ring , private key  and message msg. The challenger  runs Ringsign algorithm to output signature , then returns  to adversary .
Forgery. The adversary  outputs ,  wins this game if:
- (1)
 Verify  = accept.
- (2)
 Adversary  does not have the private key of the user in .
- (3)
  is not submitted to sign query.
Linkability. For two different messages  and , the signer can obtain two different signatures  and . There exists a PPT algorithm  which verifies the probability of the same signer is not negligible. On the contrary, if the two different signatures  and  are signed by different signers, the PPT algorithm  verifies that the probability of the same signer is negligible. Thus, the signature scheme is linkable.
  3.3. Details of Our Scheme
Here, a security parameter , a prime , , and  is a collision-resistant hash function. . Suppose that there are k users in the ring . Our linkable ring signature scheme contains the five PPT algorithms as follows.
Setup 
            : Select and input the security parameter .
- (1)
 Based on Lemma 2, sender runs  and obtain a random matrix  and a corresponding short basis .  is sender’s master key .
- (2)
 For each user , the hash function takes as input ID, outputs  and message . Thus, the public parameter .
KeyGen 
            : For each member, select each ID and input the Gaussian parameter , MK, and PP.
Based on Lemma 3, sender runs  and obtains his private key . Thus,  is a basis of , and his public key .
RingSign : Generate a signature by the following steps.
- (1)
 Randomly select a vector , compute .
- (2)
 Set  and , select , then select vectors .
- (3)
 
- (4)
 Compute .
- (5)
 Let , if , . If , .
- (6)
 Output the ring signature .
Verify : Verifier can verify the correctness of this signature  as follows.
- (1)
 For each  and , verify .
- (2)
 Verify .
If the above conditions are satisfied, the verifier runs the following Link algorithm. Otherwise, this signature e will be rejected.
Link (I,e): There is a set I that these  values are stored in, verifier checks if  has been used in past signatures.
For two signatures  and , if , return 1 (linked) to indicate these two signatures are signed by the same user. If not, return 0 (unlinked).
Correctness. Suppose that there is a set l, and 
, such that
 Such that . Therefore, this linkable ring signature scheme satisfies correctness.
  4. Security Analysis
  4.1. Anonymity
Theorem 1.  Our proposed ring signature scheme satisfies anonymity.
 Proof.  Suppose that there is an adversary  attacking this proposed ring signature scheme based on the anonymity’s definition. □
 KeyGen. At first, challenger  selects k users to obtain an ID set . Then, for each user ID, input a security parameter n; challenger  runs  algorithm and generates a uniformly random matrix  with a corresponding short basis . At last, challenger  runs  to obtain the private key . Similarly, a corresponding public key is . There are k participants , and challenger  can obtain the public–private key pairs set .
Queries. Challenger  answers the hash queries, private key queries and signing queries of adversary . Suppose adversary  selects a participant with his ID. Challenger  returns this ID’s public and private key pair  and runs Ringsign algorithm to output signature , then returns this signature  to adversary .
Challenge. Adversary  submits a message , ring  and two other participants . The challenger  chooses a bit  and runs Ringsign algorithm to output signature , then he returns this signature  to adversary .
Guess. Adversary  outputs a guess  and verify .
For the signature, if , . If , . According to Lemma 4,  is not distinguishable from Gauss distribution . Similarly,  is also not distinguishable from . We can see that, because these two signatures, e and , have the same distribution of the domain, they are computationally indistinguishable.
In summary, under the simulated environment, the adversary  in this anonymity game advantage  is negligible in guessing the right identity.
  4.2. Unforgeability
Theorem 2.  Under the lattice SIS problem assumption, the proposed linkable ring signature scheme is existentially unforgeable.
 Proof.  Suppose that A is regarded as a PPT adversary. A is able to successfully attack this proposed scheme and forge a new signature. We use  to denote the probability of success. Then, A is a subroutine, which can solve the lattice short integer solution problem via non-negligible probability. Thus, a PPT algorithm T is constructed, which is realized through interaction with the adversary A as follows. □
 Setup. The challenger  selects a user set  and a user . And  runs the Setup  algorithm to obtain PP and MK, and sends PP to . Then,  issues  queries on identity .
KeyGen. For , challenger  does as follow.
- (1)
 According to Lemma 2, challenger  uses  to obtain a random matrix  with a corresponding short basis .  is sender’s master key .
- (2)
 For each user , the hash function outputs . For message .  obtains the public parameter . Then,  transmits PP and U to .
- (3)
 Run  to generate a secret key  which is a basis of . Correspondingly, .
Queries. Challenger  answers the following hash queries, private key queries and signing queries from adversary .
- (1)
 Hash queries. Adversary  chooses a user’s . Challenger  checks the list . If adversary  submitted this query before, it will return the same result. Otherwise, Challenger  runs the algorithm , returns to adversary  and stores it in .
- (2)
 Private key queries. Adversary  selects a user  from U. Challenger  checks the list  and finds (). Then, challenger  runs  to return his private key  to adversary  and store it in .
- (3)
 Signing queries. Adversary  submits a message M, a ring  and . Challenger  runs Ringsign algorithm to output ring signature , then return  to adversary .
Forgery. Adversary  submits a message , a ring , a user , adversary  can forge a signature .  wins the game if:
- (i)
 Verify  is accepted.
- (ii)
 Adversary  does not have the private key of the user  in .
- (iii)
  is not submitted to the signing query.
According to our signature scheme, it is shown that if 
 is a legal signature of ring 
, we have
Because challenger 
 can use private key queries to obtain the private key 
 of 
,
 is also a legal signature of ring 
, so we have
Through the analysis of Equations (3) and (4), we have
So, 
; then, we have
Let 
, so 
, such that
Consequently, it means that the result  is a non-zero solution to the lattice SIS problem.
At last, according to the preimage min-entropy property, the probability of the non-zero solution is not less than . The probability that adversary  successfully forges a legal signature is , and . Therefore, the non-zero solution to the lattice  problem with a negligible probability .
As shown in the calculation and analysis, the probability that adversary  forges a legal and valid signature is negligible. Under the lattice SIS problem assumption, the proposed linkable ring signature scheme satisfies unforgeability. Thus, the proof of this theorem is completed.
  4.3. Linkability
Theorem 3.  The proposed ring signature scheme is linkable. Formally, adversary  cannot produce  valid signatures  with key images  for any .
 Proof.  Suppose that, for the sake of contradiction, adversary A can generate  valid signatures. Since the secret key set , there is at least one  which does not belong to the set I. Without a loss of generality, considering this event happened in , which is a valid signature, we have . Because  does not belong to the set I, its secret key  does not belong to secret key set S. Therefore,  for  and it contradicts previous assumptions, in which adversary A can generate  valid signatures. Consequently, our ring signature scheme is linkable. □
   5. LRS-Based Blockchain for IIoT
  5.1. Stealth Address
As described in CryptoNote, the stealth address technology is used in all transactions to provide privacy protection for the receiver. For instance, Alice and Bob have a transaction to make. In this transaction, Alice needs to pay her cryptocurrency to Bob. At first, Alice generates a one-time address for Bob and publishes it as a broadcast in the distributed network. Subsequently, Bob has to check each transaction by using his private key to identify which transaction belongs to him. Subsequently, he recovers this secret key corresponding to the destination address.
Through using a stealth address, the connection of a blockchain transaction’s output with the recipient’s wallet address is broken. More specifically, the actual destination address of a transaction is hidden with the stealth address in CryptoNote. For the sake of protecting the privacy of receivers in blockchain, we also produce stealth addresses as follows, which will be used as the verifying and signing key pairs in the PQB with privacy protection based on lattice.
  5.2. Blockchain with Privacy Protection
According to the framework of CryptoNote, in this subsection, we introduce our LRS scheme into blockchain to design a secure PQB scheme with privacy protection for IIoT. Suppose that Alice wants to transfer her cryptocurrency to Bob from her address of a secret key pair 
. As shown in 
Figure 1, we describe our scheme through the implementation of a transaction as follows.
Key generation. Alice and Bob run the KeyGen algorithm to obtain her/his secret key pairs  and , respectively. It should be noted that Alice’s secret key pair  address has been used for receiving the cryptocurrency in the last transaction.
Key image. Bob randomly selects a string . Then, he calculates  and sends this hash value to Alice. Then, Alice calculates  and key image .
Transaction generation. Alice specifies 
n−1 foreign outputs with the same amount as her outputs and mixes all of these foreign outputs without other people’s participation. All previous transactions with outputs are added to the hash function. Then, this hash value 
h is signed by running the 
Ringsign algorithm, which generates a ring signature 
. Afterwards, as shown in 
Figure 2, she inputs these outputs, 
Y, key image 
X, ring signature 
e and generates a new transaction 
tx.
 Transaction verification. By running the Link algorithm, the miner nodes verify whether the cryptocurrency in the transaction has been consumed to prevent a double spending attack. Subsequently, miner nodes run the Verify algorithm to verify whether the signature of this transaction is correct. If it is correct, this transaction will be encapsulated in a new block. Otherwise, this transaction will be discarded.
Transaction confirmation. Bob checks this transaction. Afterwards, he extracts the destination key from this transaction and calculates . If , this transaction is the one which Alice sends to Bob. Thus, Bob accepts this transaction, and he records  with  and  in his wallet. When he wants to spend this coin with the destination address , he can use the corresponding one-time key pair  to generate a new transaction as in the above steps.
Different from traditional blockchain, for each ring signature , it can be checked by using the public key set in our proposed scheme instead of a unique public key. Before the owner uses the same key pair to generate a second signature, the identity of the signer cannot be distinguished from other users in the public key set. More specifically, by using our LRS scheme in PQB for IIoT, the signer’s identity in a ring signature remains anonymous, and two ring signatures, which are signed by the same signer, can be linked. Therefore, this new PQB not only protects the user’s privacy information but also resists the double spending attack. Additionally, as discussed above, the LRS scheme used in PQB satisfies unforgeability. With these above security advantages, the proposed PQB scheme enhances data security for IIoT.
  5.3. Security and Comparison
As previously highlighted, the lattice-based cryptography algorithm represents a unique mathematical structural model. It has been rigorously demonstrated to possess robust resistance against quantum computing attacks, positioning it as an indispensable component in the future landscape of information security. Consequently, in line with the aforementioned considerations, we opted to employ lattice-based cryptography as the foundational framework for constructing our linkable ring signature scheme. In this study, our linkable ring signature scheme’s security mainly depends on the intractability of the SIS problem from lattice-based cryptography. And the lattice SIS problem in an average case can be reduced to the SIVP in the worst case, which is often used to construct signature schemes for resisting quantum computing attacks [
40]. Therefore, our scheme has anti-quantum security.
Furthermore, lattice-based cryptography algorithms are matrix and vector operations, and the computation cost largely determines the cryptography algorithm’s efficiency, especially the public key size and signature size. In this subsection, it is assumed that the parameters (
n, m, q, k) are the same in our scheme and other related lattice-based ring signature schemes. The detailed comparison results are shown in 
Table 1. Compared with other schemes, the results show that our public key size and signature size are shorter than those in Refs. [
32,
33,
34,
35]. Therefore, our scheme is efficient, with lower computation costs.
Meanwhile, 
Ttg, 
Tbd, 
Teb, 
Terb, 
Trb, 
Tsp, 
Tgsp, 
Tmul are set to represent the average consumption time of the following algorithms, TrapGen, BasisDel, ExtBasis, ExtRandBasis, RandBasis, SamplePre, GenSamplePre and vector multiplication, respectively. Then, the master key generation time, user key generation time and signature generation time in these above ring signature schemes are compared, respectively, and the time cost comparison results are shown in 
Table 2. Among them, our ring signature scheme only uses the TrapGen algorithm once in the master key generation, and the user key generation adopts the BasisDel algorithm 
 times. Using the rejection sampling lemma, the main steps of generating a ring signature adopt simple vector multiplication. Through this comprehensive comparison, it shows that in the transaction signature process, our scheme’s time cost is less than that in other schemes.
Furthermore, based on the parameters of 80-bit and 192-bit security levels in Ref. [
41], and in combination with the parameter requirements of the scheme in our study, the parameters used in the experimental testing are set as follows. We consider two security level of 80-bit and 192-bit, and the parameters polynomial degree n and modulus q are set as n = 256; q = 2
10, m = 3853 and n = 512; q = 2
10, m = 7706, respectively. Other reasonable parameters include g = 256, k = 10, 
. Under two security levels of 80-bit and 192-bit, the public key size, signature size and private key of our proposed scheme and those in Refs. [
32,
33,
34,
35] are compared. The simulation results are shown in 
Figure 3, where (a) and (b) represent the 80-bit security level and 192-bit security level, respectively. As shown in 
Figure 3, the public key size and signature size of the transaction in our scheme are 362.42 KB and 14.11 KB for 80-bit security, 1444.87 KB and 28.22 KB for 192-bit security. Under the same security levels, our scheme achieves a significant reduction in public key size and signature size compared to Refs. [
32,
33,
35]. In terms of the generated private key size, since the private key sizes in Refs. [
32,
35] are 4m
2log
q, according to the parameter settings of 80-bit and 192-bit security levels, it is obvious that their sizes are much larger than other schemes. Ref. [
33]’s generated private key sizes at 80-bit and 192-bit security levels are 458.74 KB and 1834.97 KB, respectively. Ref. [
34]’s private key sizes are 0.38 KB and 0.76 KB at 80-bit and 192-bit security levels, respectively. And our scheme’s private key sizes are 0.09 KB for 80-bit security and 0.19 KB for 192-bits security, which are significantly smaller than those in other schemes. After comprehensive comparisons, our LRS scheme for blockchain has lower computational overhead, reduces storage costs, and achieves higher efficiency.