A many-to-many authentication key negotiation method in industrial Internet of Things

By adopting elliptic curve cryptography, three-factor authentication, Chinese residual theorem and symmetric homomorphic encryption technology in the industrial Internet of Things, security authentication and key negotiation between multiple users and multiple smart devices are achieved, and the problems of insufficient security and low efficiency in the existing technology are solved, and the security and efficiency of many-to-many authentication are improved.

CN115459908BActive Publication Date: 2025-03-21CHANGAN UNIV
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202211064344.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-08-31
Publication Date
2025-03-21
Estimated Expiration
2042-08-31

AI Technical Summary

Technical Problem

There are security problems in the existing industrial Internet of Things many-to-many authentication key negotiation scheme, which cannot resist known session-specific temporary information attacks, and is inefficient when accessing multiple smart devices, and cannot be applied to resource-constrained scenarios.

Method used

Using elliptic curve cryptography, three-factor authentication, Chinese residual theorem and symmetric homomorphic encryption technology, secure authentication and key negotiation between multiple users and multiple smart devices are realized through the key management center to ensure the indistinguishability of session keys.

Benefits of technology

It improves the security and efficiency of many-to-many authentication in the industrial Internet of Things, reduces the cost of computing and communication, and is suitable for multi-intelligent device scenarios with resource-constrained.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115459908B_ABST
    Figure CN115459908B_ABST
Patent Text Reader

Abstract

The present invention discloses a many-to-many authentication key negotiation method in an industrial Internet of Things, which is used for secure communication between multiple users and multiple smart devices, including system initialization, smart device deployment, user registration, gateway authorization, authentication and key negotiation stages. The present invention is based on elliptic curve cryptography, three-factor authentication, Chinese remainder theorem and symmetric homomorphic encryption technology to achieve efficient identity authentication and key negotiation between multiple users and multiple smart devices. The present invention satisfies indistinguishability under real or random models. The overall design improvement of the present invention promotes the in-depth development of the industrial Internet of Things.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention belongs to the field of key negotiation in industrial Internet of Things, and in particular relates to a many-to-many authentication key negotiation method in industrial Internet of Things. Background Art

[0002] In 2009, Das et al. first proposed an authentication scheme for wireless sensor networks. In 2016, Das designed an efficient authentication scheme based on lightweight operations such as XOR and hash functions. However, in 2018, Wu et al. pointed out that the scheme could not resist offline password guessing attacks and desynchronization attacks, and proposed an improvement scheme. In the same year, Wazid et al. proposed an authenticated key negotiation scheme based on symmetric cryptography. Li et al. proposed a privacy-preserving authentication scheme. Since the user and the gateway do not save the same secret value, the scheme can resist desynchronization attacks. In 2019, Ma et al. designed an authenticated key negotiation scheme based on elliptic curve cryptography. However, due to the use of a large number of scalar multiplication operations, the efficiency is very low. Jolfaei et al. proposed a secure authentication scheme using XOR and hash functions. However, in 2020, Shin et al. pointed out that the scheme is vulnerable to user collusion attacks, making smart devices easy to identify. In the same year, Yang et al. used XOR and hash functions to achieve mutual authentication and key negotiation, and ensured forward secrecy. Ali and other scholars proposed an authentication key agreement scheme based on symmetric cryptography and hash functions. In 2021, Far and other scholars proposed a lightweight authentication scheme suitable for the industrial Internet of Things using a one-way hash chain.

[0003] With the increasing intelligence in the industrial Internet of Things, users usually need to access data collected by multiple smart devices at the same time to understand the operating status of industrial production. In 2020, Cui et al. proposed a scalable authentication scheme based on elliptic curve cryptography and hash functions to achieve authentication of one user and multiple smart devices. However, this scheme cannot resist attacks against known session-specific temporary information because the session key consists of the identity of the participant and temporary information, the temporary information is secret, and the identity of the participant is public to registered users. In the same year, Zhang et al. proposed a many-to-many authentication key negotiation scheme to prevent unauthorized access and prevent the session key from being leaked even if the temporary information is leaked. In addition, since the scheme only requires users to initiate one request when accessing multiple smart devices, it achieves less computational and communication costs. In 2021, Vinoth et al. used the Chinese remainder theorem and symmetric cryptography to achieve authentication between one user and multiple smart devices, and used access control and secret sharing techniques to negotiate the same session key, but because the session key is the same, the registered smart devices can disguise each other.

