Multi-factor internet of things terminal dynamic group access authentication methodTechnical Field
The invention belongs to the field of Internet of things, and relates to a dynamic group access authentication method for a multi-factor Internet of things terminal.
Background
With the large-scale deployment of internet of things services, the number of internet of things terminals is increasing explosively. However, a large number of low-cost, low-power-consumption, narrow-bandwidth internet of things terminals are often deployed in unmanned or wireless signal complex environments with less data to send or receive. If the communication network is accessed by adopting an end-to-end authentication method one by one, a great deal of unnecessary signaling and calculation overhead is generated. The authentication efficiency is low, and the service life of the terminal powered by the battery is consumed. How to realize access authentication and key distribution and management of tens of thousands of internet of things terminals becomes a challenging research problem. The grouping of a plurality of terminals of the Internet of things is an effective management means, and the service network of group authentication faces to massive concurrent access scenes, and only needs to authenticate individual nodes in the group, and other group members can finish batch authentication locally. On the premise of ensuring safety, various system overheads can be reduced, and authentication efficiency is improved.
Lai C et al propose a lightweight group authentication scheme based on resource-constrained machine-to-machine (M2M) under 3GPP network architecture in "Lai C,LuR,ZhengD,etal.GLARM:Group-basedlightweightauthentication scheme for resource-constrained machine to machine communications[J].Computer Networks,2016,99:66-81.". In the scheme, a symmetrical cryptosystem and a method for aggregating MAC addresses are adopted to realize simultaneous authentication of a group of terminals. But this protocol does not implement forward/backward security, once the current key is compromised, the historical keys and future keys will be presumed to be unsecure, possibly resulting in a significant amount of encrypted data being compromised.
Li J et al in "Li J,Wen M,Zhang T.Group-based authentication and key agreement with dynamic policy updating for MTC in LTE-A networks[J].IEEE Internet ofThings Journal,2015,3(3):408-417." propose an AKA protocol based on dynamic policy updating of groups. In the protocol, a scheme of combining asynchronous secret sharing with Diffie-Hellman key exchange is adopted to realize distributed authentication and session key negotiation in the LTE-A network and realize dynamic updating of the access authority of the MTC device. However, the protocol adopts point multiplication operation, and each terminal device needs to communicate with a service network to realize key negotiation, so that the calculation and signaling overhead of the terminal is high.
Cao J et al in "Cao J,Yan Z,Ma R,et al.LSAA:A lightweight and secure access authentication scheme forbothUE andmMTC devices in 5Gnetworks[J].IEEE Internet ofThings Journal,2020,7(6):5329-5344." propose a lightweight secure access authentication scheme for UE and MMTC devices in a 5G network. In the scheme, the secure functions of mutual authentication, session key establishment, identity privacy protection, forward/backward confidentiality and the like of common User Equipment (UE) large-scale machine type communication (MMTC) equipment are realized by using Chebyshev chaotic mapping. However, the scheme does not verify the reliability and the safety of the terminal of the Internet of things and lacks a dynamic refreshing mechanism, so that a malicious node can be accessed to the system.
Among the above protocols, the protocol proposed by Lai C et al does not realize forward/backward security, once the current key leaks, the history key and the future key can be presumed, possibly resulting in a large amount of encrypted data leaking, the protocol proposed by Li J et al is complex in calculation, and each terminal device needs to communicate with the service network to realize key negotiation, resulting in high computational and signaling overhead of the terminal, and the protocol proposed by Cao J et al does not verify the reliability and security of the terminal of the internet of things and lacks a dynamic refresh mechanism, possibly causing the system to access a malicious node.
Disclosure of Invention
Therefore, the invention aims to provide a multi-factor internet of things terminal dynamic group access authentication method, which aims to realize a plurality of security functions, reduce signaling, calculation and storage expenses of the internet of things terminal in authentication, and realize batch authentication and session key negotiation of the internet of things terminal.
In order to achieve the above purpose, the present invention provides the following technical solutions:
a multi-factor internet of things terminal dynamic group access authentication method comprises the following steps:
s1, in a system initialization stage, an SDN controller establishes a secure connection with an Internet of things gateway, the SDN controller performs system initialization, generates a secure private key and selects a secure single hash function;
S2, in the registration stage of the terminals of the Internet of things, the terminals of the Internet of things are divided according to groups, and unified registration is performed under a safety channel;
s3, in the login stage, the terminal of the Internet of things decrypts secret parameters in the smart card through the PUF, and verifies the safety and reliability of the terminal of the Internet of things;
s4, in a group to be authenticated, firstly, a group leader initiates an access authentication request to an SDN controller; the SDN controller verifies the identity of the group leader through the information in registration and the parameters in the authentication request, generates a random number, calculates an encryption key for each member in the group, and then sends the encryption key to the gateway of the Internet of things; the gateway of the internet of things calculates a session key for each terminal member, protects a random number through an encryption key, and then broadcasts an authentication message to group members; the group member calculates the encryption key, the session key and the group key locally according to the parameters and the authentication information when logging in, then verifies the authentication information and updates the pseudo identity, and then calculates the authentication success information and sends the authentication success information to the group owner;
s5, dynamically joining the terminal, namely updating a group key to ensure forward security when a new member is to be added into a certain terminal group;
S6, dynamically removing the terminal, namely when a member in a group is found to have malicious behaviors, evicting the member from the group, and updating a group key SKG to ensure backward safety;
And S7, updating the group identity and PUF excitation response at fixed time, namely updating the group identity and PUF excitation response to prevent tracking attack after a certain period of time, reselecting a private key and a PUF input excitation by each terminal of the Internet of things, calculating corresponding registration parameters and sending the registration parameters to an SDN controller, recalculating the group identity and the selection random number by the SDN controller according to the new parameters and sending the group identity and the selection random number to each terminal of the Internet of things through an original session key, and then synchronously calculating an updated session key and a group key by each terminal and the SDN controller.
Further, the step S1 specifically includes that the SDN controller establishes a secure connection with the gateway of the Internet of things, then generates a secure private key deltasc, and selects a secure single hash function H () {0,1}*→{0,1}n, n is the bit width of the hash function message digest output.
Further, in the step S2, all k terminal members in the group are provided with a physical unclonable function PUF by default, and initialize a stimulus response CRP (Ci, ri), and the registration of the terminal of the internet of things specifically includes the following steps:
S21, outputting a calculated registration parameter GPWi through an identity IDi and a PUF by the terminal of the Internet of things, and sending registration information of < IDi,GPWi > to the SDN controller;
Ri=PUF(Ci)
GPWi=H(IDi||Ri)
Wherein, Ri represents the output response of the physical unclonable function PUF, Ci represents the input stimulus of the physical unclonable function, GPWi represents the registration parameter, and H represents the hash function;
S22, calculating a pseudo identity VIDi for the terminal of the Internet of things by the SDN controller, selecting a large prime number pi and an exponential operation primitive root g, and sending registration information < VIDi,pi, g > to the terminal of the Internet of things by the SDN controller, wherein the calculation formula of the VIDi is as follows:
VIDi=H(IDi||δsc)
δsc represents the security private key of the SDN controller;
S22, selecting a private key xi by the terminal of the Internet of things, calculating registration information yi≡gximodpi, and sending registration information < yi > to the SDN;
s24, the SDN controller constructs a congruence equation set according to the registration information to calculate a set identity mark GID, the set identity mark is encrypted through the registration information to calculate Wi, the SDN controller sends registration information < Wi > to the terminal of the Internet of things, and the GID is a calculation result of the congruence equation, and the formula is as follows:
S25, the terminal of the Internet of things verifies and calculates B1 and B2 for encryption private keys and parameter integrity, and stores < B1,B2,VIDi,Wi > into the smart card SMCi, wherein Wi is used for protecting the parameter of the GID:
B1 and B2 are used for protecting the private key and integrity verification of the terminal of the Internet of things, and the calculation process is as follows:
B2=H(VIDi||IDi||xi||Ri||Wi||GID)。
Further, the step S3 specifically includes that the terminal of the Internet of things reads the identity IDi and the PUF input stimulus Ci, and parameters < B1,B2,VIDi,Wi > in the smart card, calculates GPWi, decrypts the private key protected by B1, and verifies the integrity of the parameters.
Further, the step S4 specifically includes:
S41, generating a timestamp T1 by a group leader, calculating an authentication request verification parameter AUTHGL=H(GID||VIDGL||IDGL||T1), and sending an authentication request message < VIDGL,AUTHGL,T1 > to the gateway of the Internet of things;
S42, the gateway of the Internet of things forwards the authentication request message to the SDN controller;
S43, after verifying the freshness of the message, the SDN controller verifies AUTHGL, calculates an encryption key Ki=H(VIDi||GID||GPWi for each terminal member, selects a random number r, and sends the message < { VIDi,Ki }, r, GID > to the terminal of the Internet of things;
S44, the gateway of the Internet of things calculates Di for protecting the random number r, calculates a session key SKi and an integrity verification parameter AUTHi-ITG, and sends a message < VIDi,Di,AUTHi-ITG > to a group leader according to the following formula:
SKi=H(VIDi||GID||r||Ki)
AUTHi-ITG=H(VIDi||GID||r||SKi||Ki||Di)
S45, broadcasting the message in the group by the group owner, calculating an encryption key Ki by the terminal member, decrypting Di to obtain a random number r, calculating a session key SKi, calculating a group key SKG, carrying out integrity verification and calculation AUTHi-ITG, updating a pseudo-identity calculation VIDinew, calculating an authentication success parameter AUTHi-N, and sending the message < VIDi,AUTHi-N > to the group owner, wherein the formula is as follows:
SKG=H(r||GID)
VIDinew=H(r||VIDi||IDi)
AUTHi-N=H(VIDi||GID||Di||r||SKi||SKG||Ki)
S46, the group leader carries out fusion calculation on the information of each member to obtain fusion authentication parameters AUTHt, and sends the information < VIDGL,AUTHt > to the gateway of the Internet of things, wherein:
s47, the gateway of the Internet of things calculates SKG, verifies AUTHt, sends an authentication success message to the SDN controller, and synchronously calculates < SKi,SKG,VIDinew >.
Further, the step S5 specifically includes the following steps:
S51, the new member Nk+1 generates a time stamp T2, calculates an authentication request verification parameter AUTHk+1, and sends a message < VIDk+1,AUTHk+1,T2 > to the group owner of the group, with the following specific formula:
AUTHk+1=H(GID'||VIDk+1||IDk+1||GPWk+1||T2)
s52, adding a group identity to the message by the group leader, and sending the message < VIDGL,VIDk+1,AUTHk+1,T2 > to the SDN controller;
s53, the SDN controller verifies the freshness of the message, verifies and calculates AUTHk+1, reconstructs a congruence equation set to calculate a new group identity mark GIDnew, selects a new random number rnew, calculates encryption keys K'k+1 and Kk+1, and sends the message < { VIDk+1,K'k+1,Kk+1},rnew,GIDnew > to the gateway of the Internet of things, wherein the calculation formula is as follows:
K’k+1=H(VIDk+1||GID'||GPWk+1)
Kk+1=H(VIDk+1||GIDnew||GPWk+1)
S54, the gateway of the Internet of things calculates D'k+1 and Dk+1 for encrypting the new group identity and the random number, calculates a session key SKk+1 and an integrity verification parameter AUTH(k+1)-ITG, sends a message < VIDk+1,D'k+1,Dk+1,AUTH(k+1)-ITG > to a new member, and broadcasts < rnew,GIDnew > to the original group member through the original group key, wherein the calculation formula is as follows:
SKk+1=H(VIDk+1||GIDnew||rnew||Kk+1)
AUTH(k+1)-ITG=H(VIDk+1||GIDnew||rnew||SKk+1||K'k+1||Kk+1||D'k+1||Dk+1)
S55, the new member calculates an encryption key K 'k+1 and Kk+1 to decrypt D'k+1 and Dk+1 to obtain a new group identity and a random number, calculates a session key SKk+1 and a group key SKGnew, calculates an AUTH(k+1)-ITG to be verified, updates a pseudo-identity VIDk+1new, calculates an authentication success parameter AUTH(k+1)-N, and sends a message < VIDk+1,AUTH(k+1)-N > to the gateway of the Internet of things, and other members update the < SKi,SKG,Wi > after receiving the < rnew,GIDnew >, wherein the calculation formula is as follows:
VIDk+1new=H(r||VIDk+1||IDk+1)
AUTH(k+1)-N=H(VIDk+1||GIDnew||D'k+1||Dk+1||rnew||SKk+1||SKGnew||K'k+1||Kk+1)
s56, the gateway of the Internet of things calculates SKGnew, verifies and calculates AUTH(k+1)-N, sends an authentication success message to the SDN controller, and synchronously updates the < SKi,SKG >.
Further, the step S6 specifically includes the following steps:
S61, firstly, the SDN controller retrieves malicious member Nk, and cancels legal identity of Nk, modifies yk into other value y'k, and reconstructs a congruence equation set to calculate GIDnew:
SDN generates a new random number rnew and encrypts and sends a message < rnew,GIDnew > to group members except malicious member Nk through SKi;
Other members update < SKi,SKG,Wi >, and the SC recalculates < SKi,SKG > and synchronizes with the ITG through encryption.
Further, step S7 includes the steps of generating a new PUF input stimulus Cinew by the Internet of things terminal, calculating Rinew,GPWinew, selecting a new private key xinew to calculate yinew, sending a message < GPWinew,yinew > to the SDN controller, reconstructing a congruence equation set by the SDN controller to obtain a GIDnew, generating a new random number Rnew, broadcasting the message < Rnew,GIDnew > to all group members, and updating parameters of the < SKi,SKG,Wi,B1,B2 > by the group members, the SDN controller and the Internet of things gateway.
The invention has the beneficial effects that:
Firstly, the method not only can realize the safety functions of mutual authentication, identity anonymity, replay attack resistance and the like, but also can update the pseudo identity and the random number after each negotiation, and update the encryption key at regular time, thereby ensuring the randomness and independence of each session key and the group key, even if an attacker obtains the current group key or the session key of a member in various ways, the former or later group key or session key can not be calculated, and the forward/backward safety is realized.
Secondly, only hash, exclusive or and other lightweight encryption algorithms are used in the whole process of the method, and the SDN controller only needs to authenticate the group leader in the terminal group of the internet of things, and other terminals of the internet of things can complete authentication and session key negotiation through local calculation by a method of broadcasting and aggregating messages, so that the calculation and signaling cost of terminals with limited resources is greatly reduced.
Thirdly, by utilizing the characteristics of the PUF and combining with the smart card, the reliability and the security verification of the terminal of the Internet of things are realized, a terminal adding and removing mechanism is designed, when a certain node in a group of the terminal of the Internet of things is added into or leaves the group, the SDN controller can reconstruct a congruence equation set through the China remainder theorem to generate a new group identity mark, and the updating of the secret key is realized with minimum cost without re-authenticating each member in the group.
Additional advantages, objects, and features of the invention will be set forth in part in the description which follows and in part will become apparent to those having ordinary skill in the art upon examination of the following or may be learned from practice of the invention. The objects and other advantages of the invention may be realized and obtained by means of the instrumentalities and combinations particularly pointed out in the specification.
Drawings
For the purpose of making the objects, technical solutions and advantages of the present invention more apparent, the present invention will be described in the following preferred detail with reference to the accompanying drawings, in which:
FIG. 1 is a diagram of a network architecture according to an embodiment of the present invention;
FIG. 2 is a detailed protocol registration process diagram according to an embodiment of the present invention;
fig. 3 is a detailed protocol authentication process diagram according to an embodiment of the present invention.
Detailed Description
Other advantages and effects of the present invention will become apparent to those skilled in the art from the following disclosure, which describes the embodiments of the present invention with reference to specific examples. The invention may be practiced or carried out in other embodiments that depart from the specific details, and the details of the present description may be modified or varied from the spirit and scope of the present invention. It should be noted that the illustrations provided in the following embodiments merely illustrate the basic idea of the present invention by way of illustration, and the following embodiments and features in the embodiments may be combined with each other without conflict.
In which the drawings are for illustrative purposes only and are not intended to be construed as limiting the invention, and in which certain elements of the drawings may be omitted, enlarged or reduced in order to better illustrate embodiments of the invention, and not to represent actual product dimensions, it will be understood by those skilled in the art that certain well-known structures in the drawings and descriptions thereof may be omitted.
In the description of the present invention, it should be understood that, if there are terms such as "upper", "lower", "left", "right", "front", "rear", etc., the directions or positional relationships indicated are based on the directions or positional relationships shown in the drawings, only for convenience of describing the present invention and simplifying the description, rather than indicating or implying that the referred devices or elements must have a specific direction, be constructed and operated in a specific direction, so that the terms describing the positional relationships in the drawings are merely for exemplary illustration and are not to be construed as limitations of the present invention, and that the specific meanings of the terms described above may be understood by those skilled in the art according to specific circumstances.
Referring to fig. 1 to 3, with the rapid development of the internet of things, the existing protocol for handling access authentication of a large number of terminals of the internet of things has many problems of insufficient security function, high system overhead, lack of refresh mechanism and the like. Aiming at the current state of the art, the invention provides a multi-factor internet of things terminal dynamic group access authentication method, which realizes batch lightweight authentication of the internet of things terminal on the premise of ensuring safety.
In order to implement the access authentication protocol in the present invention, a network architecture of internet of things terminal group authentication is designed, and refer to fig. 1. The method comprises the steps that a large number of internet of things terminals form a plurality of authentication groups, each group comprises a group leader, an internet of things gateway is responsible for information transmission, partial parameter calculation and authentication information verification, and an SDN controller is responsible for internet of things terminal registration, session key calculation and other responsibilities.
The invention relates to a multi-factor internet of things terminal dynamic group access authentication method, which comprises the following 7 stages:
(1) And in the system initialization stage, the Internet of Things Gateway (ITG) and the SDN Controller (SC) establish secure connection, and the data interaction between the ITG and the SDN controller is secure and credible. The SDN controller firstly initializes the system, generates a security private key deltasc, and selects a security single hash function H () {0,1}*→{0,1}n, n is the bit width of the hash function message digest output.
(2) In the registration stage of the terminals of the Internet of things, the terminals of the Internet of things perform unified registration according to group division, and an existing group of the terminals of the Internet of things is assumed, wherein k terminal members { N1,N2,...,Nk } are arranged in the group, each member is provided with a PUF by default, an excitation response pair (Ci,Ri) is initialized, and the registration process is completed under a secure channel. The terminal registration process of the Internet of things comprises the following steps:
(2a) Referring to fig. 2, each Ni selects one identity IDi for itself and calculates Ri=PUF(Ci),GPWi=H(IDi||Ri). Ni then sends < IDi,GPWi > to the SC over the secure channel.
(2B) Referring to fig. 2, after receiving the registration message sent by Ni, the SC calculates a pseudo-identity VIDi=H(IDi||δsc for Ni). SC selects one large prime number pi (i=1,..k) for Ni, and pi≠pj when i+.j, and satisfies that there are two different large prime numbers in the range of pi -1. Next, SC selects an exponential-operated primitive root, g, for the group, which is also the generator of group Z*pi. The SC sends < VIDi,pi, g > to Ni over the secure channel.
(2C) Referring to fig. 2, after receiving the SC reply message, Ni selects a private key xi∈Z*pi for itself and calculates yi≡gximodpi. Ni then issues < yi > to the SC over the secure channel.
(2D) Referring to fig. 2, after receiving yi from k Ni transmissions, the SC constructs a congruence equation set using the chinese remainder theorem,
Wherein GID is the group identity of the group, SC is Ni for calculationThen, the SC generates a table in which group information < GID, g >, and each member information < IDi,VIDi,yi,pi,GPWi > are recorded. The SC sends < Wi > to Ni over the secure channel.
(2E) With continued reference to FIG. 2, Ni, upon receipt of Wi, calculatesB2=H(VIDi||IDi||xi||Ri||Wi GID). Then store < B1,B2,VIDi,Wi > into the smart card SMCi. So far, the terminal group of the Internet of things completes the registration process.
(3) And in the login stage, when one Internet of things terminal group needs to be accessed to the 5G network, each member firstly executes a login step, decrypts and verifies the security parameters in the smart card. Ni reads the identity IDi and PUF input stimulus Ci from the local storage, reads the parameters stored at enrolment from the smart card < B1,B2,VIDi,Wi>.Ni calculates Ri=PUF(Ci),GPWi=H(IDi||Ri),And verifies whether B2 is equal to the calculation of H (VIDi||IDi||xi||Ri||Wi GID). If the parameters are equal, the parameters are legal, the terminal of the Internet of things is safe and reliable, and the next flow can be executed. Otherwise, the login will stop, re-reading the parameters and computing the verification.
(4) Referring to fig. 3, the process of negotiating the identity authentication and the session key of the terminal of the internet of things comprises the following steps:
(4a) Referring to fig. 3, a member is selected in a group according to the factors of computing power, signal quality, energy storage and the like to be the group leader of the group, and an authentication request is initiated by the group leader (NGL). NGL generates a time stamp T1 and calculates AUTHGL=H(GID||VIDGL||IDGL||T1). Subsequently, NGL sends an authentication message M1=<VIDGL,AUTHGL,T1 > to the ITG.
(4B) Referring to fig. 3, when message M1 is received, the ITG does nothing else but forwards the message to the SC.
(4C) Referring to fig. 3, after receiving the forwarding message of the ITG, the SC first verifies the validity of T1 to ensure the freshness of the message. Then, the SC performs a lookup table according to VIDGL to obtain the identity GID of the group and the true identity IDGL of NGL, and verifies whether AUTHGL is equal to the calculation result of H (gid||vidGL||IDGL||T1). If not, terminating the authentication flow and sending authentication failure information. Otherwise, the SC retrieves all members of the group according to GID and calculates Ki=H(VIDi||GID||GPWi). The SC generates a random number r, and then sends the message M2=<{VIDi,Ki, r, GID > encrypted to the ITG.
(4D) Referring to FIG. 3, the ITG decrypts the message M2 to obtain < { VIDi,Ki }, r, GID >. Subsequently, the ITG calculates for each member NiSKi=H(VIDi||GID||r||Ki),AUTHi-ITG=H(VIDi||GID||r||SKi||Ki||Di).ITG Message M3=<VIDi,Di,AUTHi-ITG > is sent to NGL.
(4E) Referring to fig. 3, NGL receives message M3 and broadcasts it in the group. Ni within the group calculates Ki=H(VIDi||GID||GPWi based on VIDi receiving the corresponding message < VIDi,Di,AUTHi-ITG>.Ni in combination with the parameters acquired at login),SKi=H(VIDi||GID||r||Ki), the group key SKG =h (r||gid), verifies whether AUTHi-ITG is equal to the calculation result of H (VIDi||GID||r||SKi||Ki||Di). If equal, Ni authenticates the SC successfully. Otherwise, authentication fails. Ni calculates AUTHi-N=H(VIDi||GID||Di||r||SKi||SKG||Ki), update the pseudo-identity VIDinew=H(r||VIDi||IDi). Subsequently, Ni sends a message M4=<VIDi,AUTHi-N > to NGL.
(4F) Referring to FIG. 3, upon receipt of each Ni sent message, NGL calculates
Subsequently, NGL sends a message M5=<VIDGL,AUTHt > to the ITG.
(4G) Referring to FIG. 3, upon receipt of message M5, the ITG calculates SKG=H(r||GID),AUTHi-N and verifies if AUTHt is compatible withIs equal to the calculated result of (a). If not, authentication fails and the message M5 is retrieved. Otherwise, the access authentication and the session key negotiation are successful. ITG sends authentication success message to SC, SC calculates SKi=H(VIDi||GID||r||Ki),SKG=H(r||GID),VIDinew=H(r||VIDi||IDi).
(5) And dynamically joining the terminal, namely if a new member is to be added into a certain terminal group, the group key SKG needs to be updated besides necessary authentication so as to ensure forward security and ensure that the new terminal cannot acquire the previous encrypted message. Since the new member is unaware of the current group key, broadcasting the new group key calculation parameters through current group key encryption typically has minimal cost after authenticating the new member is successful. The dynamic joining process of the terminal of the Internet of things comprises the following steps:
(5a) First, new member Nk+1 generates a time stamp T2 and calculates
AUTHk+1=H(GID'||VIDk+1||IDk+1||GPWk+1||T2). Subsequently, Nk+1 sends a message M1=>VIDk+1,AUTHk+1,T2 > to the group leader NGL of the group.
(5B) When NGL receives the message, a message M2=<VIDGL,M1 > is generated and sent to the ITG. The ITG forwards the message to the SC.
(5C) After receiving the message M2, the SC verifies the validity of the T2 a priori, and ensures the freshness of the message. The SC calculation verifies whether AUTHk+1 is equal to the calculation result of H (GID' |vidk+1||IDk+1||GPWk+1||T2). If not, authentication fails, otherwise, the SC authentication Nk+1 succeeds. The SC retrieves the relevant information for the group based on VIDGL in the message, and reconstructs the same as the system of equations in combination with the parameter < yk+1,pk+1 > at registration of Nk+1,
The SC generates a new random number rnew and calculates K'k+1=H(VIDk+1||GID'||GPWk+1),Kk+1=H(VIDk+1||GIDnew||GPWk+1). and then the SC sends the message M3=<{VIDk+1,K'k+1,Kk+1},rnew,GIDnew > encrypted to the ITG.
(5D) When ITG receives message M3, calculate
SKk+1=H(VIDk+1||GIDnew||rnew||Kk+1);
AUTH(k+1)-ITG=H(VIDk+1||GIDnew||rnew||SKk+1||K'k+1||Kk+1||D'k+1||Dk+1)
Subsequently, the ITG sends a message M4=<VIDk+1,D'k+1,Dk+1,AUTH(k+1)-ITG > to Nk+1. At the same time, the ITG sends < rnew,GIDnew > to the original members of the group via the original group key SKG.
(5E) Calculate K'k+1=H(VIDk+1||GID'||GPWk+1 when Nk+1 receives the message),SKk+1=H(VIDk+1||GIDnew||rnew||Kk+1),SKGnew=H(rnew||GIDnew), And verifies whether AUTH(k+1)-ITG is equal to the calculation of H(VIDk+1||GIDnew||rnew||SKk+1||K'k+1||Kk+1||D'k+1||Dk+1). If equal then Nk+1 succeeds in authenticating the SC, otherwise, failure occurs. Nk+1 calculation
AUTH(k+1)-N=H(VIDk+1||GIDnew||D'k+1||Dk+1||rnew||SKk+1||SKGnew||K'k+1||Kk+1), Update pseudo-identity VIDk+1new=H(r||VIDk+1||IDk+1). Subsequently, Nk+1 sends a message M5=<VIDk+1,AUTH(k+1)-N > to the ITG. At the same time, after receiving < rnew,GIDnew >, other members update < SKi,SKG,Wi >.
(5F) When the ITG receives the message, SKGnew=H(rnew||GIDnew is calculated) and verifies that AUTH(k+1)-N is equal to the result of H(VIDk+1||GIDnew||D'k+1||Dk+1||rnew||SKk+1||SKGnew||K'k+1||Kk+1). If the authentication information is equal, the ITG sends an authentication success message to the SC, and the SC updates the < SKi,SKG >. Otherwise, the verification fails, and the M5 needs to be acquired again.
(6) The dynamic removal terminal stage is that when a member in a group is found to have malicious behaviors, the member needs to be evicted from the group. And the group key SKG should be updated as soon as possible to ensure backward security, ensuring that no malicious members can obtain the encrypted message afterwards. Since the current group key is not already secure, the SDN controller needs to update the group identity GID and transmit new security parameters through the session key with each member. The dynamic removal process of the terminal of the Internet of things comprises the following steps:
(6a) First the SC retrieves malicious member Nk, obtaining all relevant record information for its group in the registered table. The SC revokes the legal identity of Nk, modifies its yk to other values y'k, reconstructs the set of congruence equations,
The SC generates a new random number rnew and sends message Mi=<rnew,GIDnew > encrypted over SKi to group members other than malicious member Nk.
(6B) After other members receive < rnew,GIDnew >, < SKi,SKG,Wi > is updated. The SC also recalculates < SKi,SKG > and synchronizes with the ITG through encryption.
(7) The timing update group identity and PUF challenge-response phase requires updating the CRP (Ci,Ri) with the group identity identification GID and PUF challenge-response after a certain period of time. Ni generates a new Cinew and calculates Rinew=PUF(Cinew),GPWinew=H(IDi||Rinew).Ni re-selects the private key xinew∈Z*pi for itself and calculatesNi sends the SC an encrypted message < GPWinew,yinew > over SKi. The SC receives the message and decrypts it, and then reconstructs the congruence equation set to obtain GIDnew. The SC generates a new random number rnew and broadcasts < rnew,GIDnew > to all members by encryption with the group key SKG. Ni decrypts the message and updates < SKi,SKG,Wi,B1,B2 > immediately after it receives the message. After the update, the new session key can be used to exchange data, and the SC and ITG can update the < SKi,SKG > synchronously after receiving the new message.
Finally, it is noted that the above embodiments are only for illustrating the technical solution of the present invention and not for limiting the same, and although the present invention has been described in detail with reference to the preferred embodiments, it should be understood by those skilled in the art that modifications and equivalents may be made thereto without departing from the spirit and scope of the present invention, which is intended to be covered by the claims of the present invention.