Next Article in Journal
Control of Network Bursting in a Model Spiking Network Supplied with Memristor—Implemented Plasticity
Previous Article in Journal
Quantitative Stability of Optimization Problems with Stochastic Constraints
Previous Article in Special Issue
Efficient Conditional Privacy-Preserving Authentication Scheme for Safety Warning System in Edge-Assisted Internet of Things
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Self-C2AD: Enhancing CA Auditing in IoT with Self-Enforcement Based on an SM2 Signature Algorithm

1
School of Mechatronical Engineering, Beijing Institute of Technology, Beijing 100081, China
2
School of Integrated Circuits and Electronics, Beijing Institute of Technology, Beijing 100081, China
*
Authors to whom correspondence should be addressed.
Mathematics 2023, 11(18), 3887; https://doi.org/10.3390/math11183887
Submission received: 11 July 2023 / Revised: 7 September 2023 / Accepted: 7 September 2023 / Published: 12 September 2023
(This article belongs to the Special Issue New Advances in Coding Theory and Cryptography)

Abstract

:
Malicious certificate authorities (CAs) pose a significant threat to the security of the Internet of Things (IoT). Existing CA auditing schemes primarily rely on passive detection and public data collection, lacking real-time and comprehensive monitoring. In this paper, we propose a novel double-authentication preventing signature scheme based on an SM2 algorithm, referred to as Dap-SM2. We further enhance its functionality by introducing Self-C2AD, a CA auditing mechanism with self-enforcement. In our proposed mechanism, any malicious CA that generates two certificates with different descriptions (such as public key and basic information) for the same IoT device will immediately lose its private key. To ensure the security of our proposed scheme, we provide a detailed security analysis of Dap-SM2. The analysis demonstrates that our Self-C2AD mechanism meets the necessary security requirements, offering robust protection against malicious CAs. Additionally, we conduct an efficiency evaluation and present experimental data to illustrate the promising potential of our construction for future IoT applications. By introducing the Dap-SM2 scheme and the Self-C2AD mechanism, we address the critical issue of malicious CAs in the IoT domain. Our approach provides real-time and comprehensive auditing capabilities, surpassing the limitations of existing schemes. The security analysis confirms the effectiveness of Dap-SM2, while the efficiency evaluation and experimental data demonstrate its suitability for practical IoT applications. In summary, our work presents a novel solution to combat the threat of malicious CAs in the IoT context. The Dap-SM2 scheme, coupled with the Self-C2AD mechanism, offers enhanced security and real-time auditing capabilities. The security analysis validates the robustness of our approach, while the efficiency evaluation and experimental data showcase its potential for future IoT deployments.

1. Introduction

With the advent of the 6G era, the Internet of Things (IoT) has been applied in diverse fields, such as healthcare, agriculture, smart homes, etc., connecting large numbers of devices like mobile phones, wearables and even household appliances [1,2]. In this context, it is vital to ensure the validity of accessing devices. Most existing IoT authentication schemes depend on certificates in the public key infrastructure (PKI) system [3,4], which mainly consists of three components: a certification authority (CA), a registration authority (RA), and a database (DB). In this system, the RA functions as the verifier of the devices’ identities, the CA is responsible for the issue of certificates for valid devices, and the DB acts as a manager to save additional items about certificates.
Therefore, the CA serves as the access controller on the IoT. As shown in Figure 1, when a smart device (SDV) wants to join in the IoT, it first sends an application to the RA and CA, then the RA verifies its validity and gives feedback to the CA; the CA confirms the feedback and generates a certificate for this SDV. In this case, the certificate is the unique credential to access the IoT. When a user wants to use an SDV, they will first check its certificate to confirm its validity before proceeding. Thus, malicious or incorrect CA behaviours will seriously damage the security of the IoT, which mislead users to trust invalid devices, eventually causing leakage of personal privacy. In this context, it is necessary to construct an appropriate mechanism to avoid the above problems.
Existing countermeasures such as certificate transparency [5,6] and others audit CAs by collecting and reporting in public to establish a trust-friendly ecosystem. However, these mechanisms do not operate in real-time and are not comprehensive. On the one hand, the presence of a neglected malicious CA poses a significant latent threat. On the other hand, incorrect CA behaviours cannot be detected immediately, which can also cause privacy leakage in a small range even they will be punished eventually.
Double-authentication preventing signatures (DAPS) [7] are a special type of digital signature scheme for detecting ambiguous signer behaviours; any signers producing signatures on the same address with different domains will face confidence loss. Moreover, this process is incontrovertible, immediate and irreversible. This “self-enforcement” encourages signers to comply with the correct behaviours spontaneously and, at the same time, provides no room for flaws. Combined with the practical context of IoT [8], DAPS represent a good potential choice for the construction of a real-time CA auditing mechanism.
We build upon the foundation of the double-authentication preventing signatures (DAPS) scheme proposed by Poettering et al. [7] and leverage the Chinese SM2 signature algorithm [9] as a key component in our research. Furthermore, we extend the capabilities of the SM2 signature algorithm to develop a real-time CA auditing mechanism specifically designed for the IoT context. The SM2 signature algorithm is a prominent branch of the Chinese SM2 public key cryptographic standard, widely applied in various domains, such as key management systems [10], electronic authentication systems [11], and confidential systems [12,13]. It was initially published by the Chinese State Cryptography Administration Office of the Security Commercial Code Administration in 2010 and later standardized in ISO/IEC 14888-3:2016/DAMD 1 [14] in 2016. Due to its high efficiency and robust security, the SM2 signature algorithm naturally emerges as an excellent choice to serve as the fundamental building block for our CA auditing mechanism.

1.1. Our Contributions