[0004] Most of the above schemes implement authentication between a user and a smart device. When accessing multiple smart devices, the efficiency is too low due to repeated user verification, which is not suitable for resource-constrained industrial Internet of Things scenarios. Although authentication key negotiation schemes for multiple smart devices have been proposed, there are more or less some security issues, such as being unable to resist attacks based on known session-specific temporary information or preventing smart devices from disguising themselves as each other. Therefore, it is of great theoretical value and practical significance to study secure and efficient authentication key negotiation schemes for multiple smart devices in the industrial Internet of Things environment, which has far-reaching guiding significance for the development of the industrial Internet of Things. Summary of the invention

[0005] The purpose of the present invention is to overcome the above-mentioned shortcomings and provide a many-to-many authentication key negotiation method in the industrial Internet of Things, which utilizes elliptic curve cryptography, three-factor authentication, the Chinese remainder theorem and symmetric homomorphic encryption technology to achieve secure authentication between multiple users and multiple smart devices, and proves that the proposed scheme satisfies the indistinguishability of session keys under real or random models. It not only achieves higher security, but also has lower computing and communication costs, and is more suitable for resource-constrained multi-intelligent device scenarios.

[0006] In order to achieve the above object, the present invention comprises the following steps:

[0007] S1, the key management center completes system initialization and generates system parameters;

[0008] S2, the key management center deploys smart devices to generate identities and keys;

[0009] S3, the user registers with the key management center and obtains a smart card;

[0010] S4, the key management center authorization gateway, assists users and smart devices in completing authentication;

[0011] S5, multiple users and multiple smart devices achieve authentication with the help of the gateway and negotiate session keys for secure communication.

[0012] The specific method of S1 is as follows:

[0013] Input safety parameter ξ;

[0014] The key management center KMC generates a group G of order q based on the non-singular elliptic curve E, where P is the generator of G and is randomly selected. As master key, choose a hash function

[0015] The key management center KMC selects the identity GID for the gateway GW and calculates the private key s=h(GID||msk) and the public key S=s·P of GW;

[0016] The key management center KMC outputs system parameters as params = {P, G, q, GID, S, h}.

[0017] In S2, the specific method for the key management center to deploy smart devices is as follows:

[0018] Key Management Center KMC Selection As a smart device SD j The identity of , calculate sk j =h(SID j ||s) as SD j The private key of

[0019] The key management center KMC selects a common temporary key for all smart devices

[0020] The key management center KMC selects two large prime numbers and satisfy Calculating public parameters Choose any number SD card for each smart device j calculate in k1<<2<(k0 / 2), k1>n(2q+2)+1, j∈[1,n];

[0021] Key Management Center KMC randomly selects Calculate {R,R 2 ,…,R n} and make it public;

[0022] The key management center KMC will {SID j ,TSK,sk j ,E j (1)}Store in the SD card of smart device j middle.

[0023] The specific methods of S3 are as follows:

[0024] UserU i Send identity proof information to the Key Management Center KMC for verification;

[0025] After verifying the validity, the key management center KMC selects the group Satisfies p>q, for user U i Select Identity Calculate the long-term key a i =h(UID i ||s), will store The smart card with the information is securely sent to the user U i ;

[0026] UserU i Enter the password PW i and biometrics i , Smart Card Computing Gen(BIO i )→{BK i ,RP i}, B i =h(UID i ||PW i ||BK i )mod l i , l i is a parameter of the smart card, used to characterize the ability of fuzzy authentication to resist online guessing attacks, and is represented by A i replace The additional information {B i ,RP i ,l i}Stored in smart card;

[0027] Key Management Center KMC Calculation y i ≡1 / x i mod UID i and x i y i , store UID in local database i and x i y i .

[0028] In S4, the specific method for the key management center to authorize the gateway is as follows:

