Authentication methods and devices
By storing only the address of the service node certificate in a zero-power device or an IoT device and sending the certificate address to the authentication function entity for authentication, the problem of limited storage space of the device is solved, and an efficient authentication process is achieved.
Patent Information
- Application Number
- PCT/CN2023/120361
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-09-21
- Publication Date
- 2025-03-27
AI Technical Summary
When performing network authentication, zero-power devices or IoT devices have limited storage space, making it difficult to implement authentication on the device side without occupying too much storage space.
Device authentication is realized by sending a request message carrying the service node's certificate address to the authentication function entity, without storing the certificate on the device side, only storing the certificate address.
It effectively saves the storage space of the device, reduces the storage cost, and realizes the authentication process of the device.
Smart Images

Figure CN2023120361_27032025_PF_FP_ABST
Abstract
Description
Authentication methods and equipment Technical Field
[0001] The present application relates to the field of communications, and more particularly, to an authentication method, device, computer-readable storage medium, computer program product, and computer program. Background Art
[0002] With the development of technology, IoT devices or zero-power devices need to communicate with the network. To achieve communication between IoT devices or zero-power devices and the network, they must first complete the authentication process. However, zero-power devices or IoT devices often have limited storage space. Therefore, how to achieve authentication on zero-power devices or IoT devices while not occupying excessive storage space has become a problem that needs to be solved.
[0003] Summary of the Invention
[0004] Embodiments of the present application provide an authentication method, device, computer-readable storage medium, computer program product, and computer program.
[0005] This embodiment of the present application provides an authentication method performed by a first device, including:
[0006] A first request message is sent to an authentication function entity, wherein the first request message carries an address of a first certificate, the first certificate is a certificate of a first service node to which the first device belongs, and the first certificate is used to authenticate the identity of the first service node.
[0007] The present invention provides an authentication method performed by an authentication function entity, including:
[0008] A first request message is received, wherein the first request message carries an address of a first certificate, the first certificate is a certificate of a first service node to which the first device belongs, and the first certificate is used to authenticate an identity of the first service node.
[0009] This embodiment of the present application provides an authentication method performed by a second device, including:
[0010] A first request message is sent to the authentication function entity, wherein the first request message carries the address of a first certificate, the first certificate is a certificate of a first service node to which the first device belongs, and the first certificate is used to authenticate the identity of the first service node.
[0011] This embodiment of the present application provides an authentication method performed by a first device, including:
[0012] A third request message is sent to the authentication function entity, wherein the third request message carries a second signature for authenticating the first device, and the second signature is calculated based on the private key of the first device.
[0013] The present invention provides an authentication method performed by an authentication function entity, including:
[0014] A third request message is received from the first device, wherein the third request message carries a second signature for authenticating the first device.
[0015] This embodiment of the present application provides an authentication method performed by a second device, including:
[0016] A first response message is received from an authentication function entity, wherein the first response message carries a first signature for authenticating the authentication function entity.
[0017] The present invention provides an authentication method performed by an authentication function entity, including:
[0018] A first response message is sent to the second device, wherein the first response message carries a first signature for authenticating the authentication function entity.
[0019] This embodiment of the present application provides an authentication method performed by a first device, including:
[0020] An authentication message from a third device is received, wherein the authentication message carries a fourth signature for authenticating the third device and an identifier of the third device.
[0021] This embodiment of the present application provides an authentication method performed by a third device, including:
[0022] An authentication message is sent to the first device, wherein the authentication message carries a fourth signature for authenticating the third device and an identifier of the third device.
[0023] An embodiment of the present application provides a first device, including:
[0024] The first communication unit is used to send a first request message to the authentication function entity, wherein the first request message carries the address of a first certificate, the first certificate is a certificate of a first service node to which the first device belongs, and the first certificate is used to authenticate the identity of the first service node.
[0025] This embodiment of the present application provides an authentication function entity, including:
[0026] The second communication unit is configured to receive a first request message, wherein the first request message carries an address of a first certificate, the first certificate is a certificate of a first service node to which the first device belongs, and the first certificate is used to authenticate the identity of the first service node.
[0027] An embodiment of the present application provides a second device, including:
[0028] The third communication unit is used to send a first request message to the authentication function entity, wherein the first request message carries the address of the first certificate, the first certificate is the certificate of the first service node to which the first device belongs, and the first certificate is used to authenticate the identity of the first service node.
[0029] An embodiment of the present application provides a first device, including:
[0030] The first communication unit is configured to send a third request message to the authentication function entity, wherein the third request message carries a second signature for authenticating the first device, and the second signature is calculated based on a private key of the first device.
[0031] This embodiment of the present application provides an authentication function entity, including:
[0032] The second communication unit is configured to receive a third request message from the first device, wherein the third request message carries a second signature for authenticating the first device.
[0033] An embodiment of the present application provides a second device, including:
[0034] The third communication unit is configured to receive a first response message from the authentication function entity, wherein the first response message carries a first signature used to authenticate the authentication function entity.
[0035] This embodiment of the present application provides an authentication function entity, including:
[0036] The second communication unit is configured to send a first response message to the second device, wherein the first response message carries a first signature used to authenticate the authentication function entity.
[0037] An embodiment of the present application provides a first device, including:
[0038] The first communication unit is configured to receive an authentication message from a third device, wherein the authentication message carries a fourth signature for authenticating the third device and an identifier of the third device.
[0039] This embodiment of the present application provides a third device, including:
[0040] The fourth communication unit is configured to send an authentication message to the first device, wherein the authentication message carries a fourth signature for authenticating the third device and an identifier of the third device.
[0041] An embodiment of the present application provides a first device, comprising a transceiver, a processor, and a memory. The memory is used to store a computer program, and the processor is used to call and run the computer program stored in the memory, so that the first device performs the above method.
[0042] An embodiment of the present application provides a second device, comprising a transceiver, a processor, and a memory, wherein the memory is used to store a computer program, and the processor is used to call and run the computer program stored in the memory, so that the second device performs the above method.
[0043] An embodiment of the present application provides a third device, comprising a transceiver, a processor, and a memory, wherein the memory is used to store a computer program, and the processor is used to call and execute the computer program stored in the memory, so that the third device executes the above method.
[0044] The embodiment of the present application provides an authentication function entity, comprising a transceiver, a processor, and a memory. The memory is used to store a computer program, and the processor is used to call and run the computer program stored in the memory, so that the authentication function entity performs the above method.
[0045] The embodiment of the present application provides a chip for implementing the above method.
[0046] Specifically, the chip includes: a processor, which is used to call and run a computer program from a memory, so that a device equipped with the chip executes the above method.
[0047] An embodiment of the present application provides a computer-readable storage medium for storing a computer program, which enables a device to perform the above method when the computer program is executed by the device.
[0048] An embodiment of the present application provides a computer program product, including computer program instructions, which enable a computer to execute the above method.
[0049] An embodiment of the present application provides a computer program, which, when executed on a computer, enables the computer to execute the above method.
[0050] By adopting the authentication method provided in this embodiment, the first device only needs to send the address of the certificate of the service node to which it belongs to achieve authentication. In this way, while ensuring that the first device achieves authentication, the first device does not need to store too much content, thereby saving the storage space of the first device and reducing the storage cost of the first device. BRIEF DESCRIPTION OF THE DRAWINGS
[0051] FIG1 is a schematic diagram of an application scenario according to an embodiment of the present application.
[0052] FIG2 is a schematic flowchart of an authentication method according to an embodiment of the present application.
[0053] FIG3 is a schematic flowchart of an authentication method according to another embodiment of the present application.
[0054] FIG4 is a schematic flowchart of an authentication method according to another embodiment of the present application.
[0055] FIG5 is a schematic flowchart of an authentication method according to an embodiment of the present application.
[0056] FIG6 is a schematic flowchart of an authentication method according to another embodiment of the present application.
[0057] FIG7 is a schematic flowchart of an authentication method according to another embodiment of the present application.
[0058] FIG8 is a schematic flowchart of an authentication method according to another embodiment of the present application.
[0059] FIG9 is a schematic flowchart of an authentication method according to an embodiment of the present application.
[0060] FIG10 is a schematic flowchart of an authentication method according to another embodiment of the present application.
[0061] FIG11 is a schematic flowchart of an authentication method according to another embodiment of the present application.
[0062] FIG12 is a schematic flowchart of an authentication method according to another embodiment of the present application.
[0063] FIG13 is a schematic flowchart of an authentication method according to another embodiment of the present application.
[0064] FIG14 is a schematic flowchart of an authentication method according to another embodiment of the present application.
[0065] FIG15 is a schematic flowchart of an authentication method according to an embodiment of the present application.
[0066] FIG16 is a schematic flowchart of an authentication method according to another embodiment of the present application.
[0067] FIG17 is a schematic flowchart of an authentication method according to another embodiment of the present application.
[0068] FIG18 is a schematic flowchart of an authentication method according to another embodiment of the present application.
[0069] FIG19 is a schematic block diagram of a first device according to an embodiment of the present application.
[0070] Figure 20 is a schematic block diagram of an authentication function entity according to an embodiment of the present application.
[0071] FIG21 is a schematic block diagram of a second device according to an embodiment of the present application.
[0072] FIG22 is a schematic block diagram of a third device according to an embodiment of the present application.
[0073] FIG23 is a schematic block diagram of a communication device according to an embodiment of the present application.
[0074] Figure 24 is a schematic block diagram of a chip according to an embodiment of the present application.
[0075] Figure 25 is a schematic block diagram of a communication system according to an embodiment of the present application. DETAILED DESCRIPTION
[0076] The technical solutions of the embodiments of the present application can be applied to various communication systems, such as LTE, LTE-A, NR, NR evolution, WLAN, WiFi, or other communication systems.
[0077] The embodiments of the present application describe various embodiments in conjunction with network devices and terminals. The terminals can be mobile or fixed, and can also be referred to as mobile stations, user units, etc. The terminal can be a site in a WLAN, and can be a smart terminal, wireless modem, laptop computer, tablet computer, or other terminal. In the embodiments of the present application, the terminal can be a VR terminal / AR terminal, an industrial control terminal, an unmanned driving terminal, a telemedicine terminal, a smart grid terminal, a transportation safety terminal, a smart city terminal, or a wireless terminal for a smart home, etc. As an example and not a limitation, in the embodiments of the present application, the terminal can also be a wearable device.
[0078] In the embodiment of the present application, the network device may be a device for communicating with a terminal, an access point in a WLAN, an evolved base station in LTE, or a relay station, or a network device (gNB) in an in-vehicle device, a wearable device, and an NR network, or a network device in a future evolved PLMN network or a network device in a non-terrestrial network. As an example and not a limitation, in the embodiment of the present application, the network device may have a mobile feature, for example, the network device may be a mobile device.
[0079] It should be understood that the terms "system" and "network" are often used interchangeably in this article. The term "and / or" in this article is merely a description of the association relationship of associated objects, indicating that three relationships may exist. For example, A and / or B can represent: A exists alone, A and B exist at the same time, and B exists alone. In addition, the character " / " in this article generally indicates that the objects associated before and after are in an "or" relationship. It should be understood that the "indication" mentioned in the embodiments of this application can be a direct indication, an indirect indication, or an indication of an association relationship. For example, A indicates B, which can mean that A directly indicates B, for example, B can be obtained through A; it can also mean that A indirectly indicates B, for example, A indicates C, and B can be obtained through C; it can also mean that there is an association relationship between A and B. In the description of the embodiments of this application, the term "corresponding" can mean that there is a direct or indirect correspondence between the two, or it can mean that there is an association relationship between the two, or it can mean a relationship between indication and indication, configuration and configuration, etc.
[0080] To facilitate understanding of the technical solutions of the embodiments of the present application, the relevant technologies of the embodiments of the present application are described below. The following relevant technologies can be arbitrarily combined with the technical solutions of the embodiments of the present application as optional solutions, and they all fall within the protection scope of the embodiments of the present application.
[0081] Figure 1 exemplarily illustrates a communication system 100. The communication system includes a network device 110 and two terminals 120. In one possible implementation, the communication system 100 may include multiple network devices 110, and each network device 110 may include a different number of terminals 120 within its coverage area, although this embodiment of the present application does not limit this. In one possible implementation, the communication system 100 may also include a mobility management entity, access and mobility management functions, and other network entities, although this embodiment of the present application does not limit this. The network devices may include access network devices and core network devices. That is, the communication system may also include multiple core networks for communicating with the access network devices. The access network devices may be base stations of LTE, LTE-A, or NR systems. Taking the communication system shown in Figure 1 as an example, the communication devices may include network devices and terminals with communication functions. The communication devices may also include other devices in the communication system, such as network controllers, mobility management entities, and other network entities, although this embodiment of the present application does not limit this.
[0082] Figure 2 is a schematic flow chart of an authentication method performed by a first device according to an embodiment of the present application. The method includes at least part of the following contents.
[0083] S210. Send a first request message to an authentication function entity, where the first request message carries an address of a first certificate, the first certificate is a certificate of a first service node to which the first device belongs, and the first certificate is used to authenticate the identity of the first service node.
[0084] Figure 3 is a schematic flow chart of an authentication method performed by an authentication function entity according to another embodiment of the present application. The method includes at least part of the following contents.
[0085] S310. Receive a first request message, where the first request message carries an address of a first certificate, the first certificate is a certificate of a first service node to which the first device belongs, and the first certificate is used to authenticate an identity of the first service node.
[0086] Figure 4 is a schematic flow chart of an authentication method performed by a second device according to another embodiment of the present application. The method includes at least part of the following contents.
[0087] S410. Send a first request message to an authentication function entity, where the first request message carries an address of a first certificate, the first certificate is a certificate of a first service node to which the first device belongs, and the first certificate is used to authenticate the identity of the first service node.
[0088] In the present application, the first device is one of the following: a zero-power device, an Internet of Things device. In some embodiments, the first device can be any one of the following: an ambient power-enabled Internet of Things (AIoT) device, an active zero-power device, a passive zero-power device, a semi-passive zero-power device, and the like. In some embodiments, the first device can also be a terminal with lower computing power. In some possible embodiments, the first device can be called a tag. All possible names or possible device types of the target device are not exhaustively listed here.
[0089] The second device may alternatively be referred to as a proxy device, a proxy node, etc., and the various possible names of the second device are not exhaustively listed or limited here. The second device is one of the following: a terminal, an access network device. The access network device may be any of the following: a base station, a gNB, an eNB, an integrated access backhaul (IAB) node, etc.
[0090] In some embodiments, the second device is a terminal. In such embodiments, the first device and the second device can communicate by transmitting sidelink messages. In some embodiments, the second device can be an access network device. In such embodiments, the first device and the second device can communicate by transmitting AS (Access Stratum) messages.
[0091] The authentication function entity can be deployed in at least one of the following: application function (AF, Application Function), access and mobility management function (AMF, Access and Mobility Management Function), session management function (SMF, Session Management Function), authentication server function (AUSF, Authentication Server Function), unified data management function (UDM, Unified Data Management), unified data storage (UDR, Unified Data Repository), home subscription system (HSS, Home Subscriber System), authentication credential storage and processing function (ARPF, Authentication Credential Repository and Processing Function), boot service function (BSF, Bootstrapping Server Function), security anchor function (SEAF, Security Anchor Function), and core network dedicated network element.
[0092] The authentication function entity may refer to a network element having an authentication function. The authentication function may include at least an AIOT group authentication function and / or a group authentication function. In some possible examples, A-NF may be used to represent an A-IoT group authentication function (NF, Network Function) and / or a group authentication function. In other possible examples, the authentication function may also include at least one of the following: a zero-power group authentication function and / or a group authentication function, an IoT device group authentication function and / or a group authentication function, and the like.
[0093] Exemplarily, the authentication function entity may be formed by adding an authentication function on the basis of the AF of the application server.
[0094] Exemplarily, the authentication function entity may be a newly added core network dedicated network element, which has, is set up, or is configured with an authentication function. In this example, the core network dedicated network element may be called an AIOT authentication function entity, or a zero-power function dedicated authentication function entity, or a zero-power dedicated network element, or a zero-power device dedicated network element, etc., that is, the core network dedicated network element may refer to a network element that has at least zero-power related functions (such as an AIOT authentication function), or a core network network element that can at least serve AIOT (or serve zero-power devices). It should be understood that the core network dedicated network element may be set up separately, or it may be an existing core network network element with a zero-power authentication related function (such as an AIOT or tag authentication function). This embodiment does not enumerate all possible situations.
[0095] Exemplarily, the authentication function entity may be an existing core network element, and the core network element may have a newly added authentication function, or be equipped with a newly configured authentication function. For example, the core network element may be provided with or have at least one of the following functions, and then have a newly added authentication function: AMF, SMF, AUSF, UDM, UDR, HSS, ARPF, BSF, SEAF, etc.
[0096] In some possible implementations, the first device only needs to interact with the authentication function entity to complete the authentication.
[0097] In one embodiment, the first request message may carry at least the address of a first certificate, where the first certificate is a certificate of a first service node to which the first device belongs, and the first certificate is used to authenticate the identity of the first service node.
[0098] In this embodiment, the first device sends the first request message to the authentication function entity, which may mean that the first device directly sends the first request message to the authentication function entity.
[0099] The first certificate is stored in the blockchain. Therefore, the address of the first certificate specifically refers to the address of the first certificate on the blockchain, or the location information of the first certificate on the blockchain. In other words, when the first device initiates authentication, the first device sends the address of its first certificate in the first request message to the authentication function entity.
[0100] The address of the first certificate may be obtained when the first device is registered. The registration process of the first device may include: the first device sends identity proof materials to the first service node (or may also be referred to as the first KGC), the identity proof materials may include at least the identification of the first device, and the identity proof materials may be carried in the registration request; the first device receives the private key corresponding to the first device and the address of the first certificate of the first service node from the first service node, and the first device is successfully registered. Accordingly, the processing of the first service node may include: when the first service node receives the identity proof materials of the first device, it reviews the identity proof materials of the first device. If the review is passed, the first service node generates the private key corresponding to the first device based on its own master private key (for example, represented as s) using a key generation algorithm; the first service node sends the private key corresponding to the first device and the address of the third certificate of the first service node to the first device.
[0101] Accordingly, the authentication function entity receiving the first request message may refer to: receiving the first request message from the first device. Further, the authentication function entity may process after receiving the first request message and further include: authenticating the identity of the first service node based on the address of the first certificate.
[0102] Specifically, authenticating the identity of the first service node based on the address of the first certificate may include: the authentication function entity searching for the first certificate on the blockchain based on the location information (or address) of the first certificate on the blockchain; and if the first certificate is found and it is determined that the first certificate has not been revoked, determining that the identity authentication of the first service node is successful. Furthermore, the method may include: if the first certificate is not found and / or it is determined that the first certificate has been revoked, determining that the identity authentication of the first service node has failed.
[0103] Here, the first request message may also carry auxiliary information related to the first certificate. Accordingly, the method for determining whether the first certificate is revoked may include: the authentication function entity verifies whether the first certificate is revoked based on the auxiliary information related to the first certificate and the product of all revoked revocation factors maintained by the certificate issuing node corresponding to the first service node to which the first device belongs, and obtains a result of whether the first certificate is revoked. The function of the auxiliary information related to the first certificate is to prove that the first certificate has not been revoked (or has been revoked). This embodiment does not limit the specific content of the auxiliary information related to the first certificate.
[0104] The aforementioned identifier can be expressed as an ID, which may include but is not limited to at least one of the following: a factory identifier, a factory unique identifier, an identifier issued by an operator, an identifier issued by a service provider, SUPI (Subscription Permanent Identifier), SUCI (Subscription Concealed Identifier), PEI (Permanent Equipment Identifier), 5G-GUTI (5G Globally Unique Temporary Identifier), Internal-Group Identifier (IGI), GPSI (Generic Public Subscription Identifier), network identifier, etc.; wherein, the network identifier may include: at least one of: IP address (Internet Protocol Address), MAC (Media Access Control) address, etc.
[0105] In one embodiment, the first request message may also be used to trigger the authentication function entity to perform authentication, that is, the first device may initiate authentication. In another embodiment, the authentication function entity may trigger authentication. For example, the authentication function entity may send a message to the first device to trigger authentication before receiving the first request message from the first device, and then the first device may send the first request message.
[0106] In one embodiment, the authentication function entity performs authentication of the first certificate, i.e., a one-way authentication of the first device by the authentication function entity. In this embodiment, if the authentication function entity determines that the identity authentication of the first service node is successful, the authentication function entity may start communication with the first device.
[0107] In one embodiment, when the authentication function entity determines that the identity authentication of the first service node is successful, the method may further include: sending a first response message, wherein the first response message carries information related to a second certificate, the second certificate is used to authenticate the identity of the authentication function entity, and the second certificate carries the public key of the authentication function entity.
[0108] The sending of the first response message includes: sending the first response message to the first device.
[0109] The information related to the second certificate includes one of the following: the address of the second certificate, and the second certificate.
[0110] The address of the second certificate and the second certificate may be obtained when the authentication function entity is registered. The registration process of the authentication function entity may include: the authentication function entity submits the authentication function entity's identification (such as ID), public key (such as PK) and other public information and the signature of the above information (such as σ) to the issuing node; the authentication function entity receives the location information of the second certificate on the chain from the issuing node; here, the authentication function entity may also receive the second certificate from the issuing node. Correspondingly, the processing of the issuing node may include: after the issuing node verifies the identity of the authentication function entity (i.e., the identification and public key of the authentication function entity) and other information, it signs it with the private key of the issuing node to complete the generation of the second certificate of the authentication function entity; the issuing node uploads the generated second certificate to the blockchain and obtains the location information of the certificate on the blockchain; the issuing node issues the second certificate to the authentication function entity and sends the location information of the second certificate on the chain to the authentication function entity.
[0111] Correspondingly, the processing of the first device may further include: receiving a first response message from the authentication function entity, wherein the first response message carries information related to the second certificate, and the second certificate is used to authenticate the identity of the authentication function entity.
[0112] The method further includes one of the following: authenticating the identity of the authentication function entity based on the address of the second certificate; authenticating the identity of the authentication function entity based on the second certificate.
[0113] Optionally, authenticating the identity of the authentication function entity based on the address of the second certificate may include: the first device searching for the second certificate on the blockchain based on the location information (or address) of the second certificate on the blockchain; and determining that the identity authentication of the authentication function entity is successful if the second certificate is found and it is determined that the second certificate has not been revoked. It may also include: the first device determining that the identity authentication of the authentication function entity has failed if the second certificate is not found and / or if it is determined that the second certificate has been revoked.
[0114] Optionally, authenticating the identity of the authentication function entity based on the second certificate may include: if the first device determines that the second certificate has not been revoked, determining that the identity authentication of the authentication function entity is successful. Alternatively, the method may include: if the first device determines that the second certificate has been revoked, determining that the identity authentication of the authentication function entity has failed.
[0115] Here, the first response message may also carry auxiliary information related to the second certificate. The manner in which the first device determines whether the second certificate is revoked may include: the first device verifies whether the second certificate is revoked based on the auxiliary information related to the second certificate and the product of all revoked revocation factors maintained by the certificate issuing node corresponding to the authentication function entity, thereby obtaining a result of whether the second certificate is revoked. The auxiliary information related to the second certificate is used to prove that the second certificate has not been revoked (or has been revoked). This embodiment does not limit the specific content of the auxiliary information related to the second certificate.
[0116] In one embodiment, the authentication function entity performs authentication of the first certificate and the first device performs authentication of the second certificate of the authentication function entity, that is, two-way certificate authentication between the authentication function entity and the first device. In this case, after the authentication function entity determines that the identity authentication of the first service node is successful, if the first device determines that the identity authentication of the authentication function entity is successful, the first device and the authentication function entity can start communication.
[0117] In some possible implementations, signature-related authentication may be added between the first device and the authentication function entity.
[0118] In this embodiment, the first response message also carries a first signature for authenticating the authentication function entity. On the authentication function entity side, the first signature is calculated based on the private key of the authentication function entity. Accordingly, the processing on the first device side may also include: authenticating the authentication function entity based on the public key of the authentication function entity and the first signature.
[0119] Here, the processing timing of the first device authenticating the authentication function entity based on the public key of the authentication function entity and the first signature may be performed after the first device determines that the identity authentication of the authentication function entity is successful.
[0120] In one embodiment, the first signature is calculated based on a first parameter and a private key of the authentication function entity, wherein the first parameter includes at least one of the following: a security parameter of the authentication function entity and an identifier of the authentication function entity.
[0121] In this case, the first response message also carries at least one of the following: security parameters of the authentication function entity, and an identifier of the authentication function entity.
[0122] The content carried in the first response message may be fully or partially related to the first parameter. In one example, the content carried in the first response message may be fully related to the first parameter. For example, the first parameter includes the authentication function entity's identifier and the authentication function entity's security parameters. In addition to the first signature, the first response message also carries the authentication function entity's identifier and the authentication function entity's security parameters. In another example, the content carried in the first response message may be partially related to the first parameter. For example, the first parameter may include the authentication function entity's identifier and the authentication function entity's security parameters, but the first response message may only carry the authentication function entity's security parameters. In another example, the first parameter may include the authentication function entity's security parameters, but the first response message may carry the authentication function entity's identifier and the authentication function entity's security parameters. It should be understood that the above is merely an example. In actual processing, as long as the first response message carries at least the authentication function entity's security parameters and the first parameter includes at least the authentication function entity's security parameters, it falls within the scope of protection of this embodiment. This does not limit or exhaustively enumerate all possible scenarios.
[0123] Here, the private key of the authentication function entity may be pre-configured, and the method for obtaining the private key is not limited in this embodiment.
[0124] In one example, the first parameter may include a security parameter of the authentication function entity. The security parameter of the authentication function entity is used to combine with the security parameter of the first device to derive a session key, which is used for communication between the first device and the authentication function entity. The security parameter may also be referred to as a key generation parameter, a secure calculation parameter, or the like. In some possible examples, the security parameter may be expressed as a DH (Diffie-Hellman) parameter.
[0125] The authentication function entity calculating the first signature may include: the authentication function entity using a signature algorithm to calculate the authentication function entity's security parameters based on the authentication function entity's private key to obtain the first signature. The signature algorithm includes at least one of the following: RSA, SM2, JSON Web Signatures (JWS) algorithm, and an elliptic curve-based signature algorithm. The SM2 algorithm is a domestically developed algorithm launched by the China State Cryptography Administration and is an asymmetric algorithm based on elliptic curves. This does not exhaustively list or limit signature algorithms.
[0126] For example, the first signature calculated by the authentication function entity can be expressed as Sig(X D ·P), where Sig() represents the signature algorithm, X D P represents the DH parameters of the authentication function entity.
[0127] The authentication function entity uses a signature algorithm to calculate the security parameters of the authentication function entity based on the private key of the authentication function entity to obtain the first signature, which may include: the authentication function entity uses a signature algorithm to perform a hash calculation on the security parameters of the authentication function entity to obtain a first hash value, and encrypts the first hash value based on the private key of the authentication function entity to obtain the first signature. For example, it can be expressed as Sig(H(X D P)), where H() represents a hash calculation. The meanings of the other contents in the formula are the same as in the previous embodiment and are not repeated here. Here, the hash calculation can be SHA (Secure Hash Algorithm), and more specifically, SHA-256. It should be understood that this is only an example. In actual processing, any hash calculation algorithm is used within the scope of protection of this embodiment. This does not exhaustively list or limit all possible hash calculation algorithms.
[0128] In one example, the first parameter may include a security parameter of the authentication function entity and an identifier of the authentication function entity.
[0129] The process of calculating the first signature by the authentication function entity may include: using a signature algorithm to calculate the first signature based on the private key of the authentication function entity and the security parameter of the authentication function entity and the identity of the authentication function entity. For example, it can be expressed as Sig(ID D ,X D ·P), where ID D Represents the identifier of the authentication function entity. The meaning of other contents in the formula is the same as that in the previous embodiment and will not be repeated.
[0130] The method of using a signature algorithm to calculate the security parameters of the authentication function entity and the identity of the authentication function entity based on the private key of the authentication function entity to obtain the first signature may include: using a signature algorithm to perform a hash calculation on the security parameters of the authentication function entity and the identity of the authentication function entity to obtain a first hash value, and encrypting the first hash value based on the private key of the authentication function entity to obtain the first signature. For example, it can be expressed as Sig(H(ID D ,X D ·P)), the meaning of each content in the formula is the same as that in the above embodiment and is not repeated here.
[0131] In one embodiment, in addition to including at least one of the security parameters of the authentication function entity and the identifier of the authentication function entity, the first parameter also includes at least one of the following: the identifier of the first device, the first random number, and the second random number.
[0132] The first request message further carries at least one of the following: an identifier of the first device and a first random number. Here, the first random number may be generated by the first device, and this embodiment does not limit the generation method thereof.
[0133] The first response message also carries a second random number. Here, the second random number may be generated by the authentication function entity, and this embodiment does not limit the generation method thereof.
[0134] Optionally, the first parameter may include a security parameter of an authentication function entity and an identifier of the first device.
[0135] The process of calculating the first signature by the authentication function entity may include: using a signature algorithm to calculate the first signature based on the private key of the authentication function entity, the security parameters of the authentication function entity, and the identifier of the first device. For example, it can be expressed as Sig(ID A ,X D ·P), where ID A Represents the identifier of the first device. The meanings of other contents in the formula are the same as those in the above embodiment and are not repeated here.
[0136] The method of using a signature algorithm to calculate the first signature based on the private key of the authentication function entity on the security parameters of the authentication function entity and the identifier of the first device may include: the authentication function entity uses a signature algorithm to perform a hash calculation on the security parameters of the authentication function entity and the identifier of the first device to obtain a first hash value, and encrypts the first hash value based on the private key of the authentication function entity to obtain the first signature. For example, it can be expressed as Sig(H(ID A ,X D ·P)), wherein the meaning of each content in the formula is the same as that in the above embodiment and is not repeated here.
[0137] Optionally, the first parameter may include a security parameter of the authentication function entity, an identifier of the authentication function entity, an identifier of the first device, a second random number, and a first random number.
[0138] The process of calculating the first signature by the authentication function entity may include: using a signature algorithm to calculate the first signature based on the private key of the authentication function entity, the security parameters of the authentication function entity, the identifier of the first device, the second random number, and the first random number. For example, it can be expressed as Sig(N A ,N D ,ID A ,ID D ,X D ·P), where Sig() represents the signature algorithm, N A Represents the second random number, N DRepresents the first random number. The meanings of other contents in the formula are the same as those in the above embodiment and are not described in detail.
[0139] The method of using a signature algorithm to calculate the first signature based on the private key of the authentication function entity on the security parameters of the authentication function entity, the identifier of the authentication function entity, the identifier of the first device, the second random number, and the first random number may include: using a signature algorithm to perform a hash calculation on the security parameters of the authentication function entity, the identifier of the authentication function entity, the identifier of the first device, the second random number, and the first random number to obtain a first hash value, and encrypting the first hash value based on the private key of the authentication function entity to obtain the first signature. For example, the calculation of the first signature may be expressed as Sig(H(N A ,N D ,ID A ,ID D ,X D ·P)), wherein the meaning of each content in the formula is the same as that in the above embodiment and is not repeated here.
[0140] It should be understood that the above are all exemplary descriptions of calculating the first signature. The calculation method of the first signature is not limited or exhaustive, nor are all possible combinations of the first parameters involved in the calculation of the first signature limited or exhaustive. As long as at least one of the above-mentioned first parameters is used in the actual calculation of the first signature, it falls within the scope of protection of this embodiment.
[0141] Correspondingly, in the processing of the first device, the authentication of the authentication function entity based on the public key of the authentication function entity and the first signature includes: the authentication of the authentication function entity based on the first parameter, the public key of the authentication function entity and the first signature, wherein the first parameter includes at least one of the following: the security parameter of the authentication function entity, the identification of the authentication function entity.
[0142] Here, the public key of the authentication function entity is carried in the second certificate. The method for obtaining the second certificate has been described in detail in the above embodiment and will not be repeated here.
[0143] Optionally, the first device may determine a first parameter based on the first response message, and the first parameter may be fully or partially related to the first response message. The first response message further carries at least one of the following: a security parameter of the authentication function entity, and an identifier of the authentication function entity.
[0144] In one example, the first response message carries only the security parameters of the authentication function entity. In this case, the first device may use only the security parameters of the authentication function entity as the first parameters. In one example, the first response message carries only the security parameters of the authentication function entity. In this case, the first device may have obtained the identifier of the authentication function entity in advance, and then use both the identifier of the authentication function entity and the security parameters of the authentication function entity as the first parameters. In one example, the first response message carries the identifier of the authentication function entity and the security parameters of the authentication function entity. The first device may use only the security parameters of the authentication function entity as the first parameters, or the first device may use both the identifier of the authentication function entity and the security parameters of the authentication function entity as the first parameters. It should be understood that the above is only an exemplary description. In actual processing, as long as the first device and the authentication function entity can use the same first parameters, it is within the protection scope of this embodiment, and not all possible situations are limited or enumerated here.
[0145] Optionally, the first device may determine a first parameter based on the first response message and the first request message. The first parameter may be fully or partially correlated with the first response message and the first request message. In addition to including at least one of a security parameter of the authentication function entity and an identifier of the authentication function entity, the first parameter may also include at least one of the following: an identifier of the first device, a first random number, and a second random number. The identifier of the first device and the first random number may be carried in the first request message sent by the first device, and the second random number may be carried in the first response message.
[0146] In one embodiment, the authentication function entity is authenticated based on the first parameter, the public key of the authentication function entity and the first signature. This can be as follows: the first device uses a signature verification algorithm to decrypt the first signature based on the public key of the authentication function entity to obtain first decryption information, and authenticates the authentication function entity based on the first decryption information and the first parameter.
[0147] Optionally, the first decrypted information may include a first parameter to be verified that is the same type as each content in the first parameter; and authenticating the authentication function entity based on the first decrypted information and the first parameter may include one of the following: determining that authentication of the authentication function entity is successful if the first parameter to be verified and the first parameter are the same; and determining that authentication of the authentication function entity is unsuccessful if the first parameter to be verified and the first parameter are different. In this embodiment, the composition of the first parameter has been described in detail in the aforementioned multiple embodiments and will not be repeated here.
[0148] Optionally, the first decryption information may include a first decryption hash value; authenticating the authentication function entity based on the first decryption information and the first parameter may include: the first device performs a hash calculation on the first parameter to obtain a first verification hash value; and authenticating the authentication function entity based on the first decryption hash value and the first verification hash value.
[0149] Authenticating the authentication function entity based on the first decrypted hash value and the first verification hash value may include at least one of the following: determining that authentication of the authentication function entity is successful if the first decrypted hash value and the first verification hash value are the same; and determining that authentication of the authentication function entity is unsuccessful if the first decrypted hash value and the first verification hash value are different. In this embodiment, the composition of the first parameter has been described in detail in the aforementioned embodiments and will not be repeated here.
[0150] Optionally, before the first device authenticates the authentication function entity, the processing of the first device may further include: verifying whether the authentication function entity has been revoked based on the identifier of the authentication function entity carried in the first response message. Here, verifying whether the second device has been revoked may refer to: the first device searching for the status of the identifier of the authentication function entity on the blockchain, and determining that the authentication function entity has not been revoked if the status corresponding to the identifier of the authentication function entity stored on the blockchain is not revoked; otherwise, determining that the authentication function entity has been revoked. Further, if it is determined that the authentication function entity has not been revoked, the first device may continue to perform subsequent authentication processing of the authentication function entity, which will not be repeated here.
[0151] In some possible implementations, the processing of the first device may further include: sending a third request message to the authentication function entity, wherein the third request message carries the second signature for authenticating the first device, and the second signature is calculated based on the private key of the first device.
[0152] Specifically, sending the third request message to the authentication function entity may refer to: when the first device determines that the authentication function entity is successfully authenticated, sending the third request message to the authentication function entity.
[0153] Optionally, when the first device determines that the authentication of the authentication function entity has failed, the processing of the first device may further include: the first device ends the processing, or the first device sends an indication of the authentication failure of the authentication function entity to the authentication function entity.
[0154] Optionally, if the first device determines that authentication of the authentication function entity is successful, the processing of the first device may further include: the first device sending a third request message to the authentication function entity. In one example, the first device may implicitly indicate to the authentication function entity that authentication of the authentication function entity is successful by including the second signature in the third request message. In another example, in addition to including the second signature in the third request message, the first device may also include a display indication to indicate to the authentication function entity that authentication is successful.
[0155] In one embodiment, the second signature is calculated based on the private key of the first device and a second parameter, where the second parameter includes at least one of the following: an identifier of the first device and a security parameter of the first device. The third request message also carries at least one of the following: an identifier of the first device and a security parameter of the first device.
[0156] The content carried in the third request message may be fully or partially related to the second parameter. In one example, the content carried in the third request message may be fully related to the second parameter. For example, the second parameter includes the identifier of the first device and the security parameters of the first device, and the third request message carries the identifier of the first device and the security parameters of the first device in addition to the first signature. In another example, the content carried in the third request message may be partially related to the second parameter. For example, the second parameter may include the identifier of the first device and the security parameters of the first device, but the third request message may only carry the security parameters of the first device. For another example, the second parameter may include the security parameters of the first device, but the third request message may carry the identifier of the first device and the security parameters of the first device. It should be understood that the above is only an example. In actual processing, as long as the third request message carries at least the security parameters of the first device and the second parameter includes at least the security parameters of the first device, it is within the scope of protection of this embodiment. This does not limit or exhaust all possible situations.
[0157] Here, the private key of the first device may be obtained when the first device is registered. The registration process of the first device has been described in detail in the above embodiment and will not be repeated here.
[0158] The function of the security parameter of the first device may be to obtain a session key in combination with the security parameter of the authentication function entity, and the session key is used for communication between the first device and the authentication function entity.
[0159] The first device may calculate the second signature by using a signature algorithm based on the private key of the first device and the second parameter. Specifically, the first device may calculate the second signature based on the private key of the first device and the second parameter.
[0160] For example, the second parameter may include the identifier of the first device and the DH parameter of the first device; the second signature calculated by the first device may be represented as Sig(ID A ,X A ·P), where Sig() represents the signature algorithm, ID A Indicates the identifier of the first device, X A P represents the DH parameters of the first device. In this case, the second signature is generated using the identifier of the first device. At this point, the second signature can at least authenticate the first device. Furthermore, the second signature is generated using the DH parameters of the first device. This allows the second signature to authenticate the first device while also verifying the validity and integrity of the DH parameters.
[0161] The signature algorithm may include hash calculation and encryption calculation; accordingly, the first device may calculate the second signature based on the private key of the first device on the second parameter, which may include: the first device performs hash calculation on the second parameter to obtain a second hash value, and encrypts the second hash value based on the private key of the first device to obtain the second signature. For example, the second parameter may include the identifier of the first device and the DH parameter of the first device; the calculation of the second signature by the first device may be expressed as Sig(H(ID A ,X A ·P)), wherein Sig() represents the signature algorithm, and the meanings of other contents in the formula are the same as those in the above embodiment and are not repeated here.
[0162] It should be noted that the above is only an exemplary description. With the adjustment of actual needs, in some other possible examples, the second parameter may only include the DH parameter of the first device.
[0163] In one embodiment, in addition to the identifier of the first device and / or the security parameters of the first device, the second parameter may also include at least one of the following: an identifier of the authentication function entity and the second random number. Here, both the identifier of the authentication function entity and the second random number may be carried in the first response message.
[0164] For example, the second parameter may include the identifier of the first device, the DH parameter of the first device, the identifier of the authentication function entity, and the second random number; the second signature calculated by the first device may be expressed as Sig(N D ,ID D ,ID A ,X A ·P), where N D Indicates the second random number, ID Drepresents the identifier of the authentication function entity, and the meaning of the rest of the contents in the formula is the same as that in the above embodiment and will not be repeated; alternatively, the first device calculating the second signature can be expressed as Sig(H(N D ,ID D ,ID A ,X A ·P)), wherein the meaning of each content in the formula is the same as that in the above embodiment and will not be repeated.
[0165] In this example, the ID of the authentication function entity is D The signature may enable the authentication function entity to determine that the first device has received the first response message sent by the authentication function entity. A Signing the third request message prevents the authentication entity from identifying it as spam and ensures that the message is indeed from the first device. When signing the second random number, the second random number can be a fresh value, which can be used to confirm that the message is not a replayed message. Signing the security parameters of the first device is intended to prevent man-in-the-middle attacks inherent in the Diffie-Hellman key exchange protocol.
[0166] It should be understood that the above are all exemplary descriptions of calculating the second signature. The calculation method of the second signature is not limited or exhaustive, nor is the various possible combinations of the second parameters involved in the calculation of the second signature limited or exhaustive. As long as at least one of the above second parameters is used in the actual calculation of the second signature, it is within the scope of protection of this embodiment.
[0167] The processing by the authentication function entity may include: receiving a third request message from the first device, wherein the third request message carries the second signature for authenticating the first device.
[0168] Furthermore, the processing of the authentication function entity may also include: authenticating the first device based on the public key of the first device and the second signature.
[0169] In one embodiment, the third request message further carries at least one of the following: an identifier of the first device, and a security parameter of the first device.
[0170] The authenticating the first device based on the public key of the first device and the second signature includes: authenticating the first device based on a second parameter, the public key of the first device, and the second signature, wherein the second parameter includes at least one of the following: an identification of the first device and a security parameter of the first device.
[0171] Exemplarily, the authentication function entity may determine the second parameter based on the third request message, and the second parameter may be fully or partially related to the third request message. In one example, the third request message carries only the security parameters of the first device. In this case, the authentication function entity may use only the security parameters of the first device as the second parameter. In one example, the third request message carries only the security parameters of the first device. In this case, the authentication function entity may have obtained the identifier of the first device in advance, and then use both the identifier of the first device and the security parameters of the first device as the second parameter. In one example, the third request message carries the identifier of the first device and the security parameters of the first device. The authentication function entity may use only the security parameters of the first device as the second parameter, or may use both the identifier of the first device and the security parameters of the first device as the second parameter.
[0172] Exemplarily, the authentication function entity may determine a second parameter based on the first response message and the third request message, where the second parameter is fully or partially related to the first response message and the second request message. That is, when the first response message carries at least one of the second random number and the authentication function entity's identifier, the authentication function entity may add at least one of the second random number and the authentication function entity's identifier to the second parameter in addition to adding the first device's identifier and / or the first device's security parameters to the second parameter.
[0173] It should be understood that the above is only an exemplary description. In actual processing, as long as the first device and the authentication function entity use the same second parameter, they are within the protection scope of this embodiment. All possible situations are not limited or enumerated here.
[0174] In one embodiment, authenticating the first device based on the second parameter, the public key of the first device, and the second signature can be as follows: using a signature verification algorithm to decrypt the second signature based on the public key of the first device to obtain second decrypted information, and authenticating the first device based on the second decrypted information and the second parameter.
[0175] Here, the public key of the first device includes the identification of the first device. Furthermore, in the process of verifying the second signature, the master public key of the first service node to which the first device belongs will also be used. The master public key of the first service node is the one stored in the first certificate (or carried by the first certificate). That is, using the signature verification algorithm to decrypt the second signature based on the public key of the first device to obtain the second decrypted information may include: using the signature verification algorithm to decrypt the second signature based on the public key of the first device and the master public key of the first service node to obtain the second decrypted information. This embodiment does not limit the way in which the public key of the first device and the master public key of the first service node are used to verify the second signature.
[0176] Optionally, the second decrypted information may include a second parameter to be verified of the same type as each content in the second parameter; and authenticating the first device based on the second decrypted information and the second parameter may include one of the following: determining that authentication of the first device is successful if the second parameter to be verified and the second parameter are the same; and determining that authentication of the first device fails if the second parameter to be verified and the second parameter are different. In this embodiment, the components of the second parameter have been described in detail in the aforementioned embodiments and are not repeated here.
[0177] Optionally, the second decryption information may include a second decryption hash value; authenticating the first device based on the second decryption information and the second parameter may include: performing a hash calculation on the second parameter to obtain a second verification hash value; and authenticating the first device based on the second decryption hash value and the second verification hash value.
[0178] Authenticating the first device based on the second decrypted hash value and the second verification hash value may include at least one of the following: determining that authentication of the first device is successful if the second decrypted hash value and the second verification hash value are identical; and determining that authentication of the first device fails if the second decrypted hash value and the second verification hash value are different. In this embodiment, the composition of the second parameter has been described in detail in the aforementioned embodiments and is not repeated here.
[0179] In some possible implementations, the first device and the authentication function entity may also complete negotiation of the first session key simultaneously during the authentication process.
[0180] When the authentication function entity determines that the authentication of the first device is successful, the processing of the authentication function entity may also include: calculating a first session key based on the security parameters of the authentication function entity and the security parameters of the first device, wherein the first session key is used for communication between the first device and the authentication function entity.
[0181] The processing by the first device may further include: calculating a first session key based on the security parameters of the authentication function entity and the security parameters of the first device, wherein the first session key is used for communication between the first device and the authentication function entity. It should also be noted that the first device may perform the aforementioned processing of calculating the second signature after calculating the first session key; alternatively, the first device may calculate the first session key after successfully authenticating the authentication function entity.
[0182] Here, the first session key used for communication between the first device and the authentication function entity may refer to at least one of the following: the first session key used by the first device to encrypt messages sent to the authentication function entity; the first session key used by the authentication function entity to decrypt messages sent from the first device; the first session key used by the authentication function entity to encrypt messages sent to the first device; the first session key used by the first device to decrypt messages sent from the authentication function entity; the first session key used by the first device to perform security checks on messages sent from the first device; the first session key used by the authentication function entity to perform security checks on messages sent from the first device; the first session key used by the authentication function entity to perform security checks on messages sent to the first device; the first session key used by the authentication function entity to perform security checks on messages sent from the authentication function entity; the first session key used to generate a derived key between the authentication function entity and the first device, where the derived key may include a security key and / or a security key, etc. This does not exhaustively list or limit all possible situations in which the first session key may be used for communication between the first device and the authentication function entity.
[0183] In conjunction with Figure 5, taking the first device as IoT device A and the authentication function entity as authentication function entity D as an example, an exemplary description of the above authentication method is given. In the scenario shown in Figure 5, it is assumed that IoT device A has the ability to search for certificates on the blockchain, so IoT device A can search for the certificate of authentication function entity D on the blockchain; since authentication function entity D usually has the ability to go online, authentication function entity D can search the blockchain for the first certificate of the KGC (i.e., the first service node in the aforementioned embodiment) to which IoT device A belongs and verify on the blockchain whether the identity of IoT device A has been revoked. Assume that IoT device A is directly connected to the network without going through a proxy. IoT device A is in the IBC (Identity-Based Cryptograph) cryptography system by default, and network devices are in the Public Key Infrastructure (PKI) system by default. Authentication function entity D plays the role of an IoT device in the two-tier architecture (the registration and credential verification process is consistent with that of KGC). During the two-way authentication process, the IoT device needs to provide its KGC certificate to the authentication entity D to prove its legitimacy. Similarly, the authentication entity D needs to provide its own certificate to IoT device A to prove its legitimacy. Since KGC certificates are stored on the blockchain, IoT device A only needs to store the address of its KGC certificate on the blockchain, and the verifier can use this address to find the certificate.
[0184] In the scenario shown in Figure 5, it is further assumed that IoT device A needs to perform two-way authentication with authentication function entity D (direct authentication between A and D). IoT device A has the ability to search for certificates on the chain. The specific process includes the following:
[0185] Step 501: IoT device A sends the first random number N A , the location information of the first certificate of the first KGC to which you belong on the chain add KGC , identity (i.e. ID A ) is sent to the authentication function entity D. In this step, the content sent by the Internet of Things device A to the authentication function entity D can be carried by the first request message in the above embodiment, which can be expressed as "A→D:N A ,ID A ,add KGC ”.
[0186] Step 502: After receiving the message from IoT device A, the authentication function entity D adds the first certificate to the chain according to its location information. KGC The first certificate is checked on the chain and whether the first certificate has been revoked is verified. If the first certificate is found and has not been revoked, step 503 is executed; otherwise, the process ends.
[0187] Step 503: Authentication function entity D sends the location information of its second certificate on the chain to IoT device A. D (or directly send the second certificate), the identity ID of the authentication function entity D D , the second random number N D , the session key X negotiated using the DH protocol D P (ie, security parameters of the authentication function entity), first signature.
[0188] The first signature generation process is as follows: the authentication function entity D uses the signature algorithm and uses the private key skD to generate (N A ,N D ,ID A ,ID D ,X D P) Signature, use the private key to sign the fresh value N A The purpose is to allow IoT device A to authenticate that the message it received is not a replay but is indeed from the authentication function entity D, and use the private key to sign the ID A Indicates that the authentication function entity D has received the message sent by the IoT device A; N A 、ID A The signature is optional.
[0189] In this step, the content sent by the authentication function entity D to the IoT device A can be carried by the first response message in the above embodiment, which can be expressed as "D→A:N D ,add D ,ID D ,X D ·P,Sig(N A ,N D ,ID A ,ID D ,X D ·P)”.
[0190] Step 504: After receiving the message from the authentication function entity D, the IoT device A receives the location information of the second certificate on the chain. D , obtain the second certificate through the chain (if the second certificate has been received, obtain the second certificate directly); verify whether the second certificate has been revoked. If not, verify the first signature using the public key of the authentication function entity D. Further, if the first signature verification is successful (i.e., the authentication function entity D is successfully authenticated), execute step 505; otherwise, terminate the process.
[0191] The specific process of verifying the first signature is: IoT device A uses D's public key (pk_D) to verify the authenticity of D's first signature.
[0192] When the first signature is successfully verified (i.e., the authentication function entity is successfully authenticated), IoT device A completes the first session key negotiation by using the DH protocol to negotiate the X D P, X A P (i.e., the security parameter of the IoT device) generates the first session key.
[0193] Step 505: IoT device A sends its own identity (ID A ), the session key X negotiated using the DH protocol A P (i.e. security parameters of IoT devices), second signature. A Optional, in addition, the identity of the authentication function entity (ID D ).
[0194] In this step, the second signature generation process is as follows: IoT device A uses the signature algorithm and its own private key (sk A ) vs (N D ,ID A ,ID D ,X A ·P)(or expressed as Hash(N D ,ID A ,ID D ,XA P)) signature; where N D The purpose is to allow the authentication function entity D to authenticate that the message it received is not a replay but is indeed from the IoT device A, and to use the private key to sign the identification ID of the authentication function entity D Indicates that IoT device A has received the message sent by authentication function entity D; N D 、ID D The signature is optional.
[0195] In this step, the content sent by the Internet of Things device A to the authentication function entity D can be carried by the third request message in the above embodiment, for example, it can be expressed as "A→D:ID A ,X A ·P,Sig(N D ,ID A ,ID D ,X A ·P)”.
[0196] Step 506: After the authentication function entity D receives the message from the IoT device A, the authentication function entity D can verify whether the identity of the IoT device A has been revoked. If it has not been revoked, the authentication function entity D uses the IBC algorithm and the public key pk of the IoT device A to verify whether the identity of the IoT device A has been revoked. A (ie ID A ) Verify the authenticity of the second signature.
[0197] Step 507: Complete identity authentication and key negotiation to start communication. Specifically, if the authentication is successful (i.e., the IoT device A is authenticated successfully), the first session key negotiation is completed. The specific method of the first key negotiation is to use the DH protocol to negotiate the session key X D P, X A P generates a first session key.
[0198] In some possible examples, in conjunction with FIG5 , the IoT device A and the authentication function entity D may only perform one-way certificate authentication, that is, only perform steps 501 to 502; wherein, step 501 may be replaced by the IoT device A adding the location information of the first certificate of the first KGC to which it belongs on the chain. KGC , identity (i.e. ID A (Optional) sent to the authentication function entity D; Step 502 is replaced by the authentication function entity D receiving the message sent by the Internet of Things device A, adding the first certificate according to the location information on the chain KGC The chain checks the first certificate and verifies whether it has been revoked. If the first certificate is found and has not been revoked, the authentication function entity D and IoT device A can begin communication. In other words, only the authentication function entity D needs to complete the identity authentication of IoT device A to complete the one-way authentication.
[0199] In some possible examples, in conjunction with FIG5 , the IoT device A and the authentication function entity D may only perform two-way certificate authentication, that is, only perform steps 501 to 504; wherein, step 501 may be replaced by the IoT device A adding the location information of the first certificate of the first KGC to which it belongs on the chain. KGC , identity (i.e. ID A (Optional) sent to the authentication function entity D; Step 502 is replaced by the authentication function entity D receiving the message sent by the Internet of Things device A, adding the first certificate according to the location information on the chain KGC Check the first certificate on the chain and verify whether the first certificate has been revoked. If the first certificate is found and the first certificate has not been revoked, execute step 503; step 503 is replaced by the authentication function entity D sending the location information of its own second certificate on the chain to the IoT device A. D (or directly send the second certificate); accordingly, step 504 is replaced by the IoT device A receiving the message sent by the authentication function entity D, if it receives the location information of the second certificate on the chain add D , obtain the second certificate on the chain (if the second certificate has been received, it will be obtained directly); verify whether the second certificate has been revoked. If it has not been revoked, then IoT device A has successfully authenticated the identity of authentication function entity D and can begin communication. In other words, only two-way identity authentication is required between authentication function entity D and IoT device A.
[0200] In a possible example, before executing step 501 shown in Figure 5, it can also include: the authentication function entity D sends a message (or information) for triggering authentication to the Internet of Things device A; accordingly, after the Internet of Things device A receives the message for triggering authentication, it executes step 501.
[0201] In some possible implementations, the first device does not have an uplink capability. In this case, the second device is required to act as an agent to assist the first device in completing the authentication process of the second certificate of the authentication function entity.
[0202] In this embodiment, the first device still sends a first request message to the authentication function entity, and the first request message can at least carry the address of the first certificate. After receiving the first request message, the authentication function entity performs the same authentication process on the first certificate as in the previous embodiment and will not be described in detail.
[0203] In one embodiment, the first request message may also be used to trigger the authentication function entity to perform authentication, that is, the first device may initiate authentication. In another embodiment, the authentication function entity may trigger authentication. For example, the authentication function entity may send a message to the first device to trigger authentication before receiving the first request message from the first device, and then the first device may send the first request message.
[0204] In one embodiment, the authentication function entity performs authentication of the first certificate, i.e., a one-way authentication of the first device by the authentication function entity. In this embodiment, if the authentication function entity determines that the identity authentication of the first service node is successful, the authentication function entity may start communication with the first device.
[0205] In one embodiment, when the authentication function entity determines that the identity authentication of the first service node is successful, it sends a first response message carrying information related to the second certificate to the first device. Accordingly, the first device receives the first response message from the authentication function entity, which carries information related to the second certificate. The processing by which the authentication function entity carries information related to the second certificate in the first response message is the same as in the previous embodiment and is not further described.
[0206] Since the first device does not have the uplink capability, the processing after the first device receives the first response message from the authentication function entity also includes: sending a second request message to the second device, wherein the second request message carries information related to the second certificate.
[0207] The processing by the second device may include: receiving a second request message from the first device, wherein the second request message carries information related to the second certificate, and the second certificate is used to authenticate the identity of the authentication function entity.
[0208] The information related to the second certificate includes one of the following: the address of the second certificate, and the second certificate.
[0209] The processing of the second device further includes one of the following: authenticating the identity of the authentication function entity based on the address of the second certificate; authenticating the identity of the authentication function entity based on the second certificate.
[0210] Optionally, the second device authenticating the identity of the authentication function entity based on the address of the second certificate may include: the second device searching for the second certificate on the blockchain based on the location information (or address) of the second certificate on the blockchain; and determining that the identity authentication of the authentication function entity is successful if the second certificate is found and it is determined that the second certificate has not been revoked. This may also include: the second device determining that the identity authentication of the authentication function entity has failed if the second certificate is not found and / or if it is determined that the second certificate is revoked.
[0211] Optionally, the second device authenticating the identity of the authentication function entity based on the second certificate may include: if the second device determines that the second certificate has not been revoked, determining that the identity authentication of the authentication function entity is successful. The method may also include: if the second device determines that the second certificate has been revoked, determining that the identity authentication of the authentication function entity has failed.
[0212] Here, the first response message may also carry auxiliary information related to the second certificate, and the corresponding second request message may also carry auxiliary information related to the second certificate; the way in which the second device determines whether the second certificate is revoked may include: the second device verifies whether the second certificate is revoked based on the auxiliary information related to the second certificate and the product of all revoked revocation factors maintained by the certificate issuing node corresponding to the authentication function entity, and obtains a result of whether the second certificate is revoked. The function of the auxiliary information related to the second certificate is to prove that the second certificate has not been revoked (or has been revoked). This embodiment does not limit the specific content of the auxiliary information related to the second certificate.
[0213] After the second device determines that the identity authentication of the authentication function entity is successful, the method may further include: sending a second response message to the first device, wherein the second response message carries the public key of the authentication function entity, and the public key of the authentication function entity is carried in the second certificate. Accordingly, the processing of the first device may further include: receiving a second response message from the second device, wherein the second response message carries the public key of the authentication function entity.
[0214] The second device may extract the public key of the authentication function entity from the second certificate when determining that the identity authentication of the authentication function entity is successful, and add the public key of the authentication function entity to the second response message and send it to the first device.
[0215] Optionally, the second device may implicitly indicate to the first device an authentication result of successful identity authentication of the authentication function entity by carrying the public key of the authentication function entity in the second response message.
[0216] Optionally, the second device may also display to the first device the result of the identity authentication of the authentication function entity. For example, the second device may carry, in the second response message, not only the public key of the authentication function entity but also an indication indicating that the identity authentication of the authentication function entity is successful.
[0217] In one embodiment, the authentication function entity performs authentication of the first certificate, the second device performs authentication of the second certificate of the authentication function entity and sends the authentication result to the first device, that is, a two-way certificate authentication between the authentication function entity and the first device. In this case, after the authentication function entity determines that the identity authentication of the first service node is successful, if the first device receives the second response message of the second device and determines that the identity authentication of the authentication function entity is successful based on the second response message, the first device and the authentication function entity can start communication.
[0218] In one embodiment, after the first device receives the second response message from the second device, the first device may perform authentication related to the signature between the authentication function entity. In this embodiment, the processes of the authentication function entity calculating and sending the first signature, the first device receiving and verifying the first signature, the first device calculating and sending the second signature, and the authentication function entity receiving and verifying the second signature are the same as in the previous embodiment and are therefore not repeated here.
[0219] In one embodiment, the first device and the authentication function entity may also complete negotiation of the first session key during the authentication process. In this embodiment, the process of calculating the first session key by the first device and the authentication function entity is the same as that in the previous embodiment and will not be repeated.
[0220] In conjunction with Figure 6, the above authentication method is illustrated as follows, taking the first device as IoT device A, the authentication function entity as authentication function entity D, and the second device as an agent. In the scheme of Figure 6, it is assumed that IoT device A does not have the ability to go online, and entrusts the agent to help it find the certificate on the chain and complete the certificate verification calculation. It is assumed that a trust relationship has been established between the agent and IoT device A, and it is assumed that a secure channel has been established between the agent and IoT device A. The process shown in Figure 6 specifically includes:
[0221] The detailed description of steps 601 to 603 is the same as that of steps 501 to 503 in the example of FIG. 5 , and thus will not be repeated.
[0222] Step 604: After receiving the message from the authentication function entity D, the IoT device A forwards the location information of the second certificate of the authentication function entity D (or the second certificate) to the proxy. In this step, the content sent by the IoT device A to the proxy can be carried by the second request message in the above embodiment, for example, it can be expressed as "A→proxy:add D ”.
[0223] Step 605: After receiving the message forwarded by IoT device A, the agent searches the chain for the second certificate and verifies whether the second certificate has been revoked. If the second certificate is not revoked, the agent returns the second certificate Cert. D The public key (PK D ).
[0224] Among them, the agent searches for the second certificate on the chain and verifies whether the second certificate is revoked, which may mean: if the agent receives D's certificate location information, the agent searches for the certificate on the chain and then verifies whether the second certificate is revoked; if the agent receives D's certificate, it directly verifies whether the second certificate is revoked.
[0225] In addition, if the second certificate is not successfully verified and / or the second certificate is revoked, the proxy returns an NG flag indicating authentication failure, terminating the process. Accordingly, IoT device A receives the NG flag indicating the process is terminated, and can then end the process.
[0226] In this step, the agent will return the second certificate Cert D The public key (PK D ) or the failed flag NG can be carried by the second response message in the aforementioned embodiment, for example, it can be expressed as agent→A:pkD or NG.
[0227] Step 606: IoT device A receives the public key (PK D ) and then use the public key (PK D )Verify the second signature.
[0228] If the second signature is invalid (ie, the authentication of the authentication function entity fails), the authentication process is terminated. If the second signature is valid (ie, the authentication of the authentication function entity succeeds), step 606 is executed.
[0229] In addition, in this step, if the second signature is verified to be valid, the negotiation of the first session key can be completed. The specific method is to use X_D·P and X_A·P negotiated by the DH protocol to generate the first session key.
[0230] The processing of steps 607 to 609 is the same as that of steps 505 to 507 in the example of FIG. 5 , and thus will not be described in detail.
[0231] In some possible examples, the IoT device A and the authentication function entity D may only execute steps 601 to 602 in FIG6 ; specifically, step 601 may be replaced by the IoT device A adding the location information of the first certificate of the first KGC to which it belongs on the chain. KGC , identity (i.e. ID A (Optional) sent to the authentication function entity D; Step 602 is replaced by the authentication function entity D receiving the message sent by the Internet of Things device A, adding the first certificate according to the location information on the chain KGC The chain checks the first certificate and verifies whether it has been revoked. If the first certificate is found and has not been revoked, the authentication function entity D and IoT device A can begin communication. In other words, only the authentication function entity D needs to complete the identity authentication of IoT device A to complete the one-way authentication.
[0232] In some possible examples, the IoT device A, the proxy, and the authentication function entity D may only execute steps 601 to 606 in FIG6 ; specifically, step 601 may be replaced by the IoT device A adding the location information of the first certificate of the first KGC to which it belongs on the chain. KGC , identity (i.e. ID A (Optional) sent to the authentication function entity D; Step 602 is replaced by the authentication function entity D receiving the message sent by the Internet of Things device A, adding the first certificate according to the location information on the chain KGC Check the first certificate on the chain and verify whether the first certificate has been revoked. If the first certificate is found and has not been revoked, execute step 603; step 603 is replaced by the authentication function entity D sending the location information of its own second certificate on the chain to the IoT device A. D (Or directly send the second certificate); Step 604 is the same as the above process; Step 605 is replaced by the proxy receiving the message forwarded by IoT device A, searching the chain for the second certificate to verify whether the second certificate has been revoked. If the second certificate is not revoked, the proxy returns a message to IoT device A confirming successful identity authentication of authentication function entity D. Correspondingly, Step 606 is replaced by the proxy receiving the message confirming successful identity authentication of authentication function entity D. IoT device A and authentication function entity D can then begin communication. In other words, only authentication function entity D, the proxy, and IoT device A need to complete two-way identity authentication.
[0233] In a possible example, before executing step 601 shown in Figure 6, it may also include: the authentication function entity D sends a message (or information) for triggering authentication to the Internet of Things device A; accordingly, after the Internet of Things device A receives the message for triggering authentication, it executes step 601.
[0234] In some possible implementations, the first device does not have the ability to go online and has limited computing power. In this case, the second device is required to act as an agent to assist the first device in completing the authentication processing of the second certificate of the authentication function entity and verifying the first signature of the authentication function entity.
[0235] In this implementation manner, the first device sending the first request message to the authentication function entity includes: sending the first request message to the authentication function entity through the second device.
[0236] In one embodiment, the first request message can also be used to trigger the authentication function entity to perform authentication, that is, the first device can initiate authentication. In another embodiment, the authentication function entity can trigger authentication. For example, the authentication function entity can send a message for triggering authentication to the first device (or to the first device through the second device) before receiving the first request message from the first device, and then the first device can send the first request message to the authentication function entity through the second device.
[0237] The processing of the second device includes: sending a first request message from the first device to an authentication function entity, wherein the first request message carries the address of a first certificate, the first certificate is a certificate of a first service node to which the first device belongs, and the first certificate is used to authenticate the identity of the first service node.
[0238] The authentication function entity receives a first request message from a first device, including: receiving the first request message from the first device through a second device.
[0239] After receiving the first request message, the authentication function entity authenticates the identity of the first service node based on the address of the first certificate carried in the first request message. The process is the same as that in the above embodiment and will not be repeated.
[0240] Through the above implementation, the authentication function entity can perform authentication of the first certificate, that is, a one-way authentication of the first device by the authentication function entity. In this case, if the authentication function entity determines that the identity authentication of the first service node is successful, the authentication function entity can start communicating with the first device (or can start communicating with the first device through an agent).
[0241] The difference from the above embodiment is that the authentication function entity sends the first response message, including: sending the first response message to the second device.
[0242] In one embodiment, the processing of the second device may include: receiving a first response message from the authentication function entity, wherein the first response message carries information related to the second certificate, and the second certificate is used to authenticate the identity of the authentication function entity.
[0243] The information related to the second certificate includes one of the following: the address of the second certificate, and the second certificate. The processing by the second device also includes one of the following: authenticating the identity of the authentication function entity based on the address of the second certificate; authenticating the identity of the authentication function entity based on the second certificate. The processing by the second device of authenticating the identity of the authentication function entity based on the address of the second certificate and authenticating the identity of the authentication function entity based on the second certificate are the same as those in the previous embodiment and are not further described.
[0244] In one embodiment, if the second device successfully authenticates the identity of the authentication function entity, it may send an authentication result indicating successful authentication of the identity of the authentication function entity to the first device. And / or if the second device fails to authenticate the identity of the authentication function entity, it may send an authentication result indicating failed authentication of the identity of the authentication function entity to the first device.
[0245] The above authentication function entity performs authentication of the first certificate, the second device performs authentication of the second certificate of the authentication function entity and sends the authentication result to the first device, that is, a two-way certificate authentication between the authentication function entity and the first device. In this case, after the authentication function entity determines that the identity authentication of the first service node is successful, if the first device receives the authentication result of the successful identity authentication of the authentication function entity sent by the second device, the first device and the authentication function entity can start communication.
[0246] In one embodiment, the first response message also carries a first signature. In this embodiment, the authentication function entity calculates the first signature after successfully authenticating the identity of the first service node. The process of calculating the first signature by the authentication function entity is the same as in the previous embodiment and is not described in detail.
[0247] The difference from the previous embodiment is that in this embodiment, the second device completes the verification of the first signature instead of the first device. Specifically, the processing on the second device side may also include: the second device authenticates the authentication function entity based on the public key of the authentication function entity and the first signature, wherein the public key of the authentication function entity is carried by the second certificate.
[0248] The authenticating the authentication function entity based on the public key of the authentication function entity and the first signature includes: authenticating the authentication function entity based on a first parameter, the public key of the authentication function entity and the first signature, wherein the first parameter includes at least one of the following: a security parameter of the authentication function entity and an identifier of the authentication function entity.
[0249] Optionally, the first response message further carries at least one of the following: a security parameter of the authentication function entity, and an identifier of the authentication function entity. The second device may determine the first parameter based on the first response message. The first parameter may be fully or partially correlated with the first response message. The description of the relationship between the first parameter and the first response message is the same as that in the previous embodiment and is not repeated here.
[0250] Optionally, in addition to including at least one of the security parameters of the authentication function entity and the identifier of the authentication function entity, the first parameter also includes at least one of the following: an identifier of the first device, a first random number, and a second random number. The identifier of the first device and the first random number may be carried in the first request message sent by the first device, so that both the first device and the second device can obtain the identifier and the first random number of the first device. The second random number is carried in the first response message.
[0251] The specific processing of the second device to authenticate the authentication function entity based on the first parameter, the public key of the authentication function entity and the first signature is the same as the specific description of the first device to authenticate the authentication function entity based on the first parameter, the public key of the authentication function entity and the first signature in the aforementioned embodiment, except that in this embodiment, it is replaced by the second device, so it is not repeated.
[0252] In one embodiment, the processing by the second device may further include: sending a third response message to the first device, wherein the third response message carries the security parameters of the authentication function entity. Correspondingly, the processing by the first device may further include: receiving a third response message from the second device, wherein the third response message carries the security parameters of the authentication function entity.
[0253] Specifically, sending a third response message to the first device may mean that when the second device determines that the authentication function entity is successfully authenticated, it extracts the security parameters of the authentication function entity from the first response message, carries the security parameters of the authentication function entity in the third response message, and sends it to the first device.
[0254] Furthermore, the third response message also carries at least one of the following: an identifier of the authentication function entity and a second random number. Sending the third response message to the first device may mean that, upon determining that authentication of the authentication function entity is successful, the second device extracts security parameters of the authentication function entity from the first response message, extracts at least one of the identifier of the authentication function entity and the second random number from the first response message, carries the security parameters of the authentication function entity in the third response message, carries at least one of the identifier of the authentication function entity and the second random number in the third response message, and sends the third response message to the first device.
[0255] Optionally, when the second device determines that the authentication of the authentication function entity has failed, the processing of the second device may further include: the second device ending the processing, or the second device sending an indication of the authentication failure of the authentication function entity to the first device.
[0256] Optionally, when the second device determines that the authentication function entity is successfully authenticated, the processing of the second device may further include: the second device sending a third response message to the first device. In one example, the second device may implicitly indicate to the first device that the authentication function entity is successfully authenticated by carrying the security parameters of the authentication function entity in the third response message (or in addition to carrying the security parameters of the authentication function entity, carrying at least one of the identifier of the authentication function entity and the second random number). In one example, in addition to carrying the security parameters of the authentication function entity in the third request message (or in addition to carrying the security parameters of the authentication function entity, carrying at least one of the identifier of the authentication function entity and the second random number), the second device may also carry a display indication to indicate that the authentication function entity is successfully authenticated.
[0257] The processing after the first device receives the third response message may include: sending a third request message to the authentication function entity, wherein the third request message carries the second signature for authenticating the first device, and the second signature is calculated based on the private key of the first device.
[0258] The relevant descriptions regarding the process of calculating the second signature by the first device and the second parameter used to calculate the second signature are the same as the relevant descriptions of the second signature involved in the aforementioned embodiment; after the authentication function entity receives the third request message, based on the public key of the first device and the second signature, the process of authenticating the first device, verifying the method of determining the second parameter used for the second signature, etc. are the same as the relevant descriptions of the second signature involved in the authentication function entity in the aforementioned embodiment, and therefore will not be repeated.
[0259] In one embodiment, the first device and the authentication function entity may also complete negotiation of the first session key during the authentication process. In this embodiment, the process of calculating the first session key by the first device and the authentication function entity is the same as that in the previous embodiment and will not be repeated.
[0260] In conjunction with Figure 7, the first device is IoT device A, the authentication function entity is represented as authentication function entity D, and the second device is a proxy. Assume that IoT device A is a zero-power device but can complete key negotiation. A negotiates the key and signs it, specifically including:
[0261] Step 701: IoT device A sends a first random number N to authentication function entity D via a proxy. A , the location information of the first certificate of the first KGC to which you belong on the chain add KGC , identity (i.e. ID A ).
[0262] Step 702 is the same as step 502 in the aforementioned embodiment and will not be described in detail.
[0263] Step 703: Authentication function entity D sends the location information of its second certificate in the chain to the proxy. D , the identity ID of the authentication function entity D D , the second random number N D , the session key X negotiated using the DH protocol D P (i.e., security parameters of the authentication function entity), first signature. The process of generating the first signature is the same as that in the previous embodiment, so it will not be described in detail. In this step, the content sent by the authentication function entity D to the proxy can be the content carried by the second request message in the previous embodiment.
[0264] Step 704: After the agent receives the message from the authentication function entity D, the agent searches the chain for the second certificate and verifies whether the second certificate has been revoked. If the second certificate is successfully verified to be not revoked, step 705 is executed; otherwise, the process is terminated or a failure flag NG is sent to the IoT device A.
[0265] Step 705: The proxy verifies the first signature using the public key of the authentication function entity D. If the first signature is verified to be valid (or the verification is successful or the authentication function entity D is successfully authenticated), step 706 is executed. Otherwise, the process is terminated or a failure flag NG is sent to the IoT device A. The process of verifying the first signature has been described in detail in the previous embodiment and will not be repeated here.
[0266] Step 706: The proxy forwards the identity ID of the authentication function entity D to the IoT device A D , the second random number N D, the session key X negotiated using the DH protocol D P. Here, the content sent by the proxy to the IoT device may be carried by the third response message in the aforementioned embodiment.
[0267] Step 707: IoT device A receives N D ,ID D ,X D After the negotiation of the session key is completed, the first session key is obtained. The specific method is to use X_D·P and X_A·P negotiated by the DH protocol to generate the first session key.
[0268] Steps 708 to 710 are the same as steps 505 to 507 in the example of FIG. 5 , and are not described again.
[0269] In some possible examples, the IoT device A and the authentication function entity D may only perform steps 701 to 702 of FIG. 7 ; step 701 may be replaced by the IoT device A adding the location information of the first certificate of the first KGC to which it belongs on the chain through the proxy. KGC , identity (i.e. ID A (Optional) sent to the authentication function entity D; Step 702 is replaced by the authentication function entity D adding the location information of the first certificate on the chain KGC The chain checks the first certificate and verifies whether it has been revoked. If the first certificate is found and has not been revoked, the authentication function entity D and IoT device A can begin communication. In other words, only the authentication function entity D needs to complete the identity authentication of IoT device A to complete the one-way authentication.
[0270] In some possible examples, the IoT device A, the proxy, and the authentication function entity D may only perform steps 701 to 704 of FIG. 7 ; wherein step 701 may be replaced by the IoT device A adding the location information of the first certificate of the first KGC to which it belongs on the chain through the proxy. KGC , identity (i.e. ID A (Optional) sent to the authentication function entity D; Step 702 is replaced by the authentication function entity D adding the location information of the first certificate on the chain KGC Go up the chain to check the first certificate and verify whether the first certificate has been revoked. If the first certificate is found and has not been revoked, execute step 703; step 703 is replaced by the authentication function entity D sending the proxy the location information of its second certificate on the chain. D , the identity ID of the authentication function entity D D(Optional) Step 704 is the same as the above process. After completing step 704, the proxy can send an authentication success indication to IoT device A, and then the IoT device can begin communicating with the authentication function entity D. In other words, only the authentication function entity D, the proxy, and IoT device A need to complete two-way identity authentication.
[0271] In a possible example, before executing step 701 of Figure 7, the authentication function entity D sends a message (or information) for triggering authentication to the IoT device A, and then the IoT device A executes step 701 again.
[0272] In some possible implementations, the first device does not have the ability to go online and has limited computing power. In this case, the second device is required to act as an agent to perform authentication processing of the second certificate of the paired authentication function entity, verify the first signature of the authentication function entity, and generate a third signature for the authentication function entity to authenticate the second device.
[0273] In one implementation, the sending of the first request message by the first device to the authentication function entity includes: sending the first request message to the authentication function entity through the second device.
[0274] On the second device side, the process of sending a first request message to the authentication function entity includes: sending the first request message from the first device to the authentication function entity, wherein the first request message carries the address of the first certificate, the first certificate is the certificate of the first service node to which the first device belongs, and the first certificate is used to authenticate the identity of the first service node.
[0275] The authentication function entity receives the first request message, including: receiving the first request message from the second device. Specifically, receiving the first request message from the second device may include: receiving the first request message from the first device forwarded by the second device.
[0276] After receiving the first request message, the authentication function entity authenticates the identity of the first service node based on the address of the first certificate carried in the first request message. The process is the same as that in the above embodiment and will not be repeated.
[0277] In one embodiment, the first request message can also be used to trigger the authentication function entity to perform authentication, that is, the first device can initiate authentication. In another embodiment, the authentication function entity can trigger authentication. For example, the authentication function entity can send a message for triggering authentication to the first device before receiving the first request message from the first device. The first device then sends the first request message to the authentication function entity through the second device.
[0278] In another embodiment, the second device side sends the first request message to the authentication function entity by: the second device directly sends the first request message to the authentication function entity.
[0279] In this implementation, since the second device can be an agent of the first device, the second device itself can trigger the authentication between the first device and the authentication function entity. As for how the second device specifically determines that it needs to trigger the authentication, it can be based on the policy or default configured for the second device, and this embodiment does not limit it.
[0280] Furthermore, in this embodiment, the second device acts as a proxy for the first device and can pre-obtain information related to the first device, which may include the address of the first certificate. Exemplary methods for the second device to obtain the address of the first certificate include: pre-establishing a communication connection between the second device and the first device, and obtaining the address of the first certificate from the first device via the communication connection; or pre-configuring or storing the address of the first certificate on the second device.
[0281] In this embodiment, the authentication function entity receiving the first request message may refer to: the authentication function entity receiving the first request message from the second device. Further, the authentication function entity performs the same authentication process on the first certificate after receiving the first request message as in the above embodiment, and will not be described in detail.
[0282] In one embodiment, the first request message can also be used to trigger the authentication function entity to perform authentication, that is, the second device can initiate authentication. In another embodiment, the authentication function entity can trigger authentication. For example, the authentication function entity can send a message (for example, carrying the identifier of the first device) to the second device before receiving the first request message from the second device, and then the second device sends the first request message to the authentication function entity.
[0283] Through the above-mentioned various possible implementations, the authentication function entity can perform authentication of the first certificate, that is, one-way authentication of the first device by the authentication function entity. In this case, if the authentication function entity determines that the identity authentication of the first service node is successful, the authentication function entity can start communicating with the first device (or the authentication function entity can start communicating with the first device through the second device).
[0284] In one embodiment, the authentication function entity sends the first response message, including: sending the first response message to the second device.
[0285] The processing by the second device may include: receiving a first response message from the authentication function entity, wherein the first response message carries information related to a second certificate, and the second certificate is used to authenticate the identity of the authentication function entity. The processing by the second device of authenticating the identity of the authentication function entity based on the address of the second certificate and the processing of authenticating the identity of the authentication function entity based on the second certificate are the same as those in the above embodiment and are not further described.
[0286] In one embodiment, if the second device successfully authenticates the identity of the authentication function entity, it may send an authentication result indicating successful authentication of the identity of the authentication function entity to the first device, or send a notification or indication to the first device indicating that it is able (or may) to start communication with the authentication function entity. And / or, if the second device fails to authenticate the identity of the authentication function entity, it may send an authentication result indicating failed authentication of the identity of the authentication function entity to the first device, or send a notification or indication to the first device indicating that it is unable (or may not) to communicate with the authentication function entity, or directly terminate the processing.
[0287] The above authentication function entity performs authentication of the first certificate, the second device performs authentication of the second certificate of the authentication function entity and sends the authentication result to the first device, that is, a two-way certificate authentication between the authentication function entity and the first device. In this case, after the authentication function entity determines that the identity authentication of the first service node is successful, if the first device receives the authentication result of the successful identity authentication of the authentication function entity sent by the second device, or is able to (or can) start communication with the authentication function entity. Notification or indication, then the first device (or through the second device) and the authentication function entity can start communication.
[0288] In one embodiment, the first response message also carries a first signature. In this embodiment, the authentication function entity calculates the first signature after successfully authenticating the identity of the first service node. The process by which the authentication function entity calculates the first signature is the same as in the previous embodiment and is not further described. In this embodiment, the description of the second device verifying the first signature is the same as in the previous embodiment and is not further described.
[0289] In one embodiment, the processing of the second device may further include: sending a fourth request message to the authentication function entity, wherein the fourth request message carries a third signature for authenticating the second device, and the third signature is calculated based on the private key of the second device.
[0290] Specifically, a fourth request message is sent to the authentication function entity: when the second device determines that the authentication function entity is successfully authenticated, the fourth request message is sent to the authentication function entity.
[0291] Optionally, when the second device determines that the authentication of the authentication function entity has failed, the processing of the second device may also include: the second device ends the processing, or the second device sends an indication of the authentication failure of the authentication function entity to the authentication function entity and / or the first device.
[0292] Optionally, if the second device determines that authentication of the authentication function entity is successful, the processing of the second device may further include: the second device sending a fourth request message to the authentication function entity. In one example, the second device may implicitly indicate to the authentication function entity that authentication of the authentication function entity is successful by including a third signature in the fourth request message. In another example, in addition to including the third signature in the fourth request message, the second device may also include a display indication to indicate to the authentication function entity that authentication is successful.
[0293] In one embodiment, the third signature is calculated based on the private key of the second device and a third parameter, where the third parameter includes at least one of the following: an identifier of the second device and a security parameter of the second device. The fourth request message also carries at least one of the following: an identifier of the second device and a security parameter of the second device.
[0294] The content carried in the fourth request message may be fully or partially related to the third parameter. In one example, the content carried in the fourth request message may be fully related to the third parameter. For example, the third parameter includes the identifier of the second device and the security parameters of the second device. In addition to carrying the third signature, the fourth request message also carries the identifier of the second device and the security parameters of the second device. In one example, the content carried in the fourth request message may be partially related to the third parameter. For example, the third parameter may include the identifier of the second device and the security parameters of the second device, but the fourth request message may only carry the security parameters of the second device. For another example, the third parameter may include the security parameters of the second device, but the fourth request message may carry the identifier of the second device and the security parameters of the second device. It should be understood that the above is only an exemplary description. In actual processing, as long as the fourth request message carries at least the security parameters of the second device and the third parameter includes at least the security parameters of the second device, it is within the scope of protection of this embodiment. All possible situations are not limited or exhaustive here.
[0295] Here, the private key of the second device may be obtained when the second device is registered. The registration process of the second device is similar to the registration process of the first device in the aforementioned embodiment, and will not be repeated here.
[0296] The function of the security parameter of the second device may be to obtain a second session key in combination with the security parameter of the authentication function entity, and the second session key is used for communication between the second device and the authentication function entity.
[0297] The second device may calculate the third signature by using a signature algorithm based on the private key of the second device and a third parameter. Specifically, the second device may calculate the third signature based on the private key of the second device and the third parameter.
[0298] For example, the third parameter may include the identifier of the second device and the DH parameter of the second device; the second device calculates the third signature which may be represented as Sig(ID 代理 ,X 代理 ·P), where Sig() represents the signature algorithm, D 代理 Indicates the identifier of the second device, X 代理 P represents the DH parameters of the second device. In this case, the third signature can at least authenticate the second device by signing the second device's identity. Simultaneously, the DH parameters of the second device are generated, so that the third signature not only authenticates the second device but also verifies the validity and integrity of the DH parameters of the second device.
[0299] The signature algorithm may include hash calculation and encryption calculation; accordingly, the second device may calculate the third parameter based on the private key of the second device to obtain the third signature, which may include: the second device performs hash calculation on the third parameter to obtain a third hash value, and encrypts the third hash value based on the private key of the second device to obtain the third signature. For example, the third parameter may include the identifier of the second device and the DH parameter of the second device; the calculation of the third signature by the second device may be expressed as Sig(H(ID 代理 ,X 代理 ·P)), wherein the meaning of each content in the formula is the same as that in the above embodiment and is not repeated here.
[0300] It should be noted that the above is only an exemplary description. With the adjustment of actual needs, in some other possible examples, the third parameter may only include the DH parameter of the second device.
[0301] In one embodiment, in addition to the identification of the second device and / or the security parameters of the second device, the third parameter also includes at least one of the following: the identification of the authentication function entity, the identification of the first device, the first random number, and the second random number.
[0302] Here, the first request message also carries at least one of the following: the identifier of the first device and the first random number. Therefore, when the second device forwards the first request message, it can obtain the identifier of the first device and the first random number from the first request message, and can also sign the identifier of the first device and / or the first random number when generating the third signature.
[0303] The first response message may carry at least one of an authentication function entity identifier, a security parameter of the authentication function entity, and a second random number. Therefore, the second device may obtain the authentication function entity identifier and the second random number from the first response message, and further, may also sign the authentication function entity identifier and / or the second random number when generating the third signature.
[0304] It should also be noted that when the second device forwards the first request message, the identifier of the second device may be further added to the first request message.
[0305] For example, the third parameter may include the identifier of the second device, the DH parameter of the second device, the identifier of the authentication function entity, and the second random number; the third signature calculated by the second device may be expressed as Sig(N D ,ID D ,ID 代理 ,X 代理 ·P), where N D Indicates the second random number, ID D The rest of the formula has the same meaning as in the above embodiment and will not be described again. Alternatively, it can be expressed as Sig(H(N D ,ID D ,ID 代理 ,X 代理 ·P)), wherein the meaning of each content in the formula is the same as that in the above embodiment and will not be repeated.
[0306] For example, the third parameter may include the identifier of the second device, the DH parameter of the second device, the identifier of the authentication function entity, the second random number, the first random number, and the identifier of the first device; the third signature calculated by the second device may be expressed as Sig(N D ,ID D ,N A ,ID A ,ID 代理 ,X 代理 ·P), where N D Indicates the second random number, ID D Indicates the identity of the authentication function entity, N A Indicates the first random number, ID Arepresents the identifier of the first device. The meanings of the rest of the formula are the same as those in the above embodiment and are not repeated here. Alternatively, it can be expressed as Sig(H(N D ,ID D ,N A ,ID A ,ID 代理 ,X 代理 ·P)), wherein the meaning of each content in the formula is the same as that in the above embodiment and will not be repeated.
[0307] It should be noted that the above is only an exemplary description. As actual needs change, the third parameter may also include other parameters, and the combination of the third parameters may also be different from the above examples. All possible examples are not enumerated here. As long as at least one of the above third parameters is used when the third signature is actually calculated, it is within the scope of protection of this embodiment.
[0308] The processing by the authentication function entity may include: receiving a fourth request message from the second device, wherein the fourth request message carries a third signature for authenticating the second device.
[0309] Furthermore, the processing of the authentication function entity may also include: authenticating the second device based on the public key of the second device and the third signature.
[0310] In one embodiment, the fourth request message further carries at least one of the following: an identifier of the second device, and a security parameter of the second device.
[0311] The authenticating the second device based on the public key of the second device and the third signature includes: authenticating the second device based on a third parameter, the public key of the second device, and the third signature, wherein the third parameter includes at least one of the following: an identification of the second device and a security parameter of the second device.
[0312] Exemplarily, the authentication function entity may determine the third parameter based on the fourth request message, and the third parameter may be fully or partially related to the fourth request message. In one example, the fourth request message carries only the security parameters of the second device. In this case, the authentication function entity may use only the security parameters of the second device as the third parameter. In one example, the fourth request message carries only the security parameters of the second device. In this case, the authentication function entity may have obtained the identifier of the second device in advance (for example, when the second device forwards the first request message, the identifier of the second device is carried in the first request message and forwarded to the authentication function entity), and then the identifier of the second device and the security parameters of the second device may be used together as the third parameter. In one example, the fourth request message carries the identifier of the second device and the security parameters of the second device. The authentication function entity may use only the security parameters of the second device as the third parameter, or may use both the identifier of the second device and the security parameters of the second device as the third parameter.
[0313] Exemplarily, the authentication function entity may determine a third parameter based on the first response message and the fourth request message, where the third parameter is fully or partially related to the first response message and the fourth request message. That is, when the first response message carries at least one of the second random number and the authentication function entity's identifier, the authentication function entity may add at least one of the second random number and the authentication function entity's identifier to the third parameter in addition to adding the second device's identifier and / or the second device's security parameters.
[0314] Exemplarily, the authentication function entity may determine a third parameter based on the first response message, the fourth request message, and the first request message, where the third parameter is fully or partially related to the first response message, the first request message, and the fourth request message. Specifically, if the first response message carries at least one of the second random number and the authentication function entity's identifier, and the first request message carries the first device's identifier and the first random number, the authentication function entity may add at least one of the second random number, the authentication function entity's identifier, the first random number, and the first device's identifier to the third parameter, in addition to adding the second device's identifier and / or the second device's security parameters to the third parameter.
[0315] It should be understood that the above is only an exemplary description. In actual processing, as long as the second device and the authentication function entity use the same third parameter, they are within the protection scope of this embodiment. All possible situations are not limited or enumerated here.
[0316] In one embodiment, authenticating the second device based on the third parameter, the public key of the second device, and the third signature may include: decrypting the third signature using a signature verification algorithm based on the public key of the second device to obtain third decrypted information, and authenticating the second device based on the third decrypted information and the third parameter. Here, the public key of the second device serves as an identifier of the second device.
[0317] Optionally, the third decrypted information may include a third parameter to be verified that is the same type as each content in the third parameter; and authenticating the second device based on the third decrypted information and the third parameter may include one of the following: determining that authentication of the second device is successful if the third parameter to be verified and the third parameter are the same; and determining that authentication of the second device is unsuccessful if the third parameter to be verified and the third parameter are different. In this embodiment, the composition of the third parameter has been described in detail in the aforementioned embodiments and is not repeated here.
[0318] Optionally, the third decryption information may include a third decryption hash value; authenticating the second device based on the third decryption information and the third parameter may include: performing a hash calculation on the third parameter to obtain a third verification hash value; and authenticating the second device based on the third decryption hash value and the third verification hash value.
[0319] Authenticating the second device based on the third decrypted hash value and the third verification hash value may include at least one of the following: determining that authentication of the second device is successful if the third decrypted hash value and the third verification hash value are identical; and determining that authentication of the second device is unsuccessful if the third decrypted hash value and the third verification hash value are different. In this embodiment, the composition of the third parameter has been described in detail in the aforementioned embodiments and is not repeated here.
[0320] In some possible implementations, during the process of the first device being authenticated by the second device and the authentication function entity, negotiation of the second session key may also be completed simultaneously.
[0321] When the authentication function entity determines that the authentication of the second device is successful, the processing of the authentication function entity may also include: calculating a second session key based on the security parameters of the authentication function entity and the security parameters of the second device, wherein the second session key is used for communication between the second device and the authentication function entity.
[0322] If the second device successfully authenticates the authentication function entity, the second device's processing may further include: calculating a second session key based on the security parameters of the authentication function entity and the security parameters of the second device, wherein the second session key is used for communication between the second device and the authentication function entity. It should also be noted that the second device may perform the aforementioned process of calculating the third signature after calculating the second session key.
[0323] Here, the second session key is used for communication between the second device and the authentication function entity, and specifically may refer to at least one of the following: the second session key is used by the second device to decrypt the message sent by the authentication function entity to the first device and send it to the first device; the second session key is used by the second device to encrypt the message sent by the first device to the authentication function entity and send it to the authentication function entity; the second session key is used by the authentication function entity to decrypt the message of the first device forwarded by the second device; the second session key is used by the authentication function entity to encrypt the message sent to the first device through the second device; the second session key is used by the second device to secure the message sent by the first device to the authentication function entity; the second session key is used by the authentication function entity to perform security verification on the message received from the first device through the second device; the second session key is used by the authentication function entity to secure the message sent to the first device through the second device; the second session key is used by the second device to perform security verification on the message sent to the first device by the authentication function entity; the second session key is used to generate a derivative key between the authentication function entity and the second device, and the derivative key may include a security key and / or a security key, etc. In addition, the second session key can also be used for encryption, decryption, security, security verification, etc. of messages to be transmitted between the second device and the authentication function entity. Here, all possible situations in which the first session key is used for communication between the first device and the authentication function entity are not exhaustively listed and limited.
[0324] In one embodiment, after the second device sends the fourth request message to the authentication function entity, the second device may further include: sending a third response message to the first device, where the third response message is used to indicate successful authentication. Correspondingly, the processing of the first device may further include: receiving a third response message from the second device, where the third response message is used to indicate successful authentication.
[0325] Optionally, the third response message is used to indicate successful authentication, which may mean that: the second device successfully authenticates the authentication function entity; or, the second device successfully authenticates the authentication function entity, and the authentication function entity successfully authenticates the first device.
[0326] Optionally, in addition to indicating that the authentication is successful, the third response message may also be used to instruct the first device to start communication. In one possible example, the third response message may carry a first indication information for explicitly indicating that the authentication is successful, and implicitly instruct the first device to start communication through the first indication information. In one possible example, the third response message may carry a second indication information for explicitly instructing the first device to start communication, and implicitly instruct the authentication is successful through the second indication information. In one possible example, the third response message may carry the first indication information for indicating that the authentication is successful, and carry the second indication information for instructing the first device to start communication.
[0327] After the first device receives the third response message indicating that the authentication is successful, the first device may communicate with the authentication function entity through the second device.
[0328] In conjunction with Figure 8, the first device is IoT device A, the authentication function entity is represented as authentication function entity D, and the second device is a proxy. Assuming that IoT device A is a zero-power device and cannot complete key negotiation, the proxy negotiates the key and signs. The specific process is as follows:
[0329] Step 801: IoT device A sends a first random number N to authentication function entity D via a proxy. A , the location information of the first certificate of the first KGC to which you belong on the chain add KGC , identity (i.e. ID A ).
[0330] In a possible example, step 801 can also be replaced by step 801', where the agent sends a first random number N to the authentication function entity D. A , the location information of the first certificate of the first KGC to which IoT device A belongs on the chain add KGC , the identity of IoT device A (i.e., ID A ).
[0331] The processing of steps 802 to 805 is the same as the related description of steps 702 to 705 shown in FIG7 , and will not be repeated here.
[0332] Step 806: The agent completes the negotiation of the second session key and obtains the second session key. The specific method is to use the DH protocol to negotiate the X D P, X 代理 P generates a second session key.
[0333] Step 807: The agent sends its own identity ID to the authentication function entity D 代理 、ID A , the session key X negotiated using the DH protocol 代理 P and the third signature. N D The purpose is to allow D to verify that the message it receives is not a replay but is indeed from the proxy, and use the private key to sign the ID D Indicates that the message sent by D has been received; N D 、ID D Signature is optional, ID A Optional Send.
[0334] Step 808: After receiving the proxy message, the authentication function entity D uses the proxy's public key to verify the third signature. If the verification is successful, it is determined that the identity authentication is completed and the session key negotiation is completed to obtain the second session key. The second session key can be generated using X D P, X 代 理 P generates a second session key.
[0335] Step 809: The proxy sends a notification of successful authentication and start of communication to IoT device A.
[0336] In some possible examples, the IoT device A and the authentication function entity D may only perform steps 801 (or 801′) to 802 of FIG. 8 ; step 801 may be replaced by the IoT device A adding the location information of the first certificate of the first KGC to which it belongs on the chain through the proxy. KGC , identity (i.e. ID A (Optional) sent to the authentication function entity D; or step 801' is replaced by the agent sending the first certificate of the first KGC to which the Internet of Things device A belongs to the location information on the chain add to the authentication function entity D. KGC , the identity of IoT device A (i.e., ID A Step 802 is replaced by the authentication function entity D adding the first certificate according to the location information on the chain. KGC The chain checks the first certificate and verifies whether it has been revoked. If the first certificate is found and has not been revoked, the authentication function entity D and IoT device A can begin communication. In other words, only the authentication function entity D needs to complete the identity authentication of IoT device A to complete the one-way authentication.
[0337] In some possible examples, the IoT device A, the proxy, and the authentication function entity D may only perform steps 801 (or 801′) to 804 of FIG8 ; wherein step 801 may be replaced by the IoT device A adding the location information of the first certificate of the first KGC to which it belongs on the chain through the proxy. KGC , identity (i.e. ID A(Optional) sent to the authentication function entity D; or step 801' is replaced by the agent sending the first certificate of the first KGC to which the Internet of Things device A belongs to the location information on the chain add to the authentication function entity D. KGC , the identity of IoT device A (i.e., ID A Step 802 is replaced by the authentication function entity D adding the first certificate according to the location information on the chain. KGC Go up the chain to check the first certificate and verify whether the first certificate has been revoked. If the first certificate is found and the first certificate has not been revoked, execute step 803; step 803 is replaced by the authentication function entity D sending the proxy the location information of its second certificate on the chain. D , the identity ID of the authentication function entity D D (Optional) Step 804 is the same as the above process. After completing step 804, the proxy can send an authentication success indication to IoT device A, and then the IoT device can begin communicating with the authentication function entity D. In other words, only the authentication function entity D, the proxy, and IoT device A need to complete two-way identity authentication.
[0338] In a possible example, before executing step 801 of Figure 8, the authentication function entity D sends a message (or information) for triggering authentication to the IoT device A, and then the IoT device A executes step 801 again.
[0339] In a possible example, before executing step 801' of Figure 8, the authentication function entity D sends a message (or information) for triggering authentication to the agent (which may carry the identity (i.e., identification) of the IoT device A), and then the agent executes step 801'.
[0340] By adopting the authentication method provided in this embodiment, the first device only needs to send the address of the certificate of the service node to which it belongs to achieve authentication. In this way, while ensuring that the first device achieves authentication, the first device does not need to store too much content, thereby saving the storage space of the first device and reducing the storage cost of the first device.
[0341] Figure 9 is a schematic flow chart of an authentication method performed by a first device according to an embodiment of the present application. The method includes at least part of the following contents.
[0342] S910. Send a third request message to the authentication function entity, where the third request message carries a second signature for authenticating the first device, and the second signature is calculated based on a private key of the first device.
[0343] Figure 10 is a schematic flow chart of an authentication method performed by an authentication function entity according to another embodiment of the present application. The method includes at least part of the following contents.
[0344] S1010. Receive a third request message from a first device, where the third request message carries a second signature for authenticating the first device.
[0345] Figure 11 is a schematic flow chart of an authentication method performed by a second device according to another embodiment of the present application. The method includes at least part of the following contents.
[0346] S1110. Receive a first response message from an authentication function entity, wherein the first response message carries a first signature used to authenticate the authentication function entity.
[0347] Figure 12 is a schematic flow chart of an authentication method performed by an authentication function entity according to another embodiment of the present application. The method includes at least part of the following contents.
[0348] S1210. Send a first response message to the second device, where the first response message carries a first signature for authenticating the authentication function entity.
[0349] The relevant descriptions of the device types of the above-mentioned first device, second device, and authentication function entity are the same as those in the previous embodiment and are not repeated here.
[0350] In some possible implementations, the first device only needs to interact with the authentication function entity to complete the authentication.
[0351] In this embodiment, the processing of the first device may include: sending a first request message to the authentication function entity, wherein the first request message carries at least one of the following: an identifier of the first device, a first random number; receiving a first response message from the authentication function entity, wherein the first response message carries a first signature for authenticating the authentication function entity.
[0352] In one embodiment, the first request message may also be used to trigger the authentication function entity to perform authentication, that is, the first device may initiate authentication. In another embodiment, the authentication function entity may trigger authentication. For example, the authentication function entity may send a message to the first device to trigger authentication before receiving the first request message from the first device, and then the first device may send the first request message.
[0353] Here, the first device sending the first request message to the authentication function entity may mean that the first device directly sends the first request message to the authentication function entity.
[0354] The processing of the authentication function entity may include: receiving a first request message from the first device, wherein the first request message carries at least one of the following: an identifier of the first device, a first random number; and sending a first response message to the first device, wherein the first response message carries the first signature for authenticating the authentication function entity.
[0355] Optionally, the first signature is calculated based on a first parameter and a private key of the authentication function entity, wherein the first parameter includes at least one of the following: a security parameter of the authentication function entity and an identifier of the authentication function entity. The first response message also carries at least one of the following: a security parameter of the authentication function entity and an identifier of the authentication function entity.
[0356] Optionally, the first response message further carries the second random number. The first parameter further includes at least one of the following: an identifier of the first device, the first random number, and the second random number.
[0357] In this embodiment, the specific calculation process of the first signature, the first parameter, the first response message, etc. by the authentication function entity are the same as those in the previous embodiment, so they are not repeated.
[0358] The processing of the first device after receiving the first response message further includes: authenticating the authentication function entity based on the public key of the authentication function entity and the first signature. The first response message also carries at least one of the following: security parameters of the authentication function entity and an identifier of the authentication function entity.
[0359] The authenticating the authentication function entity based on the public key of the authentication function entity and the first signature includes: authenticating the authentication function entity based on a first parameter, the public key of the authentication function entity and the first signature, wherein the first parameter includes at least one of the following: a security parameter of the authentication function entity and an identifier of the authentication function entity.
[0360] The first response message also carries a second random number. The first parameter also includes at least one of the following: an identifier of the first device, the first random number, and the second random number.
[0361] In this embodiment, the process of the first device verifying the first signature, the first device determining the first parameter, and other related descriptions are the same as those in the previous embodiment, and thus are not repeated.
[0362] In one embodiment, the processing by the first device may further include: sending a third request message to the authentication function entity, wherein the third request message carries the second signature for authenticating the first device, and the second signature is calculated based on the private key of the first device. Specifically, sending the third request message to the authentication function entity may mean that the first device sends the third request message to the authentication function entity when determining that authentication of the authentication function entity is successful.
[0363] The second signature is calculated based on the private key of the first device and a second parameter, wherein the second parameter includes at least one of the following: an identifier of the first device and a security parameter of the first device.
[0364] The third request message further carries at least one of the following: an identifier of the first device, a security parameter of the first device. The second parameter further carries at least one of the following: an identifier of the authentication function entity, a second random number.
[0365] In this embodiment, the specific calculation process of the second signature by the first device, the second parameter, the third request message, and other related descriptions are the same as those in the previous embodiment, and therefore will not be repeated.
[0366] The processing by the authentication function entity may include: receiving a third request message from the first device, wherein the third request message carries the second signature for authenticating the first device.
[0367] Furthermore, the processing of the authentication function entity further includes: authenticating the first device based on the public key of the first device and the second signature. The third request message also carries at least one of the following: an identifier of the first device and a security parameter of the first device.
[0368] Authenticating the first device based on the public key of the first device and the second signature includes: authenticating the first device based on a second parameter, the public key of the first device, and the second signature, wherein the second parameter includes at least one of the following: an identifier of the first device and a security parameter of the first device. Furthermore, the second parameter also includes at least one of the following: an identifier of the authentication function entity and a second random number.
[0369] In this embodiment, the specific processing of verifying the second signature, determining the second parameter, and other related descriptions of the authentication function entity are the same as those in the previous embodiment, and therefore will not be repeated.
[0370] In some possible implementations, the first device has low processing capability. In this case, the second device is required to act as an agent to assist the first device in completing the verification process of the first signature of the authentication function entity.
[0371] In this embodiment, the processing of the first device may include: sending a first request message to the authentication function entity through the second device, wherein the first request message carries at least one of the following: an identifier of the first device, a first random number; and receiving a third response message from the second device, wherein the third response message carries the security parameters of the authentication function entity.
[0372] In one embodiment, the first request message can also be used to trigger the authentication function entity to perform authentication, that is, the first device can initiate authentication. In another embodiment, the authentication function entity can trigger authentication. For example, the authentication function entity can send a message for triggering authentication to the first device (or to the first device through the second device) before receiving the first request message from the first device, and then the first device can send the first request message to the authentication function entity through the second device.
[0373] The processing of the authentication function entity may include: receiving a first request message from the first device through the second device, wherein the first request message carries at least one of the following: an identifier of the first device, a first random number; and sending the first response message to the second device, wherein the first response message carries the first signature for authenticating the authentication function entity.
[0374] The processing after the second device side receives the first response message may further include: the second device authenticating the authentication function entity based on the public key of the authentication function entity and the first signature.
[0375] The processing by the second device may further include: sending a third response message to the first device, wherein the third response message carries the security parameters of the authentication function entity. Specifically, sending the third response message to the first device may mean that, upon determining that authentication of the authentication function entity is successful, the second device extracts the security parameters of the authentication function entity from the first response message, and sends the security parameters of the authentication function entity to the first device in the third response message.
[0376] Furthermore, the third response message also carries at least one of the following: an identifier of the authentication function entity and a second random number.
[0377] In this embodiment, the process of verifying the first signature by the second device has been described in detail in the above embodiment and will not be repeated here.
[0378] After the first device receives the third response message, it can perform the processing of calculating the second signature and sending the third request message carrying the second signature. Correspondingly, after the authentication function entity receives the third request message, it can perform the processing of verifying the second signature, etc. The above processing of the first device and the authentication function entity is the same as that in the previous embodiment, so it will not be repeated.
[0379] In some possible implementations, the first device has low processing capabilities. In this case, the second device is required to act as an agent to assist the first device in completing the verification of the first signature of the authentication function entity, and the second device is required to act as an agent to calculate the signature for verification by the authentication function entity.
[0380] In this implementation, the processing on the second device side includes: receiving a first response message from the authentication function entity, wherein the first response message carries a first signature for authenticating the authentication function entity.
[0381] In one embodiment, the first device sending the first request message to the authentication function entity includes: sending the first request message to the authentication function entity via a second device, wherein the first request message is used to trigger the authentication function entity to perform authentication. The second device's processing may also include: sending the first request message from the first device to the authentication function entity. After the second device sends the first request message from the first device to the authentication function entity, it may perform processing to receive a first response message from the authentication function entity.
[0382] In another embodiment, the second device directly sends a first request message to the authentication function entity. The first request message is used to trigger the authentication function entity to perform authentication and may also carry the identifier of the first device. After sending the first request message to the authentication function entity, the second device may perform processing to receive a first response message from the authentication function entity. In this embodiment, since the second device can act as a proxy for the first device, the second device itself can trigger authentication between the first device and the authentication function entity. The specific method by which the second device determines whether to trigger authentication may be based on a policy configured on the second device or by default, and this embodiment does not limit this.
[0383] In another embodiment, authentication can be triggered by an authentication function entity. For example, the authentication function entity can send a message to the first device to trigger authentication, and then the first device can send the first request message to the authentication function entity through the second device. Accordingly, the processing of the second device can also include: sending the first request message from the first device to the authentication function entity, where the first request message is used to confirm the start of authentication or the receipt of an authentication instruction; and after the second device sends the first request message from the first device to the authentication function entity, it can perform processing to receive a first response message from the authentication function entity.
[0384] In another embodiment, authentication may be triggered by an authentication function entity. For example, the authentication function entity may directly send a first response message to the second device. The first response message is used to trigger authentication of the first device and may carry, for example, a first signature for authenticating the authentication function entity and an identifier of the first device. In this case, the first response message may also be referred to as an authentication request message.
[0385] The processing of the authentication function entity includes: sending a first response message to the second device, wherein the first response message carries a first signature for authenticating the authentication function entity.
[0386] In this embodiment, the description of the process of calculating the first signature by the authentication function entity and the content that the first response message may carry are similar to those in the previous embodiment and are not repeated here.
[0387] If the second device successfully authenticates the authentication function entity, the method may further include: sending a fourth request message to the authentication function entity, wherein the fourth request message carries a third signature used to authenticate the second device. Correspondingly, the processing by the authentication function entity may further include: receiving a fourth request message from the second device, wherein the fourth request message carries the third signature used to authenticate the second device.
[0388] In this embodiment, the description of the process of calculating the third signature by the second device and the content that the fourth request message may carry are the same as those in the previous embodiment and are not repeated here.
[0389] Figure 13 is a schematic flow chart of an authentication method performed by a first device according to an embodiment of the present application. The method includes at least part of the following contents.
[0390] S1310: Receive an authentication message from a third device, where the authentication message carries a fourth signature for authenticating the third device and an identifier of the third device.
[0391] Figure 14 is a schematic flow chart of an authentication method performed by a third device according to another embodiment of the present application. The method includes at least part of the following contents.
[0392] S1410. Send an authentication message to the first device, where the authentication message carries a fourth signature for authenticating the third device and an identifier of the third device.
[0393] In this embodiment, the first device is one of the following types: an IoT device and a zero-power device; the third device is one of the following types: an IoT device and a zero-power device. That is, the first device and the second device can be devices of the same or similar types. For example, the first device can be a first IoT device and the second device can be a second IoT device; for example, the first device can be a first zero-power device and the second device can be a second zero-power device; for another example, the first device can be an IoT device and the second device can be a zero-power device; for another example, the first device can be a zero-power device and the second device can be an IoT device, and so on.
[0394] The relevant descriptions about the Internet of Things devices and zero-power devices are the same as those in the above-mentioned embodiments, so they will not be repeated.
[0395] In this case, there are two possible scenarios: one is that the first device and the third device belong to different trust domains; the other is that the first device and the third device belong to the same trust domain. The following describes these two scenarios respectively.
[0396] In some embodiments, the first device and the third device belong to different trust domains. In this embodiment, the first device and the third device belong to different trust domains, which may mean that the service node to which the first device belongs is a first service node, and the service node to which the third device belongs may be a second service node, and the second service node is different from the first service node.
[0397] In this embodiment, the first device is still the device initiating the authentication request. The processing by the first device may include: sending a request message to the third device, where the request message carries at least one of the following: the identifier of the first device and the fourth random number. Accordingly, the processing by the third device may include: receiving a request message from the first device, where the request message carries at least one of the following: the identifier of the first device and the fourth random number. Here, the fourth random number may be generated by the first device, and the specific method of generating the fourth random number is not limited in this embodiment.
[0398] In one embodiment, since the first device and the third device belong to different trust domains, certificate-related authentication may be performed between the first device and the third device.
[0399] The request message also carries the address of a first certificate. This first certificate is the certificate of the first service node to which the first device belongs, and is used to authenticate the identity of the first service node. The first certificate is stored in the blockchain, and therefore, the address of the first certificate specifically refers to the address of the first certificate on the blockchain, or the location information of the first certificate on the blockchain. In other words, when the first device initiates the authentication process, the first device (i.e., any IoT device or zero-power device) sends the address of the first certificate of its first service node to the third device in a request message.
[0400] The address of the first certificate may be obtained when the first device is registered. The registration process of the first device has been described in detail in the aforementioned embodiment and will not be repeated here.
[0401] In one embodiment, the third device has a link-up capability. The processing by the third device may further include: authenticating the identity of the first service node based on the address of the first certificate, and obtaining the master public key of the first service node.
[0402] Specifically, the authentication of the identity of the first service node based on the address of the first certificate may include: the third device searches for the first certificate on the blockchain based on the location information (or address) of the first certificate on the blockchain; and when the first certificate is found and it is determined that the first certificate has not been revoked, determining that the identity authentication of the first service node is successful. It may also include: when the first certificate is not found and / or it is determined that the first certificate is revoked, determining that the identity authentication of the first service node has failed. Here, the request message may also carry auxiliary information related to the first certificate. The method for determining whether the first certificate is revoked based on the auxiliary information related to the first certificate is the same as that in the aforementioned embodiment and will not be repeated here.
[0403] Obtaining the master public key of the first service node may include: if the identity of the first service node is successfully authenticated, the third device may extract the master public key of the first service node from the first certificate.
[0404] Optionally, the process of sending the authentication message to the first device may be that the third device sends the authentication message to the first device when determining that the identity authentication of the first service node is successful based on the address of the first certificate.
[0405] Optionally, the process of sending an authentication message to the first device may be that the third device, when determining that the identity authentication of the first service node is successful based on the address of the first certificate, verifies whether the first device is revoked based on the identification chain of the first device; and when determining that the first device is not revoked, sends an authentication message to the first device.
[0406] Here, since the number of IoT devices under the same trust domain is small, a traditional revocation list is used to implement the revocation of the IoT device identity. For example, the first service node to which the first device belongs (such as the first key generation center (KGC)) needs to maintain a revocation list to record the identity and other information of the revoked device to prevent the revoked identity from being illegally used. When the first service node receives an identity revocation request, it adds the identity and other information of the IoT device to the revocation list, and puts the updated revocation list on the chain for inspection. Correspondingly, the third device verifies whether the first device has been cancelled based on the identity of the first device on the chain, which can refer to: the third device searches for the revocation list on the blockchain, obtains the status of the identity of the first device from the revocation list, and determines that the first device has not been revoked if the status corresponding to the identity of the first device is not revoked; otherwise, it determines that the first device has been revoked.
[0407] In one embodiment, the third device does not have uplink capability. In this case, the processing of the third device after receiving the request message may include: sending the address of the certificate of the first service node to the fourth device, and receiving the identity authentication result of the first service node from the fourth device.
[0408] The fourth device may be a proxy device (or proxy node) with uplink capability, and the fourth device is the proxy device corresponding to the third device. The description of the fourth device is similar to that of the second device in the aforementioned embodiment and is not repeated here. The fourth device includes one of the following: a terminal, an access network device. The fourth device and the second device may be the same device or different devices, and this embodiment does not limit them.
[0409] The fourth device's processing may include: authenticating the identity of the first service node based on the address of the first certificate, and obtaining the master public key of the first service node. The specific processing of the fourth device verifying the identity of the first service node is similar to the specific processing of the third device verifying the identity of the first service node in the aforementioned embodiment, except that the execution entity is replaced by the fourth device, and therefore, the description is not repeated here.
[0410] Optionally, the processing after the third device receives the request message may also include: sending the identification of the first device to the fourth device. Accordingly, the processing of the fourth device may include: when it is determined that the identity authentication of the first service node is successful based on the address of the first certificate, verifying whether the first device has been revoked based on the identification chain of the first device; when it is determined that the first device has not been revoked, sending the identity authentication result of the first service node to the third device. Here, the processing of the fourth device verifying whether the first device has been revoked based on the identification chain of the first device is the same as the processing of the third device verifying whether the first device has been revoked in the aforementioned embodiment. The instruction is replaced by execution by the fourth device, so it is not repeated here.
[0411] Furthermore, the processing by the fourth device may further include: if it is determined that the identity authentication of the first service node is successful, extracting the master public key of the first service node from the first certificate. The processing may further include: the fourth device sending the master public key of the first service node to the third device; and correspondingly, the processing by the third device may further include: receiving the master public key of the first service node from the fourth device.
[0412] Optionally, the process of sending the authentication message to the first device may be that the third device sends the authentication message to the first device when receiving the identity authentication result of the first service node of the fourth device and determining that the identity authentication of the first service node is successful.
[0413] In one embodiment, the authentication message may also carry the address of a third certificate, where the third certificate is the certificate of the second service node to which the third device belongs. The third certificate is used to authenticate the identity of the second service node, and the second service node is different from the first service node.
[0414] The third certificate is stored in the blockchain. Therefore, the address of the third certificate specifically refers to the address of the third certificate on the blockchain, or the location information of the third certificate on the blockchain. The address of the third certificate can be obtained when the third device is registered. The registration process for the third device is the same as the registration process for the first device in the above embodiment, and is not repeated here.
[0415] In one embodiment, the first device has an uplink capability, and the processing after the first device receives the authentication message may also include: authenticating the identity of the second service node based on the address of the third certificate, and obtaining the master public key of the second service node.
[0416] The first device authenticates the identity of the second service node based on the address of the third certificate and obtains the relevant instructions for the master public key of the second service node. This is similar to the instructions for authenticating the identity of the first service node based on the address of the first certificate and obtaining the relevant instructions for the master public key of the first service node performed by the third device in the aforementioned embodiment, except that the execution subject is replaced by the first device and the certificate content is different. The detailed processing performed by the first device is not described here.
[0417] Furthermore, the first device also needs to go online to check whether the third device has been cancelled based on the identification of the third device. The specific process of the first device going online to verify whether the third device has been cancelled is similar to the process of the third device going online to verify whether the first device has been cancelled, and will not be repeated.
[0418] In one embodiment, the first device does not have an uplink capability, so the processing of the first device after receiving the authentication message may further include:
[0419] The address of the third certificate is sent to the second device, and an identity authentication result of the second service node of the second device is received.
[0420] In this embodiment, the detailed process of the second device authenticating the second service node based on the address of the third certificate is similar to the process of the second device authenticating the first service node based on the address of the first certificate in the aforementioned embodiment, and therefore will not be repeated.
[0421] Optionally, the processing after the first device receives the authentication message may also include: sending the identifier of the third device to the second device. Accordingly, the processing of the second device may include: when it is determined that the identity authentication of the second service node is successful based on the address of the third certificate, verifying whether the third device has been revoked based on the identifier of the third device; and when it is determined that the third device has not been revoked, sending the identity authentication result of the second service node to the first device. Here, the processing of the second device verifying whether the third device has been revoked based on the identifier of the third device is similar to the processing of the third device verifying whether the first device has been revoked based on the identifier of the third device in the aforementioned embodiment, and therefore will not be repeated.
[0422] Furthermore, the processing by the second device may further include: if it is determined that the identity authentication of the second service node is successful, extracting the master public key of the second service node from the third certificate. This may further include: the second device sending the master public key of the second service node to the first device; correspondingly, the processing by the first device may further include: receiving the master public key of the second service node from the second device.
[0423] In some possible implementations, the first device and the third device need to perform signature-related authentication and complete security parameter negotiation simultaneously.
[0424] In this embodiment, the authentication message carries a fourth signature for authenticating the third device. The fourth signature is calculated based on the private key of the third device. The private key of the third device may be obtained during the registration process of the third device. The registration process for the third device is similar to the registration process for the first device in the aforementioned embodiment and is not further described.
[0425] In one embodiment, the fourth signature is calculated based on the private key of the third device, the identification of the third device and a fourth parameter, wherein the fourth parameter includes at least one of the following: a security parameter of the third device and the identification of the third device.
[0426] Optionally, the authentication message also carries security parameters of the third device. That is, in addition to carrying the fourth signature and the identifier of the third device, the authentication message may also carry security parameters of the third device. The fourth parameters may include security parameters of the third device.
[0427] The content carried in the authentication message may be fully or partially related to the fourth parameter, but as long as both the authentication message and the fourth parameter include the security parameters of the third device, they are within the protection scope of this embodiment. All possible combinations are not limited or enumerated here.
[0428] The third device may calculate the fourth signature by using a signature algorithm to calculate the security parameters of the third device based on the private key of the third device to obtain the fourth signature. For example, it can be expressed as Sig(X C ·P), where X C P represents the security parameters of the third device and is not described in detail.
[0429] The method of using a signature algorithm to calculate the security parameter of the third device based on the private key of the third device to obtain the fourth signature may include: using a signature algorithm to perform a hash calculation on the security parameter of the third device to obtain a fourth hash value, and encrypting the fourth hash value based on the private key of the third device to obtain the fourth signature. For example, it can be expressed as Sig(H(X C ·P)), the meaning of each content in the formula is the same as that in the above embodiment and is not repeated here.
[0430] Optionally, the authentication message also carries the security parameters of the third device and an identifier of the third device. The fourth parameter may include the security parameters and identifier of the third device. The content carried in the authentication message may be fully or partially related to the fourth parameter. However, as long as both the authentication message and the fourth parameter include the security parameters of the third device, they are within the scope of protection of this embodiment. All possible combinations are not limited or exhaustive.
[0431] The process of the third device calculating the fourth signature may include: using a signature algorithm to calculate the security parameters of the third device and the identifier of the third device based on the private key of the third device to obtain the fourth signature. For example, it can be expressed as Sig(ID C ,X C ·P), where ID C Indicates the identifier of the third device and is not described in detail.
[0432] The method of using a signature algorithm to calculate the security parameter of the third device based on the private key of the third device to obtain the fourth signature may include: using a signature algorithm to perform a hash calculation on the security parameter of the third device and the identifier of the third device to obtain a fourth hash value, and encrypting the fourth hash value based on the private key of the third device to obtain the fourth signature. For example, it can be expressed as Sig(H(ID C ,X C ·P)), the meaning of each content in the formula is the same as that in the above embodiment and is not repeated here.
[0433] In one embodiment, the request message may carry a fourth random number; the authentication message may also carry a third random number. This third random number may be generated by the third device before sending the authentication message. This embodiment does not limit the method for generating this third random number. In this embodiment, in addition to the security parameters of the third device, the fourth parameter may also include at least one of the following: the third random number, an identifier of the first device, or a fourth random number.
[0434] The third device may calculate the fourth signature by using a signature algorithm to calculate the third random number, the identifier of the first device, the fourth random number, the security parameter of the third device, and the identifier of the third device based on the private key of the third device to obtain the fourth signature. For example, it can be expressed as Sig(N A ,N C ,ID A ,ID C ,X C ·P), where Sig() represents the signature algorithm, N A Represents the fourth random number, N C Indicates the third random number, ID ARepresents the identifier of the first device. The meanings of other contents in the formula are the same as those in the above embodiment and are not repeated here.
[0435] The method of using a signature algorithm to calculate the third random number, the identifier of the first device, the fourth random number, and the security parameter of the third device based on the private key of the third device to obtain the fourth signature may include: using a signature algorithm to perform a hash calculation on the third random number, the identifier of the first device, the fourth random number, the security parameter of the third device, and the identifier of the third device to obtain a fourth hash value, and encrypting the fourth hash value based on the private key of the third device to obtain the fourth signature. For example, it can be expressed as Sig(H(N A ,N C ,ID A ,ID C ,X C ·P)), wherein the meaning of each content in the formula is the same as that in the above embodiment and is not repeated here.
[0436] It should be understood that the above are all exemplary descriptions of calculating the fourth signature. The calculation method of the fourth signature is not limited or exhaustive, nor is the various possible combinations of the fourth parameters involved in the calculation of the fourth signature limited or exhaustive. As long as at least one of the above fourth parameters is used in the actual calculation of the fourth signature, it falls within the scope of protection of this embodiment.
[0437] In one embodiment, after the first device receives the authentication message carrying the fourth signature for authenticating the third device, the processing of the first device may also include: authenticating the third device based on the public key related to the third device, the identifier of the third device, and the fourth signature.
[0438] In this embodiment, since the first and third devices are in different trust domains, the service node to which the first device belongs is the first service node, and the service node to which the third device belongs is the second service node. The public key associated with the third device includes: the identifier of the third device and the master public key of the second service node. Specifically, the public key associated with the third device includes: the public key of the third device and the master public key of the second service node. The public key of the third device can be the identifier of the third device. The method for obtaining the master public key of the second service node has been detailed in the previous embodiment and is not repeated here.
[0439] The authenticating the third device based on the public key associated with the third device, the identification of the third device, and the fourth signature includes: authenticating the third device based on the public key associated with the third device, the fourth signature, the identification of the third device, and a fourth parameter, wherein the fourth parameter includes at least one of the following: a security parameter of the third device and the identification of the third device.
[0440] Optionally, the first device may determine a fourth parameter based on the authentication message, and the fourth parameter may be fully or partially related to the authentication message. They are not enumerated here. It should be understood that in actual processing, as long as the first device and the third device use the same fourth parameter, they are within the protection scope of this embodiment, and all possible situations are not limited or enumerated here.
[0441] For example, the authentication message carries, in addition to the fourth signature for authenticating the third device and the identifier of the third device, the authentication message also carries security parameters of the third device. The fourth parameters include at least one of the following: the security parameters of the third device and the identifier of the third device.
[0442] Optionally, the first device may determine a fourth parameter based on the authentication message and the request message. This fourth parameter may be fully or partially correlated with the authentication message and the request message. This list is not exhaustive. It should be understood that in actual processing, as long as the first and third devices use the same fourth parameter, it is within the scope of protection of this embodiment. This list does not limit or exhaust all possible scenarios. For example, the authentication message also carries a third random number; the fourth parameter also includes at least one of the following: the third random number, the identifier of the first device, and a fourth random number. Here, the fourth random number and the identifier of the first device are carried in the request message, and the third random number is carried in the authentication message.
[0443] In one embodiment, the authentication of the third device based on the public key associated with the third device, the fourth signature, the identifier of the third device and the fourth parameter can be as follows: the first device uses a signature verification algorithm to decrypt the fourth signature based on the public key associated with the third device to obtain fourth decryption information, and authenticates the third device based on the fourth decryption information and the fourth parameter.
[0444] Optionally, the fourth decrypted information may include fourth parameters to be verified that are of the same type as the content types in the fourth parameters; and authenticating the third device based on the fourth decrypted information and the fourth parameters may include one of the following: determining that authentication of the third device is successful if the fourth parameters to be verified and the fourth parameters are the same; and determining that authentication of the third device fails if the fourth parameters to be verified and the fourth parameters are different. In this embodiment, the composition of the fourth parameters has been described in detail in the aforementioned embodiments and is not repeated here.
[0445] Optionally, the fourth decryption information may include a fourth decryption hash value; authenticating the third device based on the fourth decryption information and the fourth parameter may include: the first device performing a hash calculation on the fourth parameter to obtain a fourth verification hash value; and authenticating the third device based on the fourth decryption hash value and the fourth verification hash value.
[0446] Authenticating the third device based on the fourth decrypted hash value and the fourth verification hash value may include at least one of the following: determining that authentication of the third device is successful if the fourth decrypted hash value and the fourth verification hash value are identical; and determining that authentication of the third device fails if the fourth decrypted hash value and the fourth verification hash value are different. In this embodiment, the composition of the fourth parameter has been described in detail in the aforementioned embodiments and is not repeated here.
[0447] In some possible implementations, when the first device successfully authenticates the third device, the processing by the first device may further include: sending a response message to the third device, where the response message carries a fifth signature for authenticating the first device.
[0448] The fifth signature is calculated based on the private key of the first device and a fifth parameter, wherein the fifth parameter includes at least one of the following: an identifier of the first device and a security parameter of the first device.
[0449] In this embodiment, the response message further carries at least one of the following: an identifier of the first device and a security parameter of the first device.
[0450] Here, the method for obtaining the private key of the first device has been described in detail in the above embodiment and will not be repeated here.
[0451] The manner in which the first device calculates the fifth signature may be: the first device uses a signature algorithm to calculate the fifth signature based on the private key of the first device and the second parameter.
[0452] In one embodiment, the content carried in the response message may be fully or partially related to the fifth parameter. In actual processing, as long as the response message carries at least the security parameters of the first device and the fifth parameter includes at least the security parameters of the first device, it is within the protection scope of this embodiment. Not all possible situations are limited or enumerated here.
[0453] For example, the fifth parameter may include the identifier of the first device and the DH parameter of the first device. The first device calculates the fifth signature and can be represented as Sig(ID A ,X A ·P), where Sig() represents the signature algorithm, ID A Indicates the identifier of the first device, X A P represents the DH parameters of the first device.
[0454] The signature algorithm may include hash calculation and encryption calculation; accordingly, the first device may calculate the fifth parameter based on the private key of the first device to obtain the fifth signature, which may include: the first device performs hash calculation on the fifth parameter to obtain a fifth hash value, and encrypts the fifth hash value based on the private key of the first device to obtain the fifth signature. For example, it can be expressed as Sig(H(ID A ,X A ·P)), wherein Sig() represents the signature algorithm, and the meanings of other contents in the formula are the same as those in the above embodiment and are not repeated here.
[0455] In one embodiment, in addition to the identification of the first device and / or the security parameter of the first device, the fifth parameter also includes at least one of the following: the identification of the third device and the third random number.
[0456] For example, the fifth parameter may include the identifier of the first device, the DH parameter of the first device, the identifier of the third device, and the third random number; the fifth signature calculated by the first device may be expressed as Sig(N C ,ID C ,ID A ,X A ·P), where N C Indicates the third random number, ID C represents the identifier of the third device. The meanings of the rest of the formula are the same as those in the above embodiment and are not repeated here. Alternatively, the fifth signature calculated by the first device can be expressed as Sig(H(N C ,ID C ,ID A ,X A ·P)), wherein the meaning of each content in the formula is the same as that in the above embodiment and will not be repeated.
[0457] It should be understood that the above are only exemplary descriptions of calculating the fifth signature. This does not limit or exhaustively enumerate the calculation method of the fifth signature, nor does it limit or exhaustively enumerate all possible combinations of the fifth parameter involved in the calculation of the fifth signature. As long as at least one of the above-mentioned fifth parameters is used in the actual calculation of the fifth signature, it falls within the scope of protection of this embodiment.
[0458] In some embodiments, the processing by the third device may include: receiving a response message from the first device, wherein the response message carries a fifth signature for authenticating the first device.
[0459] Furthermore, the processing by the third device may further include: authenticating the first device based on the public key related to the first device and the fifth signature.
[0460] In this embodiment, the public key associated with the first device includes: the identifier of the first device and the master public key of the first service node. Specifically, the public key associated with the first device includes: the public key of the first device and the master public key of the first service node; the public key of the first device may be the identifier of the first device. The method for obtaining the master public key of the first service node has been detailed in the previous embodiment and is not repeated here.
[0461] In one embodiment, the response message further carries at least one of the following: an identifier of the first device, and a security parameter of the first device.
[0462] The authenticating the first device based on the public key related to the first device and the fifth signature includes: authenticating the first device based on the public key related to the first device, the fifth signature, and a fifth parameter, wherein the fifth parameter includes at least one of the following: an identification of the first device and a security parameter of the first device.
[0463] Exemplarily, the third device may determine the fifth parameter based on the response message, and the fifth parameter may be fully or partially correlated with the response message. Exemplarily, the third device may determine the fifth parameter based on the response message and the authentication message, and the fifth parameter may be fully or partially correlated with the response message and the authentication message. It should be understood that the above is merely an example. In actual processing, as long as the first device and the third device use the same fifth parameter, it is within the scope of protection of this embodiment, and all possible situations are not limited or exhaustive.
[0464] In one embodiment, authenticating the first device based on the public key associated with the first device, the fifth signature, and the fifth parameter can be as follows: using a signature verification algorithm to decrypt the fifth signature based on the public key associated with the first device to obtain fifth decryption information, and authenticating the first device based on the fifth decryption information and the fifth parameter.
[0465] Optionally, the fifth decrypted information may include a fifth parameter to be verified that is the same type as each content in the fifth parameter; and authenticating the first device based on the fifth decrypted information and the fifth parameter may include one of the following: determining that authentication of the first device is successful if the fifth parameter to be verified and the fifth parameter are the same; and determining that authentication of the first device fails if the fifth parameter to be verified and the fifth parameter are different. In this embodiment, the composition of the fifth parameter has been described in detail in the aforementioned embodiments and is not repeated here.
[0466] Optionally, the fifth decryption information may include a fifth decryption hash value; authenticating the first device based on the fifth decryption information and the fifth parameter may include: performing a hash calculation on the fifth parameter to obtain a fifth verification hash value; and authenticating the first device based on the fifth decryption hash value and the fifth verification hash value.
[0467] Authenticating the first device based on the fifth decrypted hash value and the fifth verification hash value may include at least one of the following: determining that authentication of the first device is successful if the fifth decrypted hash value and the fifth verification hash value are identical; and determining that authentication of the first device fails if the fifth decrypted hash value and the fifth verification hash value are different. In this embodiment, the composition of the fifth parameter has been described in detail in the aforementioned embodiments and is not repeated here.
[0468] In some possible implementations, the first device and the third device may also complete negotiation of the third session key simultaneously during the authentication process.
[0469] When the third device determines that the authentication of the first device is successful, the processing of the third device may also include: calculating a third session key based on the security parameters of the third device and the security parameters of the first device, wherein the third session key is used for communication between the first device and the third device.
[0470] In the case of the first device communicating with a third device, the first device's processing may further include: calculating a third session key based on the security parameters of the third device and the security parameters of the first device, wherein the third session key is used for communication between the first device and the third device. It should also be noted that the first device may perform the aforementioned process of calculating the fifth signature after calculating the third session key.
[0471] Here, the third session key is used for the communication between the first device and the third device, which is similar to the aforementioned first session key and second session key, and thus is not described in detail.
[0472] Referring to Figure 15, taking the example of IoT device A as the first device and IoT device C as the third device, inter-domain authentication between IoT devices refers to the identity authentication of IoT devices belonging to different trust domains. When authenticating between IoT devices in different domains, they need to submit their KGC certificates to demonstrate their identities and prove the legitimacy of their identities. Since KGC certificates are generated by the issuing node, reviewed and approved by on-chain nodes, and then stored on the chain, the authenticity and validity of the certificate can be guaranteed if the certificate can be found on the chain based on the address. The legitimacy of the IoT device's identity can be guaranteed through signatures. If the signature can be successfully verified using the IoT device's public key and the system public key (including the master public key of the KGC to which it belongs), the IoT device belongs to the claimed KGC's trust domain, thus confirming its legitimate identity. The inter-domain authentication process includes a three-way handshake. If IoT devices A and C belong to different trust domains, both must perform identity authentication. In the scenario of Figure 15, assuming that both A and C have the ability to download certificates from the chain, the specific process includes the following:
[0473] Step 1501: IoT device A sends the fourth random number N A , the location information of the first certificate of the first KGC to which you belong on the chain (add KGC-A ), your own ID A Sent to IoT device C. In this step, the message sent by IoT device A to IoT device C can be the aforementioned request message, such as A→C:add KGC-A ,ID A ,N A .
[0474] Step 1502: After receiving the message from IoT device A, IoT device C searches for the certificate on the chain and verifies whether the first certificate has been revoked; if the first certificate is found and has not been revoked, execute step 1503; otherwise, end the process.
[0475] Step 1503: IoT device C sends an authentication message to IoT device A, which includes the location information of the third certificate of the second KGC to which it belongs on the chain (add KGC-C ), the identity of IoT device C (ID C ), the third random value N C , the session key negotiated using the DH protocol, and the fourth signature.
[0476] In this step, the sending direction of the authentication message and the content it carries can be expressed as: C→A:add KGC-C ,ID C ,N C ,X C ·P,Sig(H(N A ,NC ,ID A ,ID C ,X C ·P)).
[0477] Here, the fresh value N is signed with the private key A The purpose is to allow IoT device A to verify that the message it received is not a replay but is indeed from IoT device C, and use the private key to sign the ID A Indicates that IoT device C has received the message sent by IoT device A; private key signature N C The purpose is to allow IoT device C to authenticate that the message it received is not a replay but is indeed from IoT device A, and use the private key to sign the ID C This indicates that IoT device A has received the message sent by IoT device C.
[0478] Step 1504: After receiving the authentication message from IoT device C, IoT device A searches the chain for the third certificate, verifies whether the third certificate has been revoked, and verifies whether the identity of IoT device C has been revoked. If the third certificate has not been revoked and the identity of IoT device C has not been revoked, the public key ID of IoT device C is used. C Verify the fourth signature.
[0479] Step 1505: IoT device A and IoT device C complete the negotiation of the session key and obtain a third session key.
[0480] Step 1506: IoT device A sends a response message to IoT device C, which carries the identity (i.e., identification) of IoT device A, the session key negotiated using the DH protocol, and the fifth signature.
[0481] In this step, the sending direction of the response message and the content it carries can be expressed as: A→C:ID A ,X A ·P,Sig(H(N C ,ID A ,ID C ,X A ·P)).
[0482] Here, sign N with the private key C The purpose is to allow IoT device C to authenticate that the message it received is not a replay but is indeed from IoT device A, and use the private key to sign the ID C This indicates that IoT device A has received the message sent by IoT device C.
[0483] Step 1507: After receiving the response message from IoT device A, IoT device C goes online to verify whether the identity of IoT device A has been revoked. If the identity of IoT device A has not been revoked, it uses the public key ID of IoT device A to verify whether the identity of IoT device A has been revoked.A Verify the fifth signature. If the verification is successful, obtain the third session key and execute step 1508. If the identity of IoT device A is revoked and / or the verification of the fifth signature fails, the process ends.
[0484] Step 1508: IoT device A and IoT device C complete identity authentication and start communication.
[0485] With reference to Figure 16, let's take the first device as IoT device A, the third device as IoT device C, and the second and fourth devices as agents (the agent on the left corresponding to IoT device A in Figure 16 can be agent 1 (i.e., the second device), and the agent on the right corresponding to IoT device C can be agent 2 (i.e., the fourth device), and agent 1 and agent 2 can be the same device or different devices) as an example. Assuming that neither A nor C has the ability to download certificates on the chain, they can entrust the agent to help them download certificates on the chain. When A needs to go on the chain (download the certificate on the chain and verify whether the other party's identity has been revoked on the chain), he will find an agent to help him complete the on-chain operation and then complete the authentication operation; similarly, when C needs to perform an on-chain operation, he also needs to find an agent to help him complete the authentication operation. Assuming that a secure channel has been established between the agent and the IoT device, and assuming that IoT device A and IoT device C use the same agent, it can specifically include:
[0486] Step 1601 is the same as step 1501 and is not described in detail.
[0487] Step 1602: After receiving the message from IoT device A, IoT device C sends the location information of the first certificate (add KGC-A ), the identity ID of IoT device A A Send to agent 2. For example, it can be expressed as: C→agent:add KGC-A ,ID A .
[0488] Step 1603: Proxy 2 searches the chain for the first certificate, verifies whether the found first certificate has been revoked, and verifies whether the identity of IoT device A has been revoked. If the verification is successful (including finding the first certificate, verifying that the found first certificate has not been revoked, and verifying that the identity of IoT device A has not been revoked), the public key in the found first certificate is returned for IoT device C to verify. Otherwise, the authentication failure flag NG is returned. For example, this step can be expressed as Proxy → C:PK KGC-A Or NG.
[0489] Step 1604 is the same as step 1503 shown in FIG15 and will not be described again.
[0490] Step 1605: After receiving the message from IoT device C, IoT device A adds the location information of the third certificate to KGC-C, the identity ID of IoT device C C Send to agent 1. For example, this step can be expressed as A→agent:add KGC-C ,ID C .
[0491] Step 1606: Agent 1 searches the chain for the third certificate, verifies whether the third certificate has been revoked, and verifies whether the identity of IoT device C has been revoked. If the verification is successful (including finding the third certificate, verifying that the third certificate has not been revoked, and verifying that the identity of IoT device C has not been revoked), the public key in the third certificate is returned for IoT device A to verify the signature. Otherwise, the authentication failure flag NG is returned. For example, this step can be expressed as Agent → A: PK KGC-C Or NG.
[0492] Step 1607: After receiving the message from agent 1, IoT device A uses the public key ID of IoT device C C Verify the fourth signature sent by IoT device C. If the verification is successful, it can prove that the identity of IoT device C is legal. IoT device A and IoT device C complete the negotiation of the third session key and use the private key to generate the fifth signature.
[0493] Step 1608: IoT device A sends a response message to IoT device C, which carries the identity of IoT device A (i.e., identifier), the session key negotiated using the DH protocol, and the fifth signature. For example, it can be expressed as A→C:ID A ,X A ·P,Sig(H(N C ,ID A ,ID C ,X A ·P)).
[0494] Step 1609: After receiving the response message from IoT device A, IoT device C uses the public key ID of IoT device A to A Verify the fifth signature. If the verification is successful, obtain the third session key and execute step 1610. If the identity of IoT device A is revoked and / or the verification of the fifth signature fails, the process ends.
[0495] Step 1610: IoT device A and IoT device C complete identity authentication and begin communication.
[0496] In some embodiments, the first device and the third device belong to the same trust domain. In this embodiment, the first device and the third device belong to the same trust domain, which may mean that the first device and the third device belong to the same service node, both being the first service node.
[0497] In this embodiment, the first device is still the device initiating the authentication request. The first device's processing may include: sending a request message to the third device, where the request message carries at least one of the following: the first device's identifier and a fourth random number. Correspondingly, the third device's processing may include: receiving a request message from the first device, where the request message carries at least one of the following: the first device's identifier and the fourth random number. Here, the fourth random number may be generated by the first device; the specific method of generating the fourth random number is not limited in this embodiment.
[0498] In this embodiment, since the first device and the third device belong to the same trust domain, certificate-related authentication may not be performed between the first device and the third device.
[0499] Optionally, the third device has the ability to go online. The third device still needs to perform the process of verifying whether the first device has been cancelled. The specific process of the third device going online to verify whether the first device has been cancelled is the same as the previous embodiment and will not be repeated.
[0500] Optionally, the third device does not have the ability to go uplink. In this case, the processing of the third device after receiving the request message may include: sending the identification of the first device to the fourth device. Correspondingly, the processing of the fourth device may include: verifying whether the first device has been cancelled based on the identification of the first device; and in the case of determining that the first device has not been cancelled, sending the result that the first device has not been cancelled to the third device. Here, the processing of the fourth device verifying whether the first device has been cancelled based on the identification of the first device is the same as the processing of the third device verifying whether the first device has been cancelled in the aforementioned embodiment, and the instruction is replaced by execution by the fourth device, so it will not be repeated. The description of the fourth device is the same as that of the aforementioned embodiment and will not be repeated.
[0501] Furthermore, the processing by the third device may further include: sending an authentication message to the first device if it is determined that the first device has not been revoked.
[0502] In this implementation, the authentication message carries an identifier of the third device.
[0503] After receiving the authentication message from the third device, the first device may first verify the identifier of the third device.
[0504] In one embodiment, the first device has the ability to go online, and the first device needs to go online to find out whether the third device has been cancelled based on the identification of the third device. The specific process of the first device going online to verify whether the third device has been cancelled is similar to the process of the third device going online to verify whether the first device has been cancelled, and will not be repeated.
[0505] In one embodiment, the first device does not have the ability to go uplink, so the processing after the first device receives the authentication message may also include sending the identifier of the third device to the second device. Accordingly, the processing of the second device may include: verifying whether the third device has been cancelled based on the identifier of the third device; and when it is determined that the third device has not been cancelled, sending the result that the third device has not been cancelled to the first device. Here, the processing of the second device verifying whether the third device has been cancelled based on the identifier of the third device is similar to the processing of the third device verifying whether the first device has been cancelled in the aforementioned embodiment, so it will not be repeated.
[0506] In this embodiment, the first device and the third device need to perform signature-related authentication and complete security parameter negotiation at the same time.
[0507] The authentication message carries a fourth signature for authenticating the third device. The relevant process of the third device calculating the fourth signature is the same as that in the above embodiment, so it will not be described in detail.
[0508] After the first device receives the authentication message carrying the fourth signature for authenticating the third device, the processing of the first device may further include: authenticating the third device based on the public key related to the third device, the identifier of the third device, and the fourth signature.
[0509] Here, the service node to which the first device and the third device belong is a first service node; the public key related to the third device includes: an identifier of the third device and a master public key of the first service node, and the master public key of the first service node is preconfigured.
[0510] The first device authenticates the third device based on the public key related to the third device, the identifier of the third device, and the fourth signature. The relevant processing is the same as that in the aforementioned embodiment. The only difference is that the composition of the public key related to the third device in this embodiment is different, so it is not repeated here.
[0511] If the first device successfully authenticates the third device, the first device may further process the authentication process by sending a response message to the third device, wherein the response message carries a fifth signature used to authenticate the first device. The process of calculating the fifth signature by the first device is the same as in the previous embodiment and is not further described.
[0512] The processing by the third device may include: receiving a response message from the first device, wherein the response message carries a fifth signature for authenticating the first device. Further, the processing by the third device may also include: authenticating the first device based on a public key associated with the first device and the fifth signature.
[0513] In this embodiment, the service node to which the first device and the third device belong is a first service node; the public key associated with the first device includes: the identifier of the first device, the master public key of the first service node, and the master public key of the first service node is a preconfigured
[0514] The detailed description of the third device authenticating the first device based on the public key associated with the first device and the fifth signature is the same as that in the aforementioned embodiment. The only difference is that the composition of the public key associated with the first device in this embodiment is different, so it is not repeated.
[0515] During the aforementioned authentication process, the first device and the third device may also complete the negotiation of security parameters to obtain a third session key. The specific processing of the first device and the third device obtaining their respective third session keys is the same as that in the aforementioned embodiment and will not be repeated here.
[0516] In conjunction with Figure 17, taking the first device as IoT device A and the third device as IoT device B as an example, intra-domain authentication between IoT devices refers to identity authentication between IoT devices in the same trust domain. Intra-domain authentication requires a three-way handshake. Assuming that IoT devices A and B belong to the same trust domain, both need to perform identity authentication. Assuming that both A and B have the ability to go online, A and B can independently verify whether the other party's identity has been revoked. The specific steps include:
[0517] Step 1701: IoT device A sends the fourth random number N A With your own ID A Send it to IoT device B together. For example, it can be expressed as A→B:ID A ,N A .
[0518] Step 1702: The authentication message sent by IoT device B to IoT device A includes the identity of IoT device B, the third random value N B , the session key negotiated using the DH protocol, and the fourth signature. Here, the calculation method before the fourth is the same as in the previous embodiment, and will not be repeated. For example, it is expressed as B→A:ID B ,N B ,X B ·P,Sig(H(N A ,N B ,ID A ,ID B ,X B ·P)).
[0519] Step 1703: After receiving the authentication message from IoT device B, IoT device A verifies on the blockchain whether the identity of IoT device B has been revoked and uses the public key ID of IoT device B to verify whether the identity of IoT device B has been revoked.B Verify the fourth signature. If the verification passes, execute step 1704; otherwise, end the process.
[0520] Step 1704: IoT device A and IoT device B complete the negotiation of the session key and obtain the third session key; use the private key to calculate the fifth signature and send the fifth signature, its own identity and the session key negotiated using the DH protocol to IoT device B. For example, it can be expressed as A→B:ID A ,X A ·P,Sig(H(N B ,ID A ,ID B ,X A ·P)).
[0521] Step 1705: After receiving the message from IoT device A, IoT device B verifies on the blockchain whether the identity of IoT device A has been revoked and uses the public key ID of IoT device A to A Verify the fifth signature. If the verification passes, proceed to step 1706. Otherwise, terminate the process. In this step, IoT device B also calculates the third session key.
[0522] Step 1706: IoT device A and IoT device B complete identity authentication and begin communication.
[0523] With reference to Figure 18, taking the first device as IoT device A and the third device as IoT device B as an example, intra-domain authentication between IoT devices refers to identity authentication between IoT devices under the same trust domain. Assuming that neither IoT device A nor IoT device B has the ability to go online, they can entrust an agent (the agent on the left corresponding to IoT device A in Figure 18 can be agent 1 (i.e., the second device), and the agent on the right corresponding to IoT device B can be agent 3 (i.e., the fourth device; agent 1 and agent 3 can be the same device or different devices) to help them verify whether the corresponding identity has been revoked. If the agent verifies that the identity has been revoked, it returns the authentication failure flag NG; if the verification is successful, it returns the verification success flag OK. Specifically, it may include:
[0524] Step 1801 is the same as step 1701 and will not be described in detail.
[0525] Step 1802: IoT device B sends the identity of IoT device A to proxy 3.
[0526] Step 1803: Agent 3 goes online to verify whether the identity of IoT device A has been revoked. If not, it returns a correct verification result to IoT device B. Otherwise, it determines that the verification has failed and ends the process.
[0527] Step 1804: The authentication message sent by IoT device B to IoT device A includes the identity of IoT device B, the third random value N B , a session key negotiated using the DH protocol, and a fourth signature. Here, the calculation method for the fourth signature is the same as in the previous embodiment and will not be repeated.
[0528] Step 1805: After receiving the authentication message from IoT device B, IoT device A sends the identity of IoT device B to agent 1.
[0529] Step 1806: Agent 1 goes online to verify whether the identity of IoT device B has been revoked. If not, it returns a correct verification result to IoT device A. Otherwise, it determines that the verification has failed and ends the process.
[0530] Step 1807: IoT device A uses the public key ID of IoT device B B Verify the fourth signature. If the verification passes, execute step 1808; otherwise, end the process.
[0531] Step 1808: IoT device A and IoT device B complete the negotiation of the session key and obtain the third session key; use the private key to calculate the fifth signature, and send the fifth signature, its own identity, and the session key negotiated using the DH protocol to IoT device B.
[0532] Step 1809: After receiving the message from IoT device A, IoT device B uses the public key ID of IoT device A to A Verify the fifth signature. If the verification passes, proceed to step 1810. Otherwise, terminate the process. In this step, IoT device B also calculates the third session key.
[0533] Step 1810: IoT device A and IoT device B complete identity authentication and begin communication.
[0534] By adopting the authentication method provided in this embodiment, the first device and the third device only need to exchange signatures calculated by their own private keys to achieve authentication during the authentication process. In this way, during the entire authentication process, the first device and the third device do not need to store too much content, thereby saving storage space of the first device and the third device and reducing the storage cost of the first device and the third device.
[0535] The basic principle of the PKI (Public Key Infrastructure) described in the previous example is explained below: a third-party authority, a certification authority (CA), combines a user's public key with their identity information (such as name and phone number). Before the two are combined, the CA verifies the authenticity of the user's identity and then signs a certificate that combines the user and their public key.
[0536] Identity-based cryptography (IBC), another branch of public-key cryptography, directly uses unique user information as the user's public key (i.e., user identifier), such as email address or mobile phone number. This eliminates the need for users to apply for and exchange certificates, significantly simplifying the complexity of certificate management in cryptographic systems. The user's private key is generated by a trusted key generation center (KGC) in the system using a private key generation algorithm. This algorithm can be the SM9 algorithm, which includes the SM9 digital signature algorithm, the SM9-IBE identity encryption algorithm, and the SM9-KA key agreement protocol.
[0537] A blockchain-based two-tier identity architecture: The identity management architecture for the integrated synaesthesia and zero-power scenarios is designed as a two-tier architecture. The entire protocol framework consists of two parts: a CA model (with the committee acting as a trusted center) connecting committee nodes to issuing nodes, and a blockchain model connecting issuing nodes to their corresponding IoT devices (i.e., light nodes). Due to the small number of issuing nodes, the CA model facilitates authorization and management. The data required for IoT devices authorized by issuing nodes is vast, making blockchain a better solution. Combining these two models makes the system more compatible with current market trends and provides a more cohesive and clearer hierarchy.
[0538] Blockchain model: The issuing node uses a blockchain model to connect its corresponding IoT device. This model stores the IoT device's certificate on the blockchain. When a certificate is needed, it is searched for in the blockchain. The IoT device's certificate is signed by the issuing node and then applied for on-chain verification. After verification by multiple on-chain nodes, it is added to the blockchain through a consensus algorithm. The on-chain node first verifies the issuing node's certificate using the joint committee's public key. Once verification is successful, the node then verifies the IoT device's certificate using the corresponding issuing node's public key. Once verification is successful, the IoT device's certificate is added to the blockchain and the certificate's location is returned to the issuing node. The issuing node then returns this location to the IoT device. In this scenario, the IoT device only needs to store the certificate's on-chain location, not the certificate itself. The verifier simply searches for the certificate in the chain based on the location information sent by the sender. If the certificate is found in the corresponding location, the certificate's authenticity and validity are guaranteed, eliminating the need for the verifier to repeatedly verify the certificate's authenticity and validity. This significantly reduces communication and computational overhead.
[0539] However, in the above process, the user (i.e., any device) must always carry his or her certificate to prove his or her identity. The certificate, which contains various public information such as identity, is too long and inconvenient to carry. Especially for the massive Internet of Things, if each device has a certificate, this will bring a high burden to the storage server.
[0540] The construction idea of the solution provided by the embodiment of the present application can be: under the IBC system, after the business party purchases equipment and servers from the manufacturer, it can build its own KGC, and the business party can use KGC to independently manage and serve the IoT devices under the same trust domain. KGC must be registered in a two-tier architecture and act as an IoT device in the two-tier architecture (such as the two-tier architecture shown in Figure 8), that is, it needs to submit public materials such as identity and public key to the issuing node to obtain a certificate issued by the issuing node. In the Internet of Things, two types of devices need to be considered, one with computing power and the other with zero-power consumption.
[0541] The possible devices in the solution provided in the embodiment of the present application are defined as follows: the issuing node can be a business party, that is, a vertical industry with many devices, a small and medium-sized factory, such as a logistics company, manufacturing industry, aquaculture, etc.; each of the multiple target devices can be any IoT device (or any zero-power device) of the business party, and the multiple target devices belong to the same KGC (that is, the same service node); the second device can be an IoT device, that is, any IoT device of the business party, and can belong to different KGCs or the same KGC as the multiple target devices; or the second device can also be an authentication function entity (that is, a network device), which can be deployed in an operator device (such as a base station, AMF, SEAF, NWDF, PCF, NEF, etc.) or an authentication server of a third-party security service provider. In this case, the authentication function entity and the multiple target devices belong to different trust domains; the first device can be a proxy device, which is a device of the business party that has computing power and permission to go online, is fully responsible for the identity authentication of the zero-power device, and belongs to the same trust domain as the multiple target devices. For example, the type of the proxy device can be any one of: UE, IAB, relay, repeater, etc.
[0542] The national secret SM9 algorithm can realize an identity-based cryptographic system, which involves key encapsulation, signature, security parameters, security parameters and public key encryption algorithm, etc. The scheme provided in the embodiment of this application uses the key generation algorithm, signature algorithm and verification algorithm in the signature scheme.
[0543] The solution provided in this embodiment uses IBC (identity-based cryptography) to implement security credential management for zero-power IoT terminal devices or AIoT devices. The identity of each IoT terminal device is its own public key. Thus, the solution provided in this embodiment has the following advantages: It simplifies security credential management. Specifically, because the identity of each IoT terminal device is its own public key, the terminal device does not need to store additional public keys or certificates recording its own public key information. For the certificate management server, the use of IBC technology simplifies the certificate issuance mechanism, requiring only the generation of private keys, eliminating the need to generate certificates for a large number of IoT devices. It also saves terminal storage space. Specifically, because the identity of each IoT terminal device must be stored, the use of an identity-based cryptography system only requires the storage of the identity, eliminating the need for additional public key storage. Using a blockchain architecture, KGC certificates are stored on the blockchain, eliminating the need to store certificates recording their own public key information. This fully utilizes the value of information and reduces storage costs for zero-power IoT or AIoT terminals.
[0544] FIG19 is a schematic diagram of the composition structure of a first device according to an embodiment of the present application, including:
[0545] The first communication unit 1901 is used to send a first request message to the authentication function entity, wherein the first request message carries the address of a first certificate, the first certificate is the certificate of the first service node to which the first device belongs, and the first certificate is used to authenticate the identity of the first service node.
[0546] The first communication unit is configured to receive a first response message from the authentication function entity, wherein the first response message carries information related to a second certificate, and the second certificate is used to authenticate the identity of the authentication function entity.
[0547] The information related to the second certificate includes one of the following: the address of the second certificate, and the second certificate.
[0548] As shown in FIG19 , the first device further includes a first processing unit 1902:
[0549] The first processing unit is configured to perform one of the following: authenticating the identity of the authentication function entity based on the address of the second certificate; authenticating the identity of the authentication function entity based on the second certificate.
[0550] The second certificate carries the public key of the authentication function entity.
[0551] The first communication unit is configured to send a second request message to the second device, wherein the second request message carries information related to the second certificate.
[0552] The first communication unit is configured to receive a second response message from the second device, wherein the second response message carries the public key of the authentication function entity.
[0553] The first response message also carries a first signature used to authenticate the authentication function entity.
[0554] The first processing unit is configured to authenticate the authentication function entity based on the public key of the authentication function entity and the first signature.
[0555] The first response message also carries at least one of the following: security parameters of the authentication function entity, and an identifier of the authentication function entity.
[0556] The first processing unit is used to authenticate the authentication function entity based on a first parameter, a public key of the authentication function entity and the first signature, wherein the first parameter includes at least one of the following: a security parameter of the authentication function entity and an identifier of the authentication function entity.
[0557] The first response message also carries a second random number.
[0558] The first parameter further includes at least one of the following: an identifier of the first device, a first random number, and the second random number.
[0559] The first communication unit is configured to send the first request message to the authentication function entity through the second device.
[0560] The first communication unit is configured to receive a third response message from the second device, wherein the third response message carries the security parameters of the authentication function entity.
[0561] The third response message also carries at least one of the following: an identifier of the authentication function entity and a second random number.
[0562] The first communication unit is configured to send a third request message to the authentication function entity, wherein the third request message carries the second signature used to authenticate the first device, and the second signature is calculated based on the private key of the first device.
[0563] The second signature is calculated based on the private key of the first device and a second parameter, wherein the second parameter includes at least one of the following: an identifier of the first device and a security parameter of the first device.
[0564] The third request message further carries at least one of the following: an identifier of the first device, and a security parameter of the first device.
[0565] The second parameter also includes at least one of the following: an identifier of the authentication function entity, and the second random number.
[0566] The first processing unit is configured to calculate a first session key based on security parameters of the authentication function entity and security parameters of the first device, wherein the first session key is used for communication between the first device and the authentication function entity.
[0567] The first communication unit is configured to receive a third response message from the second device, wherein the third response message is used to indicate that the authentication is successful.
[0568] The first request message also carries at least one of the following: an identifier of the first device and a first random number.
[0569] The second device includes one of the following: a terminal, an access network device.
[0570] The first device includes one of the following: an Internet of Things device, a zero-power device; the authentication function entity is deployed in at least one of the following: an application function AF, an access and mobility management function AMF, a session management function SMF, an authentication service function AUSF, a unified data management function UDM, a unified data storage UDR, a home subscription system HSS, an authentication credential storage and processing function ARPF, a bootstrapping service function BSF, a security anchor function SEAF, and a core network dedicated network element.
[0571] FIG20 is a schematic diagram of the composition structure of an authentication function entity according to an embodiment of the present application, including:
[0572] The second communication unit 2001 is configured to receive a first request message, wherein the first request message carries the address of a first certificate, the first certificate is a certificate of a first service node to which the first device belongs, and the first certificate is used to authenticate the identity of the first service node.
[0573] As shown in FIG20 , the authentication function entity further includes a second processing unit 2002:
[0574] The second processing unit is configured to authenticate the identity of the first service node based on the address of the first certificate.
[0575] The second communication unit is used to send a first response message, wherein the first response message carries information related to the second certificate, and the second certificate is used to authenticate the identity of the authentication function entity.
[0576] The information related to the second certificate includes one of the following: the address of the second certificate, and the second certificate.
[0577] The first response message also carries a first signature for authenticating the authentication function entity, where the first signature is calculated based on a private key of the authentication function entity.
[0578] The first signature is calculated based on a first parameter and a private key of the authentication function entity, wherein the first parameter includes at least one of the following: a security parameter of the authentication function entity and an identifier of the authentication function entity.
[0579] The first response message also carries at least one of the following: security parameters of the authentication function entity, and an identifier of the authentication function entity.
[0580] The first response message also carries a second random number.
[0581] The first parameter further includes at least one of the following: an identifier of the first device, a first random number, and the second random number.
[0582] The second communication unit is configured to receive a third request message from the first device, wherein the third request message carries the second signature used to authenticate the first device.
[0583] The second processing unit is configured to authenticate the first device based on the public key of the first device and the second signature.
[0584] The third request message further carries at least one of the following: an identifier of the first device, and a security parameter of the first device.
[0585] The second processing unit is configured to authenticate the first device based on a second parameter, a public key of the first device, and the second signature, wherein the second parameter includes at least one of the following: an identifier of the first device and a security parameter of the first device.
[0586] The second parameter also includes at least one of the following: an identifier of the authentication function entity, and the second random number.
[0587] The second processing unit is configured to calculate a first session key based on security parameters of the authentication function entity and security parameters of the first device, wherein the first session key is used for communication between the first device and the authentication function entity.
[0588] The second communication unit is configured to receive a first request message from the first device; and send the first response message to the first device.
[0589] The second communication unit is configured to receive a fourth request message from a second device, wherein the fourth request message carries a third signature for authenticating the second device.
[0590] The second processing unit is configured to authenticate the second device based on the public key of the second device and the third signature.
[0591] The fourth request message further carries at least one of the following: an identifier of the second device, and a security parameter of the second device.
[0592] The second processing unit is configured to authenticate the second device based on a third parameter, a public key of the second device, and the third signature, wherein the third parameter includes at least one of the following: an identifier of the second device and a security parameter of the second device.
[0593] The third parameter also includes at least one of the following: an identifier of the authentication function entity, an identifier of the first device, the first random number, and the second random number.
[0594] The second processing unit is configured to calculate a second session key based on a security parameter of the authentication function entity and a security parameter of the second device, wherein the second session key is used for communication between the second device and the authentication function entity.
[0595] The second communication unit is configured to receive the first request message from a second device; and send the first response message to the second device.
[0596] The first request message also carries at least one of the following: an identifier of the first device and a first random number.
[0597] The second device includes one of the following: a terminal, an access network device.
[0598] The first device includes one of the following: an Internet of Things device, a zero-power device; the authentication function entity is deployed in at least one of the following: an application function AF, an access and mobility management function AMF, a session management function SMF, an authentication service function AUSF, a unified data management function UDM, a unified data storage UDR, a home subscription system HSS, an authentication credential storage and processing function ARPF, a bootstrapping service function BSF, a security anchor function SEAF, and a core network dedicated network element.
[0599] FIG21 is a schematic diagram of the structure of a second device according to an embodiment of the present application, including:
[0600] The third communication unit 2101 is used to send a first request message to the authentication function entity, wherein the first request message carries the address of the first certificate, the first certificate is the certificate of the first service node to which the first device belongs, and the first certificate is used to authenticate the identity of the first service node.
[0601] The third communication unit is used to receive a first response message from the authentication function entity, wherein the first response message carries information related to the second certificate, and the second certificate is used to authenticate the identity of the authentication function entity.
[0602] The information related to the second certificate includes one of the following: the address of the second certificate, and the second certificate.
[0603] As shown in FIG21 , the second device further includes a third processing unit 2102.
[0604] The third processing unit is used to perform one of the following: authenticating the identity of the authentication function entity based on the address of the second certificate; authenticating the identity of the authentication function entity based on the second certificate.
[0605] The first response message also carries a first signature.
[0606] The third processing unit is configured to authenticate the authentication function entity based on the public key of the authentication function entity and the first signature, wherein the public key of the authentication function entity is carried by the second certificate.
[0607] The first response message also carries at least one of the following: security parameters of the authentication function entity, and an identifier of the authentication function entity.
[0608] The third processing unit is used to authenticate the authentication function entity based on a first parameter, the public key of the authentication function entity and the first signature, wherein the first parameter includes at least one of the following: a security parameter of the authentication function entity and an identifier of the authentication function entity.
[0609] The first response message also carries a second random number; the first parameter also includes at least one of the following: an identifier of the first device, a first random number, and the second random number.
[0610] The third communication unit is configured to send the first request message from the first device to the authentication function entity; and send a third response message to the first device, wherein the third response message carries the security parameters of the authentication function entity.
[0611] The third response message also carries at least one of the following: an identifier of the authentication function entity and a second random number.
[0612] The third communication unit is used to send a fourth request message to the authentication function entity, wherein the fourth request message carries a third signature for authenticating the second device, and the third signature is calculated based on the private key of the second device.
[0613] The third signature is calculated based on the private key of the second device and a third parameter, wherein the third parameter includes at least one of the following: an identifier of the second device and a security parameter of the second device.
[0614] The fourth request message further carries at least one of the following: an identifier of the second device, and a security parameter of the second device.
[0615] The third parameter also includes at least one of the following: an identifier of the authentication function entity, an identifier of the first device, the first random number, and the second random number.
[0616] The third processing unit is configured to calculate a second session key based on a security parameter of the authentication function entity and a security parameter of the second device, wherein the second session key is used for communication between the second device and the authentication function entity.
[0617] The third communication unit is used to send a third response message to the first device, wherein the third response message is used to indicate that the authentication is successful.
[0618] The first request message also carries at least one of the following: an identifier of the first device and a first random number.
[0619] The first device includes one of the following: Internet of Things device, zero-power device; the second device includes one of the following: terminal, access network device; the authentication function entity includes at least one of the following: application function AF, access and mobility management function AMF, session management function SMF, authentication service function AUSF, unified data management function UDM, unified data storage UDR, home subscription system HSS, authentication credential storage and processing function ARPF, guidance service function BSF, security anchor function SEAF, core network dedicated network element.
[0620] An embodiment of the present application further provides a first device, including:
[0621] The first communication unit is configured to send a third request message to the authentication function entity, wherein the third request message carries a second signature for authenticating the first device, and the second signature is calculated based on a private key of the first device.
[0622] The second signature is calculated based on the private key of the first device and a second parameter, wherein the second parameter includes at least one of the following: an identifier of the first device and a security parameter of the first device.
[0623] The third request message further carries at least one of the following: an identifier of the first device, and a security parameter of the first device.
[0624] The second parameter also includes at least one of the following: an identifier of the authentication function entity, and a second random number.
[0625] The first communication unit is used to send a first request message to the authentication function entity, wherein the first request message carries at least one of the following: an identifier of the first device and a first random number; and receive a first response message from the authentication function entity, wherein the first response message carries a first signature for authenticating the authentication function entity.
[0626] The first device further includes a first processing unit: the first processing unit is configured to authenticate the authentication function entity based on the public key of the authentication function entity and the first signature.
[0627] The first response message also carries at least one of the following: security parameters of the authentication function entity, and an identifier of the authentication function entity.
[0628] The first processing unit is used to authenticate the authentication function entity based on the first parameter, the public key of the authentication function entity and the first signature, wherein the first parameter includes at least one of the following: a security parameter of the authentication function entity and an identifier of the authentication function entity.
[0629] The first response message also carries a second random number.
[0630] The first parameter further includes at least one of the following: an identifier of the first device, the first random number, and the second random number.
[0631] The first communication unit is used to send a first request message to the authentication function entity through the second device, wherein the first request message carries at least one of the following: an identifier of the first device and a first random number; and receive a third response message from the second device, wherein the third response message carries security parameters of the authentication function entity.
[0632] The third response message also carries at least one of the following: the identifier of the authentication function entity and the second random number.
[0633] An embodiment of the present application further provides an authentication function entity, including:
[0634] The second communication unit is configured to receive a third request message from the first device, wherein the third request message carries a second signature for authenticating the first device.
[0635] The authentication function entity further includes a second processing unit: the second processing unit is configured to authenticate the first device based on the public key of the first device and the second signature.
[0636] The third request message further carries at least one of the following: an identifier of the first device, and a security parameter of the first device.
[0637] The second processing unit is configured to authenticate the first device based on a second parameter, a public key of the first device, and the second signature, wherein the second parameter includes at least one of the following: an identifier of the first device and a security parameter of the first device.
[0638] The second parameter also includes at least one of the following: an identifier of the authentication function entity, and a second random number.
[0639] The second communication unit is used to receive a first request message from the first device, wherein the first request message carries at least one of the following: an identifier of the first device and a first random number; and send a first response message to the first device, wherein the first response message carries the first signature for authenticating the authentication function entity.
[0640] The second communication unit is used to receive a first request message from the first device through the second device, wherein the first request message carries at least one of the following: an identifier of the first device and a first random number; and send the first response message to the second device, wherein the first response message carries the first signature for authenticating the authentication function entity.
[0641] The first signature is calculated based on a first parameter and a private key of the authentication function entity, wherein the first parameter includes at least one of the following: a security parameter of the authentication function entity and an identifier of the authentication function entity.
[0642] The first response message also carries at least one of the following: security parameters of the authentication function entity, and an identifier of the authentication function entity.
[0643] The first response message also carries the second random number.
[0644] The first parameter further includes at least one of the following: an identifier of the first device, the first random number, and the second random number.
[0645] An embodiment of the present application further provides a second device, including:
[0646] The third communication unit is configured to receive a first response message from the authentication function entity, wherein the first response message carries a first signature used to authenticate the authentication function entity.
[0647] The second device further includes a third processing unit: the third processing unit is configured to authenticate the authentication function entity based on the public key of the authentication function entity and the first signature.
[0648] The third communication unit is configured to send a fourth request message to the authentication function entity, wherein the fourth request message carries a third signature for authenticating the second device.
[0649] An embodiment of the present application further provides an authentication function entity, including:
[0650] The second communication unit is configured to send a first response message to the second device, wherein the first response message carries a first signature used to authenticate the authentication function entity.
[0651] The second communication unit is configured to receive a fourth request message from the second device, wherein the fourth request message carries a third signature for authenticating the second device.
[0652] An embodiment of the present application further provides a first device, including:
[0653] The first communication unit is configured to receive an authentication message from a third device, wherein the authentication message carries a fourth signature for authenticating the third device and an identifier of the third device.
[0654] The first device further includes a first processing unit: the first processing unit is configured to authenticate the third device based on a public key associated with the third device, an identifier of the third device, and the fourth signature.
[0655] The authentication message also carries security parameters of the third device.
[0656] The first processing unit is used to authenticate the third device based on a public key associated with the third device, the fourth signature, an identifier of the third device, and a fourth parameter, wherein the fourth parameter includes at least one of the following: a security parameter of the third device and an identifier of the third device.
[0657] The authentication message also carries a third random number; the fourth parameter also includes at least one of the following: the third random number, the identifier of the first device, and a fourth random number.
[0658] The first communication unit is configured to send a request message to the third device, wherein the request message carries at least one of the following: an identifier of the first device and a fourth random number.
[0659] The first communication unit is configured to send a response message to the third device, wherein the response message carries a fifth signature used to authenticate the first device.
[0660] The fifth signature is calculated based on the private key of the first device and a fifth parameter, wherein the fifth parameter includes at least one of the following: an identifier of the first device and a security parameter of the first device.
[0661] The response message also carries at least one of the following: an identifier of the first device, and a security parameter of the first device.
[0662] The fifth parameter further includes at least one of the following: an identifier of the third device, and the third random number.
[0663] The first processing unit is configured to calculate a third session key based on the security parameters of the third device and the security parameters of the first device, wherein the third session key is used for communication between the first device and the third device.
[0664] The service node to which the first device and the third device belong is a first service node; the public key related to the third device includes: an identifier of the third device and a master public key of the first service node, and the master public key of the first service node is preconfigured.
[0665] The request message also carries the address of a first certificate, where the first certificate is a certificate of a first service node to which the first device belongs, and the first certificate is used to authenticate the identity of the first service node.
[0666] The authentication message also carries the address of a third certificate, where the third certificate is a certificate of a second service node to which the third device belongs. The third certificate is used to authenticate the identity of the second service node, which is different from the first service node.
[0667] The first processing unit is configured to authenticate the identity of the second service node based on the address of the third certificate and obtain the master public key of the second service node.
[0668] The first communication unit is configured to send the address of the third certificate to the second device, and receive an identity authentication result of the second service node from the second device.
[0669] The first communication unit is configured to receive a master public key of the second service node from the second device.
[0670] The service node to which the first device belongs is a first service node, and the service node to which the third device belongs is a second service node; the public key related to the third device includes: an identifier of the third device and a master public key of the second service node.
[0671] The second device includes one of the following: a terminal, an access network device.
[0672] The type of the first device is one of the following: an Internet of Things device, a zero-power consumption device; the type of the third device is one of the following: an Internet of Things device, a zero-power consumption device.
[0673] FIG22 is a schematic diagram of the composition structure of a third device according to an embodiment of the present application, including:
[0674] The fourth communication unit 2201 is configured to send an authentication message to the first device, wherein the authentication message carries a fourth signature for authenticating the third device and an identifier of the third device.
[0675] The authentication message also carries security parameters of the third device.
[0676] The fourth signature is calculated based on the private key of the third device, the identifier of the third device and a fourth parameter, wherein the fourth parameter includes at least one of the following: a security parameter of the third device and the identifier of the third device.
[0677] The authentication message also carries a third random number.
[0678] The fourth parameter further includes at least one of the following: the third random number, the identifier of the first device, and a fourth random number.
[0679] The fourth communication unit is configured to receive a request message from the first device, wherein the request message carries at least one of the following: an identifier of the first device and the fourth random number.
[0680] The fourth communication unit is configured to receive a response message from the first device, wherein the response message carries a fifth signature used to authenticate the first device.
[0681] As shown in FIG22 , the third device further includes a fourth processing unit 2202:
[0682] The fourth processing unit is configured to authenticate the first device based on a public key associated with the first device and the fifth signature.
[0683] The response message also carries at least one of the following: an identifier of the first device, and a security parameter of the first device.
[0684] The fourth processing unit is configured to authenticate the first device based on a public key associated with the first device, the fifth signature, and a fifth parameter, wherein the fifth parameter includes at least one of the following: an identifier of the first device and a security parameter of the first device.
[0685] The fifth parameter further includes at least one of the following: an identifier of the third device, and the third random number.
[0686] The fourth processing unit is configured to calculate a third session key based on the security parameters of the third device and the security parameters of the first device, wherein the third session key is used for communication between the first device and the third device.
[0687] The service node to which the first device and the third device belong is a first service node; the public key related to the first device includes: an identifier of the first device and a master public key of the first service node, and the master public key of the first service node is preconfigured.
[0688] The request message also carries the address of a first certificate, where the first certificate is a certificate of a first service node to which the first device belongs, and the first certificate is used to authenticate the identity of the first service node.
[0689] The fourth processing unit is configured to authenticate the identity of the first service node based on the address of the first certificate and obtain the master public key of the first service node.
[0690] The fourth communication unit is configured to send the address of the certificate of the first service node to a fourth device, and receive an identity authentication result of the first service node from the fourth device.
[0691] The fourth communication unit is configured to receive the master public key of the first service node from the fourth device.
[0692] The public key related to the first device includes: an identifier of the first device and a master public key of the first service node.
[0693] The authentication message also carries the address of a third certificate, where the third certificate is a certificate of a second service node to which the third device belongs. The third certificate is used to authenticate the identity of the second service node, which is different from the first service node.
[0694] The fourth device includes one of the following: a terminal, an access network device.
[0695] The type of the first device is one of the following: an Internet of Things device, a zero-power consumption device; the type of the third device is one of the following: an Internet of Things device, a zero-power consumption device.
[0696] The device of the embodiment of the present application can realize the corresponding functions of each device in the aforementioned authentication method embodiment. The processes, functions, implementation methods and beneficial effects corresponding to each module (sub-module, unit or component, etc.) in the device can be found in the corresponding description in the above method embodiment, which will not be repeated here. It should be noted that the functions described by each module (sub-module, unit or component, etc.) in the device of the embodiment of the application can be implemented by different modules (sub-module, unit or component, etc.) or by the same module (sub-module, unit or component, etc.).
[0697] Figure 23 is a schematic structural diagram of a communication device 2300 according to an embodiment of the present application. The communication device 2300 includes a processor 2310, which can call and run a computer program from a memory to enable the communication device 2300 to implement the method in the embodiment of the present application.
[0698] In one possible implementation, the communication device 2300 may further include a memory 2320. The processor 2310 may call and execute a computer program from the memory 2320 to enable the communication device 2300 to implement the method in the embodiment of the present application. The memory 2320 may be a separate device independent of the processor 2310 or may be integrated into the processor 2310.
[0699] In one possible implementation, the communication device 2300 may further include a transceiver 2330. The processor 2310 may control the transceiver 2330 to communicate with other devices. Specifically, the transceiver 2330 may send information or data to other devices or receive information or data sent by other devices. The transceiver 2330 may include a transmitter and a receiver. The transceiver 2330 may further include one or more antennas.
[0700] An embodiment of the present application provides a first device, comprising: a processor, and a memory communicating with the processor, the memory being used to store instructions, wherein when the instructions are executed by the processor, the instructions cause the first device to execute: sending a first request message to an authentication function entity, wherein the first request message carries the address of a first certificate, the first certificate is a certificate of a first service node to which the first device belongs, and the first certificate is used to authenticate the identity of the first service node.
[0701] The instruction further causes the first device to execute: receiving a first response message from the authentication function entity, wherein the first response message carries information related to a second certificate, and the second certificate is used to authenticate the identity of the authentication function entity.
[0702] The information related to the second certificate includes one of the following: the address of the second certificate, and the second certificate.
[0703] The instructions further cause the first device to perform one of the following: authenticating the identity of the authentication function entity based on the address of the second certificate; authenticating the identity of the authentication function entity based on the second certificate.
[0704] The second certificate carries the public key of the authentication function entity.
[0705] The instruction further causes the first device to execute: sending a second request message to the second device, wherein the second request message carries information related to the second certificate.
[0706] The instructions further cause the first device to execute: receiving a second response message from the second device, wherein the second response message carries the public key of the authentication function entity.
[0707] The first response message also carries a first signature used to authenticate the authentication function entity.
[0708] The instructions further cause the first device to perform: authenticating the authentication function entity based on the public key of the authentication function entity and the first signature.
[0709] The first response message also carries at least one of the following: security parameters of the authentication function entity, and an identifier of the authentication function entity.
[0710] The instruction also causes the first device to execute: authenticating the authentication function entity based on a first parameter, a public key of the authentication function entity and the first signature, wherein the first parameter includes at least one of the following: a security parameter of the authentication function entity, an identifier of the authentication function entity.
[0711] The first response message also carries a second random number.
[0712] The first parameter further includes at least one of the following: an identifier of the first device, a first random number, and the second random number.
[0713] The instructions further cause the first device to execute: sending the first request message to the authentication function entity through the second device.
[0714] The instructions further cause the first device to execute: receiving a third response message from the second device, wherein the third response message carries the security parameter of the authentication function entity.
[0715] The third response message also carries at least one of the following: an identifier of the authentication function entity and a second random number.
[0716] The instruction further causes the first device to execute: sending a third request message to the authentication function entity, wherein the third request message carries the second signature for authenticating the first device, and the second signature is calculated based on the private key of the first device.
[0717] The second signature is calculated based on the private key of the first device and a second parameter, wherein the second parameter includes at least one of the following: an identifier of the first device and a security parameter of the first device.
[0718] The third request message further carries at least one of the following: an identifier of the first device, and a security parameter of the first device.
[0719] The second parameter also includes at least one of the following: an identifier of the authentication function entity, and the second random number.
[0720] The instructions further cause the first device to calculate a first session key based on a security parameter of the authentication function entity and a security parameter of the first device, wherein the first session key is used for communication between the first device and the authentication function entity.
[0721] The instructions further cause the first device to execute: receiving a third response message from the second device, wherein the third response message is used to indicate that the authentication is successful.
[0722] The first request message also carries at least one of the following: an identifier of the first device and a first random number.
[0723] The second device includes one of the following: a terminal, an access network device.
[0724] The first device includes one of the following: an Internet of Things device, a zero-power device; the authentication function entity is deployed in at least one of the following: an application function AF, an access and mobility management function AMF, a session management function SMF, an authentication service function AUSF, a unified data management function UDM, a unified data storage UDR, a home subscription system HSS, an authentication credential storage and processing function ARPF, a bootstrapping service function BSF, a security anchor function SEAF, and a core network dedicated network element.
[0725] An embodiment of the present application provides an authentication function entity, including: a processor, a memory communicating with the processor, the memory being used to store instructions, and when the instructions are executed by the processor, the instructions cause the authentication function entity to execute: receiving a first request message, wherein the first request message carries the address of a first certificate, the first certificate is a certificate of a first service node to which a first device belongs, and the first certificate is used to authenticate the identity of the first service node.
[0726] The instructions further cause the authentication function to perform: authenticating the identity of the first service node based on the address of the first certificate.
[0727] The instruction further causes the authentication function entity to execute: sending a first response message, wherein the first response message carries information related to a second certificate, and the second certificate is used to authenticate the identity of the authentication function entity.
[0728] The information related to the second certificate includes one of the following: the address of the second certificate, and the second certificate.
[0729] The first response message also carries a first signature for authenticating the authentication function entity, where the first signature is calculated based on a private key of the authentication function entity.
[0730] The first signature is calculated based on a first parameter and a private key of the authentication function entity, wherein the first parameter includes at least one of the following: a security parameter of the authentication function entity and an identifier of the authentication function entity.
[0731] The first response message also carries at least one of the following: security parameters of the authentication function entity, and an identifier of the authentication function entity.
[0732] The first response message also carries a second random number.
[0733] The first parameter further includes at least one of the following: an identifier of the first device, a first random number, and the second random number.
[0734] The instructions further cause the authentication function entity to execute: receiving a third request message from the first device, wherein the third request message carries the second signature for authenticating the first device.
[0735] The instructions further cause the authentication function entity to execute: authenticating the first device based on the public key of the first device and the second signature.
[0736] The third request message further carries at least one of the following: an identifier of the first device, and a security parameter of the first device.
[0737] The instruction further causes the authentication function entity to execute: authenticating the first device based on a second parameter, a public key of the first device, and the second signature, wherein the second parameter includes at least one of the following: an identification of the first device and a security parameter of the first device.
[0738] The second parameter also includes at least one of the following: an identifier of the authentication function entity, and the second random number.
[0739] The instructions further cause the authentication function entity to calculate a first session key based on a security parameter of the authentication function entity and a security parameter of the first device, wherein the first session key is used for communication between the first device and the authentication function entity.
[0740] The instructions further cause the authentication function entity to: receive a first request message from the first device; and send the first response message to the first device.
[0741] The instructions further cause the authentication function entity to execute: receiving a fourth request message from the second device, wherein the fourth request message carries a third signature for authenticating the second device.
[0742] The instructions further cause the authentication function entity to execute: authenticating the second device based on the public key of the second device and the third signature.
[0743] The fourth request message further carries at least one of the following: an identifier of the second device, and a security parameter of the second device.
[0744] The instruction further causes the authentication function entity to execute: authenticating the second device based on a third parameter, a public key of the second device, and the third signature, wherein the third parameter includes at least one of the following: an identification of the second device, and a security parameter of the second device.
[0745] The third parameter also includes at least one of the following: an identifier of the authentication function entity, an identifier of the first device, the first random number, and the second random number.
[0746] The instructions further cause the authentication function entity to calculate a second session key based on a security parameter of the authentication function entity and a security parameter of the second device, wherein the second session key is used for communication between the second device and the authentication function entity.
[0747] The instructions further cause the authentication function entity to execute: receiving the first request message from the second device; and sending the first response message to the second device.
[0748] The first request message also carries at least one of the following: an identifier of the first device and a first random number.
[0749] The second device includes one of the following: a terminal, an access network device.
[0750] The first device includes one of the following: an Internet of Things device, a zero-power device; the authentication function entity is deployed in at least one of the following: an application function AF, an access and mobility management function AMF, a session management function SMF, an authentication service function AUSF, a unified data management function UDM, a unified data storage UDR, a home subscription system HSS, an authentication credential storage and processing function ARPF, a bootstrapping service function BSF, a security anchor function SEAF, and a core network dedicated network element.
[0751] An embodiment of the present application provides a second device, including: a processor, a memory communicating with the processor, the memory being used to store instructions, and when the instructions are executed by the processor, the instructions cause the second device to execute: sending a first request message to an authentication function entity, wherein the first request message carries the address of a first certificate, the first certificate is a certificate of a first service node to which the first device belongs, and the first certificate is used to authenticate the identity of the first service node.
[0752] The instruction further causes the second device to execute: receiving a first response message from the authentication function entity, wherein the first response message carries information related to a second certificate, and the second certificate is used to authenticate the identity of the authentication function entity.
[0753] The information related to the second certificate includes one of the following: the address of the second certificate, and the second certificate.
[0754] The instructions further cause the second device to perform one of the following: authenticating the identity of the authentication function entity based on the address of the second certificate; authenticating the identity of the authentication function entity based on the second certificate.
[0755] The first response message also carries a first signature.
[0756] The instructions further cause the second device to execute: authenticating the authentication function entity based on a public key of the authentication function entity and the first signature, wherein the public key of the authentication function entity is carried by the second certificate.
[0757] The first response message also carries at least one of the following: security parameters of the authentication function entity, and an identifier of the authentication function entity.
[0758] The instruction also causes the second device to execute: authenticating the authentication function entity based on a first parameter, a public key of the authentication function entity and the first signature, wherein the first parameter includes at least one of the following: a security parameter of the authentication function entity, an identifier of the authentication function entity.
[0759] The first response message also carries a second random number; the first parameter also includes at least one of the following: an identifier of the first device, a first random number, and the second random number.
[0760] The instructions further cause the second device to execute: sending the first request message from the first device to the authentication function entity; and sending a third response message to the first device, wherein the third response message carries security parameters of the authentication function entity.
[0761] The third response message also carries at least one of the following: an identifier of the authentication function entity and a second random number.
[0762] The instruction further causes the second device to execute: sending a fourth request message to the authentication function entity, wherein the fourth request message carries a third signature for authenticating the second device, and the third signature is calculated based on the private key of the second device.
[0763] The third signature is calculated based on the private key of the second device and a third parameter, wherein the third parameter includes at least one of the following: an identifier of the second device and a security parameter of the second device.
[0764] The fourth request message further carries at least one of the following: an identifier of the second device, and a security parameter of the second device.
[0765] The third parameter also includes at least one of the following: an identifier of the authentication function entity, an identifier of the first device, the first random number, and the second random number.
[0766] The instructions further cause the second device to calculate a second session key based on a security parameter of the authentication function entity and a security parameter of the second device, wherein the second session key is used for communication between the second device and the authentication function entity.
[0767] The instructions further cause the second device to execute: sending a third response message to the first device, wherein the third response message is used to indicate that the authentication is successful.
[0768] The first request message also carries at least one of the following: an identifier of the first device and a first random number.
[0769] The first device includes one of the following: Internet of Things device, zero-power device; the second device includes one of the following: terminal, access network device; the authentication function entity includes at least one of the following: application function AF, access and mobility management function AMF, session management function SMF, authentication service function AUSF, unified data management function UDM, unified data storage UDR, home subscription system HSS, authentication credential storage and processing function ARPF, guidance service function BSF, security anchor function SEAF, core network dedicated network element.
[0770] An embodiment of the present application provides a first device, comprising: a processor, a memory communicating with the processor, the memory being used to store instructions, and when the instructions are executed by the processor, the instructions cause the first device to execute: sending a third request message to the authentication function entity, wherein the third request message carries a second signature for authenticating the first device, and the second signature is calculated based on a private key of the first device.
[0771] The second signature is calculated based on the private key of the first device and a second parameter, wherein the second parameter includes at least one of the following: an identifier of the first device and a security parameter of the first device.
[0772] The third request message further carries at least one of the following: an identifier of the first device, and a security parameter of the first device.
[0773] The second parameter also includes at least one of the following: an identifier of the authentication function entity, and a second random number.
[0774] The instruction also causes the first device to execute: sending a first request message to the authentication function entity, wherein the first request message carries at least one of the following: an identifier of the first device, a first random number; receiving a first response message from the authentication function entity, wherein the first response message carries a first signature for authenticating the authentication function entity.
[0775] The instructions further cause the first device to perform: authenticating the authentication function entity based on the public key of the authentication function entity and the first signature.
[0776] The first response message also carries at least one of the following: security parameters of the authentication function entity, and an identifier of the authentication function entity.
[0777] The instruction also causes the first device to execute: authenticating the authentication function entity based on the first parameter, the public key of the authentication function entity and the first signature, wherein the first parameter includes at least one of the following: a security parameter of the authentication function entity, an identifier of the authentication function entity.
[0778] The first response message also carries a second random number.
[0779] The first parameter further includes at least one of the following: an identifier of the first device, the first random number, and the second random number.
[0780] The instruction also causes the first device to execute: sending a first request message to the authentication function entity through the second device, wherein the first request message carries at least one of the following: an id...
Claims
1. An authentication method performed by a first device, comprising: A first request message is sent to an authentication function entity, wherein the first request message carries an address of a first certificate, the first certificate is a certificate of a first service node to which the first device belongs, and the first certificate is used to authenticate the identity of the first service node.
2. The method according to claim 1, wherein: The method further comprises: A first response message is received from the authentication function entity, wherein the first response message carries information related to a second certificate, and the second certificate is used to authenticate the identity of the authentication function entity.
3. The method according to claim 2, wherein: The information related to the second certificate includes one of the following: the address of the second certificate, and the second certificate.
4. The method according to claim 3, wherein: The method further comprises one of the following: authenticating the identity of the authentication function entity based on the address of the second certificate; Based on the second certificate, the identity of the authentication function entity is authenticated.
5. The method according to any one of claims 2 to 4, wherein: The second certificate carries the public key of the authentication function entity.
6. The method according to claim 3, wherein: The method further comprises: A second request message is sent to the second device, wherein the second request message carries information related to the second certificate.
7. The method according to claim 6, wherein: The method further comprises: A second response message is received from the second device, wherein the second response message carries a public key of the authentication function entity.
8. The method according to claim 5 or 7, wherein: The first response message also carries a first signature used to authenticate the authentication function entity.
9. The method according to claim 8, wherein: The method further comprises: The authentication function entity is authenticated based on the public key of the authentication function entity and the first signature.
10. The method according to claim 9, wherein: The first response message also carries at least one of the following: security parameters of the authentication function entity, and an identifier of the authentication function entity.
11. The method according to claim 10, wherein: The authenticating the authentication function entity based on the public key of the authentication function entity and the first signature comprises: The authentication function entity is authenticated based on a first parameter, a public key of the authentication function entity and the first signature, wherein the first parameter includes at least one of the following: a security parameter of the authentication function entity, an identifier of the authentication function entity.
12. The method according to claim 11, wherein: The first response message also carries a second random number.
13. The method according to claim 12, wherein: The first parameter also includes at least one of the following: an identifier of the first device, a first random number, and the second random number.
14. The method according to claim 1, wherein: The sending a first request message to the authentication function entity comprises: The first request message is sent to the authentication function entity through the second device.
15. The method according to claim 14, wherein: The method further comprises: A third response message is received from the second device, wherein the third response message carries security parameters of the authentication function entity.
16. The method according to claim 15, wherein: The third response message also carries at least one of the following: an identifier of the authentication function entity and a second random number.
17. The method according to any one of claims 12, 13 and 16, wherein: The method further comprises: A third request message is sent to the authentication function entity, wherein the third request message carries a second signature for authenticating the first device, and the second signature is calculated based on a private key of the first device.
18. The method according to claim 17, wherein: The second signature is calculated based on the private key of the first device and a second parameter, wherein the second parameter includes at least one of the following: an identifier of the first device and a security parameter of the first device.
19. The method according to claim 18, wherein: The third request message further carries at least one of the following: an identifier of the first device and a security parameter of the first device.
20. The method according to claim 19, wherein: The second parameter also includes at least one of the following: an identifier of the authentication function entity and the second random number.
21. The method according to any one of claims 11-13, 18-20, wherein: The method further comprises: A first session key is calculated based on the security parameters of the authentication function entity and the security parameters of the first device, wherein the first session key is used for communication between the first device and the authentication function entity.
22. The method according to claim 14, wherein: The method further comprises: A third response message is received from the second device, wherein the third response message is used to indicate that the authentication is successful.
23. The method according to any one of claims 1 to 22, wherein: The first request message also carries at least one of the following: an identifier of the first device and a first random number.
24. The method according to any one of claims 6, 7, 14-16, wherein: The second device includes one of the following: a terminal, an access network device.
25. The method according to any one of claims 1 to 24, wherein: The first device includes one of the following: an Internet of Things device, a zero-power device; the authentication function entity is deployed in at least one of the following: an application function AF, an access and mobility management function AMF, a session management function SMF, an authentication service function AUSF, a unified data management function UDM, a unified data storage UDR, a home subscription system HSS, an authentication credential storage and processing function ARPF, a bootstrapping service function BSF, a security anchor function SEAF, and a core network dedicated network element.
26. An authentication method performed by an authentication function entity, comprising: A first request message is received, wherein the first request message carries an address of a first certificate, the first certificate is a certificate of a first service node to which the first device belongs, and the first certificate is used to authenticate an identity of the first service node.
27. The method according to claim 26, wherein: The method further comprises: Based on the address of the first certificate, the identity of the first service node is authenticated.
28. The method according to claim 26 or 27, wherein: The method further comprises: A first response message is sent, wherein the first response message carries information related to a second certificate, and the second certificate is used to authenticate the identity of the authentication function entity.
29. The method according to claim 28, wherein: The information related to the second certificate includes one of the following: the address of the second certificate, and the second certificate.
30. The method according to claim 28 or 29, wherein: The first response message also carries a first signature used to authenticate the authentication function entity, where the first signature is calculated based on a private key of the authentication function entity.
31. The method according to claim 30, wherein: The first signature is calculated based on a first parameter and a private key of the authentication function entity, wherein the first parameter includes at least one of the following: a security parameter of the authentication function entity and an identifier of the authentication function entity.
32. The method according to claim 31, wherein: The first response message also carries at least one of the following: security parameters of the authentication function entity, and an identifier of the authentication function entity.
33. The method of claim 32, wherein: The first response message also carries a second random number.
34. The method of claim 33, wherein: The first parameter also includes at least one of the following: an identifier of the first device, a first random number, and the second random number.
35. The method according to claim 33 or 34, wherein: The method further comprises: A third request message is received from the first device, wherein the third request message carries a second signature for authenticating the first device.
36. The method of claim 35, wherein: The method further comprises: The first device is authenticated based on the public key of the first device and the second signature.
37. The method of claim 36, wherein: The third request message further carries at least one of the following: an identifier of the first device and a security parameter of the first device.
38. The method of claim 37, wherein: The authenticating the first device based on the public key of the first device and the second signature includes: The first device is authenticated based on a second parameter, a public key of the first device, and the second signature, wherein the second parameter includes at least one of the following: an identification of the first device and a security parameter of the first device.
39. The method of claim 38, wherein: The second parameter also includes at least one of the following: an identifier of the authentication function entity and the second random number.
40. The method according to any one of claims 37 to 39, wherein: The method further comprises: A first session key is calculated based on the security parameters of the authentication function entity and the security parameters of the first device, wherein the first session key is used for communication between the first device and the authentication function entity.
41. The method according to any one of claims 28 to 40, wherein: The receiving the first request message comprises: receiving a first request message from the first device; The sending the first response message includes: sending the first response message to the first device.
42. The method of claim 33 or 34, wherein: The method further comprises: A fourth request message is received from the second device, wherein the fourth request message carries a third signature for authenticating the second device.
43. The method of claim 42, wherein: The method further comprises: The second device is authenticated based on the public key of the second device and the third signature.
44. The method of claim 43, wherein: The fourth request message further carries at least one of the following: an identifier of the second device and a security parameter of the second device.
45. The method of claim 44, wherein: The authenticating the second device based on the public key of the second device and the third signature includes: The second device is authenticated based on a third parameter, a public key of the second device, and the third signature, wherein the third parameter includes at least one of the following: an identification of the second device and a security parameter of the second device.
46. The method of claim 45, wherein: The third parameter also includes at least one of the following: an identifier of the authentication function entity, an identifier of the first device, a first random number, and the second random number.
47. The method according to any one of claims 44 to 46, wherein: The method further comprises: A second session key is calculated based on the security parameter of the authentication function entity and the security parameter of the second device, wherein the second session key is used for communication between the second device and the authentication function entity.
48. The method according to any one of claims 28-34, 42-47, wherein: The receiving the first request message includes: receiving the first request message from the second device; The sending the first response message includes: sending the first response message to the second device.
49. The method according to any one of claims 26 to 48, wherein: The first request message also carries at least one of the following: an identifier of the first device and a first random number.
50. The method according to any one of claims 42 to 48, wherein: The second device includes one of the following: a terminal, an access network device.
51. The method according to any one of claims 26 to 50, wherein: The first device includes one of the following: an Internet of Things device, a zero-power device; the authentication function entity is deployed in at least one of the following: an application function AF, an access and mobility management function AMF, a session management function SMF, an authentication service function AUSF, a unified data management function UDM, a unified data storage UDR, a home subscription system HSS, an authentication credential storage and processing function ARPF, a bootstrapping service function BSF, a security anchor function SEAF, and a core network dedicated network element.
52. An authentication method performed by a second device, comprising: A first request message is sent to an authentication function entity, wherein the first request message carries an address of a first certificate, the first certificate is a certificate of a first service node to which the first device belongs, and the first certificate is used to authenticate the identity of the first service node.
53. The method of claim 52, wherein: The method further comprises: A first response message is received from an authentication function entity, wherein the first response message carries information related to a second certificate, and the second certificate is used to authenticate the identity of the authentication function entity.
54. The method of claim 53, wherein: The information related to the second certificate includes one of the following: the address of the second certificate, and the second certificate.
55. The method of claim 54, wherein: The method further comprises one of the following: authenticating the identity of the authentication function entity based on the address of the second certificate; Based on the second certificate, the identity of the authentication function entity is authenticated.
56. The method according to any one of claims 53 to 55, wherein: The first response message also carries a first signature.
57. The method of claim 56, wherein: The method further comprises: The authentication function entity is authenticated based on the public key of the authentication function entity and the first signature, wherein the public key of the authentication function entity is carried by the second certificate.
58. The method of claim 57, wherein: The first response message also carries at least one of the following: security parameters of the authentication function entity, and an identifier of the authentication function entity.
59. The method of claim 58, wherein: The authenticating the authentication function entity based on the public key of the authentication function entity and the first signature comprises: The authentication function entity is authenticated based on a first parameter, a public key of the authentication function entity and the first signature, wherein the first parameter includes at least one of the following: a security parameter of the authentication function entity, an identifier of the authentication function entity.
60. The method of claim 59, wherein: The first response message also carries a second random number; the first parameter also includes at least one of the following: an identifier of the first device, a first random number, and the second random number.
61. The method of claim 60, wherein: The sending the first request message to the authentication function entity comprises: sending the first request message from the first device to the authentication function entity; The method further includes: sending a third response message to the first device, wherein the third response message carries the security parameter of the authentication function entity.
62. The method of claim 61, wherein: The third response message also carries at least one of the following: an identifier of the authentication function entity and a second random number.
63. The method of claim 60, wherein: The method further comprises: A fourth request message is sent to the authentication function entity, wherein the fourth request message carries a third signature for authenticating the second device, and the third signature is calculated based on a private key of the second device.
64. The method of claim 63, wherein: The third signature is calculated based on the private key of the second device and a third parameter, wherein the third parameter includes at least one of the following: an identifier of the second device and a security parameter of the second device.
65. The method of claim 64, wherein: The fourth request message further carries at least one of the following: an identifier of the second device and a security parameter of the second device.
66. The method of claim 65, wherein: The third parameter also includes at least one of the following: an identifier of the authentication function entity, an identifier of the first device, the first random number, and the second random number.
67. The method according to any one of claims 64 to 66, wherein: The method further comprises: A second session key is calculated based on the security parameter of the authentication function entity and the security parameter of the second device, wherein the second session key is used for communication between the second device and the authentication function entity.
68. The method according to any one of claims 63 to 67, wherein: The method further comprises: A third response message is sent to the first device, wherein the third response message is used to indicate that the authentication is successful.
69. The method according to any one of claims 52 to 68, wherein: The first request message also carries at least one of the following: an identifier of the first device and a first random number.
70. The method according to any one of claims 52 to 69, wherein: The first device includes one of the following: an Internet of Things device, a zero-power device; the second device includes one of the following: a terminal, an access network device; the authentication function entity includes at least one of the following: an application function AF, an access and mobility management function AMF, a session management function SMF, an authentication service function AUSF, a unified data management function UDM, a unified data storage UDR, a home subscription system HSS, an authentication credential storage and processing function ARPF, a bootstrapping service function BSF, a security anchor function SEAF, and a core network dedicated network element.
71. An authentication method performed by a first device, comprising: A third request message is sent to the authentication function entity, wherein the third request message carries a second signature for authenticating the first device, and the second signature is calculated based on a private key of the first device.
72. The method of claim 71, wherein: The second signature is calculated based on the private key of the first device and a second parameter, wherein the second parameter includes at least one of the following: an identifier of the first device and a security parameter of the first device.
73. The method of claim 72, wherein: The third request message further carries at least one of the following: an identifier of the first device and a security parameter of the first device.
74. The method of claim 73, wherein: The second parameter also includes at least one of the following: an identifier of the authentication function entity and a second random number.
75. The method of claim 74, wherein: The method further comprises: Sending a first request message to the authentication function entity, wherein the first request message carries at least one of the following: an identifier of the first device and a first random number; A first response message is received from the authentication function entity, wherein the first response message carries a first signature used to authenticate the authentication function entity.
76. The method of claim 75, wherein: The method further comprises: The authentication function entity is authenticated based on the public key of the authentication function entity and the first signature.
77. The method of claim 76, wherein: The first response message also carries at least one of the following: security parameters of the authentication function entity, and an identifier of the authentication function entity.
78. The method of claim 77, wherein: The authenticating the authentication function entity based on the public key of the authentication function entity and the first signature comprises: The authentication function entity is authenticated based on a first parameter, a public key of the authentication function entity and the first signature, wherein the first parameter includes at least one of the following: a security parameter of the authentication function entity, an identifier of the authentication function entity.
79. The method of claim 78, wherein: The first response message also carries a second random number.
80. The method of claim 79, wherein: The first parameter also includes at least one of the following: an identifier of the first device, the first random number, and the second random number.
81. The method of claim 74, wherein: The method further comprises: Sending a first request message to the authentication function entity through the second device, wherein the first request message carries at least one of the following: an identifier of the first device and a first random number; A third response message is received from the second device, wherein the third response message carries security parameters of the authentication function entity.
82. The method of claim 81, wherein: The third response message also carries at least one of the following: the identifier of the authentication function entity and the second random number.
83. An authentication method performed by an authentication function entity, comprising: Receive a third request message from the first device, wherein the third request message carries a second signature for authenticating the first device name.
84. The method of claim 83, wherein: The method further comprises: The first device is authenticated based on the public key of the first device and the second signature.
85. The method of claim 84, wherein: The third request message further carries at least one of the following: an identifier of the first device and a security parameter of the first device.
86. The method of claim 85, wherein: The authenticating the first device based on the public key of the first device and the second signature includes: The first device is authenticated based on a second parameter, a public key of the first device, and the second signature, wherein the second parameter includes at least one of the following: an identification of the first device and a security parameter of the first device.
87. The method of claim 86, wherein: The second parameter also includes at least one of the following: an identifier of the authentication function entity and a second random number.
88. The method of claim 87, wherein: The method further comprises: receiving a first request message from the first device, wherein the first request message carries at least one of the following: an identifier of the first device and a first random number; A first response message is sent to the first device, wherein the first response message carries a first signature for authenticating the authentication function entity.
89. The method of claim 87, wherein: The method further comprises: Receiving, by the second device, a first request message from the first device, wherein the first request message carries at least one of the following: an identifier of the first device and a first random number; A first response message is sent to the second device, wherein the first response message carries a first signature for authenticating the authentication function entity.
90. The method of claim 88 or 89, wherein: The first signature is calculated based on a first parameter and a private key of the authentication function entity, wherein the first parameter includes at least one of the following: a security parameter of the authentication function entity and an identifier of the authentication function entity.
91. The method of claim 90, wherein: The first response message also carries at least one of the following: security parameters of the authentication function entity, and an identifier of the authentication function entity.
92. The method of claim 91, wherein: The first response message also carries the second random number.
93. The method of claim 92, wherein: The first parameter also includes at least one of the following: an identifier of the first device, the first random number, and the second random number.
94. An authentication method performed by a second device, comprising: A first response message is received from an authentication function entity, wherein the first response message carries a first signature used to authenticate the authentication function entity.
95. The method of claim 94, wherein: The method further comprises: The authentication function entity is authenticated based on the public key of the authentication function entity and the first signature.
96. The method of claim 94 or 95, wherein: The method further comprises: A fourth request message is sent to the authentication function entity, wherein the fourth request message carries a third signature for authenticating the second device.
97. An authentication method performed by an authentication function entity, comprising: A first response message is sent to the second device, wherein the first response message carries a first signature for authenticating the authentication function entity.
98. The method of claim 97, wherein: The method further comprises: A fourth request message is received from the second device, wherein the fourth request message carries a third signature for authenticating the second device.
99. An authentication method performed by a first device, comprising: An authentication message from a third device is received, wherein the authentication message carries a fourth signature for authenticating the third device and an identifier of the third device.
100. The method of claim 99, wherein: The method further comprises: The third device is authenticated based on a public key associated with the third device, an identifier of the third device, and the fourth signature.
101. The method according to claim 100, wherein: The authentication message also carries security parameters of the third device.
102. The method according to claim 101, wherein: The authenticating the third device based on a public key associated with the third device, an identifier of the third device, and the fourth signature includes: authenticating the third device based on a public key associated with the third device, the fourth signature, an identifier of the third device, and a fourth parameter. The fourth parameter includes at least one of the following: a security parameter of the third device and an identification of the third device.
103. The method of claim 102, wherein: The authentication message also carries a third random number; the fourth parameter also includes at least one of the following: the third random number, the identifier of the first device, and a fourth random number.
104. The method according to any one of claims 100-103, wherein: The method further comprises: A request message is sent to the third device, wherein the request message carries at least one of the following: an identifier of the first device and a fourth random number.
105. The method according to any one of claims 102-104, wherein: The method further comprises: A response message is sent to the third device, wherein the response message carries a fifth signature used to authenticate the first device.
106. The method of claim 105, wherein: The fifth signature is calculated based on the private key of the first device and a fifth parameter, wherein the fifth parameter includes at least one of the following: an identifier of the first device and a security parameter of the first device.
107. The method of claim 106, wherein: The response message also carries at least one of the following: an identifier of the first device and a security parameter of the first device.
108. The method of claim 107, wherein: The fifth parameter also includes at least one of the following: an identifier of the third device, and the third random number.
109. The method according to claim 107 or 108, wherein: The method further comprises: A third session key is calculated based on the security parameter of the third device and the security parameter of the first device, wherein the third session key is used for communication between the first device and the third device.
110. The method according to any one of claims 100-104, wherein: The service node to which the first device and the third device belong is a first service node; The public key related to the third device includes: an identifier of the third device and a master public key of the first service node, where the master public key of the first service node is preconfigured.
111. The method of claim 104, wherein: The request message also carries an address of a first certificate, where the first certificate is a certificate of a first service node to which the first device belongs, and the first certificate is used to authenticate the identity of the first service node.
112. The method according to claim 111, wherein: The authentication message also carries the address of a third certificate, where the third certificate is a certificate of a second service node to which the third device belongs, and the third certificate is used to authenticate the identity of the second service node, where the second service node is different from the first service node.
113. The method according to claim 112, wherein: The method further comprises: Based on the address of the third certificate, the identity of the second service node is authenticated, and the master public key of the second service node is obtained.
114. The method of claim 112, wherein: The method further comprises: The address of the third certificate is sent to the second device, and an identity authentication result of the second service node from the second device is received.
115. The method of claim 114, wherein: The method further comprises: A master public key of the second service node is received from the second device.
116. The method according to any one of claims 112 to 115, wherein: The service node to which the first device belongs is a first service node, and the service node to which the third device belongs is a second service node; The public key related to the third device includes: an identifier of the third device and a master public key of the second service node.
117. The method according to claim 115 or 116, wherein: The second device includes one of the following: a terminal, an access network device.
118. The method according to any one of claims 100-117, wherein: The type of the first device is one of the following: an Internet of Things device, a zero-power consumption device; the type of the third device is one of the following: an Internet of Things device, a zero-power consumption device.
119. An authentication method performed by a third device, comprising: An authentication message is sent to the first device, wherein the authentication message carries a fourth signature for authenticating the third device and an identifier of the third device.
120. The method of claim 119, wherein: The authentication message also carries security parameters of the third device.
121. The method of claim 120, wherein: The fourth signature is calculated based on the private key of the third device, the identification of the third device and a fourth parameter, wherein the fourth parameter includes at least one of the following: a security parameter of the third device and the identification of the third device.
122. The method of claim 121, wherein: The authentication message also carries a third random number.
123. The method of claim 122, wherein: The fourth parameter also includes at least one of the following: the third random number, the identifier of the first device, and a fourth random number.
124. The method of claim 123, wherein: The method further comprises: A request message is received from the first device, wherein the request message carries at least one of the following: an identifier of the first device and the fourth random number.
125. The method of claim 124, wherein: The method further comprises: A response message is received from the first device, wherein the response message carries a fifth signature for authenticating the first device.
126. The method of claim 125, wherein: The method further comprises: The first device is authenticated based on a public key associated with the first device and the fifth signature.
127. The method of claim 126, wherein: The response message also carries at least one of the following: an identifier of the first device and a security parameter of the first device.
128. The method of claim 127, wherein: The authenticating the first device based on the public key associated with the first device and the fifth signature includes: The first device is authenticated based on a public key associated with the first device, the fifth signature, and a fifth parameter, wherein the fifth parameter includes at least one of the following: an identification of the first device and a security parameter of the first device.
129. The method of claim 128, wherein: The fifth parameter also includes at least one of the following: an identifier of the third device, and the third random number.
130. The method according to any one of claims 127 to 129, wherein: The method further comprises: A third session key is calculated based on the security parameter of the third device and the security parameter of the first device, wherein the third session key is used for communication between the first device and the third device.
131. The method according to any one of claims 126 to 130, wherein: The service node to which the first device and the third device belong is a first service node; The public key related to the first device includes: an identifier of the first device and a master public key of the first service node, where the master public key of the first service node is preconfigured.
132. The method according to any one of claims 126 to 130, wherein: The request message also carries an address of a first certificate, where the first certificate is a certificate of a first service node to which the first device belongs, and the first certificate is used to authenticate the identity of the first service node.
133. The method of claim 132, wherein: The method further comprises: Based on the address of the first certificate, the identity of the first service node is authenticated, and the master public key of the first service node is obtained.
134. The method of claim 132, wherein: The method further comprises: The address of the certificate of the first service node is sent to a fourth device, and an identity authentication result of the first service node is received from the fourth device.
135. The method of claim 134, wherein: The method further comprises: A master public key of the first service node is received from the fourth device.
136. The method according to any one of claims 133 to 135, wherein: The public key related to the first device includes: an identifier of the first device and a master public key of the first service node.
137. The method according to any one of claims 132 to 136, wherein: The authentication message also carries the address of a third certificate, where the third certificate is a certificate of a second service node to which the third device belongs, and the third certificate is used to authenticate the identity of the second service node, where the second service node is different from the first service node.
138. The method of claim 134 or 135, wherein: The fourth device includes one of the following: a terminal, an access network device.
139. The method according to any one of claims 119 to 138, wherein: The type of the first device is one of the following: an Internet of Things device, a zero-power consumption device; the type of the third device is one of the following: an Internet of Things device, a zero-power consumption device.
140. A first device, comprising: The first communication unit is used to send a first request message to the authentication function entity, wherein the first request message carries the address of a first certificate, the first certificate is a certificate of a first service node to which the first device belongs, and the first certificate is used to authenticate the identity of the first service node.
141. The first device according to claim 140, wherein: The first communication unit is used to receive a first response message from the authentication function entity, wherein the first response message carries information related to a second certificate, and the second certificate is used to authenticate the identity of the authentication function entity.
142. The first device according to claim 141, wherein The information related to the second certificate includes one of the following: the address of the second certificate, and the second certificate.
143. The first device according to claim 142, wherein: The first device also includes a first processing unit, configured to perform one of the following: authenticating the identity of the authentication function entity based on the address of the second certificate; authenticating the identity of the authentication function entity based on the second certificate.
144. A first device according to any one of claims 141-143, wherein: The second certificate carries the public key of the authentication function entity.
145. The first device of claim 142, wherein: The first communication unit is used to send a second request message to the second device, wherein the second request message carries information related to the second certificate.
146. The first device according to claim 145, wherein The first communication unit is used to receive a second response message from the second device, wherein the second response message carries the public key of the authentication function entity.
147. The first device according to claim 144 or 146, wherein The first response message also carries a first signature used to authenticate the authentication function entity.
148. The first device according to claim 147, wherein The first processing unit is used to authenticate the authentication function entity based on the public key of the authentication function entity and the first signature.
149. The first device according to claim 148, wherein The first response message also carries at least one of the following: security parameters of the authentication function entity, and an identifier of the authentication function entity.
150. The first device according to claim 149, wherein The first processing unit is used to authenticate the authentication function entity based on a first parameter, a public key of the authentication function entity and the first signature, wherein the first parameter includes at least one of the following: a security parameter of the authentication function entity and an identifier of the authentication function entity.
151. The first device according to claim 150, wherein: The first response message also carries a second random number.
152. The first device according to claim 151, wherein The first parameter also includes at least one of the following: an identifier of the first device, a first random number, and the second random number.
153. The first device according to claim 140, wherein: The first communication unit is used to send the first request message to the authentication function entity through the second device.
154. The first device according to claim 153, wherein The first communication unit is used to receive a third response message from the second device, wherein the third response message carries the security parameters of the authentication function entity.
155. The first device according to claim 154, wherein: The third response message also carries at least one of the following: an identifier of the authentication function entity and a second random number.
156. The first device according to any one of claims 151, 152, and 155, wherein: The first communication unit is used to send a third request message to the authentication function entity, wherein the third request message carries a second signature used to authenticate the first device, and the second signature is calculated based on a private key of the first device.
157. The first device according to claim 156, wherein The second signature is calculated based on the private key of the first device and a second parameter, wherein the second parameter includes at least one of the following: an identifier of the first device and a security parameter of the first device.
158. The first device according to claim 157, wherein The third request message further carries at least one of the following: an identifier of the first device and a security parameter of the first device.
159. The first device according to claim 158, wherein The second parameter also includes at least one of the following: an identifier of the authentication function entity and the second random number.
160. The first device according to any one of claims 150-152, 157-159, wherein: The first processing unit is used to calculate a first session key based on the security parameters of the authentication function entity and the security parameters of the first device, wherein the first session key is used for communication between the first device and the authentication function entity.
161. The first device of claim 153, wherein: The first communication unit is used to receive a third response message from the second device, wherein the third response message is used to indicate that the authentication is successful.
162. The first device according to any one of claims 140-161, wherein: The first request message also carries at least one of the following: an identifier of the first device and a first random number.
163. The first device according to any one of claims 145, 146, 153-155, wherein: The second device includes one of the following: a terminal, an access network device.
164. A first device according to any one of claims 140 to 163, wherein: The first device includes one of the following: an Internet of Things device, a zero-power device; the authentication function entity is deployed in at least one of the following: an application function AF, an access and mobility management function AMF, a session management function SMF, an authentication service function AUSF, a unified data management function UDM, a unified data storage UDR, a home subscription system HSS, an authentication credential storage and processing function ARPF, a bootstrapping service function BSF, a security anchor function SEAF, and a core network dedicated network element.
165. An authentication function entity, comprising: The second communication unit is used to receive a first request message, wherein the first request message carries the address of a first certificate, the first certificate is a certificate of a first service node to which the first device belongs, and the first certificate is used to authenticate the identity of the first service node.
166. The authentication functional entity according to claim 165, wherein: The authentication function entity also includes a second processing unit: The second processing unit is configured to authenticate the identity of the first service node based on the address of the first certificate.
167. An authentication functional entity according to claim 165 or 166, wherein: The second communication unit is used to send a first response message, wherein the first response message carries information related to a second certificate, and the second certificate is used to authenticate the identity of the authentication function entity.
168. The authentication functional entity according to claim 167, wherein: The information related to the second certificate includes one of the following: the address of the second certificate, and the second certificate.
169. An authentication functional entity according to claim 167 or 168, wherein: The first response message also carries a first signature used to authenticate the authentication function entity, where the first signature is calculated based on a private key of the authentication function entity.
170. The authentication functional entity according to claim 169, wherein: The first signature is calculated based on a first parameter and a private key of the authentication function entity, wherein the first parameter includes at least one of the following: a security parameter of the authentication function entity and an identifier of the authentication function entity.
171. The authentication functional entity according to claim 170, wherein: The first response message also carries at least one of the following: security parameters of the authentication function entity, and an identifier of the authentication function entity.
172. The authentication functional entity according to claim 171, wherein: The first response message also carries a second random number.
173. The authentication functional entity according to claim 172, wherein: The first parameter also includes at least one of the following: an identifier of the first device, a first random number, and the second random number.
174. An authentication functional entity according to claim 172 or 173, wherein: The second communication unit is configured to receive a third request message from the first device, wherein the third request message carries the second signature used to authenticate the first device.
175. The authentication functional entity according to claim 174, wherein: The second processing unit is configured to authenticate the first device based on the public key of the first device and the second signature.
176. The authentication functional entity according to claim 175, wherein: The third request message further carries at least one of the following: an identifier of the first device and a security parameter of the first device.
177. The authentication functional entity according to claim 176, wherein: The second processing unit is used to authenticate the first device based on a second parameter, a public key of the first device, and the second signature, wherein the second parameter includes at least one of the following: an identifier of the first device and a security parameter of the first device.
178. The authentication functional entity according to claim 177, wherein: The second parameter also includes at least one of the following: an identifier of the authentication function entity and the second random number.
179. An authentication functional entity according to any one of claims 176-178, wherein: The second processing unit is used to calculate a first session key based on the security parameters of the authentication function entity and the security parameters of the first device, wherein the first session key is used for communication between the first device and the authentication function entity.
180. An authentication functional entity according to any one of claims 167-179, wherein: The second communication unit is configured to receive a first request message from the first device; and send the first response message to the first device.
181. An authentication functional entity according to claim 172 or 173, wherein: The second communication unit is configured to receive a fourth request message from a second device, wherein the fourth request message carries a third signature for authenticating the second device.
182. The authentication functional entity according to claim 181, wherein: The second processing unit is configured to authenticate the second device based on the public key of the second device and the third signature.
183. The authentication functional entity according to claim 182, wherein: The fourth request message further carries at least one of the following: an identifier of the second device and a security parameter of the second device.
184. The authentication functional entity according to claim 183, wherein: The second processing unit is used to authenticate the second device based on a third parameter, a public key of the second device, and the third signature, wherein the third parameter includes at least one of the following: an identifier of the second device and a security parameter of the second device.
185. The authentication functional entity according to claim 184, wherein: The third parameter also includes at least one of the following: an identifier of the authentication function entity, an identifier of the first device, a first random number, and the second random number.
186. An authentication functional entity according to any one of claims 183-185, wherein: The second processing unit is used to calculate a second session key based on the security parameters of the authentication function entity and the security parameters of the second device, wherein the second session key is used for communication between the second device and the authentication function entity.
187. An authentication functional entity according to any one of claims 167-173, 181-186, wherein: The second communication unit is configured to receive the first request message from a second device; and send the first response message to the second device.
188. An authentication functional entity according to any one of claims 165-187, wherein: The first request message also carries at least one of the following: an identifier of the first device and a first random number.
189. An authentication functional entity according to any one of claims 181-188, wherein: The second device includes one of the following: a terminal, an access network device.
190. An authentication functional entity according to any one of claims 165-189, wherein: The first device includes one of the following: an Internet of Things device, a zero-power device; the authentication function entity is deployed in at least one of the following: an application function AF, an access and mobility management function AMF, a session management function SMF, an authentication service function AUSF, a unified data management function UDM, a unified data storage UDR, a home subscription system HSS, an authentication credential storage and processing function ARPF, a bootstrapping service function BSF, a security anchor function SEAF, and a core network dedicated network element.
191. A second device comprising: A third communication unit is configured to send a first request message to the authentication function entity, wherein the first request message carries an address of a first certificate, the first certificate is a certificate of a first service node to which the first device belongs, and the first certificate is used to authenticate the first service node identity.
192. The second device according to claim 191, wherein The third communication unit is used to receive a first response message from the authentication function entity, wherein the first response message carries information related to the second certificate, and the second certificate is used to authenticate the identity of the authentication function entity.
193. The second device according to claim 192, wherein: The information related to the second certificate includes one of the following: the address of the second certificate, and the second certificate.
194. The second device according to claim 193, wherein The second device also includes a third processing unit, configured to perform one of the following: authenticating the identity of the authentication function entity based on the address of the second certificate; authenticating the identity of the authentication function entity based on the second certificate.
195. The second device according to any one of claims 192-194, wherein: The first response message also carries a first signature.
196. The second device according to claim 195, wherein The third processing unit is used to authenticate the authentication function entity based on the public key of the authentication function entity and the first signature, wherein the public key of the authentication function entity is carried by the second certificate.
197. The second device according to claim 196, wherein The first response message also carries at least one of the following: security parameters of the authentication function entity, and an identifier of the authentication function entity.
198. The second device according to claim 197, wherein The third processing unit is used to authenticate the authentication function entity based on a first parameter, a public key of the authentication function entity and the first signature, wherein the first parameter includes at least one of the following: a security parameter of the authentication function entity and an identifier of the authentication function entity.
199. The second device according to claim 198, wherein The first response message also carries a second random number; the first parameter also includes at least one of the following: an identifier of the first device, a first random number, and the second random number.
200. The second device according to claim 199, wherein: The third communication unit is configured to send the first request message from the first device to the authentication function entity; and send a third response message to the first device, wherein the third response message carries the security parameters of the authentication function entity.
201. The second device according to claim 200, wherein: The third response message also carries at least one of the following: an identifier of the authentication function entity and a second random number.
202. The second device according to claim 199, wherein: The third communication unit is used to send a fourth request message to the authentication function entity, wherein the fourth request message carries a third signature for authenticating the second device, and the third signature is calculated based on a private key of the second device.
203. The second device according to claim 202, wherein: The third signature is calculated based on the private key of the second device and a third parameter, wherein the third parameter includes at least one of the following: an identifier of the second device and a security parameter of the second device.
204. The second device according to claim 203, wherein: The fourth request message further carries at least one of the following: an identifier of the second device and a security parameter of the second device.
205. The second device according to claim 204, wherein: The third parameter also includes at least one of the following: an identifier of the authentication function entity, an identifier of the first device, the first random number, and the second random number.
206. The second device according to any one of claims 203-205, wherein: The third processing unit is used to calculate a second session key based on the security parameters of the authentication function entity and the security parameters of the second device, wherein the second session key is used for communication between the second device and the authentication function entity.
207. The second device according to any one of claims 202-206, wherein: The third communication unit is used to send a third response message to the first device, wherein the third response message is used to indicate that the authentication is successful.
208. The second device according to any one of claims 191-207, wherein: The first request message also carries at least one of the following: an identifier of the first device and a first random number.
209. The second device according to any one of claims 191-208, wherein: The first device includes one of the following: an Internet of Things device, a zero-power device; the second device includes one of the following: a terminal, an access network device; the authentication function entity includes at least one of the following: an application function AF, an access and mobility management function AMF, a session management function SMF, an authentication service function AUSF, a unified data management function UDM, a unified data storage UDR, a home subscription system HSS, an authentication credential storage and processing function ARPF, a bootstrapping service function BSF, a security anchor function SEAF, and a core network dedicated network element.
210. A first device, comprising: The first communication unit is used to send a third request message to the authentication function entity, wherein the third request message carries a second signature used to authenticate the first device, and the second signature is calculated based on a private key of the first device.
211. The first device according to claim 210, wherein: The second signature is calculated based on the private key of the first device and a second parameter, wherein the second parameter includes at least one of the following: an identifier of the first device and a security parameter of the first device.
212. The first device according to claim 211, wherein: The third request message further carries at least one of the following: an identifier of the first device and a security parameter of the first device.
213. The first device according to claim 212, wherein: The second parameter also includes at least one of the following: an identifier of the authentication function entity and a second random number.
214. The first device according to claim 213, wherein: The first communication unit is used to send a first request message to the authentication function entity, wherein the first request message carries at least one of the following: an identifier of the first device and a first random number; and receive a first response message from the authentication function entity, wherein the first response message carries a first signature for authenticating the authentication function entity.
215. The first device according to claim 214, wherein: The first device also includes a first processing unit: The first processing unit is used to authenticate the authentication function entity based on the public key of the authentication function entity and the first signature.
216. The first device according to claim 215, wherein: The first response message also carries at least one of the following: security parameters of the authentication function entity, and an identifier of the authentication function entity.
217. The first device according to claim 216, wherein: The first processing unit is used to authenticate the authentication function entity based on the first parameter, the public key of the authentication function entity and the first signature, wherein the first parameter includes at least one of the following: a security parameter of the authentication function entity and an identifier of the authentication function entity.
218. The first device according to claim 217, wherein: The first response message also carries a second random number.
219. The first device according to claim 218, wherein: The first parameter also includes at least one of the following: an identifier of the first device, the first random number, and the second random number.
220. The first device according to claim 213, wherein The first communication unit is used to send a first request message to the authentication function entity through the second device, wherein the first request message carries at least one of the following: an identifier of the first device and a first random number; and receive a third response message from the second device, wherein the third response message carries the security parameters of the authentication function entity.
221. The first device according to claim 220, wherein: The third response message also carries at least one of the following: the identifier of the authentication function entity and the second random number.
222. An authentication function entity, comprising: The second communication unit is configured to receive a third request message from the first device, wherein the third request message carries a second signature for authenticating the first device.
223. The authentication functional entity according to claim 222, wherein: The authentication function entity also includes a second processing unit: The second processing unit is configured to authenticate the first device based on the public key of the first device and the second signature.
224. The authentication functional entity according to claim 223, wherein: The third request message further carries at least one of the following: an identifier of the first device and a security parameter of the first device.
225. The authentication functional entity according to claim 224, wherein: The second processing unit is used to authenticate the first device based on a second parameter, a public key of the first device, and the second signature, wherein the second parameter includes at least one of the following: an identifier of the first device and a security parameter of the first device.
226. The authentication functional entity according to claim 225, wherein: The second parameter also includes at least one of the following: an identifier of the authentication function entity and a second random number.
227. The authentication functional entity according to claim 226, wherein: The second communication unit is used to receive a first request message from the first device, wherein the first request message carries at least one of the following: an identifier of the first device and a first random number; and send a first response message to the first device, wherein the first response message carries the first signature used to authenticate the authentication function entity.
228. The authentication functional entity according to claim 226, wherein: The second communication unit is used to receive a first request message from the first device through the second device, wherein the first request message carries at least one of the following: an identifier of the first device and a first random number; and send a first response message to the second device, wherein the first response message carries a first signature for authenticating the authentication function entity.
229. An authentication functional entity according to claim 227 or 228, wherein: The first signature is calculated based on a first parameter and a private key of the authentication function entity, wherein the first parameter includes at least one of the following: a security parameter of the authentication function entity and an identifier of the authentication function entity.
230. The authentication functional entity according to claim 229, wherein: The first response message also carries at least one of the following: security parameters of the authentication function entity, and an identifier of the authentication function entity.
231. The authentication functional entity according to claim 230, wherein: The first response message also carries the second random number.
232. The authentication functional entity according to claim 231, wherein: The first parameter also includes at least one of the following: an identifier of the first device, the first random number, and the second random number.
233. A second device comprising: The third communication unit is configured to receive a first response message from the authentication function entity, wherein the first response message carries a message for authenticating Verify the first signature of the authentication function entity.
234. The second device according to claim 233, wherein: The second device also includes a third processing unit: The third processing unit is used to authenticate the authentication function entity based on the public key of the authentication function entity and the first signature.
235. The second device according to claim 233 or 234, wherein: The third communication unit is used to send a fourth request message to the authentication function entity, wherein the fourth request message carries a third signature used to authenticate the second device.
236. An authentication function entity, comprising: The second communication unit is used to send a first response message to the second device, wherein the first response message carries a first signature used to authenticate the authentication function entity.
237. The authentication functional entity according to claim 236, wherein: The second communication unit is configured to receive a fourth request message from the second device, wherein the fourth request message carries a third signature for authenticating the second device.
238. A first device comprising: The first communication unit is configured to receive an authentication message from a third device, wherein the authentication message carries a fourth signature for authenticating the third device and an identifier of the third device.
239. The first device according to claim 238, wherein: The first device also includes a first processing unit: The first processing unit is configured to authenticate the third device based on a public key associated with the third device, an identifier of the third device, and the fourth signature.
240. The first device according to claim 239, wherein: The authentication message also carries security parameters of the third device.
241. The first device according to claim 240, wherein: The first processing unit is used to authenticate the third device based on a public key related to the third device, the fourth signature, an identifier of the third device and a fourth parameter, wherein the fourth parameter includes at least one of the following: a security parameter of the third device and an identifier of the third device.
242. The first device according to claim 241, wherein The authentication message also carries a third random number; the fourth parameter also includes at least one of the following: the third random number, the identifier of the first device, and a fourth random number.
243. A first device according to any one of claims 239-242, wherein: The first communication unit is used to send a request message to the third device, wherein the request message carries at least one of the following: an identifier of the first device and a fourth random number.
244. A first device according to any one of claims 241-243, wherein: The first communication unit is configured to send a response message to the third device, wherein the response message carries a fifth signature for authenticating the first device.
245. The first device according to claim 244, wherein: The fifth signature is calculated based on the private key of the first device and a fifth parameter, wherein the fifth parameter includes at least one of the following: an identifier of the first device and a security parameter of the first device.
246. The first device according to claim 245, wherein: The response message also carries at least one of the following: an identifier of the first device and a security parameter of the first device.
247. The first device according to claim 246, wherein The fifth parameter also includes at least one of the following: an identifier of the third device, and the third random number.
248. The first device according to claim 246 or 247, wherein The first processing unit is configured to calculate a third session key based on a security parameter of the third device and a security parameter of the first device, wherein the third session key is used for communication between the first device and the third device.
249. A first device according to any one of claims 239-243, wherein: The service node to which the first device and the third device belong is a first service node; The public key related to the third device includes: an identifier of the third device and a master public key of the first service node, where the master public key of the first service node is preconfigured.
250. The first device of claim 243, wherein: The request message also carries an address of a first certificate, where the first certificate is a certificate of a first service node to which the first device belongs, and the first certificate is used to authenticate the identity of the first service node.
251. The first device according to claim 250, wherein: The authentication message also carries the address of a third certificate, where the third certificate is a certificate of a second service node to which the third device belongs, and the third certificate is used to authenticate the identity of the second service node, where the second service node is different from the first service node.
252. The first device according to claim 251, wherein The first processing unit is configured to authenticate the identity of the second service node based on the address of the third certificate and obtain the master public key of the second service node.
253. The first device according to claim 251, wherein The first communication unit is configured to send the address of the third certificate to the second device, and receive an identity authentication result of the second service node from the second device.
254. The first device according to claim 253, wherein: The first communication unit is configured to receive a master public key of the second service node from the second device.
255. A first device according to any one of claims 251-254, wherein: The service node to which the first device belongs is a first service node, and the service node to which the third device belongs is a second service node; The public key related to the third device includes: an identifier of the third device and a master public key of the second service node.
256. The first device according to claim 254 or 255, wherein: The second device includes one of the following: a terminal, an access network device.
257. A first device according to any one of claims 239-256, wherein: The type of the first device is one of the following: an Internet of Things device, a zero-power consumption device; the type of the third device is one of the following: an Internet of Things device, a zero-power consumption device.
258. A third device comprising: The fourth communication unit is used to send an authentication message to the first device, wherein the authentication message carries a fourth signature for authenticating the third device and an identifier of the third device.
259. A third device according to claim 258, wherein: The authentication message also carries security parameters of the third device.
260. The third device according to claim 259, wherein: The fourth signature is calculated based on the private key of the third device, the identification of the third device and a fourth parameter, wherein the fourth parameter includes at least one of the following: a security parameter of the third device and the identification of the third device.
261. A third device according to claim 260, wherein: The authentication message also carries a third random number.
262. A third device according to claim 261, wherein The fourth parameter also includes at least one of the following: the third random number, the identifier of the first device, and a fourth random number.
263. A third device according to claim 262, wherein: The fourth communication unit is used to receive a request message from the first device, wherein the request message carries at least one of the following: an identifier of the first device and the fourth random number.
264. A third device according to claim 263, wherein: The fourth communication unit is configured to receive a response message from the first device, wherein the response message carries a fifth signature used to authenticate the first device.
265. A third device according to claim 264, wherein: The third device further includes a fourth processing unit: The fourth processing unit is configured to authenticate the first device based on a public key associated with the first device and the fifth signature.
266. A third device according to claim 265, wherein: The response message also carries at least one of the following: an identifier of the first device and a security parameter of the first device.
267. A third device according to claim 266, wherein: The fourth processing unit is used to authenticate the first device based on the public key related to the first device, the fifth signature, and the fifth parameter, wherein the fifth parameter includes at least one of the following: an identification of the first device and a security parameter of the first device.
268. A third device according to claim 267, wherein: The fifth parameter also includes at least one of the following: an identifier of the third device, and the third random number.
269. A third device according to any one of claims 266-268, wherein: The fourth processing unit is used to calculate a third session key based on the security parameters of the third device and the security parameters of the first device, wherein the third session key is used for communication between the first device and the third device.
270. A third device according to any one of claims 265-269, wherein: The service node to which the first device and the third device belong is a first service node; The public key related to the first device includes: an identifier of the first device and a master public key of the first service node, where the master public key of the first service node is preconfigured.
271. A third device according to any one of claims 265-269, wherein: The request message also carries an address of a first certificate, where the first certificate is a certificate of a first service node to which the first device belongs, and the first certificate is used to authenticate the identity of the first service node.
272. A third device according to claim 271, wherein The fourth processing unit is configured to authenticate the identity of the first service node based on the address of the first certificate and obtain the master public key of the first service node.
273. A third device according to claim 271, wherein The fourth communication unit is configured to send the address of the certificate of the first service node to a fourth device, and receive an identity authentication result of the first service node from the fourth device.
274. A third device according to claim 273, wherein: The fourth communication unit is configured to receive the master public key of the first service node from the fourth device.
275. A third device according to any one of claims 272-274, wherein: The public key related to the first device includes: an identifier of the first device and a master public key of the first service node.
276. A third device according to any one of claims 273-275, wherein: The authentication message also carries the address of a third certificate, where the third certificate is a certificate of a second service node to which the third device belongs, and the third certificate is used to authenticate the identity of the second service node, where the second service node is different from the first service node.
277. A third device according to claim 273 or 274, wherein: The fourth device includes one of the following: a terminal, an access network device.
278. A third device according to any one of claims 258-277, wherein: The type of the first device is one of the following: an Internet of Things device, a zero-power consumption device; the type of the third device is one of the following: an Internet of Things device, a zero-power consumption device.
279. A first device comprising: A transceiver, a processor and a memory, the memory being used to store a computer program, the processor being used to call and run the computer program stored in the memory so that the first device performs the method as described in any one of claims 1 to 25, or claims 71 to 82, or claims 99 to 118.
280. A second device comprising: A transceiver, a processor and a memory, the memory being used to store a computer program, the processor being used to call and run the computer program stored in the memory so that the second device executes the method as described in any one of claims 52 to 70 or claims 94 to 96.
281. A third device, comprising: A transceiver, a processor and a memory, the memory being used to store a computer program, the processor being used to call and run the computer program stored in the memory so that the third device executes the method as described in any one of claims 119 to 139.
282. An authentication functional entity, comprising: A transceiver, a processor and a memory, the memory being used to store a computer program, the processor being used to call and run the computer program stored in the memory so that the authentication function entity performs a method as described in any one of claims 26 to 51, or claims 83 to 93, or claims 97 to 98.
283. A chip comprising: A processor for calling and running a computer program from a memory so that a device equipped with the chip performs a method as described in any one of claims 1 to 25, or claims 26 to 51, or claims 52 to 70, or claims 71 to 82, or claims 83 to 93, or claims 94 to 96, or claims 97 to 98, or claims 99 to 118, or claims 119 to 139.
284. A computer-readable storage medium for storing a computer program, which, when executed by a device, causes the device to perform a method as described in any one of claims 1 to 25, or claims 26 to 51, or claims 52 to 70, or claims 71 to 82, or claims 83 to 93, or claims 94 to 96, or claims 97 to 98, or claims 99 to 118, or claims 119 to 139.
285. A computer program product comprising computer program instructions that cause a computer to perform a method as described in any one of claims 1 to 25, or claims 26 to 51, or claims 52 to 70, or claims 71 to 82, or claims 83 to 93, or claims 94 to 96, or claims 97 to 98, or claims 99 to 118, or claims 119 to 139.
286. A computer program that causes a computer to perform a method as described in any one of claims 1 to 25, or claims 26 to 51, or claims 52 to 70, or claims 71 to 82, or claims 83 to 93, or claims 94 to 96, or claims 97 to 98, or claims 99 to 118, or claims 119 to 139.
Citation Information
Patent Citations
Credible identity authentication method based on block chain
CN110958229A
Mobile network access system and method, storage medium and electronic equipment
CN112512048A
Cross-domain identity authentication method based on block chain certificate
CN113824563A
Identity authentication method, system and equipment based on ECDSA signature algorithm
CN116567633A
Secure communication method and apparatus, terminal device, and network device
WO2023283789A1