Information interaction method and device and readable storage medium
By using the key deduction architecture in the network function virtualization scenario, a cryptographic connection between the root keys of the NFVI layer and the VNF layer is formed, which solves the problems of key security and reliability in the virtualized environment and achieves higher security and reliability, and support remote proof without a certificate authority.
Patent Information
- Application Number
- CN202311015300.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-08-11
- Publication Date
- 2025-02-18
AI Technical Summary
In the scenario of network function virtualization, the security and reliability of keys are threatened, especially due to the security risks of key storage and generation brought about by virtualization.
Through the key deduction architecture, the root key of the NFVI layer and the root key of the VNF layer have a cryptographic connection. The specific implementation method is that the first metric party generates the second EK based on the first parameter and its own first EK, and It is transmitted to the second metric party, thereby forming a key trust chain.
It improves the security and reliability of VNF layer root keys, reduces the security risks caused by key storage and generation brought about by virtualization, and implements the remote proof process in the scenario without a certificate certification authority.
Smart Images

Figure CN119483916A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of communication technology, and in particular to an information interaction method, device and readable storage medium. Background Art
[0002] Network functions virtualization (NFV) can be understood as: separating the network functions of traditional network devices (such as servers, switches and storage) from their physical devices and running them on commercial off-the-shelf hosts (COTS) in the form of software (or software programs). Network functions virtualization can also be understood as: using the virtualization technology of information technology (IT) to virtualize into virtual machines (VMs), and then deploying traditional communications technology (CT) services on virtual machines (VMs).
[0003] Existing network function virtualization architectures may include, but are not limited to: virtual network functions (VNF) and network functions virtualization infrastructure (NFVI). Among them, virtual network functions (VNF) can be understood as software applications that provide network functions (such as mobility management, session management, or policy management network elements, etc.). NFVI can be understood as a set of resources used to host and connect virtual functions. Exemplarily, NFVI can provide computing resources, storage resources, programs, etc. for implementing VNF. In the network function virtualization scenario, remote attestation (RA) is a common security service that can be used to verify the security of VNF and / or NFVI. Since remote attestation requires keys, the key security issue in the network function virtualization scenario is worth considering. Summary of the invention
[0004] The embodiments of the present application provide an information interaction method, device and readable storage medium, which can improve the security and reliability of keys.
[0005] The present application is introduced below from different aspects. It should be understood that the implementation methods and beneficial effects of the following different aspects can be referenced to each other.
[0006] It can be understood that the root key is the top-level key of the public key infrastructure (PKI) hierarchy, which is used to verify and sign digital certificates. In this application, the endorsement key (EK) is used as the root key.
[0007] In a first aspect, the present application provides an information interaction method, the method comprising: a first measurement party receives a key generation request from a verification party, the key generation request includes a first parameter, and the key generation request is used to request to generate a second EK of a second measurement party according to the first parameter; the first measurement party generates the second EK according to the first parameter and its own first EK, and then sends a key grant message to the second measurement party, the key grant message includes the second EK. The second EK can be used as a root key of the second measurement party.
[0008] In the present application, the first measurement party may belong to the network function virtualization infrastructure (NFVI), and may also be referred to as the measurement party of the NFVI layer (or device layer). Because security hardware, such as a subscriber identification module (SIM) card, is deployed in the NFVI, the first measurement party has the ability and / or conditions to call security hardware, so the security of the first measurement party is relatively high. The second measurement party may belong to the VNF architecture, and may also be referred to as the measurement party of the VNF layer (or business layer). Because the VNF architecture is virtualized and no security hardware is configured, the second measurement party does not have the ability and / or conditions to call security hardware, so the security of the second measurement party is lower than that of the first measurement party. Exemplarily, the first measurement party is a pluggable device, such as a subscriber identification module (SIM) card, or a device inserted with a SIM card, or a root of trust (RoT). Exemplarily, the second measurement party is software installed on a host operating system (Host OS), or a virtual root of trust (Virtual RoT, vRoT). In another exemplary embodiment, the first measurement party is a program installed in the NFVI, which can communicate with or call the security hardware (such as RoT or SIM card); the second measurement party is software installed in the VNF, which does not have the ability and / or conditions to call the security hardware. It can be understood that the description of the first measurement party and the second measurement party will not be described in detail below.
[0009] It can be understood that the first EK of the first measurement party can be pre-configured, for example, the first EK is pre-configured in the first measurement party by hardware burning.
[0010] In the present application, the first measurement party utilizes a key deduction architecture to make the first EK of the first measurement party and the second EK of the second measurement party have a cryptographic connection, such as: using the first EK of the first measurement party to dynamically generate the second EK of the second measurement party to form a key trust chain; thereby improving the security and reliability of the second EK (i.e., the EK of the VNF layer) and reducing the security risks caused by key storage and generation due to virtualization.
[0011] In combination with the first aspect, in a possible implementation, the key generation request is also used to indicate that the second measurement party is trustworthy. It can be understood that when the second measurement party is trustworthy, because the first EK of the first measurement party is pre-configured (such as hardware burning), the first EK of the first measurement party is not easy to be tampered with, then the second EK dynamically generated based on the first EK of the first measurement party and the first parameter is trustworthy, and the second EK and the first EK form a key trust chain. Thereby, the security and reliability of the VNF layer root key (i.e., the second EK) can be improved, and the security risks of key storage and generation due to virtualization can be reduced.
[0012] In combination with the first aspect, in a possible implementation, the first measurement party generates a second EK based on the first parameter and its own first EK, including: the first measurement party takes the first parameter and its own first EK as input, and executes a first key generation algorithm (such as preconfigured) to generate the second EK. Exemplarily, the first parameter can be a random number, such as Nonce1; it can also be address information, such as the address of the first measurement party, such as the domain name of the first measurement party, the Internet Protocol (IP) address, the fully qualified domain name (FQDN), etc.; it can also be a counter value, such as the verification party maintains a counter. Exemplarily, there are many key generation algorithms, such as a key derivation function (KDF) and a hash algorithm, which are not limited in this application.
[0013] In combination with the first aspect, in a possible implementation, before the first measurement party receives a key generation request from the verification party, the method further includes: the first measurement party obtains a second parameter, and then generates its own first attestation identity key (AIK) according to the second parameter and its own first EK. The second AIK can be used to sign the evidence of the second measurement party.
[0014] Exemplarily, the first measurement party generates its own first AIK based on the second parameter and its own first EK, including: the first measurement party takes the above-mentioned second parameter and its own first EK as input, and executes a second key generation algorithm (such as preconfigured) to generate its own first AIK. Among them, the second parameter is different from the above-mentioned first parameter, or it can be the same, which is not limited by this application. The second key generation algorithm can be the same as the above-mentioned first key generation algorithm, of course, it can also be different, which is not limited by this application. For example, when the second key generation algorithm is the same as the above-mentioned first key generation algorithm, the second parameter is different from the above-mentioned first parameter; when the second parameter is the same as the above-mentioned first parameter, the second key generation algorithm can be different from the above-mentioned first key generation algorithm.
[0015] This application uses symmetric key deduction to generate AIK based on EK, so that AIK and EK also have a cryptographic connection, forming a key trust chain, and can perform remote certification processes in scenarios without a certificate authority (CA). It can also improve the robustness of the measurement and enhance the ability to resist quantum attacks.
[0016] In combination with the first aspect, in a possible implementation manner, the first measurement party obtains the second parameter, including: the first measurement party obtains the second parameter from the key management network element, see the description of embodiment 2 below for details, which is not described in detail here.
[0017] Exemplarily, before the first measurement party obtains the second parameter from the key management network element, the method further includes: the first measurement party receives a remote attestation request from the verification party, the remote attestation request includes the identification of the verification party and the identification of the first measurement party, and optionally also includes a freshness parameter. After the first measurement party generates its own first AIK based on the above-mentioned second parameter and its own first EK, the method further includes: the first measurement party sends a remote attestation response to the verification party, the remote attestation response includes the evidence of the second measurement party and the first signature information, the first signature information includes the information after the evidence of the second measurement party is signed by the first AIK; the first measurement party receives the remote attestation result from the verification party, and the remote attestation result indicates that the remote attestation of the second measurement party is successful. Among them, for the specific implementation method of remote attestation, please refer to the relevant description in Example 2 below, which will not be described in detail here. It can be understood that the success of the remote attestation of the second measurement party indicates that the second measurement party is trustworthy.
[0018] The identity of the verifier can be used to inform the measuring party of the identity of the verifier that sent the remote proof request. The identity of the first measuring party can be used to inform a specific measuring party to perform the measurement. The freshness parameter can be used to prevent replay attacks and ensure the freshness of the evidence. Exemplarily, the freshness parameter can be a random number or a count value, such as a loop count value from 0 to 7.
[0019] The first measurement party of the present application cooperates with the verification party to remotely certify the second measurement party to confirm whether the second measurement party is trustworthy. When the second measurement party is trustworthy, the verification party triggers the first measurement party to dynamically generate a second EK for the second measurement party, so that the first EK of the first measurement party and the second EK of the second measurement party have a cryptographic connection to improve the security and reliability of the VNF layer root key (i.e., the second EK).
[0020] In combination with the first aspect, in a possible implementation manner, the first measurement party obtains the second parameter, including: the first measurement party obtains the second parameter from the verification party, see the description of embodiment 3 below for details, which is not described in detail here.
[0021] Exemplarily, after the first measurement party generates its own first AIK according to the above-mentioned second parameter and its own first EK, the method also includes: the first measurement party receives a remote attestation request from the verification party, the remote attestation request includes the identification of the verification party and the identification of the first measurement party, and optionally also includes a freshness parameter; the first measurement party sends a remote attestation response to the verification party, the remote attestation response includes the evidence of the second measurement party, the second parameter, and the first signature information, the second parameter can be used to determine the first AIK (for the specific determination method, see the description of Example 3 below), the first signature information includes the information after the evidence of the second measurement party is signed by the first AIK; the first measurement party receives the remote attestation result sent by the verification party, and the remote attestation result indicates that the remote attestation of the second measurement party is successful. Among them, for the specific implementation method of remote attestation, please refer to the relevant description in Example 3 below, which will not be described in detail here.
[0022] In a second aspect, the present application provides an information interaction method, which includes: a verifier receives a key request message from a second measurement party, the key request message includes an identifier of the second measurement party, and the key request message is used to request to obtain a second EK of the second measurement party; the verifier generates a first parameter; when the second measurement party is trustworthy, the verifier sends a key generation request to the first measurement party, the key generation request includes the first parameter, and the key generation request is used to request to generate a second EK of the second measurement party based on the first parameter.
[0023] The verification party of the present application requests the first measurement party to dynamically generate a second EK for the second measurement party when the second measurement party is trustworthy, which can improve the security and reliability of the second EK.
[0024] In combination with the second aspect, in a possible implementation, after the verifier generates the first parameter, the method also includes: the verifier stores the identifier of the second measurement party and the first parameter, thereby recording the correspondence between the identifier of the second measurement party and the first parameter for subsequent use.
[0025] In combination with the second aspect, in a possible implementation, after the verification party sends a key generation request to the first measurement party, the method also includes: the verification party receives a key success message from the second measurement party, and the key success message includes the identifier of the second measurement party; the verification party then sends a key generation message to the key management network element, and the key generation message includes the identifier of the second measurement party, the identifier of the first measurement party, and the above-mentioned first parameter. Among them, the key success message can be used to inform the verification party that the second measurement party has obtained the second EK, and the key success message can also serve as a response or subsequent notification to the above-mentioned key request message. The key generation message is used to trigger (the key management network element) to generate the second EK of the second measurement party for subsequent use.
[0026] Exemplarily, the key success message also includes an identifier of the first measurement party. The identifier of the first measurement party can be used to determine the first EK. The first EK can be used to generate a second EK of the second measurement party in conjunction with the first parameter. The specific generation method is described below and is not described in detail here.
[0027] In conjunction with the second aspect, in a possible implementation, the second measurement party is trustworthy, which can be understood as: the verification party stores the result of the successful remote certification of the second measurement party.
[0028] In combination with the second aspect, in a possible implementation, before the verifier sends a key generation request to the first measurement party, such as after the verifier receives a key request message from the second measurement party, the method also includes: the verifier sends a remote attestation request to the first measurement party; the verifier receives a remote attestation response from the first measurement party, the remote attestation response includes the evidence of the second measurement party and the first signature information, the first signature information includes the information after the evidence of the second measurement party is signed by the first AIK of the first measurement party; the verifier obtains the first AIK of the first measurement party, and uses the first AIK to verify whether the first signature information is valid; if the first signature information is valid, the verifier verifies the evidence of the second measurement party; if the evidence of the second measurement party passes the verification, the verifier confirms that the second measurement party is trustworthy. Among them, for the specific implementation of remote attestation, please refer to the relevant description in the second or third embodiment below, which will not be described in detail here.
[0029] Exemplarily, the remote attestation response further includes a second parameter, which can be used to determine the first AIK of the first measurement party. The verifier obtains the first AIK of the first measurement party, including: the verifier determines the first AIK corresponding to the second parameter based on the correspondence between the second parameter and the first AIK. The correspondence may be pre-stored. Please refer to the description of Example 3 below for details, which will not be described in detail here.
[0030] After receiving the key request message sent by the second measurement party, the verification party of the present application can trigger remote certification of the second measurement party to confirm whether the second measurement party is credible. If the second measurement party is credible, the first measurement party is requested to dynamically generate a second EK for the second measurement party, thereby improving the security and reliability of the VNF layer root key (i.e., the second EK).
[0031] In combination with the second aspect, in a possible implementation, before the verifier sends a remote attestation request to the first measurement party, the method also includes: the verifier receives a first key request from the first measurement party, the first key request is used to request a second parameter, and the second parameter is used to generate a first AIK of the first measurement party; the verifier sends a second key request to the key management network element, the second key request includes an identifier of the first measurement party and a second parameter, and the second key request is used to request to obtain the first AIK of the first measurement party; the verifier receives a second key response from the key management network element, the second key response includes the first AIK; the verifier stores the first AIK and the second parameter for subsequent use; the verifier sends a first key response to the first measurement party, and the first key response includes the second parameter.
[0032] In combination with the second aspect, in a possible implementation, before the verifier sends a remote attestation request to the first measurement party, the method also includes: the verifier receives a first key request from the first measurement party, the first key request is used to request a second parameter, and the second parameter is used to generate a first AIK of the first measurement party; the verifier sends a second key request to the key management network element, the second key request includes an identifier of the first measurement party, and the second key request is used to request to obtain the first AIK of the first measurement party; the verifier receives a second key response from the key management network element, the second key response includes the first AIK and the second parameter; the verifier stores the first AIK and the second parameter for subsequent use; the verifier sends a first key response to the first measurement party, and the first key response includes the second parameter.
[0033] In the present application, the second parameter used to generate the first AIK can be generated by the verification party or by the key management network element; two different implementation methods are provided.
[0034] In conjunction with the second aspect, in a possible implementation, the verification party obtains the first AIK of the first measurement party, including: the verification party sends a key acquisition message to the key management network element, the key acquisition message includes the identifier of the first measurement party, and the key acquisition message is used to obtain the first AIK of the first measurement party; the verification party receives a key response message from the key management network element, and the key response message includes the first AIK of the first measurement party. For the manner in which the verification party obtains the first AIK from the key management network element, please refer to the relevant description of Embodiment 2 below, which will not be elaborated here.
[0035] In conjunction with the second aspect, in a possible implementation, after the verification party verifies the evidence of the second measurement party, the method further includes: the verification party sends a remote attestation result to the first measurement party, and the remote attestation result indicates that the remote attestation of the second measurement party is successful. Wherein, when the evidence of the second measurement party passes the verification, it indicates that the remote attestation of the second measurement party is successful.
[0036] The verification party of the present application sends the result of the successful remote certification of the second measurement party to the first measurement party, so that the first measurement party can know the trust status of the second measurement party, and thus generate a root key (i.e., the second EK) for it if the second measurement party is trustworthy.
[0037] In a third aspect, the present application provides an information interaction method, the method comprising: a second measurement party sends a key request message to a verification party, the key request message includes an identifier of the second measurement party, and the key request message is used to request a second EK of the second measurement party; the second measurement party receives a key grant message from the first measurement party, the key grant message includes the second EK. The second EK can be generated based on the first EK and the first parameter of the first measurement party. The specific generation method can refer to the description of the first aspect above, which will not be repeated here.
[0038] Exemplarily, after receiving the second EK, the second measurement party may save the second EK and use it as the root key of the second measurement party.
[0039] The present application enables a first EK of a first measurement party and an EK of a second measurement party to have a cryptographic connection, such as using the first EK of the first measurement party to dynamically generate the second EK of the second measurement party, thereby forming a key trust chain; thereby improving the security and reliability of the second EK and reducing the security risks caused by key storage and generation due to virtualization.
[0040] In conjunction with the third aspect, in a possible implementation, after the second measurement party receives the key grant message from the first measurement party, the method further includes: the second measurement party sends a key success message to the verification party, and the key success message includes an identifier of the second measurement party. The key success message can be used to inform the verification party that the second measurement party has obtained the second EK, and the key success message can also serve as a response or subsequent notification to the above-mentioned key request message.
[0041] Exemplarily, the key success message also includes the identifier of the first measurement party. The identifier of the first measurement party can be used to determine the first EK. The specific determination method is described below and is not described in detail here.
[0042] In conjunction with the third aspect, in a possible implementation, after the second measurement party receives the key grant message from the first measurement party, the method further includes: the second measurement party can use the above-mentioned second EK and the parameters obtained from the key management network element or the verification party to generate the second AIK of the second measurement party. The specific implementation method is described in the following embodiment 1, which is not described here. It can be understood that the second AIK can be used to measure evidence.
[0043] After the second measurement party of the present application obtains the second EK, it generates a second AIK based on the second EK, so that the second AIK and the second EK also have a cryptographic connection, forming a key trust chain, and can perform a remote certification process in a scenario without a certificate authority (CA). It can also improve the robustness of the measurement and enhance the ability to resist quantum attacks.
[0044] In a fourth aspect, the present application provides an information interaction method, which includes: a key management network element receives a key generation message from a verifier, the key generation message including an identifier of a first measurement party, an identifier of a second measurement party, and a first parameter, and the key generation message is used to trigger (the key management network element) to generate a second EK of the second measurement party; the key management network element then generates a second EK based on the first parameter and the first EK corresponding to the identifier of the first measurement party.
[0045] The first EK is pre-configured, for example, the first EK is pre-configured in the first measurement party by hardware burning.
[0046] Exemplarily, the key generation message may implicitly indicate that the second measurement party is trustworthy. For example, when the key management network element receives the key generation message, it indicates that the second measurement party is trustworthy.
[0047] In the case where the second measurement party is credible, the key management network element of the present application generates the second EK of the second measurement party according to the first EK and the first parameter of the first measurement party; because the first EK of the first measurement party is pre-configured (such as hardware burning), the first EK of the first measurement party is not easy to be tampered with, so the second EK dynamically generated based on the first EK and the first parameter of the first measurement party is credible, and the second EK and the first EK form a key trust chain. Thereby, the security and reliability of the second EK (i.e., the EK of the VNF layer) can be improved, and the security risks of key storage and generation caused by virtualization can be reduced.
[0048] In conjunction with the fourth aspect, in a possible implementation, after the key management network element generates the second EK, the method further includes: the key management network element stores the identifier of the second measurement party and the second EK for subsequent use. For example, a second AIK is generated based on the second EK, as described in the following embodiment 1, which is not described in detail here.
[0049] In conjunction with the fourth aspect, in a possible implementation, the correspondence between the identifier of the first measurement party and the first EK can be pre-configured at the key management network element, so that the key management network element can subsequently retrieve the first EK according to the identifier of the first measurement party. Then, before the key management network element generates the second EK according to the first parameter and the first EK corresponding to the identifier of the first measurement party, the method also includes: the key management network element determines the first EK corresponding to the identifier of the first measurement party according to the aforementioned pre-configured correspondence between the identifier of the first measurement party and the first EK.
[0050] Exemplarily, the key management network element generates a second EK according to the first parameter and the first EK corresponding to the identifier of the first measurement party, including: the key management network element takes the first parameter and the first EK corresponding to the identifier of the first measurement party as input, and executes a first key generation algorithm (such as a preconfigured one) to generate the second EK. The description of the first key generation algorithm refers to the above-mentioned first aspect, which will not be repeated here.
[0051] In combination with the fourth aspect, in a possible implementation manner, before the key management network element receives a key generation message from the verification party, the method also includes: the key management network element receives a first key request from the first measurement party, the first key request is used to request a second parameter, and the second parameter is used to generate a first AIK of the first measurement party; the key management network element generates the second parameter, and generates the first AIK of the first measurement party based on the second parameter and the first EK of the first measurement party; the key management network element sends a first key response to the first measurement party, and the first key response includes the second parameter.
[0052] Exemplarily, generating the first AIK of the first measurement party according to the second parameter and the first EK of the first measurement party includes: taking the second parameter and the first EK of the first measurement party as input, executing a second key generation algorithm (such as a preconfigured one) to generate the first AIK of the first measurement party. For the relationship between the second key generation algorithm and the first key generation algorithm, refer to the description of the first aspect above, which will not be repeated here.
[0053] Exemplarily, after the key management network element sends a first key response to the first measurement party, the method also includes: the key management network element receives a key acquisition message from the verification party, the key acquisition message includes an identifier of the first measurement party, and the key acquisition message is used to obtain the first AIK of the first measurement party; the key management network element sends a key response message to the verification party, and the key response message includes the first AIK of the first measurement party.
[0054] This application uses symmetric key deduction to generate AIK based on EK, so that AIK and EK also have a cryptographic connection, forming a key trust chain, and can perform remote certification processes in scenarios without a certificate authority (CA). It can also improve the robustness of the measurement and enhance the ability to resist quantum attacks.
[0055] In combination with the fourth aspect, in a possible implementation manner, before the key management network element receives a key generation message from the verifier, the method also includes: the key management network element receives a second key request from the verifier, the second key request including an identifier of the first measurement party and a second parameter, and the second key request is used to request to obtain a first AIK of the first measurement party; the key management network element generates a first AIK of the first measurement party according to the first EK corresponding to the second parameter and the identifier of the first measurement party; the key management network element sends a second key response to the verifier, and the second key response includes the first AIK.
[0056] In combination with the fourth aspect, in a possible implementation method, before the key management network element receives a key generation message from the verifier, the method also includes: the key management network element receives a second key request from the verifier, the second key request includes an identifier of the first measurement party, and the second key request is used to request to obtain the first AIK of the first measurement party; the key management network element generates a second parameter, and generates the first AIK of the first measurement party based on the second parameter and the first EK corresponding to the identifier of the first measurement party; the key management network element sends a second key response to the verifier, and the second key response includes the first AIK and the second parameter.
[0057] This application uses symmetric key deduction to generate AIK based on EK, so that AIK and EK also have a cryptographic connection, forming a key trust chain, and can perform remote certification processes in scenarios without a certificate authority (CA). It can also improve the robustness of the measurement and enhance the ability to resist quantum attacks.
[0058] In a fifth aspect, the present application provides a communication device, which may be any one of a first measurement party, a second measurement party, a verification party, a key management network element, or a chip therein. The communication device includes a unit and / or module for executing the method provided by any one of the first to fourth aspects, or any possible implementation of any one of the aspects, such as a transceiver unit and / or a processing unit, and the transceiver unit is used to send and receive various information or signaling, so that the beneficial effects (or advantages) of the method provided in any of the above aspects can also be achieved.
[0059] In a sixth aspect, the present application provides an information interaction method, the method comprising: the measuring party obtains a second parameter, and generates its own AIK based on the second parameter and its own EK, and the AIK can be used to sign the evidence of the verified party.
[0060] Among them, the measuring party here can be the first measuring party of the first aspect mentioned above, or the second measuring party of the third aspect mentioned above, and this application does not limit it. When the measuring party is the first measuring party, the verified party can be the second measuring party or other equipment or software program that needs to confirm the trusted status; when the measuring party is the second measuring party, the verified party can be the equipment or software program that needs to confirm the trusted status corresponding to the second measuring party. Correspondingly, the EK of the measuring party can be pre-configured or granted. When the measuring party is the first measuring party, the EK is pre-configured; when the measuring party is the second measuring party, the EK can be granted.
[0061] The embodiment of the present application utilizes symmetric key deduction to generate AIK based on EK, so that AIK and EK have a cryptographic connection and form a key trust chain. The remote certification process can be performed in the scenario without CA, and the robustness of the measurement can be improved, and the ability to resist quantum attacks can be enhanced.
[0062] In combination with the sixth aspect, in a possible implementation method, the measuring party generates its own AIK based on the second parameter and its own EK, including: the measuring party takes the second parameter and its own EK as input, executes a second key generation algorithm (such as a preconfigured one) to generate its own AIK.
[0063] In combination with the sixth aspect, in a possible implementation manner, the measuring party obtains the second parameter, including: the measuring party obtains the second parameter from the key management network element, see the description of embodiment 2 below for details, which is not described in detail here.
[0064] Exemplarily, before the measuring party obtains the second parameter from the key management network element, the method further includes: the measuring party receives a remote attestation request from the verifying party. After the measuring party generates its own AIK based on the second parameter and its own EK, the method further includes: the measuring party sends a remote attestation response to the verifying party, the remote attestation response includes the evidence of the verified party and the second signature information, the second signature information includes the information after the evidence of the verified party is signed by the AIK; the measuring party receives the remote attestation result from the verifying party, the remote attestation result is used to indicate the success of the remote attestation of the verified party or the failure of the remote attestation of the verified party. Among them, regarding the specific implementation method of remote attestation, please refer to the relevant description in Example 2 below, which will not be described in detail here.
[0065] In conjunction with the sixth aspect, in a possible implementation manner, the measuring party obtains the second parameter, including: the measuring party obtains the second parameter from the verifying party, as described in the following embodiment 3 for details, which is not described in detail here.
[0066] Exemplarily, after the measuring party generates its own AIK based on the second parameter and its own EK, the method further includes: the measuring party receives a remote attestation request from the verifying party; the measuring party sends a remote attestation response to the verifying party, the remote attestation response includes the evidence of the verified party, the second parameter, and the second signature information, the second parameter is used to determine the AIK, and the second signature information includes the information after the evidence of the verified party is signed by the AIK; the measuring party receives the remote attestation result sent by the verifying party, the remote attestation result is used to indicate the success of the remote attestation of the verified party or the failure of the remote attestation of the verified party. Among them, for the specific implementation method of remote attestation, please refer to the relevant description in Example 3 below, which will not be described in detail here.
[0067] In the seventh aspect, the present application provides an information interaction method, the method comprising: a key management network element receives a first key request from a measuring party, the first key request is used to request a second parameter, and the second parameter is used to generate the AIK of the measuring party; the key management network element generates the second parameter, and generates the AIK of the measuring party based on the second parameter and the EK of the measuring party; the key management network element sends a first key response to the measuring party, and the first key response includes the second parameter.
[0068] The EK of the measuring party may be pre-configured or granted. When the measuring party is the first measuring party, the EK is pre-configured; when the measuring party is the second measuring party, the EK may be granted.
[0069] This application uses symmetric key deduction to generate AIK based on EK, so that AIK and EK have a cryptographic connection and form a key trust chain. It can support remote attestation processes in scenarios without CA, improve the robustness of measurements, and enhance the ability to resist quantum attacks.
[0070] In combination with the seventh aspect, in a possible implementation method, the AIK of the measuring party is generated according to the second parameter and the EK of the measuring party, including: taking the second parameter and the EK of the measuring party as input, executing a second key generation algorithm (such as a preconfigured one) to generate the AIK of the measuring party.
[0071] In conjunction with the seventh aspect, in a possible implementation, the above-mentioned first key request includes the identifier of the measuring party. If the measuring party here is the first measuring party, the correspondence between the identifier of the measuring party and the EK can be pre-configured at the key management network element, so that the key management network element can subsequently retrieve the EK based on the identifier of the measuring party. If the measuring party here is the second measuring party, the key management network element pre-stores the correspondence between the identifier of the measuring party and the EK for subsequent use. Then, before generating the AIK of the measuring party according to the second parameter and the EK of the measuring party, the method also includes: determining the EK corresponding to the identifier of the measuring party in the first key request according to the correspondence between the identifier of the measuring party and the endorsement key pre-configured / pre-stored.
[0072] In conjunction with the seventh aspect, in a possible implementation, the above-mentioned first key response also includes third signature information, and the third signature information includes information after the second parameter is signed by the AIK signature subkey. The third signature information can be used for integrity protection, used to protect / verify the integrity of the second parameter. The AIK signature subkey can be generated based on the AIK of the measuring party. Exemplarily, the AIK signature subkey can be the AIK of the measuring party itself. Alternatively, the AIK signature subkey is generated by the key management network element using a third key generation algorithm (such as a preconfigured one), see the description of Example 2 below for details, which will not be described in detail here.
[0073] This application uses a third signature information to perform integrity protection, which can improve security.
[0074] In combination with the seventh aspect, in a possible implementation method, after the key management network element sends a first key response to the measuring party, the method also includes: the key management network element receives a key acquisition message from the verification party, the key acquisition message includes the identifier of the measuring party, and the key acquisition message is used to obtain the AIK of the measuring party; the key management network element sends a key response message to the verification party, and the key response message includes the AIK of the measuring party.
[0075] In an eighth aspect, the present application provides an information interaction method, the method comprising: a key management network element receives a second key request from a verifier, the second key request including an identifier of a measuring party and a second parameter, the second key request being used to request obtaining the AIK of the measuring party; the key management network element generates the AIK of the measuring party according to the EK corresponding to the second parameter and the identifier of the measuring party; the key management network element sends a second key response to the verifier, the second key response including the AIK.
[0076] Alternatively, the method includes: the key management network element receives a second key request from the verifier, the second key request includes an identifier of the measuring party, and the second key request is used to request to obtain the AIK of the measuring party; the key management network element generates a second parameter, and generates the AIK of the measuring party according to the second parameter and the EK corresponding to the identifier of the measuring party; the key management network element sends a second key response to the verifier, the second key response includes the AIK and the second parameter.
[0077] The EK of the measuring party may be pre-configured or granted. When the measuring party is the first measuring party, the EK is pre-configured; when the measuring party is the second measuring party, the EK may be granted.
[0078] The embodiment of the present application utilizes symmetric key deduction to generate AIK based on EK, so that AIK and EK have a cryptographic connection and form a key trust chain. This can support remote attestation processes in scenarios without a CA, improve the robustness of the measurement, and enhance the ability to resist quantum attacks.
[0079] In combination with the eighth aspect, in a possible implementation method, the key management network element generates the AIK of the measuring party based on the EK corresponding to the second parameter and the identifier of the measuring party, including: the key management network element takes the EK corresponding to the second parameter and the identifier of the measuring party as input, and executes a second key generation algorithm (such as a preconfigured one) to generate the AIK of the measuring party.
[0080] In conjunction with the eighth aspect, in a possible implementation, if the measuring party here is the first measuring party, the correspondence between the measuring party's identifier and the EK can be pre-configured at the key management network element, so that the key management network element can subsequently retrieve the EK based on the identifier of the measuring party. If the measuring party here is the second measuring party, the key management network element pre-stores the correspondence between the measuring party's identifier and the EK for subsequent use. Then, before the key management network element generates the measuring party's AIK based on the second parameter and the EK corresponding to the measuring party's identifier, the method also includes: determining the EK corresponding to the measuring party's identifier in the second key request based on the pre-configured / pre-stored correspondence between the measuring party's identifier and the endorsement key.
[0081] In conjunction with the eighth aspect, in a possible implementation, the second key response further includes third signature information, and the third signature information includes information after the second parameter is signed by the AIK signature subkey. The third signature information can be used for integrity protection, used to protect / verify the integrity of the second parameter. The AIK signature subkey can be generated based on the AIK of the measuring party. Exemplarily, the AIK signature subkey can be the AIK of the measuring party itself. Alternatively, the AIK signature subkey is generated by the key management network element using a third key generation algorithm (preconfigured), see the description of Example 2 below for details, which will not be described in detail here.
[0082] This application uses a third signature information to perform integrity protection, which can improve security.
[0083] Ninthly, the present application provides an information interaction method, which includes: the verifier sends a remote attestation request to the measurement party; the verifier receives a remote attestation response from the measurement party, the remote attestation response includes the evidence of the verified party and the second signature information, the second signature information includes the information after the evidence of the verified party is signed by the AIK of the measurement party; the verifier obtains the AIK of the measurement party, and uses the obtained AIK to verify whether the second signature information is valid; if the second signature information is valid, the verifier verifies the evidence of the verified party; the verifier sends a remote attestation result to the measurement party, the remote attestation result is used to indicate that the remote attestation of the verified party is successful or the remote attestation of the verified party fails. Wherein, if the evidence of the verified party passes the verification, the remote attestation result indicates that the remote attestation of the verified party is successful; if the evidence of the verified party fails the verification, the remote attestation result indicates that the remote attestation of the verified party fails.
[0084] This application improves security through remote attestation.
[0085] In conjunction with the ninth aspect, in a possible implementation, the verifier obtains the AIK of the measurer, including: the verifier sends a key acquisition message to the key management network element, the key acquisition message includes the identifier of the measurer, and the key acquisition message is used to obtain the AIK of the measurer; the verifier receives a key response message from the key management network element, the key response message includes the AIK of the measurer. The way in which the verifier obtains the AIK of the measurer from the key management network element can be referred to the description of the second embodiment below, which is not described in detail here.
[0086] In conjunction with the ninth aspect, in a possible implementation, the remote attestation response further includes a second parameter, which can be used to determine the AIK of the measuring party. The verifier obtains the AIK of the measuring party, including: the verifier determines the AIK corresponding to the second parameter based on the correspondence between the second parameter and the first AIK. The correspondence may be pre-stored. Please refer to the description of Example 3 below for details, which will not be described in detail here.
[0087] In combination with the ninth aspect, in a possible implementation method, before the verifier sends a remote attestation request to the measurement party, the method also includes: the verifier receives a first key request from the measurement party, the first key request is used to request a second parameter, and the second parameter is used to generate the AIK of the measurement party; the verifier sends a second key request to the key management network element, the second key request includes the identification of the measurement party and the second parameter, and the second key request is used to request to obtain the AIK of the measurement party; the verifier receives a second key response from the key management network element, the second key response includes the AIK; the verifier stores the AIK and the second parameter for subsequent use; the verifier sends the first key response to the measurement party, and the first key response includes the second parameter.
[0088] In combination with the ninth aspect, in a possible implementation, before the verifier sends a remote attestation request to the measurement party, the method also includes: the verifier receives a first key request from the measurement party, the first key request is used to request a second parameter, and the second parameter is used to generate the AIK of the measurement party; the verifier sends a second key request to the key management network element, the second key request includes the identifier of the measurement party, and the second key request is used to request to obtain the AIK of the measurement party; the verifier receives a second key response from the key management network element, the second key response includes the AIK and the second parameter; the verifier stores the AIK and the second parameter for subsequent use; the verifier sends the first key response to the measurement party, and the first key response includes the second parameter.
[0089] In conjunction with the ninth aspect, in a possible implementation, the above-mentioned first key request includes one or more of the following: an identifier of the measuring party, a request indication, or a request identifier. The request indication can be used to indicate the function or role of the first key request, and the request indication can be used to indicate that the function of the first key request is to request a second parameter. The request identifier can be used to uniquely identify a first key request. This is because the measuring party may request the second parameter multiple times, such as sending multiple first key requests, so if the identifier of the measuring party is used for identification, there may be unclear identification problems, so the present application carries a request identifier in the first key request, which is used to uniquely identify a first key request, so that the measuring party can request multiple different second parameters multiple times, generate multiple different AIKs, and improve the security of the measurement.
[0090] In conjunction with the ninth aspect, in a possible implementation, the above-mentioned first key response also includes third signature information, and the third signature information includes information after the second parameter is signed by the AIK signature subkey. The third signature information can be used for integrity protection, used to protect / verify the integrity of the second parameter. The AIK signature subkey can be generated based on the AIK of the measuring party. Exemplarily, the AIK signature subkey can be the AIK of the measuring party itself. Alternatively, the AIK signature subkey is generated by the key management network element using a third key generation algorithm (such as a preconfigured one), see the description of Example 2 below for details, which will not be described in detail here.
[0091] This application uses a third signature information to perform integrity protection, which can improve security.
[0092] In a tenth aspect, the present application provides a communication device, which can be used to execute the steps or functions performed by the measurement party in the sixth aspect. The communication device can be the measurement party in the sixth aspect, or a chip or functional module configured in the measurement party. The communication device includes a processing unit and a transceiver unit. The transceiver unit is used to obtain a second parameter; the processing unit is used to generate the AIK of the measurement party according to the second parameter and the EK of the measurement party, and the AIK can be used to sign the evidence of the verified party.
[0093] The EK of the measuring party may be pre-configured or granted.
[0094] In combination with the tenth aspect, in a possible implementation, the processing unit is specifically used to: take the second parameter and the EK of the measuring party as input, and execute a second key generation algorithm to generate the AIK of the measuring party.
[0095] In combination with the tenth aspect, in a possible implementation method, the transceiver unit is specifically used to obtain the second parameter from the key management network element.
[0096] Exemplarily, the transceiver unit is further used to receive a remote attestation request from the verifier before obtaining the second parameter from the key management network element. The transceiver unit is also used to: send a remote attestation response to the verifier after the processing unit generates the AIK of the measuring party, the remote attestation response includes the evidence of the verified party and the second signature information, the second signature information includes the information of the evidence of the verified party signed by the AIK; receive a remote attestation result from the verifier, the remote attestation result is used to indicate the success of the remote attestation of the verified party or the failure of the remote attestation of the verified party.
[0097] In combination with the tenth aspect, in a possible implementation manner, the transceiver unit is specifically used to obtain a second parameter from the verification party.
[0098] Exemplarily, the transceiver unit is also used to: receive a remote attestation request from the verifier after the processing unit generates the AIK of the measuring party; send a remote attestation response to the verifier, the remote attestation response including the evidence of the verified party, a second parameter, and second signature information, the second parameter is used to determine the AIK, the second signature information includes information after the evidence of the verified party is signed by the AIK; receive the remote attestation result sent by the verifier, the remote attestation result is used to indicate that the remote attestation of the verified party is successful or the remote attestation of the verified party fails.
[0099] In the eleventh aspect, the present application provides a communication device, which can be used to execute the steps or functions performed by the key management network element of the seventh aspect. The communication device can be the key management network element in the seventh aspect, or a chip or functional module configured in the key management network element. The communication device includes a processing unit and a transceiver unit. Among them, the transceiver unit is used to receive a first key request from a measurement party, the first key request is used to request a second parameter, and the second parameter is used to generate the AIK of the measurement party; the processing unit is used to generate the second parameter, and generate the AIK of the measurement party according to the second parameter and the EK of the measurement party; the transceiver unit is also used to send a first key response to the measurement party, and the first key response includes the second parameter.
[0100] The EK of the measuring party may be pre-configured or granted.
[0101] In combination with the eleventh aspect, in a possible implementation, the processing unit is specifically configured to take the second parameter and the EK of the measuring party as input, and execute a second key generation algorithm to generate the AIK of the measuring party.
[0102] In conjunction with the eleventh aspect, in a possible implementation, the first key request includes an identifier of the measuring party. The processing unit is further configured to determine the EK corresponding to the identifier of the measuring party in the first key request according to a correspondence between the identifier of the measuring party and the endorsement key (such as a preconfigured one).
[0103] In combination with the eleventh aspect, in a possible implementation, the above-mentioned first key response also includes third signature information, and the third signature information includes information after the second parameter is signed by the AIK signature subkey. The third signature information can be used for integrity protection, used to protect / verify the integrity of the second parameter. The AIK signature subkey can be generated based on the AIK of the measuring party. Exemplarily, the AIK signature subkey can be the AIK of the measuring party itself. Alternatively, the AIK signature subkey is generated by the key management network element using a third key generation algorithm. For details, please refer to the description of Example 2 below, which is not described in detail here.
[0104] In combination with the eleventh aspect, in a possible implementation method, the transceiver unit is also used to: receive a key acquisition message from the verification party, the key acquisition message includes the identifier of the measurement party, and the key acquisition message is used to obtain the AIK of the measurement party; send a key response message to the verification party, the key response message includes the AIK of the measurement party.
[0105] In a twelfth aspect, the present application provides a communication device, which can be used to execute the steps or functions performed by the key management network element in the eighth aspect. The communication device can be the key management network element in the eighth aspect, or a chip or functional module configured in the key management network element. The communication device includes a processing unit and a transceiver unit. Among them, the transceiver unit is used to receive a second key request from the verification party; the processing unit is used to generate the AIK of the measurement party according to the second parameter and the EK corresponding to the identifier of the measurement party; the transceiver unit is also used to send a second key response to the verification party.
[0106] Exemplarily, the second key request includes an identifier of the measuring party and a second parameter, and the second key request is used to request to obtain the AIK of the measuring party; the second key response includes the AIK. Alternatively, the second key request includes an identifier of the measuring party, and the second key request is used to request to obtain the AIK of the measuring party; the second key response includes the AIK and the second parameter.
[0107] The EK of the measuring party may be pre-configured or granted.
[0108] In combination with the twelfth aspect, in a possible implementation, the processing unit is specifically configured to take the second parameter and the EK corresponding to the identifier of the measuring party as input, and execute a second key generation algorithm to generate the AIK of the measuring party.
[0109] In combination with the twelfth aspect, in a possible implementation method, the processing unit is also used to determine the EK corresponding to the identifier of the measuring party in the second key request based on the correspondence between the identifier of the measuring party and the endorsement key (such as pre-configured).
[0110] In conjunction with the twelfth aspect, in a possible implementation, the above-mentioned second key response also includes third signature information, and the third signature information includes information after the second parameter is signed by the AIK signature subkey. The third signature information can be used for integrity protection, used to protect / verify the integrity of the second parameter. The AIK signature subkey can be generated based on the AIK of the measuring party. Exemplarily, the AIK signature subkey can be the AIK of the measuring party itself. Alternatively, the AIK signature subkey is generated by the key management network element using a third key generation algorithm. For details, please refer to the description of Example 2 below, which is not described in detail here.
[0111] In the thirteenth aspect, the present application provides a communication device, which can be used to execute the steps or functions performed by the verification party in the ninth aspect. The communication device can be the verification party in the ninth aspect, or a chip or functional module configured in the verification party. The communication device includes a processing unit and a transceiver unit. Among them, the transceiver unit is used to send a remote proof request to the measurement party; the transceiver unit is also used to receive a remote proof response from the measurement party, and the remote proof response includes the evidence of the verified party and the second signature information, and the second signature information includes the information after the evidence of the verified party is signed by the AIK of the measurement party; the processing unit is used to obtain the AIK of the measurement party, and use the obtained AIK to verify whether the second signature information is valid; the processing unit is also used to verify the evidence of the verified party when the second signature information is valid; the transceiver unit is used to send a remote proof result to the measurement party, and the remote proof result is used to indicate that the remote proof of the verified party is successful or the remote proof of the verified party fails. Among them, if the evidence verification of the verified party passes, the remote attestation result indicates that the remote attestation of the verified party is successful; if the evidence verification of the verified party fails, the remote attestation result indicates that the remote attestation of the verified party fails.
[0112] In combination with the thirteenth aspect, in a possible implementation method, the processing unit is specifically used to control the transceiver unit: send a key acquisition message to the key management network element, the key acquisition message includes the identifier of the measuring party, and the key acquisition message is used to obtain the AIK of the measuring party; receive a key response message from the key management network element, the key response message includes the AIK of the measuring party.
[0113] In conjunction with the thirteenth aspect, in a possible implementation, the remote attestation response further includes a second parameter, and the second parameter can be used to determine the AIK of the measuring party. The processing unit is specifically configured to determine the AIK corresponding to the second parameter according to the corresponding relationship between the second parameter and the first AIK. The corresponding relationship can be pre-stored.
[0114] In combination with the thirteenth aspect, in a possible implementation, the transceiver unit is further used to: receive a first key request from a measurement party, the first key request is used to request a second parameter, the second parameter is used to generate the AIK of the measurement party; send a second key request to a key management network element, the second key request includes an identifier of the measurement party and a second parameter, the second key request is used to request to obtain the AIK of the measurement party; receive a second key response from the key management network element, the second key response includes the AIK. The processing unit is further used to store the AIK and the second parameter. The transceiver unit is further used to send the first key response to the measurement party, the first key response includes the second parameter.
[0115] In combination with the thirteenth aspect, in a possible implementation, the transceiver unit is further used to: receive a first key request from a measurement party, the first key request is used to request a second parameter, the second parameter is used to generate the AIK of the measurement party; send a second key request to a key management network element, the second key request includes an identifier of the measurement party, the second key request is used to request to obtain the AIK of the measurement party; receive a second key response from the key management network element, the second key response includes the AIK and the second parameter. The processing unit is also used to store the AIK and the second parameter. The transceiver unit is also used to send the first key response to the measurement party, the first key response includes the second parameter.
[0116] In conjunction with the thirteenth aspect, in a possible implementation, the first key request includes one or more of the following: an identifier of a measuring party, a request indication, or a request identification. The request indication can be used to indicate a function or role of the first key request, and the request indication can be used to indicate that the function of the first key request is to request a second parameter. The request identification can be used to uniquely identify a first key request.
[0117] In combination with the thirteenth aspect, in a possible implementation, the above-mentioned first key response also includes third signature information, and the third signature information includes information after the second parameter is signed by the AIK signature subkey. The third signature information can be used for integrity protection, used to protect / verify the integrity of the second parameter. The AIK signature subkey can be generated based on the AIK of the measuring party. Exemplarily, the AIK signature subkey can be the AIK of the measuring party itself. Alternatively, the AIK signature subkey is generated by the key management network element using a third key generation algorithm. For details, please refer to the description of Example 2 below, which is not described in detail here.
[0118] In a fourteenth aspect, the present application provides a communication device, which may include a processor and a transceiver. The transceiver is used to send and receive various information or signaling, and the computer program includes program instructions. When the processor runs the program instructions, the communication device executes the information interaction method described in any one of the first to fourth aspects, or any one of the sixth to ninth aspects, or any possible implementation of any one of them. The transceiver may be a radio frequency module in the communication device, or a combination of a radio frequency module and an antenna, or an input and output interface of a chip or circuit. Optionally, the communication device also includes a memory, which is used to store the computer program.
[0119] In a fifteenth aspect, the present application provides a readable storage medium having program instructions stored thereon, which, when executed on a communication device, enables the communication device to execute the information interaction method described in any one of the first to fourth aspects, or any one of the sixth to ninth aspects, or any possible implementation of any one of these aspects.
[0120] In a sixteenth aspect, the present application provides a program product comprising instructions, which, when executed, enables the information interaction method described in any possible implementation of any one of the first to fourth aspects to be executed.
[0121] In the seventeenth aspect, the present application provides a program product comprising instructions, which, when executed, enables the information interaction method described in any possible implementation of any of the sixth to ninth aspects to be executed.
[0122] In an eighteenth aspect, the present application provides a communication device, which can be implemented in the form of a chip or in the form of a device, and the device includes a processor. The processor is used to read and execute a program stored in a memory to execute one or more of any aspects of the first to fourth aspects, or one or more of any aspects of the sixth to ninth aspects, or one or more of any possible implementations of any aspect thereof. Optionally, the device also includes a memory, which is connected to the processor via a circuit. Further optionally, the device also includes a communication interface, and the processor is connected to the communication interface. The communication interface is used to receive information and / or signaling to be processed, and the processor obtains the information and / or signaling from the communication interface, processes the information and / or signaling, and outputs the processing results through the communication interface. The communication interface can be an input and output interface.
[0123] Optionally, the processor and memory mentioned above may be physically independent units, or the memory may be integrated with the processor.
[0124] In a nineteenth aspect, the present application provides a communication system, which includes the first measurement party described in the first aspect, the verification party described in the second aspect, the second measurement party described in the third aspect, and the key management network element described in the fourth aspect.
[0125] In the twentieth aspect, the present application provides a communication system, which includes the measurement party described in the sixth aspect, the key management network element described in the seventh aspect or the key management network element described in the eighth aspect, and the verification party described in the ninth aspect.
[0126] The technical effects achieved in the above-mentioned aspects can be referred to each other or to the beneficial effects in the method embodiments shown below, and will not be described in detail here. BRIEF DESCRIPTION OF THE DRAWINGS
[0127] Figure 1 is a schematic diagram of the network function virtualization architecture;
[0128] Figure 2 This is a schematic diagram of the 5G network architecture defined by 3GPP TS23.501;
[0129] Figure 3 It is a simplified flowchart of the challenge-response protocol of remote attestation provided in an embodiment of the present application;
[0130] Figure 4 It is a flowchart of a method for using the EK certificate and the AIK certificate provided in an embodiment of the present application;
[0131] Figure 5 It is a schematic diagram of the joint measurement of the NFVI layer and the VNF layer provided in an embodiment of the present application;
[0132] Figure 6 This is a flow chart of the information interaction method provided in the embodiment of the present application;
[0133] Figure 7 is another flow chart of the information interaction method provided in the embodiment of the present application;
[0134] Figure 8 This is another flow chart of the information interaction method provided in the embodiment of the present application;
[0135] Fig. 9 It is a schematic diagram of the key derivation architecture provided in an embodiment of the present application;
[0136] Fig.10 is a schematic diagram of a structure of a communication device provided in an embodiment of the present application;
[0137] Fig.11 is another structural schematic diagram of a communication device provided in an embodiment of the present application;
[0138] Fig.12 This is another structural diagram of the communication device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0139] The technical solutions in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application.
[0140] In the description of this application, unless otherwise specified, " / " means "or", for example, A / B can mean A or B. "And / or" in this article is only a description of the association relationship of associated objects, indicating that there can be three relationships. For example, A and / or B can mean: A exists alone, A and B exist at the same time, and B exists alone. In addition, "at least one" means one or more, and "plurality" means two or more. "At least one of the following" or similar expressions refers to any combination of these items, including any combination of single or plural items. For example, at least one of a, b, or c can mean: a, b, c; a and b; a and c; b and c; or a, b, and c. Among them, a, b, and c can be single or multiple.
[0141] In the description of the present application, the words "first", "second", etc. are only used to distinguish different objects, and do not limit the quantity and execution order, and the words "first", "second", etc. do not necessarily limit them to be different. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions. For example, a process, method, system, product or device that includes a series of steps or units is not limited to the listed steps or units, but may optionally include steps or units that are not listed, or may optionally include other steps or units inherent to these processes, methods, products or devices.
[0142] In this application, the words "exemplary" or "for example" are used to indicate examples, illustrations or descriptions. Any embodiment or design described in this application as "exemplary", "for example" or "for example" should not be interpreted as being more preferred or more advantageous than other embodiments or designs. Specifically, the use of the words "exemplary", "for example" or "for example" is intended to present the related concepts in a concrete way.
[0143] It should be understood that in the present application, "when", "if" and "if" all mean that the device will take corresponding actions under certain objective circumstances, and do not limit the time, nor do they require that the device must have a judgment action when it is implemented, nor do they mean that there are other limitations.
[0144] Elements used in the singular herein are intended to mean "one or more" rather than "one and only one" unless specifically stated otherwise.
[0145] Additionally, the terms "system" and "network" are often used interchangeably herein.
[0146] It can be understood that in each embodiment of the present application, "A corresponds to B" means that there is a corresponding relationship between A and B, and B can be determined according to A. However, it should also be understood that determining B according to A does not mean determining B only according to A, and B can also be determined according to A and / or other information.
[0147] The network architecture of the present application is briefly described below. It should be understood that the network architecture described in the present application is to more clearly illustrate the technical solution of the embodiment of the present application, and does not constitute a limitation on the technical solution provided by the embodiment of the present application.
[0148] The technical solution provided in this application can be applied to various communication systems deployed with virtual network functions. For example: the fifth generation (5th generation, 5G) communication system or new radio (new radio, NR), equipped with network function virtualization infrastructure (network functions virtualization infrastructure, NFVI) or other long term evolution (long term evolution, LTE) networks with virtual network functions, MulteFire networks (creating new wireless networks by independently running LTE technology on unlicensed spectrum (such as the global 5GHz unlicensed spectrum)), or home base station networks, mobile networks with wireless fidelity (wireless fidelity, Wi-Fi) access, wideband code division multiple access (wideband code division multiple access, WCDMA) networks, fixed-mobile converged networks (fixed access networks access mobile networks), and other future communication systems, such as the sixth generation mobile communication system.
[0149] See also Figure 1 , Figure 1 Figure 1 is a schematic diagram of the network function virtualization architecture. Figure 1As shown, the network function virtualization architecture may include but is not limited to the following parts: virtual network functions (VNF), network functions virtualization infrastructure (NFVI), virtualized infrastructure management (VIM), management automation and network orchestration (MANO), network functions virtualization orchestrator (NFVO), or virtual network functions manager (VNFM), etc.
[0150] Among them, the virtual network function is a software application that provides network functions (such as file sharing, directory services and IP address configuration, etc., and also such as mobility management, session management, or policy management network elements, etc.), including VNF and element management system (EMS). Virtual network function (VNF) can also be called "virtual network element" or "network element", which will not be repeated below. The element management system can configure and manage the functions of VNF. In general, EMS and VNF are one-to-one. Simply put, VNF is a software group that provides network services and is deployed in virtual machines, containers or physical machines using the infrastructure provided by NFVI. Compared with VNF, traditional hardware-based network elements can be called physical network functions (PNF). VNF and PNF can be networked separately or mixed to form a service chain. It should be understood that a VNF can be installed in one or more virtual instances. Virtual instance can be understood as a generalized concept, which refers to any virtualization solution such as virtual machine (VM) and container.
[0151] NFVI is a set of resources used to host and connect virtual functions. Specifically, NFVI is a cloud data center that includes servers, hypervisors, operating systems (OS), virtual machines, containers, virtual switches, and network resources. NFVI includes infrastructure components on the platform, such as hypervisors or container management systems, as well as physical device switches, computing, storage, etc. NFVI can virtualize physical resources into virtual resources for use by VNFs. In short, NFVI can provide computing resources, storage resources, programs, etc. for implementing VNFs.
[0152] VIM manages NFVI. VIM controls the allocation of virtual resources of VNF, such as virtual computing, virtual storage and virtual network. It can be understood that VIM is a cloud platform management responsible for hardware management, VM deployment, VM coordination and scheduling, etc.
[0153] VNFM manages the life cycle of VNFs, such as going online, going offline, status monitoring, and image onboarding. VNFM manages VNFs based on VNF descriptors (VNFDs). In short, VNFM is responsible for the life cycle management of VNFs, such as adding, deleting, checking, and modifying VNF virtual machines.
[0154] NFVO is used to manage the life cycle of network services (NS), such as coordinating the management of NS life cycle, coordinating the management of VNF life cycle (needs to be supported by VNFM), and coordinating the management of various NFVI resources (needs to be supported by VIM), so as to ensure the optimal configuration of various resources and connections required. NFVO runs based on the network service description (NSdescriptor, NSD), which includes service chain, NFV and performance goal. In short, NFVO is responsible for the deployment of network services.
[0155] MANO provides a framework for managing NFV infrastructure and provisioning new VNFs. Simply put, MANO can be understood as an integrated management and scheduling of network services. MANO includes VIM, VNFM, and NFVO.
[0156] In a possible implementation, the first measurement party of the present application belongs to NFVI, such as Figure 1As shown, NFVI is deployed with security hardware, such as SIM cards, so that the first measurement party has the ability and / or conditions to call the security hardware, so the security of the first measurement party is relatively high. Exemplarily, the first measurement party in this application can also be called the measurement party of the NFVI layer (or device layer). The second measurement party of this application belongs to the VNF (software group that provides network services) architecture, such as Figure 1 As shown, the VNF architecture is virtualized and no security hardware is configured, so the second measurement party does not have the ability and / or conditions to call security hardware, so the security of the second measurement party is lower than that of the first measurement party. Exemplarily, the second measurement party in this application can also be called the measurement party of the VNF layer (or business layer). The description of the first measurement party and the second measurement party will not be repeated below.
[0157] For example, the technical solution provided in this application can be applied to the 5G network architecture defined in the 3rd Generation Partnership Project Technical Specifications (3GPP TS) 23.501.
[0158] See also Figure 2 , Figure 2 This is a schematic diagram of the 5G network architecture defined by 3GPP TS23.501. Figure 2As shown, the 5G network architecture is divided into two parts: access network and core network. The access network is used to implement functions related to wireless access, which may include radio access network (RAN) and user equipment (UE). The core network may include but is not limited to the following logical functions: network slice selection function (NSSF), network exposure function (NEF), network repository function (NRF), policy control function (PCF), unified data management (UDM) function, application function (AF), network slice specific authentication and authorization function (NSSAAF), authentication server function (AUSF), access and mobility management function (AMF), session management function (SMF), or user plane function (UPF), etc. It can be understood that Figure 2 "Nnssf", "Nnef", "Nnrf", "Npcf", "Nudm", "Naf", "Nnssaaf", "Nausf", "Namf", and "Nsmf" represent the names of service-oriented interfaces. For details, please refer to the relevant description in the 3GPP standard protocol, which is not elaborated here.
[0159] Optionally, the UE may access the data network by establishing a session from the UE to the RAN, to the UPF, and then to the data network (DN), namely, a protocol data unit (PDU) session (PDU session).
[0160] Among them, UE can be a terminal device, such as a mobile phone, an IoT terminal device, a smart terminal, a vehicle terminal, a vehicle device, a wearable device, a multimedia device, a streaming media device, etc. RAN is used to provide wireless access for terminal devices, including but not limited to: 5G base station (Next-Generation node B, gNB), wireless base station (evolved Node B, eNodeB or eNB) in LTE network, wireless access point (wireless fidelity access point, Wi-Fi AP), worldwide interoperability for microwave access base station (WiMAX BS), relay station, etc. In the 5G RAN architecture, gNB can include a centralized unit (CU) and a distributed unit (DU). gNB can also include a radio unit (RU). CU and DU can be understood as the division of base stations from the perspective of logical functions. CU and DU can be physically separated or deployed together. For example, multiple DUs can share one CU or one DU can also be connected to multiple CUs, and CU and DU can be connected through the F1 interface.
[0161] AMF is mainly responsible for mobility management in mobile networks, such as user location update, user registration network, user switching, etc. SMF is mainly responsible for session management in mobile networks, such as session establishment, modification, and release. Specific functions include allocating Internet Protocol (IP) addresses to users, selecting UPF that provides message forwarding functions, etc. PCF is responsible for providing policies to AMF and SMF, such as quality of service (QoS) policies, slice selection policies, etc. UDM can be used to store user data, such as contract information, authentication or authorization information. NSSAAF is mainly responsible for the authentication and authorization of network slices, and can interact with the authentication, authorization, and accounting server (AAA-S) through the authentication, authorization, and accounting proxy (AAA-P). UPF is mainly responsible for processing user messages, such as forwarding and billing.
[0162] Understandably, Figure 2 The various network functions shown can refer to relevant protocols or standards, etc., which are not described in detail in this application. It should also be understood that Figure 2 The N1, N2, N3, N4, N6, etc. shown are all interface serial numbers. For example, the meaning of the above interface serial numbers can refer to the meaning defined in the 3GPP standard protocol, and this application does not limit the meaning of the above interface serial numbers.
[0163] The above content briefly describes the network architecture of the embodiment of the present application. In order to better understand the technical solution of the embodiment of the present application, several terms or nouns related to the present application are briefly introduced below.
[0164] 1. Remote attestation (RA)
[0165] In recent years, the number of embedded systems, cyber-physical systems, and IoT devices has increased significantly. Their continuous growth has involved many scenarios in daily life: such as homes, offices, and factories. As users become more and more dependent on smart devices, the security of these smart devices is becoming more and more important.
[0166] Remote attestation (RA) is a security service that allows a measurement party (also known as an attestor) to obtain data from the "verified party", which will be sent as evidence to the "verifier". The "verifier" verifies or interprets the data (that is, evidence) sent by the measurement party to determine whether the internal state of the "verified party" (including memory and storage) is safe or can be trusted. Remote attestation can also be extended to allow remote code updates, which can be used to securely update the software running on the device, reset the device, or wipe the device, etc.
[0167] Among them, the "verified party" refers to a device or function that needs to confirm the security status, or a device or function that needs to confirm the trust status / trusted status. "Attester (certifier or measurement party)" is used to cooperate with the "Verifier (verifier)" to measure the trusted status of the "verified party". Attester can perform integrity measurements on the device or function that needs to be proved, and generate a set of statements called evidence (Evidence), which is mainly used to measure the trusted status of resources in the device (such as virtual machine VM), application (application, APP), and hardware (Hardware). Attester is usually in the same physical location as the "verified party", that is, Attester can be combined with the "verified party". Exemplarily, Attester can be a pluggable device, such as a subscriber identification module (SIM) card, or a device with a SIM card inserted.
[0168] "Verifier (verifier or verifier)" is the executor used to verify the evidence of the "verified party". It can complete the verification and return the verification result, or sign and send a credential. The specific verification method is not limited in this application. For example, verification can be performed locally based on pre-configured evidence reference values, or it can be verified on a remote server. The Verifier in this application is usually a function that can be set independently, or it can be a function of the management plane, such as the verification function on the cloud management in NFVI, or a function used to provide verification services in the roaming domain.
[0169] One possible way to perform remote attestation is through a "challenge and response" protocol. Figure 3 , Figure 3 Schematic diagram of a simplified process of a challenge-response protocol for remote attestation provided in an embodiment of the present application. Figure 3 As shown, Verifier generates a request message (this request message is also called a "challenge") and sends it to Attester. The request message (i.e., "challenge") is used to request Attester to perform measurement. The request message contains a random number to ensure that the evidence obtained by Attester is the latest. After receiving the request message, Attester obtains the evidence of the "verified party" and calculates a hash value of the evidence through measurement and other means, and then performs an XOR operation on the hash value and the random number contained in the request message to generate a response, which Attester then sends to Verifier. After receiving the response, Verifier obtains the evidence in the response and verifies the validity of the evidence; the specific verification method is not limited in this application. If the verification passes, it means that the remote attestation is successful, that is, the "verified party" is safe or trustworthy, that is, there is no security risk for the "verified party". If the verification fails, it means that the remote attestation has failed, that is, there may be a security risk for the "verified party".
[0170] 2. EK Certificate and AIK Certificate in Remote Attestation
[0171] Certificates are required in the remote attestation process. The functions of certificates include but are not limited to: 1. Using long-term certificates to apply for temporary certificates; 2. Using temporary certificates to endorse the obtained evidence, so that the Verifier can confirm the identity of the Attester. Generally speaking, the remote attestation process includes an endorsement key (EK) certificate and an attestation identity key (AIK) certificate. Among them, the EK certificate is a long-term certificate preset in the Attester and can be verified by the certificate authority (CA). The AIK certificate is a session certificate used for measurement and is obtained by applying for the Attester. The following introduces the use of the EK certificate and the application and use process of the AIK certificate.
[0172] See also Figure 4 , Figure 4 : This is a flowchart of the method for using the EK certificate and AIK certificate provided in the embodiment of the present application. Among them, the EK certificate can be pre-configured at Attester, which can be pre-configured by hardware burning or software pre-setting, etc. The specific method of pre-configuration depends on the security capabilities of Attester. Figure 4 As shown, the application process of the AIK certificate (which can also be understood as the use process of the EK certificate) includes but is not limited to steps S1 to S7; the use process of the AIK certificate includes but is not limited to steps S8 to S14.
[0173] S1, Attester prepares an AIK acquisition request, including Attester's EK certificate signature and request indication. The request indication can be used to indicate the function / role of the AIK acquisition request, such as the AIK acquisition request is used to obtain the public and private keys of the AIK certificate. It can be understood that the EK certificate is also called an endorsement certificate, which is generally created by a trusted platform module (TPM) manufacturer or implanted in a TPM, and sometimes can also be issued by the platform manufacturer. The EK certificate is the unique identifier of the TPM chip.
[0174] S2, Attester uses the public key of the certificate authority (CA) to encrypt the AIK acquisition request.
[0175] S3, Attester sends an encrypted AIK acquisition request.
[0176] S4, CA verifies the received AIK acquisition request. For example, CA uses its own private key to decrypt the received AIK acquisition request, obtains the EK certificate signature therein, and then verifies the validity of the EK certificate signature.
[0177] S5, if the validity verification of the EK certificate signature is passed, the CA allocates an AIK certificate to Attester and encrypts the public and private keys of the AIK certificate with the public key of the EK.
[0178] S6, CA sends the encrypted AIK certificate public and private keys to Attester.
[0179] S7, Attester decrypts and saves the AIK certificate public and private keys.
[0180] S8, Verifier generates a random number (Nonce).
[0181] S9, Verifier sends a remote attestation request to Attester, which contains Nonce.
[0182] S10, after receiving the remote attestation request, Attester obtains the platform configuration register (PCR) value of the evidence through measurement, and digitally signs the PCR value and Nonce of the evidence using the AIK certificate private key saved in step S7. It can be understood that the platform configuration register (PCR) is used to store trusted measurement values, verify platform integrity, and protect data.
[0183] S11, Attester sends a remote attestation response to Verifier, which includes the AIK certificate public key, the PCR value of the evidence, Nonce, and digital signature.
[0184] S12, Verifier receives the remote attestation response, verifies the digital signature in the remote attestation response and checks the Nonce.
[0185] S13, Verifier requests CA to verify the validity of the AIK certificate public key in the remote attestation response.
[0186] S14, if the AIK certificate public key is valid, the Verifier verifies the validity of the evidence according to the PCR value of the evidence in the remote attestation response, obtains the remote attestation result, and determines the next action. This application does not limit the specific verification method of the evidence.
[0187] 3. Joint Measurement of NFVI and VNF Layers
[0188] As mentioned above Figure 1 As shown, for a network, the network function virtualization architecture can be divided into two layers, such as the network function virtualization infrastructure (NFVI) layer (or device layer) and the VNF layer (or business layer); of course, it can also be divided into multiple layers, such as: Figure 1The hardware layer (including hardware resources), virtualization layer (virtualization layer), VNF layer (or business layer), etc. in the following will not be described in detail. For the convenience of description, the following takes the two-layer architecture (NFVI layer and VNF layer) as an example.
[0189] In a possible implementation, in a network function virtualization scenario, remote attestation usually requires the joint implementation of the network function virtualization infrastructure (NFVI) layer (or device layer) and the VNF layer (or service layer) to verify the security of the VNF and / or the resources corresponding to the VNF (i.e., the various resources in the NFVI). Figure 5 , Figure 5 Schematic diagram of the joint measurement of the NFVI layer and the VNF layer provided in the embodiment of the present application. Figure 5 As shown, Verifier1 in MANO performs remote attestation of the NFVI layer and checks the results. Cloud service provider (cloudserviceprovider) provider domain deployment. When MANO initializes a new VNF (such as AMF), it notifies the management function (MnF) of the event. MnF then configures the settings of the 3GPP layer (or business layer, or VNF layer) for this new VNF. Verifier2 in MnF performs measurements of the 3GPP layer (or business layer, or VNF layer) through remote attestation. In order to build a complete attestation chain for VNF, MnF can also collect the corresponding remote attestation (RA) results in NFVI from MANO. If the RA result of any virtual machine included in the VNF is a failure, MnF can take measures to mitigate potential security risks. For example, MnF may ask VIM (virtualized infrastructure management) to migrate the virtual machine or recreate a new virtual machine, or send an alarm to the manager according to local policies for further processing. If the RA results of all virtual machines included in the VNF are successful, MnF reports to MANO that the VNF initialization is successful.
[0190] It can be seen that the measurement in the network function virtualization scenario involves the measurement of the NFVI layer and the VNF layer in sequence, which requires the coordination of Attester1 and Attester2, Verifier1 and Verifier2. However, the EK security of Attester2 is not high at present.
[0191] In view of this, the embodiments of the present application provide an information interaction method, an apparatus, and a readable storage medium, which utilize a key deduction architecture to make the root key of the NFVI layer (such as EK) and the root key of the VNF layer (such as EK) have a cryptographic connection, such as: using the EK of the NFVI layer measurement party to generate the EK of the VNF layer to form a key trust chain; thereby improving the security and reliability of the VNF layer root key (such as EK) and reducing the security risks caused by key storage and generation due to virtualization.
[0192] In addition, the aforementioned Figure 4 As can be seen from the process shown, remote attestation needs to rely on the AIK certificate, and the AIK certificate requires the Attester to apply for it from the CA. For some scenarios without a CA, remote attestation cannot be used. Therefore, the embodiments of the present application also provide an information interaction method, device, and readable storage medium. Instead of applying for an AIK certificate from a CA, an AIK is generated based on an EK by using symmetric key deduction to execute a remote attestation process. It can be applicable to scenarios without a CA, improve the robustness of the measurement, and enhance the ability to resist quantum attacks.
[0193] In this application, the endorsement key EK can be called the root key, and the two can be used interchangeably. The authentication key AIK can be called the measurement key, and the two can be used interchangeably. The root key of the NFVI layer (i.e., the first EK of the first measurement party in this application) can be a symmetric key pre-burned by the operator, and this application does not impose any restrictions.
[0194] The technical solution provided by this application will be described in detail below with reference to more drawings.
[0195] The technical solution provided in the present application is described through multiple embodiments, with specific reference to the description of each embodiment below. Among them, the same or similar parts between each embodiment or implementation can refer to each other. In each embodiment in the present application, and each implementation method / implementation method / implementation method in each embodiment, if there is no special explanation and logical conflict, the terms and / or descriptions between different embodiments and each implementation method / implementation method / implementation method in each embodiment are consistent and can be referenced to each other, and the technical features in different embodiments and each implementation method / implementation method / implementation method in each embodiment can be combined to form new embodiments, implementation methods, implementation methods, or implementation methods according to their inherent logical relationships. The implementation methods of the present application described below do not constitute a limitation on the scope of protection of the present application.
[0196] Each embodiment is described in detail below.
[0197] In the present application, the first measurement party may be a measurement party at the NFVI layer (or device layer), as described above. Figure 5In the Attester1, for example, Attester1 is a pluggable device, such as a SIM card, or a device inserted into a SIM card, or a root of trust (RoT). For another example, the first measurement party is a program installed in the NFVI, which can communicate with or call the security hardware (such as RoT or SIM card). The second measurement party can be a measurement party at the service layer (or 3GPP layer, or VNF layer), as described above. Figure 5 In Attester2, Attester2 is, for example, software installed on a host operating system (Host OS) or a virtual root of trust (vRoT). In another example, the second measurement party is software installed in a VNF and does not have the ability and / or condition to call secure hardware.
[0198] The key management network element in this application may also be referred to as a "key management function", which may belong to the VNF layer, such as the aforementioned Figure 5 The key management network element in the present application can be used to store and derive the root key. Exemplarily, the key management network element (such as MnF) is a UDM function or an operation, administration and maintenance (OAM) function.
[0199] In each embodiment of the present application, "network element A sends information A to network element B" can be understood as the destination of the information A is network element B, the source of the information A is network element A, and there may be forwarding of intermediate network elements in the transmission path from the source to the destination of the information A. Each embodiment of the present application only shows the source and destination of the information A. It can be understood that the information may be processed as necessary between the source and destination of the information, such as format changes, but the destination can understand the valid information from the source. Similar expressions in the present application can be understood similarly and will not be repeated here.
[0200] Embodiment 1
[0201] The first embodiment of the present application mainly introduces the method for confirming the measurement method of the VNF layer (as mentioned above) Figure 5 If the Attester2 in the NFVI layer is credible, the NFVI layer verification party (as mentioned above) Figure 5 Verifier1 in the request NFVI layer measurement method (as mentioned above) Figure 5 Attester1) generates an EK for the VNF layer's measurer and informs the VNF layer's measurer. After receiving the EK, the VNF layer's measurer saves it and uses it as a root key.
[0202] In a possible implementation, the verifier in the embodiment of the present application belongs to NFVI, which corresponds to the first measurement party, and can be the verifier in MANO, as described above. Figure 5 Verifier1 in.
[0203] See also Figure 6 , Figure 6 This is a flow chart of the information interaction method provided in the embodiment of the present application. The method can be applied to the above Figure 1 The network function virtualization architecture scenario shown in Figure 1 is as follows: Figure 6 As shown, the information interaction method includes but is not limited to the following steps:
[0204] S101, the second measurement party (Attester2) sends a key request message to the verification party (Verifier1), the key request message includes the identifier of the second measurement party, and the key request message is used to request to obtain the second EK of the second measurement party. Correspondingly, the verification party (Verifier1) receives the key request message.
[0205] In one possible implementation, the key request message includes an identifier (ID) of the second measurement party, such as Attester2 ID, which can be used to indicate the source of the message. Exemplarily, the identifier of the second measurement party can be the Internet Protocol (IP) address of the second measurement party. In another possible implementation, the key request message may not include the identifier of the second measurement party, but is implemented by implicit carrying. For example: the source of the key request message can be determined by the address sending the key request message is the second measurement party; or it can be determined by the message name of the key request message.
[0206] S102, the verifier (Verifier1) generates a first parameter. The verifier (Verifier1) may also store the identifier of the second measuring party and the first parameter.
[0207] S103, when the second measurement party is credible, the verifier (Verifier1) sends a key generation request to the first measurement party (Attester1), the key generation request includes a first parameter, and the key generation request is used to request to generate a second EK of the second measurement party according to the first parameter. Correspondingly, the first measurement party (Attester1) receives the key generation request.
[0208] In a possible implementation, after receiving the key request message, the verifier (Verifier1) generates a first parameter. Exemplarily, the first parameter can be a random number, such as Nonce1; it can also be address information, such as the address of the first measurement party (Attester1), such as the domain name, IP address, fully qualified domain name (fully qualifieddomain name, FQDN) of the first measurement party; it can also be a counter value, such as the verifier maintains a counter, and the value of the counter is increased by 1 each time a key request message is received. The verifier (Verifier1) can also store the identifier of the second measurement party and the first parameter, thereby recording the corresponding relationship between the first parameter (such as Nonce1) and the identifier of the second measurement party (Attester2 ID) for subsequent use. The verifier (Verifier1) can then confirm the trust status of the second measurement party (Attester2). For example, the verifier can determine whether there is a remote attestation result of the second measurement party locally. If there is a remote attestation result of the second measurement party locally, and the remote attestation result is a remote attestation success, the verifier confirms that the second measurement party is trustworthy. For example, Verifier1 records the Attester1 ID corresponding to HostOS / Attester2. If Verifier1 has the evidence from Attester1 ID and the verification history, it means that Verifier1 has the successful remote attestation result of Attester2 stored locally. Of course, if the remote attestation result of the second measurement party is available locally, but the remote attestation result is a remote attestation failure, the verification party confirms that the second measurement party is untrustworthy.
[0209] If there is no remote attestation result of the second measurement party locally, or the remote attestation result of the second measurement party (remote attestation success or remote attestation failure) is judged to be expired according to the preconfigured rules, the verifier (Verifier1) can trigger the remote attestation process for the second measurement party (Attester2). Among them, the remote attestation process of the verifier to the second measurement party, please refer to the description of the second embodiment below, or refer to the description of the third embodiment below, such as the description of steps S308 to S312, which is only briefly explained here and not detailed. Exemplarily, the verifier (Verifier1) sends a remote attestation request to the first measurement party (Attester1). After receiving the remote attestation request, the first measurement party obtains the evidence of the second measurement party (Attester2) and sends a remote attestation response to the verifier. The remote attestation response includes the evidence of the second measurement party and the first signature information, and the first signature information includes the information after the evidence of the second measurement party is signed by the first AIK of the first measurement party. The verifier obtains the first AIK of the first measurement party and uses the first AIK to verify whether the first signature information is valid. If the first signature information is valid, the verification party verifies the evidence of the second measurement party. If the evidence of the second measurement party passes the verification, the verification party confirms that the second measurement party is credible. Of course, if the evidence of the second measurement party fails the verification, the verification party confirms that the second measurement party is not credible.
[0210] In one possible implementation, when the second measurement party is trustworthy, the verifier (Verifier1) sends a key generation request to the first measurement party (Attester1), and the key generation request includes the above-mentioned first parameter (such as Nonce1). Optionally, the key generation request also includes the identifier of the second measurement party (Attester2 ID). The key generation request can be used to request (the first measurement party) to generate a second EK of the second measurement party according to the first parameter. In some scenarios, the key generation request is also used to indicate that the second measurement party is trustworthy. This can be an implicit indication, such as an implicit indication through a message name, that is, the first measurement party receives the key generation request, which indicates that the second measurement party is trustworthy; it can also be an explicit indication, such as carrying an indication information in the key generation request to indicate that the second measurement party is trustworthy.
[0211] In the case where the second measurement party is untrustworthy, the verifier (Verifier1) may not send a key generation request to the first measurement party (Attester1), and may return a key response message to the second measurement party (Attester2), which may be used to reject the key request of the second measurement party. Optionally, the key response message may also carry a rejection reason, such as the second measurement party is untrustworthy.
[0212] S104, the first measurement party (Attester1) generates a second EK according to the first parameter and the first EK of the first measurement party.
[0213] S105, the first measurement party (Attester1) sends a key grant message to the second measurement party (Attester2), where the key grant message includes the second EK. Correspondingly, the second measurement party (Attester2) receives the key grant message.
[0214] In one possible implementation, after the first measurement party (Attester1) receives the above-mentioned key generation request, it can generate a second EK according to the first parameter (such as Nonce1) in the key generation request and the first EK of the first measurement party itself. For example, the first measurement party can use the first parameter (such as Nonce1) and its own first EK as input to execute a preconfigured first key generation algorithm to generate a second EK. It can be understood that there are many key generation algorithms, such as key derivation function (KDF), and hash algorithm. The embodiment of the present application does not limit the specific key generation algorithm used. Exemplarily, the first key generation algorithm is KDF, and the second EK = KDF (first EK, first parameter). Among them, the first EK of the first measurement party can be preconfigured, such as preconfigured by hardware burning.
[0215] In a possible implementation, after the first measurement party generates the second EK, the first measurement party (Attester1) sends a key grant message to the second measurement party (Attester2), and the key grant message includes the second EK. Optionally, the key grant message also includes the identifier of the first measurement party (such as Attester1 ID). The identifier of the first measurement party (such as Attester1 ID) in the key grant message can be used to allow the second measurement party (Attester2) to report to the network side (such as Verifier1 or MnF) and record the relationship between the two. For details, please refer to the following text and will not be described in detail here.
[0216] S106, the second measurement party (Attester2) saves the second EK and uses the second EK as the root key.
[0217] S107, the second measurement party (Attester2) sends a key success message to the verification party (Verifier1), the key success message includes the identifier of the second measurement party. Correspondingly, the verification party (Verifier1) receives the key success message.
[0218] In a possible implementation, after receiving the above key grant message, the second measurement party (Attester2) can save the second EK in the key grant message and use the second EK as the root key for subsequent use. It can be understood that when the second measurement party is trusted, the second EK of the second measurement party is generated based on the first EK and the first parameter of the first measurement party. Because the first EK of the first measurement party is pre-configured (such as hardware burning), the first EK of the first measurement party is not easy to be tampered with. Because the first parameter can be a random number, then when the second measurement party is trusted, the second EK generated based on the first EK and the first parameter of the first measurement party is trusted, forming a key trust chain. Thereby, the security and reliability of the VNF layer root key (i.e., the second EK) can be improved, and the security risks of key storage and generation due to virtualization can be reduced.
[0219] In a possible implementation, after receiving the above-mentioned key grant message, the second measurement party (Attester2) can send a key success message to the verification party (Verifier1), and the key success message can include the identifier of the second measurement party (such as Atester2 ID). The key success message can be used to inform the verification party that the second measurement party has obtained the second EK. The key success message can also serve as a response or subsequent notification to the above-mentioned key request message. Optionally, the key success message also includes the identifier of the first measurement party (such as Atester1 ID), and the identifier of the first measurement party can be used to determine the first EK.
[0220] It is understood that the embodiment of the present application does not limit the execution order of step S106 and step S107. For example, step S106 can be executed before step S107, or after step S107, or simultaneously (or in parallel) with step S107.
[0221] S108, the verifier (Verifier1) sends a key generation message to the key management network element (MnF), the key generation message includes the identifier of the second measurement party, the identifier of the first measurement party, and the first parameter, and the key generation message is used to trigger the generation of the second EK of the second measurement party. Correspondingly, the key management network element (MnF) receives the key generation message.
[0222] S109, the key management network element (MnF) generates a second EK according to the first parameter and the first EK corresponding to the identifier of the first measurement party. The key management network element (MnF) may also store the identifier of the second measurement party and the second EK.
[0223] In a possible implementation, after receiving the key success message, the verifier (Verifier1) may send a key generation message to the key management network element (MnF). The key generation message may include the identifier of the second measurement party (such as Attester2 ID), the identifier of the first measurement party (such as Attester1 ID), and the first parameter (such as Nonce1). The key generation message may be used to trigger the key management network element (MnF) to generate the second EK of the second measurement party (according to the first parameter).
[0224] In one possible implementation, the correspondence between the identifier of the first measurement party (such as Attester1 ID) and the first EK is pre-configured in the key management network element (MnF) for subsequent retrieval. After receiving the above-mentioned key generation message, the key management network element (MnF) can determine the first EK corresponding to the identifier of the first measurement party (such as Attester1 ID) in the key generation message according to the pre-configured correspondence. The key management network element (MnF) can use the first parameter (such as Nonce1) in the key generation message and the first EK corresponding to the identifier of the first measurement party (such as Attester1 ID) as input, and execute the pre-configured first key generation algorithm to generate the second EK. It can be understood that the way the key management network element (MnF) generates the second EK is the same as the way the first measurement party (Attester1) generates the second EK, which will not be repeated here. After the key management network element (MnF) generates the second EK, it can also store the identifier of the second measurement party (such as Attester2 ID) and the second EK, thereby recording the correspondence between the identifier of the second measurement party (such as Attester2 ID) and the second EK for subsequent use.
[0225] In a possible implementation, after the above step S109, Figure 6 The information interaction method shown may also include: a process in which the second measurement party (such as Atester2) applies for a second AIK. For example, the second AIK of the second measurement party is generated according to the second EK by means of symmetric key deduction. For specific implementation, please refer to the description of Example 2 below, such as the description of steps S202 to S205 in Example 2, or refer to the description of Example 3 below, such as the description of steps S301 to S307 in Example 3, which are not described in detail here. It can be understood that after the second measurement party obtains the second AIK, it can be used to measure the evidence of the "verified party", such as using the second AIK to sign the evidence of the "verified party". The "verified party" here can be any device or software program that needs to confirm the trust status / trusted status, etc., and the embodiments of the present application are not limited.
[0226] In the embodiment of the present application, when confirming that the second measurement party of the VNF layer is trustworthy, the key deduction architecture is used to make the root key of the NFVI layer (i.e., the first EK of the first measurement party) and the root key of the VNF layer (i.e., the EK of the second measurement party) have a cryptographic connection, such as: using the first EK of the first measurement party of the NFVI layer to generate the second EK of the second measurement party of the VNF layer, forming a key trust chain; thereby improving the security and reliability of the root key of the VNF layer (i.e., the second EK), and reducing the security risks caused by key storage and generation due to virtualization.
[0227] It can be understood that the embodiments of the present application are not only applicable to the two-layer architecture (including the NFVI layer and the VNF layer) of network function virtualization, but also to the multi-layer architecture (such as the aforementioned Figure 1 In the multi-layer architecture of network function virtualization, the root key of the upper layer can be generated according to the method provided in the embodiment of the present application, that is, when the upper layer is confirmed to be trustworthy, the root key of the upper layer can be generated based on the root key of the lower layer.
[0228] Embodiment 2
[0229] Embodiment 2 of the present application mainly introduces the use of symmetric key deduction to generate AIK and execute a remote certification process.
[0230] In a possible implementation, the second embodiment of the present application can be implemented in combination with the first embodiment, or can be implemented alone, and the present application does not limit this. When the second embodiment of the present application is implemented in combination with the first embodiment, the measurement party (Attester) in the embodiment of the present application can be the first measurement party (Attester1) or the second measurement party (Attester2). Correspondingly, the verifier (Verifier) in the embodiment of the present application can belong to NFVI, such as the aforementioned Figure 5 Verifier1 shown in the figure can also belong to the VNF architecture, such as the Figure 5 It can be understood that when the measuring party in the embodiment of the present application is Atester1, the verifying party in the embodiment of the present application is Verifier1; when the measuring party in the embodiment of the present application is Atester2, the verifying party in the embodiment of the present application is Verifier2; see the description below for details.
[0231] In addition, when the second embodiment of the present application is implemented in combination with the aforementioned first embodiment, if the measurement party (Attester) in the embodiment of the present application is the first measurement party (Attester1), then the verified party in the embodiment of the present application may be the second measurement party (Attester2), see the description below for details.
[0232] See also Figure 7 , Figure 7 This is another flow chart of the information interaction method provided in the embodiment of the present application. The method is applicable to the scenario without CA and is also applicable to the aforementioned Figure 1 The network function virtualization architecture scenario shown in Figure 1 is as follows: Figure 7 As shown, the information interaction method includes but is not limited to the following steps:
[0233] S201, the Verifier sends a remote certification request to the Attester, and the Attester receives the remote certification request.
[0234] In a possible implementation, the remote attestation request may include an identifier of the verifier (such as VerifierID) and an identifier of the measurement party (such as Attester ID), and may optionally include a freshness parameter. Among them, the Verifier ID may be used to inform the measurement party of the identity of the Verifier that sent the remote attestation request. Exemplarily, the Verifier ID may be the IP address of the Verifier, such as 10.10.4.1; or it may be a preconfigured serial number, such as 001, 002, etc. If the Verifier is set by the equipment vendor, the Verifier ID may also be the equipment vendor's identity identifier, such as equipment vendor 1, equipment vendor 2, etc. The embodiment of the present application does not limit the specific implementation of the Verifier ID. The Attester ID may be used to inform a specific measurement party to perform the measurement. Exemplarily, the Attester ID may be the IP address of the Attester. The Attester ID may be carried explicitly or implicitly in the remote attestation request, such as implicitly carrying the Attester ID by using the Attester as the address of the sent data packet or the message name. The freshness parameter may be used to prevent replay attacks and ensure the freshness of the evidence. Exemplarily, the freshness parameter may be a random number or a count value, such as a loop count value from 0 to 7. It is understood that replay attacks, also known as replay attacks or playback attacks, refer to an attacker sending a packet that has been received by a destination host to achieve the purpose of deceiving the system, which is mainly used in the identity authentication process to undermine the correctness of the authentication.
[0235] In one possible implementation, the remote attestation request can be used to trigger the generation of AIK by the Attester, such as triggering the following step S202. In another possible implementation, the following step S202 does not require a trigger condition and is initiated by the Attester according to its own needs. In other words, step S201 is executed after step S202 to initiate the remote attestation process; illustratively, step S201 can be executed after step S202 and before step S206.
[0236] S202, the Attester sends a first key request to the key management network element (MnF), where the first key request is used to request a second parameter, wherein the second parameter can be used to generate the AIK of the Attester.
[0237] Correspondingly, the key management network element (MnF) receives the first key request.
[0238] In a possible implementation, the above-mentioned first key request may include an identifier of the measurement party (such as AtesterID), and / or a request indication. Among them, Atester ID can be used to inform the network side (such as MnF) of the sender (or source) of the first key request. For the implementation method of Atester ID, please refer to the description in the above step S201, which is not repeated here. The request indication can be used to indicate the function or role of the first key request, and the request indication can be used to indicate that the function of the first key request is to request a second parameter. The request indication can be carried explicitly or implicitly, for example, the request indication can be implicitly carried through the message name.
[0239] S203, the key management network element (MnF) generates a second parameter, and generates the AIK of the measuring party according to the second parameter and the EK of the measuring party.
[0240] S204, the key management network element (MnF) sends a first key response to the metric (Attester), where the first key response includes a second parameter.
[0241] Correspondingly, the Attester receives the first key response.
[0242] In a possible implementation, after receiving the above-mentioned first key request, the key management network element (MnF) generates a second parameter. Exemplarily, the second parameter can be a random number, such as Nonce2; it can also be address information, such as the domain name, IP address, FQDN, etc. of the measuring party; it can also be a counter value, such as the key management network element maintains a counter, and the value of the counter is increased by 1 each time a first key request is received. The key management network element (MnF) can then obtain the EK of the measuring party, and generate the AIK of the measuring party based on the EK of the measuring party and the second parameter. For example, the key management network element takes the EK of the measuring party and the second parameter as input, and executes a preconfigured second key generation algorithm to generate the AIK of the measuring party. It can be understood that there are many key generation algorithms, such as a key derivation function (KDF) and a hash algorithm. The embodiment of the present application does not limit which key generation algorithm is used. Exemplarily, the second key generation algorithm is KDF, and AIK=KDF(EK, second parameter). It can be understood that the second key generation algorithm in the embodiment of the present application may be the same as or different from the first key generation algorithm in the aforementioned embodiment 1, and the embodiment of the present application does not limit this.
[0243] In a possible implementation, the measurement party (Attester) in the embodiment of the present application may be the first measurement party (Attester1) or the second measurement party (Attester2). When the measurement party (Attester) in the embodiment of the present application is the first measurement party (Attester1), the correspondence between the identifier of the first measurement party (such as Atester ID) and the first EK may be pre-configured in the key management network element (MnF) to facilitate subsequent retrieval. Therefore, the key management network element obtains the EK of the measurement party, which may include: the key management network element determines the first EK corresponding to the identifier of the first measurement party in the above-mentioned first key request according to the correspondence between the identifier of the pre-configured measurement party and the EK. The key management network element then uses the first EK and the second parameter to generate the first AIK of the first measurement party.
[0244] When the measurement party (Attester) in the embodiment of the present application is the second measurement party (Attester2), since the key management network element (MnF) in step S109 of the aforementioned embodiment 1 stores the identifier of the second measurement party (such as Atester2 ID) and the second EK, the key management network element obtains the EK of the measurement party, which may include: the key management network element obtains the second EK corresponding to the identifier of the second measurement party in the above-mentioned first key request from the local storage space. The key management network element then uses the second EK and the second parameter to generate the second AIK of the second measurement party.
[0245] In a possible implementation, after the key management network element (MnF) generates the AIK of the measurement party, the identification of the measurement party (such as Attester ID) and the AIK can be stored, so as to record the corresponding relationship between the two for subsequent use. The key management network element (MnF) can send a first key response to the measurement party (Attester). The first key response may include a second parameter (such as Nonce2). Optionally, the first key response also includes: an identification of the measurement party (such as Attester ID), and / or a third signature information. Among them, Attester ID can be used to indicate the receiving end (or destination end) of the first key response. The third signature information may include information after the second parameter is signed by the AIK signature subkey, or the third signature information is information after the entire message itself (such as the first key response) is signed using the AIK signature subkey, and the embodiment of the present application is not limited. It can be understood that the third signature information can be used for integrity protection, for protecting / verifying the integrity of the second parameter. The AIK signature subkey can be generated based on the AIK of the measurement party. Exemplarily, the AIK signature subkey can be the AIK of the measurement party itself. Alternatively, the AIK signature subkey is generated by the key management network element (MnF) using a preconfigured third key generation algorithm. For example, the AIK and other parameters of the measuring party are used as input, and the preconfigured third key generation algorithm is executed to generate the AIK signature subkey. Among them, the third key generation algorithm may be the same as the aforementioned second key generation algorithm, or it may be different from the aforementioned second key generation algorithm, and the embodiment of the present application does not limit it. Whether the third key generation algorithm is the same as the first key generation algorithm is not limited by the embodiment of the present application. The other parameters here can be the algorithm identifier of the signature algorithm, such as Algorithm ID; it can also be the address information of the measuring party; it can also be a counter value; the embodiment of the present application does not limit this. For example, if the third key generation algorithm is KDF and the other parameter is Algorithm ID, the generation method of the AIK signature subkey can be KDF (AIK, Algorithm ID).
[0246] It can be understood that when the measuring party in the embodiment of the present application is the first measuring party (Attester1), the EK, AIK, AIK signature subkey, etc. in the embodiment of the present application are all corresponding to the first measuring party (Attester1). When the measuring party in the embodiment of the present application is the second measuring party (Attester2), the EK, AIK, AIK signature subkey, etc. in the embodiment of the present application are all corresponding to the second measuring party (Attester2). For ease of distinction, when the measuring party in the embodiment of the present application is the first measuring party, the EK, AIK, and AIK signature subkey in the embodiment of the present application can be replaced by the first EK, the first AIK, and the first AIK signature subkey, respectively. When the measuring party in the embodiment of the present application is the second measuring party, the EK, AIK, and AIK signature subkey in the embodiment of the present application can be replaced by the second EK, the second AIK, and the second AIK signature subkey, respectively. They are not listed here one by one.
[0247] S205, the Attester generates its AIK according to the second parameter and its EK, wherein the AIK can be used to sign the evidence of the verified party.
[0248] In a possible implementation, after receiving the above-mentioned first key response, the measurement party (Attester) can generate its own AIK according to the second parameter in the first key response and its own EK. Exemplarily, the measurement party can use the second parameter and its own EK as input to execute the preconfigured second key generation algorithm to generate its own AIK. It can be understood that the way the measurement party generates AIK is the same as the way the key management network element (MnF) generates AIK, which will not be repeated here. Among them, the EK of the measurement party can be preconfigured or granted. If the measurement party is the first measurement party (Attester1), the EK of the measurement party is preconfigured, such as preconfigured by hardware burning. For example, if Attester1 is a device that can store EK, EK can be pre-configured, for example, Attester1 is a SIM card with program capabilities or a chip. When the chip is a root of trust (RoT) and Attester1 is software, the chip can provide EK to Attester1 through a program. It can be understood that the root of trust (RoT) refers to a source that is always trustworthy in a cryptographic system. If the measurement party is the second measurement party (Attester2), the EK of the measurement party may be granted, for example, by generating a second EK through the method of the aforementioned embodiment 1 and granting the second EK to the second measurement party.
[0249] In a possible implementation, if the above-mentioned first key response includes the third signature information, after the measurement party (Attester) generates its own AIK, it can generate an AIK signature subkey based on the AIK. Exemplarily, the AIK signature subkey can be the AIK of the measurement party itself. Or, the AIK signature subkey is generated by the measurement party (Attester) using a preconfigured third key generation algorithm. It can be understood that the measurement party generates the AIK signature subkey in the same way as the key management network element (MnF) generates the AIK signature subkey, which will not be repeated here. The measurement party (Attester) can then use the AIK signature subkey to verify the third signature information. If the third signature information is verified, the AIK generated by the measurement party (Attester) can be saved for subsequent use. If the third signature information verification fails, the measurement party (Attester) can discard the generated AIK and can re-request the second parameter from the key management network element (MnF).
[0250] Of course, if the first key response does not include the third signature information, after the Attester generates its own AIK, it can directly save the AIK for subsequent use.
[0251] S206, the Attester sends a remote attestation response to the Verifier, where the remote attestation response includes the evidence of the verified party and second signature information, where the second signature information includes information of the evidence of the verified party signed by the AIK.
[0252] Correspondingly, the Verifier receives the remote attestation response.
[0253] In a possible implementation, after receiving the above remote proof request, the measuring party (Attester) can obtain the evidence of the verified party, such as obtaining the PCR value of the evidence of the verified party. It can be understood that if the measuring party is the first measuring party (Attester1), then the verified party in the embodiment of the present application can be the second measuring party (Attester2) in the aforementioned embodiment one; of course, it can also be other devices or software programs that need to confirm the trust status / trusted status, etc., and the embodiment of the present application is not limited. If the measuring party is the second measuring party (Attester2), the verified party in the embodiment of the present application can be a management device or software program corresponding to the second measuring party that needs to confirm the trust status / trusted status.
[0254] The measurement party (Attester) can then use the AIK generated in the above step S205 to sign the evidence of the party to be verified (such as the PCR value) to obtain the second signature information. Alternatively, the measurement party (Attester) can then use the AIK generated in the above step S205 to sign the evidence of the party to be verified (such as the PCR value) and the identification of the party to be verified to obtain the second signature information. If the party to be verified is the second measurement party (Attester2) in the aforementioned embodiment one, then the identification of the party to be verified can be the Attester2 ID, or the Host OS ID, because the Host OS is composed of software, and part or all of its software is Attester2. Therefore, the embodiment of the present application may not distinguish between Attester2 and Host OS. In other words, the first measurement party obtaining the evidence of the second measurement party may be the first measurement party obtaining the evidence of the Host OS.
[0255] It can be understood that when the verified party is the second measurement party (Attester2) in the aforementioned embodiment one, the second signature information is the same as the first signature information in the aforementioned embodiment one.
[0256] In a possible implementation, the measurement party (Attester) sends a remote attestation response to the verification party (Verifier). Exemplarily, the measurement party can forward the remote attestation response to the verification party through the Host OS. The remote attestation response may include evidence of the verified party (such as PCR value) and a second signature information. Optionally, the remote attestation response also includes an identifier of the measurement party (such as Attester ID) and / or an identifier of the verification party (VerifierID). Among them, Attester ID and VerifierID can respectively represent the sending end (source end) and receiving end (destination end) of the remote attestation response. For the specific implementation of Attester ID and Verifier ID, please refer to the description in the above step S201, which will not be repeated here.
[0257] S207, the verifier (Verifier) sends a key acquisition message to the key management network element (MnF), where the key acquisition message includes the identifier of the measurer, and the key acquisition message is used to obtain the AIK of the measurer.
[0258] Correspondingly, the key management network element (MnF) receives the key acquisition message.
[0259] S208, the key management network element (MnF) sends a key response message to the verifier (Verifier), the key response message including the AIK of the measuring party. Correspondingly, the verifier (Verifier) receives the key response message.
[0260] In a possible implementation, after the key management network element (MnF) receives the above-mentioned key acquisition message, if the key management network element stores the identifier (Attester ID) of the measuring party and the AIK of the measuring party after step S203, the key management network element can find the AIK corresponding to the identifier of the measuring party according to the identifier of the measuring party in the key acquisition message. The key management network element (MnF) can send a key response message to the verifier (Verifier), and the key response message may include the AIK of the measuring party. If the key management network element does not store the AIK of the measuring party, the key management network element can find the EK corresponding to the identifier of the measuring party according to the identifier of the measuring party in the key acquisition message, and then generate the AIK of the measuring party according to the above-mentioned second parameter and the EK of the measuring party. The key management network element (MnF) can send a key response message to the verifier (Verifier), and the key response message may include the AIK of the measuring party.
[0261] In a possible implementation, if the key management network element (MnF) records the generation time of the above-mentioned second parameter (such as Nonce1) in the above-mentioned step S203, then the key management network element can determine whether the generation time of the second parameter has expired before sending the key response message. If the generation time of the second parameter has exceeded the preconfigured time threshold, the key management network element (MnF) can send a key acquisition failure message to the verifier (Verifier) and inform the verifier of the reason for the key acquisition failure. If the generation time of the second parameter does not exceed the preconfigured time threshold, the key management network element (MnF) can send a key response message to the verifier (Verifier), and the key response message carries the AIK of the metric.
[0262] S209, the verifier uses the AIK of the measuring party to verify whether the second signature information in the remote attestation response is valid. If the second signature information is valid, the verifier verifies the evidence of the verified party.
[0263] S210, the verifier sends a remote attestation result to the attester, where the remote attestation result is used to indicate whether the remote attestation of the verified party is successful or whether the remote attestation of the verified party fails.
[0264] In a possible implementation, after receiving the above-mentioned key response message, the Verifier can use the AIK carried in the key response message to verify whether the above-mentioned second signature information is valid. For example, the Verifier uses the AIK carried in the key response message to sign the evidence of the verified party in the above-mentioned remote proof response, and compares whether the signed information is consistent with the second signature information. If they are consistent, it means that the second signature information is valid, and if they are inconsistent, it means that the second signature information is invalid. If the second signature information is valid, the Verifier can verify the evidence of the verified party (such as PCR value). If the evidence of the verified party (such as PCR value) passes the verification, it means that the remote proof of the verified party is successful. If the evidence of the verified party (such as PCR value) fails to pass the verification, it means that the remote proof of the verified party fails. The Verifier can send a remote proof result to the Attester, and the remote proof result is used to indicate that the remote proof of the verified party is successful or the remote proof of the verified party fails. Among them, the verification method of the evidence can refer to the prior art, and the present application does not limit the specific verification method of the evidence.
[0265] In a possible implementation, if the second signature information is invalid, the verifier may discard the remote attestation response and resend the remote attestation request to request the measurement party to re-measure the evidence of the verified party.
[0266] The embodiment of the present application utilizes symmetric key deduction to generate AIK based on EK, so that AIK and EK have a cryptographic connection and form a key trust chain. Not only can the remote certification process be performed in the scenario without CA, but also the robustness of the measurement can be improved and the ability to resist quantum attacks can be enhanced.
[0267] Embodiment 3
[0268] Embodiment 3 of the present application mainly introduces the method of using symmetric key deduction to generate and save AIK in advance, and then execute the remote attestation process when needed, thereby realizing the decoupling of AIK generation and remote attestation process.
[0269] In a possible implementation, the third embodiment of the present application can be implemented in combination with the first embodiment, or can be implemented alone, and the present application does not limit this. When the third embodiment of the present application is implemented in combination with the first embodiment, the measurement party (Attester) in the embodiment of the present application can be the first measurement party (Attester1) or the second measurement party (Attester2). Correspondingly, the verifier (Verifier) in the embodiment of the present application can belong to NFVI, such as the aforementioned Figure 5Verifier1 shown in the figure can also belong to the VNF architecture, such as the Figure 5 It can be understood that when the measuring party in the embodiment of the present application is Atester1, the verifying party in the embodiment of the present application is Verifier1; when the measuring party in the embodiment of the present application is Atester2, the verifying party in the embodiment of the present application is Verifier2; see the description below for details.
[0270] In addition, when embodiment three of the present application is implemented in combination with the aforementioned embodiment one, if the measurement party (Attester) in the embodiment of the present application is the first measurement party (Attester1), then the verified party in the embodiment of the present application may be the second measurement party (Attester2), see the description below for details.
[0271] See also Figure 8 , Figure 8 This is another flow chart of the information interaction method provided in the embodiment of the present application. The method is applicable to the scenario without CA and is also applicable to the aforementioned Figure 1 The network function virtualization architecture scenario shown in Figure 1 is as follows: Figure 8 As shown, the information interaction method includes but is not limited to the following steps:
[0272] S301, the Attester sends a first key request to the Verifier, where the first key request is used to request a second parameter, where the second parameter can be used to generate the AIK of the Attester. Correspondingly, the Verifier receives the first key request.
[0273] In a possible implementation, the above-mentioned first key request may include one or more of the following: an identifier of the measuring party (such as Attester ID), a request indication, or a request identifier. Among them, the implementation of Attester ID and request indication can refer to the description of step S202 in the aforementioned embodiment 2, which will not be repeated here. The request identifier (such as request ID) can be used to uniquely identify a first key request. This is because the measuring party (Attester) may request the second parameter multiple times, such as sending multiple first key requests, so if the Attester ID is used for identification, there may be unclear identification problems, so the embodiment of the present application carries a request ID in the first key request, which is used to uniquely identify a first key request, so that the measuring party can request multiple different second parameters multiple times, generate multiple different AIKs, and improve the security of the measurement.
[0274] S302, the verifier sends a second key request to the key management network element (MnF), where the second key request includes the identifier of the measuring party, or the second key request includes the identifier of the measuring party and a second parameter, and the second key request is used to request to obtain the AIK of the measuring party.
[0275] Correspondingly, the key management network element (MnF) receives the second key request.
[0276] In a possible implementation, after receiving the above-mentioned first key request, the verifier (Verifier) may send a second key request to the key management network element (MnF). The second key request may be used to request to obtain the AIK of the measurement party. The second key request may include the identifier of the measurement party (such as Attester ID). The identifier of the measurement party can be used to allow the key management network element to search for the corresponding EK, thereby generating the AIK of the measurement party.
[0277] In another possible implementation, after receiving the first key request, the verifier (Verifier) may generate a second parameter and may send a second key request to the key management network element (MnF). The second key request may be used to request the AIK of the measurement party. The second key request may include the identification of the measurement party (such as Attester ID) and the second parameter. For the implementation of the second parameter, please refer to the description in the aforementioned embodiment 2, which will not be repeated here.
[0278] In one possible implementation, after receiving the above-mentioned first key request, the verifier (Verifier) can maintain a corresponding relationship for subsequent use. For example, the verifier locally maintains a corresponding relationship table between AttesterID, request ID, and the second parameter (such as Nonce2), as shown in Table 1 below. Among them, the AttesterID and request ID in Table 1 can come from the first key request sent by the measurement party. The second parameter (such as Nonce2) in Table 1 can be generated by the verifier itself, or it can be informed by the key management network element (MnF) in the following step S304 through the second key response. It can be understood that if the second parameter is generated and informed by the subsequent key management network element (MnF), the second parameter in the following Table 1 will be recorded after the verifier (Verifier) receives the second key response.
[0279] Table 1
[0280]
[0281] S303, the key management network element (MnF) generates the AIK of the measuring party according to the second parameter and the EK corresponding to the identifier of the measuring party.
[0282] S304, the key management network element (MnF) sends a second key response to the verifier (Verifier), where the second key response includes the AIK, or the second key response includes the AIK and a second parameter.
[0283] Correspondingly, the verifier receives the second key response.
[0284] In a possible implementation, after the key management network element (MnF) receives the second key request, if the second key request includes the identifier of the measuring party (such as Attester ID) but does not include the second parameter, the key management network element (MnF) can generate the second parameter, and generate the AIK of the measuring party according to the generated second parameter and the EK corresponding to the identifier of the measuring party. Then, the key management network element (MnF) can send a second key response to the verifier (Verifier), and the second key response includes the AIK of the measuring party and the second parameter.
[0285] If the second key request includes the measurement party's identifier (such as Attester ID) and the second parameter, the key management network element can generate the measurement party's AIK based on the second parameter in the second key request and the EK corresponding to the measurement party's identifier. Then, the key management network element (MnF) can send a second key response to the verifier (Verifier), and the second key response includes the measurement party's AIK. Of course, the second key response can also include the second parameter.
[0286] In short, for the second parameter, if the above-mentioned second key request does not carry the second parameter, the second key response needs to carry the second parameter (generated by the key management network element); if the above-mentioned second key request carries the second parameter (generated by the verification party), the second key response may not carry the second parameter or may carry the second parameter.
[0287] Among them, the implementation method of the key management network element (MnF) generating the AIK of the measuring party according to the second parameter and the EK corresponding to the identifier of the measuring party can refer to the corresponding description in step S203 of the aforementioned embodiment 2, which is not repeated here.
[0288] In a possible implementation, the second key response may further include fourth signature information. The fourth signature information may include information after the AIK of the measuring party is signed by the AIK signature subkey, or the fourth signature information is information after the entire message itself (such as the second key response) is signed using the AIK signature subkey, and the embodiment of the present application is not limited. It can be understood that the fourth signature information can be used for integrity protection, and is used to protect / verify the integrity of the AIK of the measuring party. The AIK signature subkey can be generated based on the AIK of the measuring party. Exemplarily, the AIK signature subkey can be the AIK of the measuring party itself. Alternatively, the AIK signature subkey is generated by the key management network element (MnF) using a preconfigured key generation algorithm. For example, the AIK of the measuring party and other parameters are used as input, and the preconfigured key generation algorithm is executed to generate the AIK signature subkey. Among them, other parameters can be the algorithm identifier of the signature algorithm, such as Algorithm ID; it can also be the address information of the measuring party; it can also be a counter value; the embodiment of the present application is not limited to this. For example, the preconfigured key generation algorithm is KDF, and other parameters are Algorithm ID, then the generation method of the AIK signature subkey can be KDF (AIK, Algorithm ID).
[0289] It can be understood that when the measuring party in the embodiment of the present application is the first measuring party (Attester1), the EK, AIK, AIK signature subkey, etc. in the embodiment of the present application are all corresponding to the first measuring party (Attester1). When the measuring party in the embodiment of the present application is the second measuring party (Attester2), the EK, AIK, AIK signature subkey, etc. in the embodiment of the present application are all corresponding to the second measuring party (Attester2). For ease of distinction, when the measuring party in the embodiment of the present application is the first measuring party, the EK, AIK, and AIK signature subkey in the embodiment of the present application can be replaced by the first EK, the first AIK, and the first AIK signature subkey, respectively. When the measuring party in the embodiment of the present application is the second measuring party, the EK, AIK, and AIK signature subkey in the embodiment of the present application can be replaced by the second EK, the second AIK, and the second AIK signature subkey, respectively. They are not listed here one by one.
[0290] S305, the Verifier stores the AIK and the second parameter.
[0291] In a possible implementation, after receiving the second key response, the Verifier can obtain the AIK of the measuring party from the second key response, and can store the AIK and the second parameter of the measuring party, thereby recording the corresponding relationship between the AIK of the measuring party and the second parameter (such as Nonce2) for subsequent use. It can be understood that if the measuring party here is the first measuring party, the Verifier stores the first AIK and the second parameter of the first measuring party; similarly, if the measuring party here is the second measuring party, the Verifier stores the second AIK and the second parameter of the second measuring party.
[0292] For example, the verifier maintains a correspondence table among AttesterID, request ID, second parameter (such as Nonce2), and AIK locally, as shown in Table 2 below.
[0293] Table 2
[0294]
[0295] It can be understood that the verifier can maintain a corresponding relationship table locally, as shown in Table 2 above; it can also maintain multiple corresponding relationship tables, as shown in Table 1 and Table 2 above; the embodiment of the present application does not limit this.
[0296] In a possible implementation, if the above-mentioned second key response includes the fourth signature information, the verifier (Verifier) can generate an AIK signature subkey based on the AIK after obtaining the AIK of the measuring party from the second key response. Exemplarily, the AIK signature subkey can be the AIK of the measuring party itself. Alternatively, the AIK signature subkey is generated by the verifier (Verifier) using a preconfigured key generation algorithm. It can be understood that the way the verifier generates the AIK signature subkey is the same as the way the key management network element (MnF) generates the AIK signature subkey, which will not be repeated here. The verifier (Verifier) can then use the AIK signature subkey to verify the fourth signature information. If the fourth signature information is verified, the AIK and the second parameter of the measuring party can be stored for subsequent use. If the fourth signature information verification fails, the verifier (Verifier) can use the AIK in the above-mentioned second key response, and can re-request the AIK of the measuring party from the key management network element (MnF).
[0297] It can be understood that if the above-mentioned second key response does not include the fourth signature information, after receiving the second key response, the verifier can directly store the AIK and the second parameter of the measuring party for subsequent use.
[0298] S306, the verifier sends a first key response to the attester, where the first key response includes a second parameter.
[0299] Correspondingly, the Attester receives the first key response.
[0300] In a possible implementation manner, the implementation manner of the first key response can refer to the relevant description of step S204 in the aforementioned embodiment 2, which will not be repeated here.
[0301] It is understood that the embodiment of the present application does not limit the execution order of step S305 and step S306. For example, step S305 can be executed before step S306, or after step S306, or simultaneously (or in parallel) with step S306.
[0302] S307, the Attester generates its AIK according to the second parameter and its EK, wherein the AIK can be used to sign the evidence of the verified party.
[0303] In a possible implementation, the implementation of step S307 of the embodiment of the present application can refer to the implementation of step S205 in the aforementioned embodiment 2, which will not be repeated here.
[0304] In a possible implementation, after step S307, when the Verifier has a remote certification requirement, the above Figure 8 The information interaction method shown may also include but is not limited to the following steps:
[0305] S308, the Verifier sends a remote certification request to the Attester, and the Attester receives the remote certification request.
[0306] In one possible implementation, when the verifier has a remote proof requirement, it can check the local storage records. If at least one AIK corresponding to the Attester ID is valid, the verifier can send a remote proof request to the measurement party (Attester) identified by the Attester ID. Exemplarily, the verifier can judge whether each AIK corresponding to the AttesterID is valid based on the comparison of the reception time of the request ID or the recording time of the AIK with the threshold; if the reception time of a request ID or the recording time of a certain AIK does not exceed the threshold, it means that the AIK corresponding to the AttesterID is valid, and if it exceeds the threshold, it means that the AIK corresponding to the AttesterID is invalid. Alternatively, the verifier judges based on the existence of the AIK. For example, if the local storage record has an AIK corresponding to a certain Attester ID, it means that the AIK corresponding to the AttesterID is valid. The embodiment of the present application does not limit the triggering conditions for the verifier to send a remote proof request.
[0307] It can be understood that if the Verifier determines that multiple AIKs corresponding to the Attester ID are valid, then in the subsequent remote attestation process, the Attester can select an AIK to sign the evidence according to the preconfigured rules, and the Verifier selects an AIK to verify the validity of the signature according to the same preconfigured rules. Exemplarily, the preconfigured rules can be: sort the multiple AIKs corresponding to the Attester ID according to the recording time, and select the AIK closest to the current time.
[0308] In a possible implementation, the implementation of the remote certification request can refer to the relevant description of step S201 in the aforementioned embodiment 2, which will not be repeated here.
[0309] S309, the Attester sends a remote attestation response to the Verifier, where the remote attestation response includes the evidence of the verified party, a second parameter, and second signature information, where the second parameter is used to determine the AIK, and the second signature information includes information after the evidence of the verified party is signed by the AIK.
[0310] Correspondingly, the Verifier receives the remote attestation response.
[0311] In one possible implementation, after receiving the above remote proof request, the measuring party (Attester) can obtain the evidence of the verified party, such as obtaining the PCR value of the evidence of the verified party. It can be understood that if the measuring party is the first measuring party (Attester1), then the verified party in the embodiment of the present application can be the second measuring party (Attester2) in the aforementioned embodiment one; of course, it can also be other devices or software programs that need to confirm the trust status / trusted status, etc., and the embodiment of the present application is not limited. If the measuring party is the second measuring party (Attester2), the verified party in the embodiment of the present application can be the management device or software program corresponding to the second measuring party that needs to confirm the trust status / trusted status.
[0312] The measurement party (Attester) can then use the AIK generated in the above step S307 to sign the evidence of the party to be verified (such as the PCR value) to obtain the second signature information. Alternatively, the measurement party (Attester) can then use the AIK generated in the above step S307 to sign the evidence of the party to be verified (such as the PCR value) and the identification of the party to be verified to obtain the second signature information. If the party to be verified is the second measurement party (Attester2) in the aforementioned embodiment one, then the identification of the party to be verified can be the Attester2 ID, or the Host OS ID, because the Host OS is composed of software, and part or all of its software is Attester2. Therefore, the embodiment of the present application may not distinguish between Attester2 and Host OS. In other words, the first measurement party obtaining the evidence of the second measurement party may be the first measurement party obtaining the evidence of the Host OS.
[0313] It can be understood that when the verified party is the second measurement party (Attester2) in the aforementioned embodiment one, the second signature information is the same as the first signature information in the aforementioned embodiment one.
[0314] In a possible implementation, the measurement party (Attester) sends a remote attestation response to the verification party (Verifier). Exemplarily, the measurement party can forward the remote attestation response to the verification party through the Host OS. The remote attestation response may include evidence of the verified party (such as PCR value), a second parameter and / or a request ID, and a second signature information. Optionally, the remote attestation response also includes an identifier of the measurement party (such as an Attester ID) and / or an identifier of the verification party (Verifier ID). Among them, the Attester ID and the Verifier ID can respectively represent the sending end (source end) and the receiving end (destination end) of the remote attestation response. For the specific implementation of the Attester ID and the Verifier ID, please refer to the description in the above step S201, which will not be repeated here. The second parameter or request ID can be used by the verification party to determine the AIK, specifically refer to the description of the following step S310.
[0315] S310, the verifier determines the AIK corresponding to the second parameter according to the pre-stored correspondence between the second parameter and the AIK.
[0316] In one possible implementation, after the verifier receives the above-mentioned remote attestation response, it can determine the AIK corresponding to the second parameter or request ID based on the second parameter and / or request ID in the remote attestation response, and the correspondence between the second parameter and the AIK pre-stored locally (as shown in Table 2 above).
[0317] S311, the verifier uses the AIK corresponding to the second parameter to verify whether the second signature information in the remote attestation response is valid. If the second signature information is valid, the verifier verifies the evidence of the party being verified.
[0318] S312, the verifier sends a remote attestation result to the attester, where the remote attestation result is used to indicate whether the remote attestation of the verified party is successful or whether the remote attestation of the verified party is failed.
[0319] In a possible implementation, the implementation of step S311 to step S312 in the embodiment of the present application can refer to the implementation of step S209 to step S210 in the aforementioned embodiment 2, which will not be repeated here.
[0320] The embodiment of the present application utilizes symmetric key deduction to generate AIK based on EK and caches AIK in Verifier, and then executes the remote attestation process when needed. In the scenario where there is no CA (certificate certification authority), the remote attestation process can also be performed. The decoupling of AIK generation and remote attestation process can also be achieved. During remote attestation, there is no need to request AIK from MnF, thus saving the key generation step; and the robustness of the measurement can be improved, and the ability to resist quantum attacks can be enhanced.
[0321] The above content introduces the process of the information interaction method provided in the embodiment of the present application. In order to better understand the relationship between the keys in the above three embodiments, a brief explanation is given below through diagrams.
[0322] See also Fig. 9 , Fig. 9 : is a schematic diagram of the key derivation architecture provided by the embodiment of the present application. Among them, the first EK is the root key of Attester1, the second EK is the root key of Attester2, the first AIK is the measurement key of Attester1, and the second AIK is the measurement key of Attester2. Fig. 9 As shown, the second EK is generated based on the first EK and the first parameter (such as Nonce1), such as the second EK = KDF (first EK, Nonce1). The first AIK is generated based on the first EK and the second parameter (such as Nonce2), such as the first AIK = KDF (first EK, Nonce2). The second AIK is generated based on the second EK and the third parameter (such as Nonce3), such as the second AIK = KDF (first EK, Nonce3). The first AIK signature subkey is generated based on the first AIK and the fourth parameter (such as Algorithm ID 1), such as the first AIK signature subkey = KDF (first AIK, Algorithm ID 1). The second AIK signature subkey is generated based on the second AIK and the fifth parameter (such as Algorithm ID 2), such as the second AIK signature subkey = KDF (second AIK, Algorithm ID 2). Among them, the first AIK signature subkey and the second AIK signature subkey are used for integrity protection. The first parameter, the second parameter, the third parameter, and the fourth parameter can be different from each other, or they can be partially the same.
[0323] The above content elaborates on the method of the present application in detail. In order to facilitate better implementation of the above scheme of the embodiment of the present application, the embodiment of the present application also provides corresponding devices or equipment.
[0324] The present application divides the functional modules of each network element of the present application according to the above method embodiment. For example, each functional module can be divided according to each function, or two or more functions can be integrated into one processing module. The above integrated modules can be implemented in the form of hardware or software functional modules. It should be noted that the division of modules in the present application is schematic and is only a logical function division. There may be other division methods in actual implementation. The following will be combined with Figures 10 to 12 The communication device according to the embodiment of the present application is described in detail.
[0325] See also Fig.10 , Fig.10 is a schematic diagram of a structure of a communication device provided in an embodiment of the present application. Fig.10 As shown, the communication device includes: a transceiver unit 10 and a processing unit 20. The transceiver unit 10 can realize corresponding communication functions, and the processing unit 20 is used for data processing.
[0326] In some embodiments of the present application, the communication device may be the first measurement party shown above. Fig.10 The communication device shown can be used to execute the steps or functions performed by the first measurement party in the above method embodiment. Exemplarily, the communication device can be the first measurement party or a chip or functional module configured in the first measurement party, etc., which is not limited in the embodiment of the present application. The transceiver unit 10 is used to perform the operations related to the transceiver of the first measurement party in the above method embodiment, and the processing unit 20 is used to perform the operations related to the processing of the first measurement party in the above method embodiment.
[0327] Exemplarily, the transceiver unit 10 is used to receive a key generation request from a verification party, the key generation request including a first parameter, the key generation request being used to request generation of a second EK of a second measurement party based on the first parameter; the processing unit 20 is used to generate the second EK based on the first parameter and the first EK of the first measurement party; the transceiver unit 10 is used to send a key grant message to the second measurement party, the key grant message including the second EK, and the second EK being used as the root key of the second measurement party.
[0328] Exemplarily, the key generation request is also used to indicate that the second measurement party is trustworthy.
[0329] Exemplarily, the processing unit 20 is specifically configured to take the first parameter and the first EK of the first measurement party as input, and execute a first key generation algorithm to generate the second EK.
[0330] Exemplarily, the transceiver unit 10 is further used to obtain a second parameter; the processing unit 20 is further used to generate a first AIK of the first measurement party based on the second parameter and the first EK of the first measurement party, and the first AIK is used to sign the evidence of the second measurement party.
[0331] Exemplarily, the processing unit 20 is specifically configured to take the second parameter and the first EK of the first measurement party as input, and execute a second key generation algorithm to generate the first AIK of the first measurement party.
[0332] Exemplarily, the transceiver unit 10 is further specifically configured to obtain a second parameter from a key management network element.
[0333] Exemplarily, the transceiver unit 10 is also used to: receive a remote attestation request from a verification party; send a remote attestation response to the verification party, the remote attestation response including the evidence of the second measurement party and first signature information, the first signature information including information after the evidence of the second measurement party is signed by the first AIK; receive a remote attestation result from the verification party, the remote attestation result indicating that the remote attestation of the second measurement party is successful.
[0334] Exemplarily, the transceiver unit 10 is further specifically configured to obtain a second parameter from the verification party.
[0335] Exemplarily, the transceiver unit 10 is also used to: receive a remote attestation request from a verifier; send a remote attestation response to the verifier, the remote attestation response including the evidence of the second measurement party, the second parameter, and first signature information, the second parameter is used to determine the first AIK, the first signature information including information after the evidence of the second measurement party is signed by the first AIK; receive a remote attestation result sent by the verifier, the remote attestation result indicating that the remote attestation of the second measurement party is successful.
[0336] Exemplarily, the first EK of the first metric is preconfigured.
[0337] In the embodiments of the present application, specific instructions on key generation request, key grant message, remote attestation request, remote attestation response, etc. can be referred to the method embodiment 1 shown above, and will not be described in detail here.
[0338] It can be understood that the specific description of the transceiver unit and the processing unit shown in the embodiment of the present application is only an example. For the specific functions or execution steps of the transceiver unit and the processing unit, please refer to the above-mentioned method embodiment 1, which will not be described in detail here.
[0339] Reuse Fig.10 In some other embodiments of the present application, the communication device may be the verification party shown above. Fig.10The communication device shown can be used to execute the steps or functions performed by the authenticator in the above method embodiment. Exemplarily, the communication device can be the authenticator or a chip or functional module configured in the authenticator, etc., which is not limited in the present embodiment. The transceiver unit 10 is used to execute the operations related to the transceiver of the authenticator in the above method embodiment, and the processing unit 20 is used to execute the operations related to the processing of the authenticator in the above method embodiment.
[0340] Exemplarily, the transceiver unit 10 is used to receive a key request message from a second measurement party, the key request message including an identifier of the second measurement party, and the key request message is used to request to obtain a second EK of the second measurement party; the processing unit 20 is used to generate a first parameter; the transceiver unit 10 is also used to send a key generation request to the first measurement party when the second measurement party is trusted, the key generation request including the first parameter, and the key generation request is used to request to generate a second EK of the second measurement party based on the first parameter.
[0341] Exemplarily, the transceiver unit 10 is also used to receive a key success message from a second measurement party, and the key success message includes an identifier of the second measurement party; the transceiver unit 10 is also used to send a key generation message to a key management network element, and the key generation message includes an identifier of the second measurement party, an identifier of the first measurement party, and the first parameter, and the key generation message is used to trigger the generation of a second EK of the second measurement party.
[0342] Exemplarily, the key success message further includes an identifier of the first measurement party, and the identifier of the first measurement party is used to determine a first EK, and the first EK is used to generate a second EK of the second measurement party in conjunction with the first parameter.
[0343] Exemplarily, the second measurement party is credible, including: there is a successful remote attestation result of the second measurement party in the verification party.
[0344] Exemplarily, the transceiver unit 10 is also used to send a remote attestation request to the first measurement party; the transceiver unit 10 is also used to receive a remote attestation response from the first measurement party, the remote attestation response including the evidence of the second measurement party and the first signature information, the first signature information including the information after the evidence of the second measurement party is signed by the first AIK of the first measurement party; the processing unit 20 is also used to obtain the first AIK of the first measurement party, and use the first AIK to verify whether the first signature information is valid; the processing unit 20 is also used to verify the evidence of the second measurement party when the first signature information is valid; the processing unit 20 is also used to confirm that the second measurement party is trustworthy when the evidence of the second measurement party passes the verification.
[0345] Exemplarily, the remote attestation response further includes a second parameter, and the second parameter is used to determine the first AIK of the first measurement party. The processing unit 20 is specifically configured to determine the first AIK corresponding to the second parameter according to the corresponding relationship between the second parameter and the first AIK.
[0346] Exemplarily, the transceiver unit 10 is also used to receive a first key request from the first measurement party, the first key request is used to request a second parameter, and the second parameter is used to generate a first AIK of the first measurement party; the transceiver unit 10 is also used to send a second key request to the key management network element, the second key request includes the identifier of the first measurement party and the second parameter, and the second key request is used to request to obtain the first AIK of the first measurement party; the transceiver unit 10 is also used to receive a second key response from the key management network element, the second key response includes the first AIK; the processing unit 20 is also used to store the first AIK and the second parameter; the transceiver unit 10 is also used to send a first key response to the first measurement party, and the first key response includes the second parameter.
[0347] Exemplarily, the transceiver unit 10 is also used to receive a first key request from the first measurement party, the first key request is used to request a second parameter, and the second parameter is used to generate a first AIK of the first measurement party; the transceiver unit 10 is also used to send a second key request to the key management network element, the second key request includes an identifier of the first measurement party, and the second key request is used to request to obtain the first AIK of the first measurement party; the transceiver unit 10 is also used to receive a second key response from the key management network element, the second key response includes the first AIK and the second parameter; the processing unit 20 is also used to store the first AIK and the second parameter; the transceiver unit 10 is also used to send a first key response to the first measurement party, the first key response includes the second parameter.
[0348] Exemplarily, the processing unit 20 is specifically used to: control the transceiver unit 10 to send a key acquisition message to the key management network element, the key acquisition message includes the identifier of the first measurement party, and the key acquisition message is used to obtain the first AIK of the first measurement party; control the transceiver unit 10 to receive a key response message from the key management network element, and the key response message includes the first AIK of the first measurement party.
[0349] Exemplarily, the transceiver unit 10 is also used to send a remote attestation result to the first measurement party, where the remote attestation result indicates that the remote attestation of the second measurement party is successful, wherein when the evidence verification of the second measurement party passes, the remote attestation of the second measurement party is successful.
[0350] In the embodiments of the present application, for specific descriptions of the key request message, key generation request, key generation message, remote attestation request, remote attestation response, first key request, second key request, first key response, second key response, key acquisition message, key response message, etc., please refer to the method embodiment 1 shown above, and they will not be described in detail here.
[0351] It can be understood that the specific description of the transceiver unit and the processing unit shown in the embodiment of the present application is only an example. For the specific functions or execution steps of the transceiver unit and the processing unit, please refer to the above-mentioned method embodiment 1, which will not be described in detail here.
[0352] Reuse Fig.10 In some other embodiments of the present application, the communication device may be the second measurement party shown above. Fig.10 The communication device shown can be used to execute the steps or functions performed by the second measurement party in the above method embodiment. Exemplarily, the communication device can be the second measurement party or a chip or functional module configured in the second measurement party, etc., which is not limited in the embodiment of the present application. The transceiver unit 10 is used to perform the transceiver-related operations of the second measurement party in the above method embodiment, and the processing unit 20 is used to perform the processing-related operations of the second measurement party in the above method embodiment.
[0353] Exemplarily, the transceiver unit 10 is used to send a key request message to the verification party, the key request message including the identifier of the second measurement party, and the key request message is used to request to obtain the second EK of the second measurement party; the transceiver unit 10 is also used to receive a key grant message from the first measurement party, the key grant message including the second EK, the second EK is generated based on the first EK and the first parameter of the first measurement party, and the second EK is used as the root key of the second measurement party.
[0354] Exemplarily, the processing unit 20 is configured to generate a key request message.
[0355] Exemplarily, the transceiver unit 10 is further configured to send a key success message to the verification party, where the key success message includes an identifier of the second measurement party.
[0356] Exemplarily, the key success message further includes an identifier of the first measurement party, and the identifier of the first measurement party is used to determine the first EK.
[0357] Exemplarily, the processing unit 20 is further configured to store the second EK.
[0358] In the embodiment of the present application, the specific description of the key request message, the key grant message, the key success message, etc. can be referred to the method embodiment 1 shown above, and will not be described in detail here.
[0359] It can be understood that the specific description of the transceiver unit and the processing unit shown in the embodiment of the present application is only an example. For the specific functions or execution steps of the transceiver unit and the processing unit, please refer to the above-mentioned method embodiment 1, which will not be described in detail here.
[0360] Reuse Fig.10 In still other embodiments of the present application, the communication device may be the key management network element shown above. Fig.10 The communication device shown can be used to execute the steps or functions performed by the key management network element in the above method embodiment. Exemplarily, the communication device can be a key management network element or a chip or functional module configured in the key management network element, etc., which is not limited in the embodiments of the present application. The transceiver unit 10 is used to execute the operations related to the transceiver of the key management network element in the above method embodiment, and the processing unit 20 is used to execute the operations related to the key management network element processing in the above method embodiment.
[0361] Exemplarily, the transceiver unit 10 is used to receive a key generation message from a verification party, the key generation message including an identifier of a first measurement party, an identifier of a second measurement party, and a first parameter, and the key generation message is used to trigger generation of a second EK of the second measurement party; the processing unit 20 is used to generate the second EK according to the first parameter and the first EK corresponding to the identifier of the first measurement party.
[0362] Exemplarily, the processing unit 20 is further used to determine the first EK corresponding to the identifier of the first measurement party according to the correspondence between the identifier of the first measurement party and the first EK.
[0363] Exemplarily, the processing unit 20 is specifically configured to take the first parameter and the first EK corresponding to the identifier of the first measurement party as input, and execute a first key generation algorithm to generate the second EK.
[0364] Exemplarily, the transceiver unit 10 is also used to receive a first key request from the first measurement party, the first key request is used to request a second parameter, and the second parameter is used to generate a first AIK of the first measurement party; the processing unit 20 is also used to generate the second parameter, and generate the first AIK of the first measurement party based on the second parameter and the first EK of the first measurement party; the transceiver unit 10 is also used to send a first key response to the first measurement party, and the first key response includes the second parameter.
[0365] Exemplarily, the processing unit 20 is specifically configured to take the second parameter and the first EK of the first measurement party as input, and execute a second key generation algorithm to generate the first AIK of the first measurement party.
[0366] Exemplarily, the transceiver unit 10 is also used to: receive a key acquisition message from the verification party, the key acquisition message including the identifier of the first measurement party, and the key acquisition message is used to obtain the first AIK of the first measurement party; and send a key response message to the verification party, the key response message including the first AIK of the first measurement party.
[0367] Exemplarily, the transceiver unit 10 is also used to receive a second key request from the verification party, the second key request including the identifier of the first measurement party and a second parameter, the second key request being used to request to obtain the first AIK of the first measurement party; the processing unit 20 is also used to generate the first AIK of the first measurement party according to the second parameter and the first EK corresponding to the identifier of the first measurement party; the transceiver unit 10 is also used to send a second key response to the verification party, the second key response including the first AIK.
[0368] Exemplarily, the transceiver unit 10 is also used to receive a second key request from the verification party, the second key request including the identifier of the first measurement party, and the second key request is used to request to obtain the first AIK of the first measurement party; the processing unit 20 is also used to generate a second parameter, and generate the first AIK of the first measurement party according to the second parameter and the first EK corresponding to the identifier of the first measurement party; the transceiver unit 10 is also used to send a second key response to the verification party, the second key response including the first AIK and the second parameter.
[0369] Exemplarily, the first EK is preconfigured.
[0370] In the embodiment of the present application, the specific descriptions of the key generation message, the first key request, the first key response, the key acquisition message, the key response message, the second key request, the second key response, etc. can be referred to the method embodiment 1 shown above, and will not be described in detail here.
[0371] It can be understood that the specific description of the transceiver unit and the processing unit shown in the embodiment of the present application is only an example. For the specific functions or execution steps of the transceiver unit and the processing unit, please refer to the above-mentioned method embodiment 1, which will not be described in detail here.
[0372] The above describes the communication device of the embodiment of the present application, and the following describes possible product forms of the communication device. It should be understood that any device having the above Fig.10 Any form of product with the functions of the communication device described above falls within the protection scope of the embodiments of the present application. It should also be understood that the following description is only an example and does not limit the product form of the communication device of the embodiments of the present application to this.
[0373] In one possible implementation, Fig.10In the communication device shown, the processing unit 20 may be one or more processors, the transceiver unit 10 may be a transceiver, or the transceiver unit 10 may also be a sending unit and a receiving unit, the sending unit may be a transmitter, the receiving unit may be a receiver, and the sending unit and the receiving unit are integrated into one device, such as a transceiver. In the embodiment of the present application, the processor and the transceiver may be coupled, etc., and the embodiment of the present application does not limit the connection mode of the processor and the transceiver. In the process of executing the above method, the process of sending information in the above method can be understood as the process of outputting the above information by the processor. When outputting the above information, the processor outputs the above information to the transceiver so that it is transmitted by the transceiver. After the above information is output by the processor, it may also need to be processed in other ways before it reaches the transceiver. Similarly, the process of receiving information in the above method can be understood as the process of the processor receiving the input information. When the processor receives the input information, the transceiver receives the above information and inputs it into the processor. Furthermore, after the transceiver receives the above information, the above information may need to be processed in other ways before it is input into the processor.
[0374] See also Fig.11 , Fig.11 is another structural diagram of the communication device provided in the embodiment of the present application. Fig.11 As shown, the communication device provided in the embodiment of the present application can be used to implement the method described in the above method embodiment, and reference can be made to the description in the above method embodiment. The communication device can be any one of the aforementioned first measurement party, second measurement party, verification party, and key management network element. Exemplarily, the communication device includes one or more processors 1001 and a transceiver 1002. The communication device may further include a memory 1003. In one implementation, the communication device also includes an input and output device (not shown in the figure).
[0375] The processor 1001 is mainly used to process the communication protocol and communication data, and to control the entire communication device, execute the software program, and process the data of the software program. The memory 1003 is mainly used to store the software program and data. The transceiver 1002 may include a control circuit and an antenna. The control circuit is mainly used to convert the baseband signal and the radio frequency signal and process the radio frequency signal. The antenna is mainly used to send and receive radio frequency signals in the form of electromagnetic waves. The input and output devices, such as a touch screen, a display screen, a keyboard, etc., are mainly used to receive data input by the user and output data to the user.
[0376] When the communication device is turned on, the processor 1001 can read the software program in the memory 1003, interpret and execute the instructions of the software program, and process the data of the software program. When data needs to be sent wirelessly, the processor 1001 performs baseband processing on the data to be sent, and outputs the baseband signal to the radio frequency circuit. The radio frequency circuit performs radio frequency processing on the baseband signal and then sends the radio frequency signal outward in the form of electromagnetic waves through the antenna. When data is sent to the communication device, the radio frequency circuit receives the radio frequency signal through the antenna, converts the radio frequency signal into a baseband signal, and outputs the baseband signal to the processor 1001. The processor 1001 converts the baseband signal into data and processes the data.
[0377] In another implementation, the RF circuit and antenna may be arranged independently of the processor performing baseband processing. For example, in a distributed scenario, the RF circuit and antenna may be arranged remotely from the communication device.
[0378] The processor 1001 , the transceiver 1002 , and the memory 1003 may be connected via a communication bus.
[0379] Exemplarily, when the communication device is used to execute the steps, methods or functions performed by the first measurement party in the first embodiment of the above method, the processor 1001 can be used to execute Figure 6 Step S104 in, and / or other processes for performing the techniques described herein; the transceiver 1002 may be used to perform Figure 6 Step S105 in, and / or other processes for the technology described herein.
[0380] Exemplarily, when the communication device is used to execute the steps, methods or functions performed by the second measurement party in the first embodiment of the above method, the processor 1001 can be used to execute Figure 6 Step S106 in, and / or other processes for performing the techniques described herein; the transceiver 1002 may be used to perform Figure 6 Steps S101 and S107 in, and / or other processes for the technology described herein.
[0381] Exemplarily, when the communication device is used to execute the steps, methods or functions performed by the verification party in the first embodiment of the above method, the processor 1001 may be used to execute Figure 6 Step S102 in, and / or other processes for performing the techniques described herein; the transceiver 1002 may be used to perform Figure 6 Steps S103 and S108 in, and / or other processes for the technology described herein.
[0382] Exemplarily, when the communication device is used to execute the steps, methods or functions executed by the key management network element in the first embodiment of the above method, the processor 1001 may be used to execute Figure 6 Step S109 in, and / or other processes for performing the technology described herein; the transceiver 1002 can be used to receive a key generation message, and / or other processes for the technology described herein.
[0383] Exemplarily, when the communication device is used to execute the steps, methods or functions performed by the measurement party in the second embodiment of the above method, the processor 1001 can be used to execute Figure 7 Step S205 in, and / or other processes for performing the techniques described herein; the transceiver 1002 may be used to perform Figure 7 Steps S202 and S206 in, and / or other processes for the technology described herein.
[0384] Exemplarily, when the communication device is used to execute the steps, methods or functions performed by the verification party in the second embodiment of the above method, the processor 1001 may be used to execute Figure 7 Step S209 in, and / or other processes for performing the techniques described herein; the transceiver 1002 may be used to perform Figure 7 Steps S201, S207, and S210 in, and / or other processes for the technology described herein.
[0385] Exemplarily, when the communication device is used to execute the steps, methods or functions executed by the key management network element in the second embodiment of the above method, the processor 1001 can be used to execute Figure 7 Step S203 in, and / or other processes for performing the techniques described herein; the transceiver 1002 may be used to perform Figure 7 Steps S204 and S208 in, and / or other processes for the technology described herein.
[0386] Exemplarily, when the communication device is used to execute the steps, methods or functions performed by the measurement party in the third embodiment of the above method, the processor 1001 can be used to execute Figure 8 Step S307 in, and / or other processes for performing the techniques described herein; the transceiver 1002 may be used to perform Figure 8 Steps S301 and S309 in, and / or other processes for the technology described herein.
[0387] Exemplarily, when the communication device is used to execute the steps, methods or functions performed by the verification party in the third embodiment of the above method, the processor 1001 may be used to execute Figure 8Step S305, step S310 and step S311 in, and / or other processes for performing the technology described herein; the transceiver 1002 may be used to perform Figure 8 Steps S302, S306, S308, and S312 in, and / or other processes for the technology described herein.
[0388] Exemplarily, when the communication device is used to execute the steps, methods or functions executed by the key management network element in the third embodiment of the above method, the processor 1001 can be used to execute Figure 8 Step S303 in, and / or other processes for performing the techniques described herein; the transceiver 1002 may be used to perform Figure 8 Step S304 in, and / or other processes for the technology described herein.
[0389] In any of the above implementations, the processor 1001 may include a transceiver for implementing the receiving and sending functions. For example, the transceiver may be a transceiver circuit, or an interface, or an interface circuit. The transceiver circuit, interface, or interface circuit for implementing the receiving and sending functions may be separate or integrated. The above transceiver circuit, interface, or interface circuit may be used for reading and writing code / data, or the above transceiver circuit, interface, or interface circuit may be used for transmitting or delivering signals.
[0390] In any of the above implementations, the processor 1001 may store instructions, which may be computer programs. The computer programs run on the processor 1001, and may enable the communication device to perform the method described in the above method embodiment. The computer program may be fixed in the processor 1001, in which case the processor 1001 may be implemented by hardware.
[0391] In one implementation, the communication device may include a circuit that can implement the functions of sending or receiving or communicating in the aforementioned method embodiment. The processor and transceiver described in the present application can be implemented in an integrated circuit (IC), an analog IC, a radio frequency integrated circuit (RFIC), a mixed signal IC, an application specific integrated circuit (ASIC), a printed circuit board (PCB), an electronic device, etc. The processor and transceiver can also be manufactured using various IC process technologies, such as complementary metal oxide semiconductor (CMOS), N-type metal oxide semiconductor (nMetal-oxide-semiconductor, NMOS), P-channel metal oxide semiconductor (positive channel metal oxide semiconductor, PMOS), bipolar junction transistor (bipolar junction transistor, BJT), bipolar CMOS (BiCMOS), silicon germanium (SiGe), gallium arsenide (GaAs), etc.
[0392] It is understandable that the communication device shown in the embodiment of the present application may also have Fig.11 The embodiments of the present application do not limit the number of components and the like. The methods executed by the processor and transceiver shown above are only examples, and the specific steps executed by the processor and transceiver can refer to the introduction of the above method embodiments.
[0393] In another possible implementation, Fig.10 In the communication device shown, the processing unit 20 may be one or more logic circuits, and the transceiver unit 10 may be an input / output interface, or a communication interface, or an interface circuit, or an interface, etc. Alternatively, the transceiver unit 10 may be a sending unit and a receiving unit, the sending unit may be an output interface, the receiving unit may be an input interface, and the sending unit and the receiving unit may be integrated into one unit, such as an input / output interface. Fig.12 , Fig.12 is another structural diagram of a communication device provided in an embodiment of the present application. Fig.12 As shown, Fig.12The communication device shown includes a logic circuit 901 and an interface 902. That is, the processing unit 20 can be implemented by the logic circuit 901, and the transceiver unit 10 can be implemented by the interface 902. The logic circuit 901 can be a chip, a processing circuit, an integrated circuit or a system on chip (SoC) chip, etc., and the interface 902 can be a communication interface, an input / output interface, a pin, etc. For example, Fig.12 The above communication device is taken as an example of a chip, and the chip includes a logic circuit 901 and an interface 902 .
[0394] In the embodiment of the present application, the logic circuit and the interface may also be coupled to each other. The embodiment of the present application does not limit the specific connection method between the logic circuit and the interface.
[0395] For example, Fig.12 The communication device shown can be used to implement the method described in the above method embodiment, and the description in the above method embodiment can be referred to. The communication device can be any one of the above-mentioned first measurement party, second measurement party, measurement party, verification party, and key management network element.
[0396] It can be understood that the communication device shown in the embodiment of the present application can implement the method provided in the embodiment of the present application in the form of hardware, or can implement the method provided in the embodiment of the present application in the form of software, etc., and the embodiment of the present application is not limited to this.
[0397] for Fig.12 The specific implementation methods of the various embodiments shown can also refer to the above embodiments, which will not be described in detail here.
[0398] An embodiment of the present application also provides a communication system, which includes a first measurement party, a second measurement party, a verification party and a key management network element. The first measurement party, the second measurement party, the verification party and the key management network element can be used to execute the method in the aforementioned method embodiment 1.
[0399] An embodiment of the present application also provides another communication system, which includes a measurement party, a verification party and a key management network element. The measurement party, the verification party and the key management network element can be used to execute the method in the second or third embodiment of the aforementioned method.
[0400] In addition, the present application also provides a computer program, which is used to implement the operations and / or processing performed by the first measurement party in the method provided by the present application.
[0401] The present application also provides a computer program, which is used to implement the operations and / or processing performed by the second measurement party in the method provided by the present application.
[0402] The present application also provides a computer program, which is used to implement the operations and / or processing performed by the measurement party in the method provided by the present application.
[0403] The present application also provides a computer program, which is used to implement the operations and / or processing performed by the verification party in the method provided by the present application.
[0404] The present application also provides a computer program, which is used to implement the operations and / or processing performed by the key management network element in the method provided by the present application.
[0405] The present application also provides a computer-readable storage medium, which stores computer code. When the computer code runs on a computer, the computer executes the operations and / or processing performed by the first measurement party in the method provided by the present application.
[0406] The present application also provides a computer-readable storage medium, which stores computer code. When the computer code runs on a computer, the computer executes the operations and / or processing performed by the second measurement party in the method provided by the present application.
[0407] The present application also provides a computer-readable storage medium, in which computer code is stored. When the computer code is run on a computer, the computer executes the operations and / or processing performed by the measurement party in the method provided by the present application.
[0408] The present application also provides a computer-readable storage medium, in which computer codes are stored. When the computer codes are executed on a computer, the computer executes the operations and / or processes performed by the verification party in the method provided by the present application.
[0409] The present application also provides a computer-readable storage medium, which stores computer code. When the computer code runs on a computer, the computer executes the operations and / or processing performed by the key management network element in the method provided by the present application.
[0410] The present application also provides a computer program product, which includes a computer code or a computer program. When the computer code or the computer program runs on a computer, the operations and / or processing performed by the first measurement party in the method provided by the present application are executed.
[0411] The present application also provides a computer program product, which includes a computer code or a computer program. When the computer code or computer program runs on a computer, the operations and / or processing performed by the second measurement party in the method provided by the present application are executed.
[0412] The present application also provides a computer program product, which includes a computer code or a computer program. When the computer code or the computer program runs on a computer, the operations and / or processing performed by the measurement party in the method provided by the present application are executed.
[0413] The present application also provides a computer program product, which includes a computer code or a computer program. When the computer code or the computer program runs on a computer, the operations and / or processing performed by the verification party in the method provided by the present application are executed.
[0414] The present application also provides a computer program product, which includes a computer code or a computer program. When the computer code or the computer program runs on a computer, the operations and / or processing performed by the key management network element in the method provided by the present application are executed.
[0415] In the several embodiments provided in the present application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are only schematic. For example, the division of the units is only a logical function division. There may be other division methods in actual implementation, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. In addition, the mutual coupling or direct coupling or communication connection shown or discussed can be an indirect coupling or communication connection through some interfaces, devices or units, or it can be an electrical, mechanical or other form of connection.
[0416] The units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the technical effects of the solutions provided in the embodiments of the present application.
[0417] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above-mentioned integrated unit may be implemented in the form of hardware or in the form of software functional units.
[0418] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application is essentially or partly contributed to the prior art, or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a readable storage medium, including a number of instructions for a computer device (which can be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the method described in each embodiment of the present application. The aforementioned readable storage medium includes: U disk, mobile hard disk, read-only memory (ROM), random access memory (RAM), disk or optical disk and other media that can store program code.
[0419] The above is only a specific implementation of the present application, but the protection scope of the present application is not limited thereto. Any technician familiar with the technical field can easily think of changes or substitutions within the technical scope disclosed in the present application, which should be included in the protection scope of the present application. Therefore, the protection scope of the present application should be based on the protection scope of the claims.
Claims
1. An information interaction method, characterized in that: include: The first measurement party receives a key generation request from the verification party, the key generation request including a first parameter, and the key generation request is used to request generation of a second endorsement key EK of the second measurement party according to the first parameter; The first measurement party generates the second EK according to the first parameter and the first EK of the first measurement party; The first measurement party sends a key granting message to the second measurement party, where the key granting message includes the second EK, and the second EK is used as a root key of the second measurement party.
2. The method according to claim 1, characterized in that The key generation request is also used to indicate that the second measurement party is trustworthy.
3. The method according to claim 1 or 2, characterized in that: The first measurement party generates the second EK according to the first parameter and the first EK of the first measurement party, including: The first metric takes the first parameter and the first EK of the first metric as inputs, and executes a first key generation algorithm to generate the second EK.
4. The method according to any one of claims 1 to 3, characterized in that Before the first measuring party receives the key generation request from the verifying party, the method further includes: The first measuring party obtains the second parameter; The first measurement party generates a first authentication key AIK of the first measurement party according to the second parameter and the first EK of the first measurement party, and the first AIK is used to sign the evidence of the second measurement party.
5. The method according to claim 4, characterized in that The first measurement party generates a first authentication key AIK of the first measurement party according to the second parameter and the first EK of the first measurement party, including: The first measuring party takes the second parameter and the first EK of the first measuring party as input, and executes a second key generation algorithm to generate a first authentication key AIK of the first measuring party.
6. The method according to claim 4 or 5, characterized in that: The first measuring party obtains the second parameter, including: The first measurement party obtains the second parameter from the key management network element.
7. The method according to claim 6, characterized in that Before the first measurement party obtains the second parameter from the key management network element, the method further includes: The first measurement party receives a remote attestation request from the verification party; After the first measurement party generates a first authentication key AIK of the first measurement party according to the second parameter and the first EK of the first measurement party, the method further includes: The first measurement party sends a remote attestation response to the verifier, where the remote attestation response includes the evidence of the second measurement party and first signature information, where the first signature information includes information after the evidence of the second measurement party is signed by the first AIK; The first measurement party receives a remote attestation result from the verification party, and the remote attestation result indicates that the remote attestation of the second measurement party is successful.
8. The method according to claim 4 or 5, characterized in that: The first measuring party obtains the second parameter, including: The first measuring party obtains a second parameter from the verifying party.
9. The method according to claim 8, characterized in that After the first measurement party generates a first authentication key AIK of the first measurement party according to the second parameter and the first EK of the first measurement party, the method further includes: The first measurement party receives a remote attestation request from the verification party; The first measurement party sends a remote attestation response to the verifier, where the remote attestation response includes the evidence of the second measurement party, the second parameter, and first signature information, where the second parameter is used to determine the first AIK, and the first signature information includes information after the evidence of the second measurement party is signed by the first AIK; The first measurement party receives the remote attestation result sent by the verification party, and the remote attestation result indicates that the remote attestation of the second measurement party is successful.
10. The method according to any one of claims 1 to 9, characterized in that The first EK of the first metric is preconfigured.
11. An information interaction method, characterized in that: include: The verifying party receives a key request message from the second measuring party, where the key request message includes an identifier of the second measuring party, and the key request message is used to request to obtain a second endorsement key EK of the second measuring party; The verification party generates a first parameter; In the case that the second measurement party is trustworthy, the verification party sends a key generation request to the first measurement party, the key generation request includes the first parameter, and the key generation request is used to request generation of a second EK of the second measurement party according to the first parameter.
12. The method according to claim 11, characterized in that After the verification party sends a key generation request to the first measurement party, the method further includes: The verification party receives a key success message from the second measurement party, wherein the key success message includes an identifier of the second measurement party; The verification direction sends a key generation message to the key management network element, where the key generation message includes an identifier of the second measurement party, an identifier of the first measurement party, and the first parameter, and the key generation message is used to trigger generation of a second EK of the second measurement party.
13. The method according to claim 12, characterized in that The key success message also includes an identifier of the first measurement party, where the identifier of the first measurement party is used to determine a first EK, and the first EK is used to generate a second EK of the second measurement party in conjunction with the first parameter.
14. The method according to any one of claims 11 to 13, characterized in that The second metric is credible, including: The verification party has a result of successful remote attestation of the second measurement party.
15. The method according to any one of claims 11 to 14, characterized in that Before the verification party sends a key generation request to the first measurement party, the method further includes: The verification party sends a remote attestation request to the first measurement party; The verifier receives a remote attestation response from the first measurement party, where the remote attestation response includes evidence of the second measurement party and first signature information, where the first signature information includes information after the evidence of the second measurement party is signed by a first authentication key AIK of the first measurement party; The verifier obtains the first AIK of the first measuring party, and uses the first AIK to verify whether the first signature information is valid; If the first signature information is valid, the verifier verifies the evidence of the second measurement party; If the evidence of the second measurement party passes the verification, the verification party confirms that the second measurement party is credible.
16. The method according to claim 15, characterized in that The remote attestation response further includes a second parameter, wherein the second parameter is used to determine a first AIK of the first measuring party; The verifier obtains the first AIK of the first measurement party, including: The verifier determines the first AIK corresponding to the second parameter according to the corresponding relationship between the second parameter and the first AIK.
17. The method according to claim 16, characterized in that Before the verification party sends a remote proof request to the first measurement party, the method further includes: The verifier receives a first key request from the first measurement party, where the first key request is used to request a second parameter; The verification party sends a second key request to the key management network element, where the second key request includes the identifier of the first measurement party and the second parameter, and the second key request is used to request to obtain the first AIK of the first measurement party; The verifier receives a second key response from the key management network element, where the second key response includes the first AIK; The verifier sends a first key response to the first measuring party, where the first key response includes the second parameter.
18. The method according to claim 16, characterized in that Before the verification party sends a remote proof request to the first measurement party, the method further includes: The verifier receives a first key request from the first measurement party, where the first key request is used to request a second parameter; The verification party sends a second key request to the key management network element, where the second key request includes an identifier of the first measurement party, and the second key request is used to request to obtain a first AIK of the first measurement party; The verifier receives a second key response from the key management network element, where the second key response includes the first AIK and the second parameter; The verifier sends a first key response to the first measuring party, where the first key response includes the second parameter.
19. The method according to claim 15, characterized in that The verifier obtains the first AIK of the first measurement party, including: The verification party sends a key acquisition message to the key management network element, where the key acquisition message includes an identifier of the first measurement party, and the key acquisition message is used to acquire a first AIK of the first measurement party; The verifier receives a key response message from the key management network element, where the key response message includes the first AIK of the first measurer.
20. The method according to any one of claims 15 to 19, characterized in that After the verification party verifies the evidence of the second measurement party, the method further includes: The verification party sends a remote attestation result to the first measurement party, and the remote attestation result indicates that the remote attestation of the second measurement party is successful, wherein when the evidence verification of the second measurement party passes, the remote attestation of the second measurement party is successful.
21. An information interaction method, characterized in that: include: The second measurement party sends a key request message to the verification party, where the key request message includes an identifier of the second measurement party, and the key request message is used to request to obtain a second endorsement key EK of the second measurement party; The second measurement party receives a key grant message from the first measurement party, where the key grant message includes the second EK, where the second EK is generated based on the first EK and a first parameter of the first measurement party, and where the second EK is used as a root key of the second measurement party.
22. The method according to claim 21, characterized in that After the second measurement party receives the key grant message from the first measurement party, the method further includes: The second measurement party sends a key success message to the verification party, where the key success message includes an identifier of the second measurement party.
23. The method according to claim 22, characterized in that The key success message also includes an identifier of the first measurement party, and the identifier of the first measurement party is used to determine the first EK.
24. The method according to any one of claims 21 to 23, characterized in that After the second measurement party receives the key grant message from the first measurement party, the method further includes: The second metric stores the second EK.
25. An information interaction method, characterized in that: include: The key management network element receives a key generation message from the verification party, wherein the key generation message includes an identifier of the first measurement party, an identifier of the second measurement party, and a first parameter, and the key generation message is used to trigger generation of a second endorsement key EK of the second measurement party; The key management network element generates the second EK according to the first parameter and the first EK corresponding to the identifier of the first measurement party.
26. The method according to claim 25, characterized in that Before the key management network element generates the second EK according to the first parameter and the first EK corresponding to the identifier of the first measurement party, the method further includes: The key management network element determines the first EK corresponding to the identifier of the first measurement party according to the corresponding relationship between the identifier of the first measurement party and the first EK.
27. The method according to claim 25 or 26, characterized in that The key management network element generates the second EK according to the first parameter and the first EK corresponding to the identifier of the first measurement party, including: The key management network element takes the first parameter and the first EK corresponding to the identifier of the first measurement party as input, and executes a first key generation algorithm to generate the second EK.
28. The method according to any one of claims 25 to 27, characterized in that Before the key management network element receives the key generation message from the verification party, the method further includes: The key management network element receives a first key request from the first measurement party, where the first key request is used to request a second parameter, where the second parameter is used to generate a first authentication key AIK of the first measurement party; The key management network element generates a second parameter, and generates a first AIK of the first measurement party according to the second parameter and a first endorsement key EK of the first measurement party; The key management network element sends a first key response to the first measurement party, where the first key response includes the second parameter.
29. The method according to claim 28, characterized in that The generating the first AIK of the first measurement party according to the second parameter and the first endorsement key EK of the first measurement party includes: Taking the second parameter and the first endorsement key EK of the first measuring party as input, a second key generation algorithm is executed to generate a first AIK of the first measuring party.
30. The method according to claim 28 or 29, characterized in that After the key management network element sends the first key response to the first measurement party, the method further includes: The key management network element receives a key acquisition message from the verifier, where the key acquisition message includes an identifier of the first measurement party, and the key acquisition message is used to acquire a first AIK of the first measurement party; The key management network element sends a key response message to the verifier, where the key response message includes the first AIK of the first measuring party.
31. The method according to any one of claims 25 to 27, characterized in that Before the key management network element receives the key generation message from the verification party, the method further includes: The key management network element receives a second key request from the verification party, where the second key request includes an identifier of the first measurement party and a second parameter, and the second key request is used to request to obtain a first authentication key AIK of the first measurement party; The key management network element generates a first AIK of the first measurement party according to the second parameter and a first endorsement key EK corresponding to the identifier of the first measurement party; The key management network element sends a second key response to the authenticator, where the second key response includes the first AIK.
32. The method according to any one of claims 25 to 27, characterized in that Before the key management network element receives the key generation message from the verification party, the method further includes: The key management network element receives a second key request from the verification party, where the second key request includes an identifier of the first measurement party, and the second key request is used to request to obtain a first authentication key AIK of the first measurement party; The key management network element generates a second parameter, and generates a first AIK of the first measurement party according to the second parameter and a first endorsement key EK corresponding to the identifier of the first measurement party; The key management network element sends a second key response to the verifier, where the second key response includes the first AIK and the second parameter.
33. The method according to any one of claims 25 to 32, characterized in that The first EK is pre-configured.
34. A communication device, characterized in that: Comprising units or modules for executing the method according to any one of claims 1 to 33.
35. A readable storage medium, characterized in that: The readable storage medium stores program instructions, and when the program instructions are executed on a communication device, the communication device executes the method according to any one of claims 1 to 33.
36. A communication system, characterized in that: include: A first measurement party for executing the method described in any one of claims 1 to 10, a verification party for executing the method described in any one of claims 11 to 20, a second measurement party for executing the method described in any one of claims 21 to 24, and a key management network element for executing the method described in any one of claims 25 to 33.