[0029] The key management center KMC securely sends s to the gateway GW;

[0030] The key management center KMC securely sends {UID i ,x i y i}(i∈[1,m]) is given to the gateway GW.

[0031] The specific method of S5 is as follows:

[0032] UserU i First insert the smart card into the card reader and enter the password PW i and biometrics i , i∈[1,m], the smart card uses the fuzzy extractor to calculate Rep(BIO i ,RP i )→BK i Reconstruct the biometric key BK i , calculate B′ i=h(UID i ||PW i ||BK i )mod l i And check B′ i Is it equal to B? i ; If not equal, terminate the login request; otherwise, the smart card successfully authenticates user U i ; User U i Random Selection and timestamp calculate K i =h(d i S), and Finally, user U i send To the gateway GW;

[0033] Gateway GW receives After that, i∈[1,m], the gateway verifies the freshness of the timestamp. After the verification passes, the gateway GW calculates a i ′=h(UID i ||s), and And check Is it equal to If they are equal, the gateway GW selects timestamp TS2 and calculates TSK′=h(TSK) and update TSK to TSK′, M4=Enc TSK (GID, EU) and M5 = h(M4||GID||EU||TS2); the gateway GW broadcasts msg2 = {M4, M5, TS2} to all smart devices {SD1, SD2, ..., SD n};

[0034] Smart device {SD1,SD2,…,SD n}After receiving msg2, each smart device SD j Check the freshness of the timestamp, j∈[1,n]. After the check passes, each smart device SD j Calculate TSK′=h(TSK),(GID,EU)=Dec TSK′ (M4) and M′5=h(M4||GID||EU||TS2) and check whether M′5 is equal to M5; if so, each smart device SD j Update TSK to TSK′; each smart device SD j Random Selection and timestamp Calculate rej =sr j ·E j (1) and SK j =sr j EU; Each smart device SD j (j∈[1,n]) sends To the gateway GW;

[0035] Gateway GW receives After that, j = 1, 2, ..., n, the gateway GW checks the freshness of the timestamp. After the check passes, the gateway GW calculates sk j =h(SID j ||s), and And check Is it equal to If equal, the gateway GW randomly selects and timestamp TS4, calculate M9=re1R+re2R 2 +…+re n R n , M 10 = x·P and M 11 =x+sh(M 10 ||M9||TS4), and broadcast msg4={M9,M 10 ,M 11 ,TS4} for all users {U1,U2,…,U m};

[0036] Users {U1,U2,…,U m}After receiving msg4, each user U i Check the freshness of the timestamp, i∈[1,m]. After the check passes, user U i Test M 11 Is P equal to M? 10 +Sh(M 10 ||M9||TS4), if equal, use the private key Decrypted UserU i Calculate the master session key SK i =e i RM;

[0037] If user U i and smart device SD j When communicating, the session key is calculated as follows:

[0038] UserU i calculate

[0039] Smart Device SD j Calculate SK ij =h(sr j EU mod UID i )=h(sr j ·e i );

[0040] in, Indicates rounding down.

[0041] Gateway GW receives After that, the gateway GW passes Check the freshness of the timestamp, where Received by the gateway GW time;

[0042] Smart device {SD1,SD2,…,SD n}After receiving msg2, each smart device SD j pass Check the freshness of the timestamp, where YesSD j The time when msg2 is received;

[0043] Gateway GW receives After that, the gateway GW passes Check the freshness of the timestamp, where GW received time;

[0044] Users {U1,U2,…,U m}After receiving msg4, each user U i (i∈[1,m]) by Check the freshness of the timestamp, where Is user U i The time when msg4 was received.

[0045] Compared with the prior art, the present invention is used for secure communication between multiple users and multiple smart devices, including system initialization, smart device deployment, user registration, gateway authorization, authentication and key negotiation stages. The present invention is based on elliptic curve cryptography, three-factor authentication, Chinese remainder theorem and symmetric homomorphic encryption technology to achieve efficient identity authentication and key negotiation between multiple users and multiple smart devices. The present invention satisfies indistinguishability under real or random models. The overall design improvement of the present invention promotes the in-depth development of the industrial Internet of Things. BRIEF DESCRIPTION OF THE DRAWINGS