In this paper, we present Dap-SM2, a DAPS derived from the SM2 signature algorithm. Building upon the framework introduced in [15], our proposed scheme offers the advantage of shorter signature lengths. Additionally, leveraging the efficiency of the SM2 signature algorithm, Dap-SM2 exhibits low time consumption in each stage. Moreover, we transform the Dap-SM2 into a CA auditing mechanism with self-enforcement named Self-C2AD. Inherited from the Dap-SM2, it has high efficiency with relatively small address space and provides the security of a certificate of unforgeability and timely key-extractability. Our contributions mainly relate to the following three points:
  • We propose Dap-SM2, a short efficient double-authentication preventing signature based on an SM2 signature algorithm.
  • We provide a security analysis of Dap-SM2, which satisfies the property of existential unforgeability and key-extractability. We also implement it on a PC and provide a detailed efficiency evaluation, whose performance demonstrates that our scheme has good potential for usability.
  • We transform Dap-SM2 into Self-C2AD, a real-time CA auditing mechanism with self-enforcement designed to cope with the complex IoT context. Inherited from the Dap-SM2, our Self-C2AD can provide certificate unforgeability and timely key-extractability.

1.2. Organization of This Paper

Our paper includes seven sections. The rest of this paper is organized as follows: We review the development of double-authentication preventing signatures and some CA auditing schemes in Section 2. In Section 3, we define some notations that will be used later and review understanding of elliptic curves cryptography and the Chinese SM2 signature algorithm. The system model, scheme framework and security definition are described in Section 4. In Section 5, we describe our Dap-SM2 and Self-C2AD in detail, as well as providing details of the correctness and security analysis at the same time. We present the performance analysis in Section 6. Finally, we conclude our work in Section 7.

2. Related Work

As previously mentioned, the double-authentication preventing signatures (DAPS) scheme has significant potential as a solution for CA auditing in the IoT context as it can reveal a signer’s secret key to the public [16,17,18,19]. The concept of DAPS was initially introduced by Poettering and Stebila in the factoring-based setting [7]. They presented a generic construction based on a novel type of trapdoor function with extractability. In a related but weaker primitive approach called accountable assertions (AS), Ruffing, Kate, and Schröder presented a DAPS variant (referred to as RKS) that utilized Merkle trees [20] and chameleon hash functions [21] from the discrete logarithm setting [22]. Bellare, Poettering, and Stebila then proposed an efficient form of DAPS in the factoring-based setting, combining trapdoor identification schemes with an adapted and extended transformation [23,24]. Concurrently, Boneh et al. constructed the first DAPS in a lattice-based setting, extending it to a more general concept called predicate-authentication-preventing signatures (PAPS) [18]. Derler, Ramacher, and Slamanig introduced the first black-box version of DAPS, demonstrating its transformation into N-times-authentication-preventing signatures (NAPS) [25]. Poettering further contributed to this work by constructing a shorter DAPS for small addresses using the Fiat–Shamir transformation [15]. Moreover, the authors proposed a lattice-based double-authentication-preventing ring signature and adapted it to a novel privacy-preserving authentication scheme, creating the potential for security against selected message attacks [26]. Additionally, Derler, Ramacher, and Slamanig overcame the limitation of address space and presented a generic construction of DAPS with constant key and signature sizes, without relying on structured hardness assumptions [27].
Regarding CA auditing mechanisms, previous works, such as [28,29], have been associated with trust decisions from CAs, providing assertions to users about whether a CA can be trusted or not. Safdar, et al. proposed a randomly shifted CA authentication protocol, which employed a trusted third party with public key certificates as a CA for authentication purposes [30]. A public auditing system based on distributed ledgers was proposed in [31] to store the interactions between IoT entities as evidence for investigation when under attack. Projects like certificate transparency and others focus on collecting and auditing public certificates to identify malicious CAs and maintain the integrity of the Internet ecosystem. However, these mechanisms often rely on third-party supervision, which lacks real-time and comprehensive monitoring capabilities. By drawing upon these related works and addressing their limitations, our proposed scheme combines the strengths of DAPS and the SM2 signature algorithm to develop an innovative and real-time CA auditing mechanism specifically tailored for the IoT context.

3. Preliminaries

3.1. Notations

Definitions of notations used in this paper are presented in Table 1.

3.2. Elliptic Curves Cryptography

Neal Koblitz and Victor Miller proposed elliptic curves public-key cryptosystems (ECCs) independently in 1985 [32], which mainly depend on the hardness of the elliptic curve discrete logarithm problem (ECDLP). Compared to the general discrete logarithm problem (DLP) and RSA, it is more difficult to solve the ECDLP. Thus, under the same security level requirements, the ECC has a significantly smaller key than other public-key cryptosystems, which leads it to be more efficient and lightweight.
Here, we give the definition of ECDLP [32].
Definition 1. 
The Elliptic Curve Discrete Logarithm Problem. Given two points Q and P on the group G 1 , to find an integer k Z q * s.t. Q = [ k ] P . The advantage of any PPT adversary A to solve this problem is defined as:
Pr [ A ( P , Q ) = k : k Z q * , Q = [ k ] P ]
If the ECDLP assumption holds, the advantage above is negligible.

3.3. Review of Chinese SM2 Signature Algorithm