[0046] Figure 1 It is a flow chart of the system of the present invention;

[0047] Figure 2 This is a flow chart of the authentication and key negotiation process in the present invention. DETAILED DESCRIPTION

[0048] The present invention will be further described below in conjunction with the accompanying drawings.

[0049] See also Figure 1 , the present invention comprises the following steps:

[0050] S1, the key management center completes system initialization and generates system parameters. The specific method is as follows:

[0051] Input safety parameter ξ;

[0052] The key management center KMC generates a group G of order q based on the non-singular elliptic curve E, where P is the generator of G and is randomly selected. As master key, choose a hash function

[0053] The key management center KMC selects the identity GID for the gateway GW and calculates the private key s=h(GID||msk) and the public key S=s·P of GW;

[0054] The key management center KMC outputs system parameters as params = {P, G, q, GID, S, h}.

[0055] S2, the key management center deploys smart devices and generates identities and keys. The specific method for the key management center to deploy smart devices is as follows:

[0056] Key Management Center KMC Selection As a smart device SD j The identity of , calculate sk j =h(SID j ||s) as SD j The private key of

[0057] The key management center KMC selects a common temporary key for all smart devices

[0058] The key management center KMC selects two large prime numbers and satisfy Calculating public parameters Choose any number SD card for each smart device j calculate in k1<<2<(k0 / 2), k1>n(2q+2)+1, j∈[1,n];

[0059] Key Management Center KMC randomly selects Calculate {R,R 2 ,…,R n} and make it public;

[0060] The key management center KMC will {SID j ,TSK,sk j ,E j (1)}Store in the SD card of smart device j middle.

[0061] S3: The user registers with the key management center and obtains a smart card. The specific method is as follows:

[0062] UserU i Send identity proof information to the Key Management Center KMC for verification;

[0063] After verifying the validity, the key management center KMC selects the group Satisfies p>q, for user U i Select Identity Calculate the long-term key a i =h(UID i ||s), will store The smart card with the information is securely sent to the user U i ;

[0064] UserU i Enter the password PW i and biometrics i , Smart Card Computing Gen(BIO i )→{BK i ,RP i}, B i =h(UID i ||PW i ||BK i )mod l i , l i is a parameter of the smart card, used to characterize the ability of fuzzy authentication to resist online guessing attacks, and is represented by A i replace The additional information {B i ,RP i ,l i}Stored in smart card;

[0065] Key Management Center KMC Calculation y i ≡1 / x i mod UID i and x i yi , store UID in local database i and x i y i .

[0066] S4, the key management center authorizes the gateway to assist users and smart devices in completing authentication; the specific method of the key management center authorizing the gateway is as follows:

[0067] The key management center KMC securely sends s to the gateway GW;

[0068] The key management center KMC securely sends {UID i ,x i y i}(i∈[1,m]) is given to the gateway GW.

[0069] S5, multiple users and multiple smart devices achieve authentication with the help of the gateway and negotiate session keys for secure communication.

[0070] See also Figure 2 The specific method for multiple users and multiple smart devices to achieve authentication and negotiate session keys for secure communication with the help of the gateway is as follows:

[0071] The first step is user U i First insert the smart card into the card reader and enter the password PW i and biometrics i , i∈[1,m], the smart card uses the fuzzy extractor to calculate Rep(BIO i ,RP i )→BK i Reconstruct the biometric key BK i , calculate B i ′=h(UID i ||PW i ||BK i )mod l i And check B i Is ' equal to B? i If not equal, the login request is terminated; otherwise, the smart card successfully authenticates U i User U i Random Selection and timestamp calculate K i =h(d i S), and Finally, U i (i∈[1,m]) sends To the gateway GW;

[0072] Step 2: Gateway GW receives After that, i∈[1,m], the gateway GW passes Check the freshness of the timestamp, where GW received Then, the gateway GW calculates a′ i =h(UID i ||s), and And check Is it equal to If they are equal, the gateway GW selects timestamp TS2 and calculates TSK′=h(TSK) and update TSK to TSK′, M4=Enc TSK (GID, EU) and M5 = h(M4||GID||EU||TS2). Finally, the gateway GW broadcasts msg2 = {M4, M5, TS2} to all smart devices {SD1, SD2, ..., SD n};

[0073] Step 3: Smart devices {SD1, SD2, …, SD n}After receiving msg2, each smart device SD j (j∈[1,n]) by Check the freshness of the timestamp, where YesSD j The time when msg2 is received. Then, each smart device SD j Calculate TSK′=h(TSK),(GID,EU)=Dec TSK′ (M4) and M5′=h(M4||GID||EU||TS2) and check whether M′5 is equal to M5. If so, each smart device SD j Update TSK to TSK'. Then, each smart device SD j Random Selection and timestamp Calculate re j =sr j ·E j (1) and SK j =sr j ·EU. Finally, each smart device SD j (j∈[1,n]) sends To the gateway GW;

[0074] Step 4: Gateway GW receives After that, the gateway GW passes Check the freshness of the timestamp, where GW received Then, the gateway GW calculates

[0075] sk j =h(SID j ||s), and and

[0076] test Is it equal to If equal, the gateway GW randomly selects and timestamp TS4, calculate M9=re1R+re2R 2 +…+re n R n , M 10 = x·P and M 11 =x+sh(M 10 ||M9||TS4), and broadcast msg4={M9,M 10 ,M 11 ,TS4} for all users {U1,U2,…,U m};

[0077] Step 5: Users {U1,U2,…,U m}After receiving msg4, each user U i pass Check the freshness of the timestamp, i∈[1,m], where It's U i The time when msg4 is received. Then, each user U i Test M 11 Is P equal to M? 10 +Sh(M 10 ||M9||TS4). If equal, use the private key Decrypted Finally, U i Calculate the master session key SK i =e i RM;

[0078] Step 6: If user U i and smart device SD j When communicating, the session key is calculated as follows:

[0079] UserU i calculate

[0080] Smart Device SD j Calculate SK ij =h(srj EUmod UID i )=h(sr j ·e i ).

[0081] The fuzzy extractor is used to generate and reconstruct the biometric key. It contains two algorithms:

[0082] Gen(BIO i )→(BK i ,RP i ): Given a biometric BIO i As input, the probabilistic algorithm outputs the biometric key BK i and reconstruction parameter RP i .

[0083] Rep(BIO′ i ,RP i )→BK i : Given a BIO similar to i Biometrics i ′ and reconstruction parameter RP i As input, the deterministic algorithm outputs the biometric key BK i .

[0084] The Chinese Remainder Theorem is a method for solving congruence equations and is an important theorem in number theory. The details are as follows:

[0085]

[0086] Let m1,m2,…,m n are relatively prime integers, then for integers a1, a2, …, a n ∈Z, the general solution of the equation is Where M = m1×m2×…×m n , M i =M / m i , M i t i ≡1(mod m i ), i∈[1,n].

[0087] In the case of module M, the equation has only one solution

[0088] Symmetric homomorphic encryption is an encryption technology that supports homomorphic addition and homomorphic multiplication properties, including three algorithms: KeyGen, Enc and Dec. The details are as follows:

[0089] KeyGen(k0,k1,k2): Given security parameters {k0,k1,k2}, satisfying k1<<2<(k0 / 2), the key generation algorithm selects two large prime numbers and satisfy calculate Random Selection Output public parameters pp = {k0, k1, k2, N}, private key

[0090] Enc(K,m): Given a private key K, message The encryption algorithm encrypts m to obtain the ciphertext in

[0091] Dec(K,E(m)): Given a private key K and a ciphertext E(m), the decryption algorithm decrypts the ciphertext to obtain the plaintext

[0092] Symmetric homomorphic encryption technology satisfies the following properties:

[0093] Homomorphic addition I: Given the ciphertexts E(m1) and E(m2), we can calculate E(m1)+E(m2)→E(m1+m2).

[0094] Homomorphic addition II: Given a ciphertext E(m1) and a plaintext m2, we can calculate E(m1)+m2→E(m1+m2).