We build our scheme based on the Chinese SM2 signature algorithm, which consists of four sub-algorithms: Setup, KeyGen, Sign and Verify. We describe the details below:
Definition 2. 
(The Chinese SM2 Signature Algorithm.)
  • Setup ( 1 λ ) P P : takes 1 λ as input and outputs the set of public parameters P P .
    (1) 
    Choose a finite field F q and generate the elliptic curve equation E : y 2 = x 3 + a x + b mod q satisfies a , b F q .
    (2) 
    Randomly choose G G as a generator, where the order of it is q.
    (3) 
    Output the public parameters set P P = { F q , a , b , q , G } .
  • KeyGen ( P P ) ( p k , s k ) : takes P P as input and outputs the key pair ( p k , s k ) .
    (1) 
    Randomly choose d Z n * as the private key.
    (2) 
    Compute P = [ d ] G as the public key.
    (3) 
    Output the key pair ( P , d ) .
  • Sign ( d , P , m , P P ) σ : takes s k , m as input and out put the signature σ.
    (1) 
    Compute hash value Z = H ( E N T L | | I D | | a | | b | | x G | | y G | | x P | | y P ) , where P = ( x P , y P ) .
    (2) 
    Set M = Z | | m and compute e = H v ( M ) .
    (3) 
    Randomly choose k [ 1 , q 1 ] , and compute R = [ k ] G = ( r x , r y ) .
    (4) 
    Compute r = ( e + r x ) mod q . If r = 0 r + k = q , then return to Sign.3).
    (5) 
    Compute s = ( ( 1 + d ) 1 · ( k r · d ) ) mod q . If s = 0 , then return to Sign.3).
    (6) 
    Output the signature as σ = ( r , s ) .
  • Verify ( σ , m , P , P P ) 1 / 0 : takes the signature, m , P , P P as input and output 1 / 0 which represents “accept” or “invalid”.
    (1) 
    Compute hash value Z = H ( E N T L | | I D | | a | | b | | x G | | y G | | x P | | y P ) , where P = ( x P , y P ) .
    (2) 
    If r Z q * s Z q * , then output 0 and end the algorithm.
    (3) 
    Set M = Z | | m and compute e = H v ( M ) .
    (4) 
    Compute t = ( r + s ) mod q . If t = 0 , output 0 and end the algorithm.
    (5) 
    Compute ( r x , r y ) = [ s ] G + [ t ] P .
    (6) 
    Compute R = ( e + r x ) mod q . If R = r , output 1. Otherwise, output 0.

4. Scheme Framework and Security Definitions

4.1. System Model

We illustrate the IoT authentication system model (Figure 2) in detail. In this model, there are mainly three roles we consider (to simplify the model, we ignore the control centre in the initialization stage). We give definitions below.
  • CA: The CA functions as the authentication centre which is mainly responsible for checking the identity validity of the SDV and issues certificates for it if its identity is valid to access the Internet.
  • SDV: The SDV plays the role of an interface to IoT users. It provides specific functions for users in different scenarios, meeting a variety of needs. There are usually plenty of SDVs in the IoT.
  • User: The user is the one who enjoys the services of the IoT. At the same time, the user verifies the certificates of SDVs before using devices.

4.2. Double-Authentication Preventing Signature

A double-authentication preventing signature (DAPS) scheme consists of four PPT algorithms: ( Setup , KeyGen , Sign , Verify , Extract ). Our Self-C2AD follows this framework [27].
  • p p Setup ( 1 λ ) : is a PPT algorithm, which takes the security parameter λ N as input, and outputs a set of public parameters p p .
  • ( v k , s k ) KeyGen ( p p , A ) : is a PPT algorithm, which takes the public parameters p p and the addresses set as input and outputs key pairs for signers.
  • σ Sign ( p p , s k , M ) : takes input of the public parameters p p , the signer’s private key s k , and a message M (where M = a | | p , a , p represents the address and content respectively). It returns a signature σ as output.
  • 1 / 0 Verify ( p p , σ , M , v k ) : takes input of the public parameters p p , the received signature from signer σ , the signed message M and the public key v k . The algorithm outputs 1 if the σ is valid, otherwise it outputs 0.
  • / s k Extract ( v k , M 1 , M 2 , σ 1 . σ 2 ) : takes input of the public key v k , two messages M 1 and M 2 , and the corresponding signatures σ 1 and σ 2 . The algorithm outputs s k if the m 1 and m 2 have the same address, otherwise it returns “⊥”.
A DAPS scheme is correct if it satisfies verification correctness and key-extractability. Here, key-extractability means that there is no way that any malicious signer can prevent revelation of its private key if it produces a compromising pair of signatures ( σ 1 Sign ( p p , s k , a 1 | | p 1 ) , σ 2 Sign ( p p , s k , a 2 | | p 2 ) , where a 1 = a 2 p 1 p 2 ).

4.3. Security Definitions

Our Dap-SM2 scheme follows the security definitions of DAPS in [33]. Since it is a subclass of a standard signature scheme, it naturally has the notion of existential unforgeability. At the same time, it has the special security property called key-extractability. We give the details as follows.
First, we define the concept of SO :
  • Sign Oracle ( SO ): returns σ Sign ( p p , s k , a | | p ) , Q Q { a | | p } with input of p p Setup ( 1 λ ) . If p p : { a | | p } Q , then it returns ⊥.
Existential Unforgeability. This is a basic requirement for any variant of signatures. DAPS schemes inherit this property from the standard signature scheme.
Definition 3. 
Dap-SM2 is existentially unforgeable under adaptive chosen-message attacks(EUF-CMA), if, for all PPT adversaries A , we define its success advantage:
Adv A U n f ( λ ) : = Pr p p Setup ( λ ) ; ( σ * ) A SO ( p p ) ; Verify ( σ * , a * | | p * , v k , p p ) = 1 ; { a * | | p * } Q
is negligible with overwhelming probability.
Key-extractability. This is the special property of DAPS schemes. It means that there is no way that any malicious signer can prevent revelation of its private key when it produces a compromising pair of signatures. In order to capture this property, we define the predicate Comp before giving the formal definition of key-extractability.
  • 1 / 0 Comp v k ( s k ) : this requires that producing s k such that 1 Comp v k ( s k ) if there is truly no compromising pair of signed messages.