[0095] Homomorphic multiplication I: Given the ciphertext E(m1) and E(m2), we can calculate E(m1)+m2→E(m1+m2).

[0096] Homomorphic multiplication II: Given a ciphertext E(m1) and a plaintext m2, we can calculate E(m1)·m2→E(m1·m2).

[0097] The security proof of the present invention under real or random models is given below.

[0098] 1. Security Model

[0099] The security of the proposed scheme is proved based on the Real-Or-Random (ROR) model. The basic primitives of the ROR model are defined as follows:

[0100] Participants: The proposed solution includes user U i (i∈[1,m]), gateway GW and smart device SD j (j∈[1,n]). and Respectively represent U i , GW and SD j The α, β, and γ instances of , which are simulated as oracles.

[0101] Partnership: If and can directly exchange information with each other, share the same session key, and have not formed a session key with other instances, then it is considered and We are partners.

[0102] Freshness: If and The session key SK has been established between them and has not been leaked to the adversary, then it is considered and It's fresh.

[0103] In the Dolev-Yao (DY) model, adversary A can obtain system parameters and messages transmitted on the public channel, and can modify or forge new messages to deceive other instances. Adversary A can make the following inquiries:

[0104] Hash(·): When A performs a hash query, a random value is returned.

[0105] This query simulates a passive attack. When A makes a query, it returns and Messages transmitted between them on open channels.

[0106] This query simulates an active attack. When A queries m, a corresponding reply message is returned.

[0107] When A asks, it returns and The session key SK established between them.

[0108] This challenge simulates three-factor security. When A makes the challenge, the following information is returned.

[0109] √v=0:Return password PW i .

[0110] √v=1: Returns the data stored in the smart card.

[0111] √v=2:Return biometric BIO i .

[0112] The query simulates and The session key SK * When A asks, it selects a bit b. If b = 1, it returns the session key SK * ; If b = 0, return and SK *A random string of the same length.

[0113] Define A to break the semantic security advantage of the proposed scheme∑session key as

[0114]

[0115] If for any probabilistic polynomial-time adversary A, the advantage is negligible, the session key of the proposed scheme is secure.

[0116] 2. Specific proof

[0117] Assume that A is an adversary who can break the proposed scheme ∑ in polynomial time t, D and N represent uniformly distributed password and biometric dictionaries, with sizes |D| and |N|, respectively. h ,q e and q s Respectively represent the number of Hash queries, Execute queries and Send queries. |Hash| represents the output space of the hash function h(·), δ represents the probability of "false positive" of the fuzzy extractor, then the advantage of adversary A in breaking the security of the proposed scheme ∑ session key is

[0118]

[0119] Proof: Define five games to prove the security of the proposed scheme, denoted by G k , k∈[0,4]. Suc k and Pr[Suc k ] respectively represent in game G k The event and probability of A's successful guess.

[0120] Game G0: This game simulates a real attack on the proposed solution in the ROR model. According to the semantic security defined in the security model, we can get

[0121]

[0122] Game G1: Compared with G0, G1 adds During the authentication and key negotiation phase, A can Ask for information msg2={M4,M5,TS2}, and msg4={M9,M 10 ,M 11 ,TS4}. A Ask and determine if the output is the real session key Or a random string. According to the proposed scheme, the session key SK ij =h(srj ·e i ) contains the secret information sr j and e i , from the message msg2, and A in msg4 cannot be obtained, and will not increase the advantage of successful guessing. Therefore, we can get

[0123] Pr[Suc1]=Pr[Suc0] (5)

[0124] Game G2: Compared with G1, G2 adds and Hash query to simulate active attack. A attempts to deceive the instance Accept modified or forged messages. According to the proposed scheme, the message msg2, and msg4 contain timestamp, random number and common temporary key to ensure randomness. When asking, ignoring the probability of message collision, we can get from the birthday paradox

[0125]

[0126] Game G3: Compared with G2, G3 adds the ECCDH problem. A gets and msg4={M9,M 10 ,M 11 ,TS4}, calculate Using K i Decrypted text Get information UID i and e i However, A does not have U i Private key Unable to decrypt M9 to obtain SR j And calculate the session key SK ij =h(sr j ·e i ). Therefore, we can get

[0127] Pr[Suc2]=Pr[Suc3] (7)

[0128] Game G4: Compared with G3, G4 adds The query simulates three-factor security. Through this query, A can pretend to be U i Interact with GW to obtain the session key Considering the worst case, A can obtain at most two factors at the same time, then there are the following three situations:

[0129] Case 1: A proceeds and Ask for PW i and the data in the smart card {UID i ,A i ,B i ,P,RP i ,l i ,Gen(·),Rep(·),h(·)} to guess the biometric BIO i .q s After asking, A successfully impersonated U i The probability is

[0130] Case 2: A proceeds and Ask for PW i and BIO i , calculate U i The long-term key a i Since there is no data and information in the smart card i , A successfully disguises U i The probability of is negligible.

[0131] Case 3: A proceeds and Query to obtain the data {UID in the smart card i ,A i ,B i ,P,RP i ,l i ,Gen(·),Rep(·),h(·)} and BIO i Let's guess PW i .q s After asking, A successfully impersonated U i The probability is

[0132] The fuzzy extractor used in the proposed scheme will have a "false positive" phenomenon. Assume that the probability that A inputs a forged biometric and deceives the reconstruction algorithm Rep(·) of the fuzzy extractor is δ, q s After asking, A successfully impersonated U i The probability is δq s .

[0133] The above situations will not occur at the same time, so we can get

[0134]

[0135] After all oracles are simulated, A cannot obtain any information about bit b. Therefore, A can only win the game by guessing bit b, which is

[0136]

[0137] From (4)-(9), we can see

[0138]

[0139] Aiming at the problem of low authentication efficiency during identity authentication and key negotiation between multiple users and multiple smart devices in the industrial Internet of Things, the present invention proposes a many-to-many authentication key negotiation scheme in the industrial Internet of Things based on elliptic curve cryptography, three-factor authentication, Chinese remainder theorem and symmetric homomorphic encryption, so as to realize secure authentication between multiple users and multiple smart devices. The present invention realizes three-factor security, and even if an attacker obtains any two of the three factors (i.e., smart card, password and biometrics), he cannot successfully disguise the user to initiate an authentication key negotiation request. The present invention satisfies indistinguishability under real or random models.

Claims

1. A many-to-many authentication key negotiation method in an industrial Internet of Things, characterized in that: The following steps are involved: S1, the key management center KMC completes system initialization and generates system parameters; S2, the key management center deploys smart devices and generates identities and keys. The specific method for the key management center to deploy smart devices is as follows: Key Management Center KMC Selection As a smart device SD j The identity of , calculate sk j =h(SID j ||s) as SD j The private key of The key management center KMC selects a common temporary key for all smart devices The key management center KMC selects two large prime numbers and satisfy Calculating public parameters Choose any number SD card for each smart device j calculate in k1<<k2<(k0 / 2), k1>n(2q+2)+1, j∈[1,n]; Key Management Center KMC randomly selects Calculate {R,R 2 ,…,R n } and make it public; The key management center KMC will {SID j ,TSK,sk j ,E j (1)}Store in the SD card of smart device j middle; S3, the user registers with the key management center and obtains a smart card; S4, the key management center authorization gateway, assists users and smart devices in completing authentication; S5, multiple users and multiple smart devices are authenticated with the help of the gateway and negotiate session keys for secure communication. The specific method is as follows: UserU i First insert the smart card into the card reader and enter the password PW i and biometrics i , i∈[1,m], the smart card uses the fuzzy extractor to calculate Rep(BIO i ,RP i )→BK i Reconstruct the biometric key BK i , calculate B′ i =h(UID i ||PW i ||BK i )mod l i And check B′ i Is it equal to B? i ; If not equal, terminate the login request; Otherwise, the smart card successfully authenticates user U i ; User U i Random Selection and timestamp calculate K i =h(d i S), and Finally, user U i send To the gateway GW; Gateway GW receives After that, the gateway verifies the freshness of the timestamp. After the verification passes, the gateway GW calculates a′ i =h(UID i ||s), and And check Is it equal to If they are equal, the gateway GW selects timestamp TS2 and calculates TSK′=h(TSK) and update TSK to TSK′, M4=Enc TSK (GID, EU) and M5 = h(M4||GID||EU||TS2); the gateway GW broadcasts msg2 = {M4, M5, TS2} to all smart devices {SD1, SD2, ..., SD n }; Smart device {SD1,SD2,…,SD n }After receiving msg2, SD j Check the freshness of the timestamp. After passing the check, each smart device SD j Calculate TSK′=h(TSK),(GID,EU)=Dec TSK′ (M4) and M′5=h(M4||GID||EU||TS2) and check whether M′5 is equal to M5; if so, each smart device SD j Update TSK to TSK′; each smart device SD j Random Selection and timestamp Calculate re j =sr j ·E j (1) and SK j =sr j EU; Each smart device SD j send To the gateway GW; Gateway GW receives After that, the gateway GW verifies the freshness of the timestamp. After the verification passes, the gateway GW calculates and And check Is it equal to If equal, the gateway GW randomly selects and timestamp TS4, calculate M9=re1R+re2R 2 +…+re n R n , M 10 = x·P and M 11 =x+sh(M 10 ||M9||TS4), and broadcast msg4={M9,M 10 ,M 11 ,TS4} for all users {U1,U2,…,U m }; Users {U1,U2,…,U m }After receiving msg4, each user U i Check the freshness of the timestamp. If the check passes, user U i Test M 11 Is P equal to M? 10 +Sh(M 10 ||M9||TS4), if equal, use the private key Decrypted UserU i Calculate the master session key SK i =e i RM; If user U i and smart device SD j When communicating, the session key is calculated as follows: UserU i calculate Smart Device SD j Calculate SK ij =h(sr j EU mod UID i )=h(sr j ·e i ); in, Indicates rounding down.