Now, we give the formal definition of key-extractability as follows:
Definition 4. 
Self-C2AD is key-extractability, if, for all PPT adversaries A , we define its success advantage:
Adv A K e t ( λ ) : = Pr ( s k , v k ) KeyGen ( 1 λ ) ; ( σ 1 , σ 2 ) A ( s k , v k ) ; M 1 = a 1 | | p 1 , M 2 = a 2 | | p 2 ; s k Extract ( v k , M 1 , M 2 , σ 1 , σ 2 ) ; a 1 = a 2 p 1 p 2 ; 0 Comp v k ( s k )
is negligible with overwhelming probability.

5. Dap-SM2 and Self-C2AD

5.1. The Double-Authentication Preventing Signature from SM2

Based on the framework of the double-authentication preventing signature we mentioned before, we propose an efficient scheme (Dap-SM2) using an SM2 signature algorithm and describe it below. There are five algorithms included.
  • Setup( 1 λ ): takes 1 λ as input and outputs the set of public parameters P P .
    (1)
    Choose a finite field F q and generate the elliptic curve equation E : y 2 = x 3 + a x + b mod q satisfies a , b F q .
    (2)
    Randomly choose a generator G ( x G , y G ) G with order q.
    (3)
    Choose hash functions H 1 : { Z q * × Z q * × Z q * } Z q * , H 2 : { 0 , 1 } * Z q * .
    (4)
    Choose pseudorandom function F ( k , a ) ( x , y ) and the X-axis extraction function f x ( R ) y .
    (5)
    Output public parameters set P P = { F q , p , a , b , G , G , q , H 1 , H 2 , F , f x } .
  • KeyGen( P P , A ): takes P P and A as input and performs the following steps.
    (1)
    Initialize functions v k [ · ] , K [ · ] .
    (2)
    Randomly choose k { 0 , 1 } κ as SOT private key.
    (3)
    For all addresses α A :
    (a)
    ( d , u ) F ( k , α ) .
    (b)
    Compute v = d · ( 1 + d ) 1 .
    (c)
    Compute t = u · ( 1 + d ) 1 .
    (d)
    For address as α , compute partial public key P = [ d ] G , random element R = [ u ] G .
    (e)
    Let v k [ α ] ( P , R ) .
    (f)
    Let K [ α ] k + H 1 ( α , v , t )
    (4)
    Let s k k , v k ( v k [ · ] , K [ · ] ) .
    (5)
    Return key pair ( v k , s k ) .
  • Sign( P P , m , s k ): here, the signed message m = ( α , p ) .
    (1)
    Phase the message m = ( α , p ) .
    (2)
    Compute ( d , u ) F ( k , α ) .
    (3)
    Compute the point R = [ u ] G .
    (4)
    Compute r = f x ( R ) , c = ( H 2 ( p ) + r mod q and s = ( ( 1 + d ) 1 · ( u c · d ) ) mod q .
    (5)
    Output the signature s.
  • Verify( P P , m , s , v k ): verifier performs the following steps.
    (1)
    Phase the message m = ( α , p ) .
    (2)
    Compute v k [ · ] v k .
    (3)
    Compute r = f x ( R ) , c = ( H 2 ( p ) + r mod q and ( x 1 , y 1 ) = [ s ] G + [ ( s + c ) ] P .
    (4)
    Check if x 1 = r , output 1 represents “valid” or 0 represents “invalid”.
  • Extract( v k , m 1 , m 2 , s 1 , s 2 ): anyone can perform the following steps.
    (1)
    Phase the messages m 1 = ( α 1 , p 1 ) , m 2 = ( α 2 , p 2 ) .
    (2)
    Compute v k [ · ] v k .
    (3)
    If α 1 = α 2 p 1 p 2 , then continue. Otherwise, output “⊥”.
    (4)
    Compute R v k [ α ] , r = f x ( R ) , c 1 = ( H 2 ( p 1 ) + r mod q and c 2 = ( H 2 ( p 2 ) + r mod q .
    (5)
    Compute v = s 1 s 2 c 2 c 1 .
    (6)
    Compute t = s 1 + c 1 · v .
    (7)
    Compute k K [ α 1 ] H 1 ( α 1 , v , t ) .
    (8)
    Return the private key of malicious user s k k .

5.2. Correctness Analysis

Definition 5. 
Dap-SM2 is correct if it satisfies verification correctness and key-extractability.
Verification Correctness. The verification correctness of our Self-C2AD follows the SM2 signature algorithm. Notice that the signature s = ( 1 + d ) 1 · ( u c · d ) ; we have the following equations:
[ s ] G + [ ( s + c ) ] P = [ s ] G + [ ( s + c ) · d ] G = [ s ] G + [ s d + c d ] G = [ ( s + s d + c d ) ] G = [ ( 1 + d ) · s + c d ] G = [ ( 1 + d ) · ( 1 + d ) 1 · ( u c d + c d ) ] G = [ u ] G = R
Since f x ( R ) = r , the verification correctness of our proposed scheme is demonstrated.
Key-Extractability. Since the signature s = ( 1 + d ) 1 · ( u c · d ) , for the condition α 1 = α 2 p 1 p 2 , we have the following equations:
F ( k , α ) ( d , u ) , c = ( H 2 ( p ) + r ) mod q d 1 = d 2 , u 1 = u 2 , c 1 c 2 , s 1 s 2 c 2 c 1 = ( 1 + d 1 ) 1 ( c 2 c 1 ) d 1 c 2 c 1 = d 1 · ( 1 + d 1 ) 1 = v , s 1 + c 1 · v 1 = ( 1 + d 1 ) 1 ( u 1 c 1 · d 1 ) + c 1 · d 1 · ( 1 + d 1 ) 1 = u 1 ( 1 + d 1 ) 1 = t , k K [ α 1 ] H 1 ( α 1 , v , t ) s k k .
Therefore, the key-extractability of our proposed scheme is demonstrated.

5.3. Security Analysis

Theorem 1. 
Existential Unforgeability. Dap-SM2 satisfies existential unforgeability in ROM, if the standard SM2 signature scheme satisfies EUF-CMA.
Proof. 
In our Dap-SM2 scheme, the equations of signing and verifying are the same as the standard ones in the SM2 signature scheme. If there is a PPT adversary, A can successfully forge a signature s , which can pass the verification of Verify, and A can forge a valid double-authentication preventing signature on the message m based on the SM2 signature scheme.
The SM2 signature scheme is EUF-CMA in ROM. Thus, our Dap-SM2 satisfies existential unforgeability. □
Theorem 2. 
Key-Extractability. Dap-SM2 satisfies key-extractability if the generating signatures are well-formed, the hash function is collision resistant, and the correctness of key-extractability holds.
Proof. 
In our Dap-SM2 scheme, having a pair of signatures on different messages implies that there are two transcripts with the same commitment but different challenges. If the hash function is collision resistant, for two messages with different content p 1 p 2 , we have c 1 c 2 . If the signatures are well-formed and the correctness of key-extractability holds, there is naturally a solution which has been set to compute the private key in KeyGen which can be extracted.
Therefore, our Dap-SM2 satisfies key-extractability. □

5.4. The Self-C2AD Mechanism

Now we are ready to illustrate our Self-C2AD mechanism, the correctness and security of which follows the above Dap-SM2 scheme. First, we provide an overview of our mechanism.
As we mentioned before, there are three parties in our IoT authentication system model. When an SDV wants to access the IoT, it applies its own device ID (DID) and description ( d s p ) and chooses a CA to request. After the CA receives the request, it checks the validity of the SDV, generating its key pairs according to the CA’s DID and producing a signature on the CA’s DID and d s p as a certificate if possible. When an IoT user Alice wants to use an SDV, she would first check the validity of its certificate. Notice that the main function of our mechanism is CA auditing with self-enforcement, which means that if a CA issues certificates for the ones having the same DID and different s d p s, its private key will inevitably be revealed. Therefore, the malicious CA can be punished immediately with self-enforcement. This process is shown in Figure 3.
We give the details of our Self-C2AD below. There are five algorithms: Initialization, KeyGen, Certificate Issue, Certificate Check and Self-Auditing.
  • Initialization ( 1 λ ) : this algorithm is performed by the control centre. It performs Dap-SM2.setup to generate the system parameters P P .
  • KeyGen ( P P , A ) : this algorithm is performed by the CA. When a CA receives a set of applications from SDVs, it gathers DIDs into a set A and runs DAP-SM2. KeyGen to generate key pairs ( v k , s k ) .
  • Certificate Issue ( P P , DID | | d s p , s k ) : this algorithm is performed by the CA. For an SDV, CA checks its validity and issues a certificate c t f by generating a signature on the message DID | | d s p by the corresponding partial private key if possible.
  • Certificate Check ( P P , DID | | d s p , c t f , v k ) : this algorithm is performed by the IoT user. Assuming that there is a user Alice who wants to use a SDV, she first runs Dap-SM2.Verify to check the validity of the SDV certificate. If the outcome is 1, she can use it safely, otherwise, she would give it up.
  • Self-Auditing ( v k , DID 1 | | d s p 1 , DID 2 | | d s p 2 , c t f 1 , c t f 2 ) : this algorithm is performed automatically by the IoT system. It detects in a timely way whether there is a malicious CA issuing two c t f s for the same DID by performing DAP-SM2.Extract, where DID 1 = DID 2 d s p 1 d s p 2 . The private key of the malicious CA will be extracted in public.
Our Self-C2AD mechanism satisfies the security properties of certificate unforgeability and key-extractability, which are inherited from the existentially unforgeability under adaptive chosen-message attacks and key-extractability of Dap-SM2. We illustrate these as follows:
  • Certificate Unforgeability: this means that there is no way that any PPT adversary can successfully forge a certificate for an SDV without obtaining the corresponding partial private key.
  • Timely Key-Extractability: this means that there is no way that any malicious CA can prevent being punished if it produces a compromising pair of c t f s; moreover, this process is performed in a timely way.

6. Efficiency Evaluation

In this section, we benchmark our Dap-SM2 scheme and compare it with relevant schemes based on the MIRACL Cryptographic SDK (https://github.com/miracl/MIRACL, accessed on 21 August 2019) to analyse its performance and further illustrate the reference efficiency of Self-C2AD. The experiment relies on the platform Intel(R)Core(TM)i7-8700 CPU @3.20 GHz, 16.0 GM RAM and Windows 10 for a 64-bit operating system, with compiler Visual Studio 2019 in release mode. Additionally, we choose the elliptic curve and official parameters in the SM2 cryptographic standard [9] document, using the standard test data to implement and benchmark.
Here, we mainly focus on the time consumption of the four sub-algorithms, KeyGen, Sign, Verify and Extract. The experimental data show that the time consumption of these are 23.43 ms, 2.03 ms, 5.94 ms and 1.88 ms, respectively. We illustrate the results in Figure 4. Here, we set the size of the address space as 10.
More directly, we perform a comparison between the original SM2 signature and Dap-SM2, where the main focus point is still the time consumption of the sub-algorithms with the address space as 10 in Dap-SM2. Here, we neglect the Extract because it has no meaning in the original SM2. The results are shown in Table 2 and Figure 5. We observe that the time consumption of the Sign and the Verify operations in our proposed Dap-SM2 scheme is comparable to that of the original SM2 signature algorithm [9]. However, it is important to emphasize that the most time-consuming part of our Dap-SM2 scheme is the KeyGen process. This is primarily due to the necessity of generating multiple keys for each address. In our CA auditing mechanism, the KeyGen operation is of significant importance as it generates the cryptographic keys required for address-specific authentication. Given that our scheme involves addressing and auditing a large number of IoT devices, the KeyGen process needs to be executed for each individual address. Consequently, this results in a considerable increase in the overall time consumption compared to the original SM2 signature algorithm. We would like to underscore the significance of this time-consuming aspect, as it directly impacts the practical feasibility and scalability of our Dap-SM2 scheme. While the Sign and Verify operations themselves demonstrate efficient performance, the extensive key generation process is an essential trade-off required to ensure the robustness and security of our CA auditing mechanism in the IoT context.
Thus, the stage of KeyGen is an important study point. In particular, we benchmark the KeyGen in our Dap-SM2 with different sizes of address space (ranging from 10 to 50). The results are shown in the following Table 3.
In order to illustrate the relationship between the time consumption and the address space size, we depict the above results in Figure 6. Here, we can easily see that there is a linear relationship between the time consumption and the address space size. We note that, in the practical IoT context, the number of authentication requests for the CA in the same period will not be very large. Even in extreme cases, the time consumption of KeyGen can still be acceptable, by inference from the above results.
Finally, we perform a comparison with the DAPS scheme in [15] (called Dap-ECDSA here), which depends on the ECDSA signature [34] with a 571-bit security level. The results are given in Table 4 and Figure 7.
We appreciate the opportunity to provide further clarification on this aspect of our proposed scheme and to emphasize the rationale behind the substantial time consumption during key generation. By addressing this crucial step, our Dap-SM2 scheme offers the necessary security and accountability required for effective CA auditing in the IoT landscape.

7. Conclusions

In this paper, we propose the Dap-SM2, a short and efficient double-authentication preventing signatures (DAPS) scheme derived from the SM2 signature algorithm. Our scheme addresses the crucial challenge of double-authentication in signature schemes. Moreover, we leverage the practical context of IoT to transform Dap-SM2 into a CA auditing mechanism with self-enforcement, named Self-C2AD. Through a comprehensive security analysis, we demonstrate that our proposed scheme satisfies the properties of existential unforgeability and key-extractability within the random oracle model (ROM). These properties ensure that our scheme provides strong security guarantees, protecting against various forging attempts and enabling key extraction when necessary. Furthermore, our proposed scheme underwent an efficiency evaluation, which revealed its excellent performance in terms of computation time and resource utilization. These favorable efficiency characteristics make our scheme highly suitable for real-world IoT applications, where computational constraints and resource limitations are prevalent. Overall, our contributions in this paper, including the Dap-SM2 scheme and its integration into the Self-C2AD mechanism, provide a practical solution to the challenge of double-authentication in the context of IoT. The security analysis confirms the effectiveness of our scheme, while the efficiency evaluation highlights its strong performance. We believe that our proposed scheme has great potential for a wide range of real-world IoT applications, ensuring secure and efficient operations in IoT environments. In summary, our work introduces the Dap-SM2 scheme as a robust solution to double-authentication and extends its functionality through the Self-C2AD mechanism tailored for IoT. The security analysis demonstrates its effectiveness, and the efficiency evaluation confirms its strong performance. We envision widespread adoption of our scheme in practical IoT scenarios, enhancing security and authentication mechanisms in IoT deployments.

Author Contributions

Conceptualization, J.L. and X.G.; methodology, J.L. and X.G.; software, P.G. and Y.L.; validation, Y.L., S.L. and X.G.; formal analysis, P.G. and G.Z.; investigation, J.L., P.G. and G.Z.; writing—original draft preparation, S.L. and J.L.; writing—review and editing, G.Z. and S.L.; visualization, S.L.; supervision, X.G.; funding acquisition, P.G. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by the National Natural Science Foundation of China Youth Fund (Grant No. 62203048) and the National Natural Science foundation of China (Grant No. 62073039).

Data Availability Statement

Not applicable.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Wu, Y.; Shen, C.; Chen, S.; Wu, C.; Li, S.; Wei, R. Intelligent Orchestrating of IoT Microservices Based on Reinforcement Learning. Chin. J. Electron. 2022, 31, 930–937. [Google Scholar] [CrossRef]
  2. Chen, Q.; Ye, A.; Zhang, Q.; Huang, C. A new edge perturbation mechanism for privacy-preserving data collection in iot. Chin. J. Electron. 2023, 32, 603–612. [Google Scholar] [CrossRef]
  3. Shen, M.; Liu, H.; Zhu, L.; Xu, K.; Yu, H.; Du, X.; Guizani, M. Blockchain-Assisted Secure Device Authentication for Cross-Domain Industrial IoT. IEEE J. Sel. Areas Commun. 2020, 38, 942–954. [Google Scholar] [CrossRef]
  4. Obiri, I.A.; Yang, J.; Xia, Q.; Gao, J. A Sovereign PKI for IoT Devices Based on the Blockchain Technology. In Proceedings of the 2021 18th International Computer Conference on Wavelet Active Media Technology and Information Processing (ICCWAMTIP), Chengdu, China, 17–19 December 2021; pp. 110–115. [Google Scholar]
  5. Laurie, B.; Langley, A.; Kasper, E. RFC 6962: Certificate Transparency. Available online: https://www.rfc-editor.org/rfc/rfc6962.html (accessed on 15 June 2013).
  6. Bonneau, J. EthIKS: Using ethereum to audit a CONIKS key transparency log. In Proceedings of the International Conference on Financial Cryptography and Data Security, Church, Barbados, 22–25 February 2016. [Google Scholar]
  7. Poettering, B.; Stebila, D. Double-authentication-preventing signatures. Int. J. Inf. Secur. 2017, 16, 1–22. [Google Scholar] [CrossRef]
  8. Lu, S.; Lu, J.; An, K.; Wang, X.; He, Q. Edge computing on IoT for machine signal processing and fault diagnosis: A review. IEEE Internet Things J. 2023, 10, 1093–11116. [Google Scholar] [CrossRef]
  9. State Cryptography Administration, China. Public Key Cryptographic Algorithm SM2 Based on Elliptic Curves—Part 2: Digital Signature Algorithm. Available online: http://www.sca.gov.cn/sca/xwdt/2010-12/17/content_1002386.shtml (accessed on 17 December 2010).
  10. Wu, M.; Li, M.; Shao, X.; Liu, Y.; Gao, M.; Yang, X.; Bian, Z. Research on certificate management and key management of C-V2X security authentication technology in intelligent network vehicle. In Proceedings of the International Conference on Cryptography, Network Security, and Communication Technology (CNSCT 2023), SPIE, Sanya, China, 6–8 January 2023; Volume 12641, pp. 115–123. [Google Scholar]
  11. Wu, K.; Cheng, R.; Cui, W.; Li, W. A lightweight SM2-based security authentication scheme for smart grids. Alex. Eng. J. 2021, 60, 435–446. [Google Scholar] [CrossRef]
  12. Wang, Z.; Dong, H.; Chi, Y.; Zhang, J.; Yang, T.; Liu, Q. Research and Implementation of Hybrid Encryption System Based on SM2 and SM4 Algorithm. In Proceedings of the 9th International Conference on Computer Engineering and Networks, Shanghai, China, 25–27 February 2021; Springer: Berlin/Heidelberg, Germany, 2021; pp. 695–702. [Google Scholar]
  13. Zou, J.; He, D.; Bi, S.; Wu, L.; Liu, Z.; Peng, C. A certificateless Multi-recerver Encryption scheme based on SM2 signature algorithm. High-Confid. Comput. 2023, 3, 100103. [Google Scholar] [CrossRef]
  14. ISO/IEC. ISO/IEC 14888-3/Amd1; ISO: Berlin, Germany, 2016. [Google Scholar]
  15. Poettering, B. Shorter double-authentication preventing signatures for small address spaces. In Proceedings of the Progress in Cryptology—AFRICACRYPT 2018: 10th International Conference on Cryptology in Africa, Marrakesh, Morocco, 7–9 May 2018; Proceedings 10. Springer: Berlin/Heidelberg, Germany, 2018; pp. 344–361. [Google Scholar]
  16. Lin, X.; Sun, X.; Ho, P.H.; Shen, X. GSIS: A Secure and Privacy-Preserving Protocol for Vehicular Communications. IEEE Trans. Veh. Technol. 2007, 56, 3442–3456. [Google Scholar]
  17. Han, L.; Cao, S.; Yang, X.; Zhang, Z. Privacy Protection of VANET Based on Traceable Ring Signature on Ideal Lattice. IEEE Access 2020, 8, 206581–206591. [Google Scholar] [CrossRef]
  18. Boneh, D.; Kim, S.; Nikolaenko, V. Lattice-Based DAPS and Generalizations: Self-enforcement in Signature Schemes. In Proceedings of the Applied Cryptography and Network Security: 15th International Conference, ACNS 2017, Kanazawa, Japan, 10–12 July 2017; Proceedings 15. Springer: Berlin/Heidelberg, Germany, 2017; pp. 457–477. [Google Scholar]
  19. Mundhe, P.; Yadav, V.K.; Verma, S.; Venkatesan, S. Efficient Lattice-Based Ring Signature for Message Authentication in VANETs. IEEE Syst. J. 2020, 14, 5463–5474. [Google Scholar] [CrossRef]
  20. Merkle, R.C. A digital signature based on a conventional encryption function. In Proceedings of the Advances in Cryptology—CRYPTO’87, Barbara, CA, USA, 16–20 August 1987; Proceedings 7. Springer: Berlin/Heidelberg, Germany, 1988; pp. 369–378. [Google Scholar]
  21. Krawczyk, H.; Rabin, T. Chameleon Hashing and Signatures. U.S. Patent US6108783A, 22 August 2000. [Google Scholar]
  22. Ruffing, T.; Kate, A.; Schröder, D. Liar, liar, coins on fire! Penalizing equivocation by loss of bitcoins. In Proceedings of the 22nd ACM SIGSAC Conference on Computer and Communications Security, Denver, CO, USA, 12–16 October 2015; pp. 219–230. [Google Scholar]
  23. Bellare, M.; Poettering, B.; Stebila, D. Deterring certificate subversion: Efficient double-authentication-preventing signatures. In Proceedings of the Public-Key Cryptography–PKC 2017: 20th IACR International Conference on Practice and Theory in Public-Key Cryptography, Amsterdam, The Netherlands, 28–31 March 2017; Proceedings, Part II 20. Springer: Berlin/Heidelberg, Germany, 2017; pp. 121–151. [Google Scholar]
  24. Bellare, M.; Poettering, B.; Stebila, D. From identification to signatures, tightly: A framework and generic transforms. In Proceedings of the Advances in Cryptology–ASIACRYPT 2016: 22nd International Conference on the Theory and Application of Cryptology and Information Security, Hanoi, Vietnam, 4–8 December 2016; Proceedings, Part II 22. Springer: Berlin/Heidelberg, Germany, 2016; pp. 435–464. [Google Scholar]
  25. Derler, D.; Ramacher, S.; Slamanig, D. Short double-and n-times-authentication-preventing signatures from ECDSA and more. In Proceedings of the 2018 IEEE European Symposium on Security and Privacy (EuroS&P), IEEE, London, UK, 24–26 April 2018; pp. 273–287. [Google Scholar]
  26. Liu, J.; Yu, Y.; Jia, J.; Wang, S.; Fan, P.; Wang, H.; Zhang, H. Lattice-based double-authentication-preventing ring signature for security and privacy in vehicular Ad-Hoc networks. Tsinghua Sci. Technol. 2019, 24, 575–584. [Google Scholar] [CrossRef]
  27. Derler, D.; Ramacher, S.; Slamanig, D. Generic double-authentication preventing signatures and a post-quantum instantiation. In Proceedings of the Provable Security: 12th International Conference, ProvSec 2018, Jeju, Republic of Korea, 25–28 October 2018; Proceedings 12. Springer: Berlin/Heidelberg, Germany, 2018; pp. 258–276. [Google Scholar]
  28. Hoffman, P.; Schlyter, J. The DNS-Based Authentication of Named Entities (DANE) Transport Layer Security (TLS) Protocol: TLSA; Technical Report; Internet Engineering Task Force (IETF): Fremont, CA, USA, 2012. [Google Scholar]
  29. Evans, C.; Palmer, C.; Sleevi, R. Public Key Pinning Extension for HTTP; Technical Report; Internet Engineering Task Force (IETF): Fremont, CA, USA, 2015. [Google Scholar]
  30. Safdar, G.; McLoone, M. Randomly Shifted Certification Authority Authentication Protocol for MANETs. In Proceedings of the 2007 16th IST Mobile and Wireless Communications Summit, Budapest, Hungary, 1–5 July 2007; pp. 1–5. [Google Scholar]
  31. Hossain, M.; Hasan, R.; Zawoad, S. Probe-IoT: A public digital ledger based forensic investigation framework for IoT. In Proceedings of the IEEE INFOCOM 2018—IEEE Conference on Computer Communications Workshops (INFOCOM WKSHPS), Honolulu, HI, USA, 15–19 April 2018. [Google Scholar]
  32. Koblitz, N. Elliptic curve cryptosystems. Math. Comput. 1987, 48, 203–209. [Google Scholar] [CrossRef]
  33. Catalano, D.; Fuchsbauer, G.; Soleimanian, A. Double-authentication-preventing signatures in the standard model. J. Comput. Secur. 2022, 30, 3–38. [Google Scholar] [CrossRef]
  34. Johnson, D.; Menezes, A.; Vanstone, S. The elliptic curve digital signature algorithm (ECDSA). Int. J. Inf. Secur. 2001, 1, 36–63. [Google Scholar] [CrossRef]
Figure 1. Illustration of the IoT.
Figure 1. Illustration of the IoT.
Mathematics 11 03887 g001
Figure 2. Illustration of IoT authentication system model.
Figure 2. Illustration of IoT authentication system model.
Mathematics 11 03887 g002
Figure 3. The process of the Self-C2AD mechanism.
Figure 3. The process of the Self-C2AD mechanism.
Mathematics 11 03887 g003
Figure 4. Time consumption of the four sub-algorithms in Dap-SM2.
Figure 4. Time consumption of the four sub-algorithms in Dap-SM2.
Mathematics 11 03887 g004
Figure 5. Time consumption comparison with the original SM2.
Figure 5. Time consumption comparison with the original SM2.
Mathematics 11 03887 g005
Figure 6. Time consumption with different sizes of address space.
Figure 6. Time consumption with different sizes of address space.
Mathematics 11 03887 g006
Figure 7. Time consumption comparison with [15].
Figure 7. Time consumption comparison with [15].
Mathematics 11 03887 g007
Table 1. Notations and Definitions.
Table 1. Notations and Definitions.
NotationsDefinitions
EThe elliptic curve equation y 2 x 3 + a x + b
F q The finite field contained q elements
G An elliptic curve group of order q
GA generator of group G
[ K ] P The k times of the point P on E
a | | b The concatenation of two strings a and b
1 λ The security parameter
I D The identity of the user
E N T L The length of the user’s identity
v k ( · ) The function of generating user’s public key
K ( · ) The function of generating user’s partial public key used to extract private key
F ( k , a ) ( x , y ) The pseudorandom function takes k as evaluation key
f x ( R ) = r The X-axis extraction function takes point R as input and returns its X-axis
SOTThe abbreviation of the One-time signatures
ROMThe abbreviation of the Random Oracle model
A The set of addresses
PPT The abbreviation of probabilistic polynomial time
n e g l ( · ) The negligible function
A B The event A can deduce to event B
Table 2. Comparison of time consumption with the original SM2 signature algorithm [9].
Table 2. Comparison of time consumption with the original SM2 signature algorithm [9].
SchemeSub-Algorithm
KeyGen (ms) Sign (ms) Verify (ms)
Original SM25.942.036.09
Dap-SM2 23.432.035.94
Table 3. Time consumption of KeyGen in Dap-SM2 with different sizes of address space.
Table 3. Time consumption of KeyGen in Dap-SM2 with different sizes of address space.
SizeTime Consuming (ms)
1023.43
2042.66
3061.87
4082.18
50109.81
Table 4. Comparison of time consumption with the scheme in [15].
Table 4. Comparison of time consumption with the scheme in [15].
SchemeSub-Algorithm
KeyGen (ms) Sign (ms) Verify (ms) Extract (ms)
Dap-SM2 23.432.035.941.88
[15]17.711.216.651.13
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

Li, J.; Liu, Y.; Li, S.; Zhang, G.; Gao, X.; Gong, P. Self-C2AD: Enhancing CA Auditing in IoT with Self-Enforcement Based on an SM2 Signature Algorithm. Mathematics 2023, 11, 3887. https://doi.org/10.3390/math11183887

AMA Style

Li J, Liu Y, Li S, Zhang G, Gao X, Gong P. Self-C2AD: Enhancing CA Auditing in IoT with Self-Enforcement Based on an SM2 Signature Algorithm. Mathematics. 2023; 11(18):3887. https://doi.org/10.3390/math11183887

Chicago/Turabian Style

Li, Jianfeng, Yu Liu, Siqi Li, Guangwei Zhang, Xiang Gao, and Peng Gong. 2023. "Self-C2AD: Enhancing CA Auditing in IoT with Self-Enforcement Based on an SM2 Signature Algorithm" Mathematics 11, no. 18: 3887. https://doi.org/10.3390/math11183887

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