2. According to claim 1, a many-to-many authentication key negotiation method in an industrial Internet of Things is characterized in that: The specific method of S1 is as follows: Input safety parameter ξ; The key management center KMC generates a group of order q based on the non-singular elliptic curve E Where P is The generator of As master key, choose a hash function The key management center KMC selects the identity GID for the gateway GW and calculates the private key s=h(GID||msk) and the public key S=s·P of GW; The key management center KMC outputs system parameters as follows:

3. The method for many-to-many authentication key negotiation in industrial Internet of Things according to claim 1, characterized in that: The specific methods of S3 are as follows: UserU i Send identity proof information to the key management center KMC for verification; After verifying the validity, the key management center KMC selects the group Satisfying p>q, for user U i Select Identity Calculate the long-term key a i =h(UID i ||s), will store The smart card with the information is securely sent to the user U i ; UserU i Enter the password PW i and biometrics i , Smart Card Computing Gen(BIO i )→{BK i ,RP i }, B i =h(UID i ||PW i ||BK i )mod l i , l i is a parameter of the smart card, used to characterize the ability of fuzzy authentication to resist online guessing attacks, and is represented by A i replace The additional information {B i ,RP i ,l i }Stored in smart card; Key Management Center KMC Calculation y i ≡1 / x i mod UID i and x i y i , store UID in local database i and x i y i .

4. The method for many-to-many authentication key negotiation in industrial Internet of Things according to claim 1, characterized in that: In S4, the specific method for the key management center to authorize the gateway is as follows: The key management center KMC securely sends s to the gateway GW; The key management center KMC securely sends {UID i ,x i y i }, i∈[1,m], given to the gateway GW.

5. The method for many-to-many authentication key negotiation in industrial Internet of Things according to claim 1, characterized in that: Gateway GW receives After that, the gateway GW passes Check the freshness of the timestamp, where Received by the gateway GW time; Smart device {SD1,SD2,…,SD n }After receiving msg2, each smart device SD j pass Check the freshness of the timestamp, where YesSD j The time when msg2 is received; Gateway GW receives After that, the gateway GW passes Check the freshness of the timestamp, where GW received time; Users {U1,U2,…,U m }After receiving msg4, each user U i pass Check the freshness of the timestamp, where Is user U i The time when msg4 was received.