WO2023130958A1 - 集成可信度量的通信方法和装置 - Google Patents

集成可信度量的通信方法和装置 Download PDF

Info

Publication number
WO2023130958A1
WO2023130958A1 PCT/CN2022/140545 CN2022140545W WO2023130958A1 WO 2023130958 A1 WO2023130958 A1 WO 2023130958A1 CN 2022140545 W CN2022140545 W CN 2022140545W WO 2023130958 A1 WO2023130958 A1 WO 2023130958A1
Authority
WO
WIPO (PCT)
Prior art keywords
network element
field
information
data packet
trusted
Prior art date
Application number
PCT/CN2022/140545
Other languages
English (en)
French (fr)
Inventor
王东晖
刘斐
陈利群
帕蒂潘洛格纳森
牛顿克里斯托弗·J·P
李云鹏
Original Assignee
华为技术有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 华为技术有限公司 filed Critical 华为技术有限公司
Publication of WO2023130958A1 publication Critical patent/WO2023130958A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/10Connection setup

Definitions

  • the present application relates to the communication field, and more specifically, to a communication method and device for integrating credibility metrics.
  • IPsec Internet Protocol Security
  • IPsec Internet Protocol Security
  • the present application provides a communication method and device integrating credibility measurement, which is used for communication subjects to perform credibility measurement while establishing a communication channel, which can improve the security of communication equipment and communication process.
  • a communication method for integrating trustworthiness metrics is provided, and the method may be executed by a first network element, or may also be executed by a chip or a circuit used for the first network element, which is not limited in this application .
  • the execution subject is the first network element as an example.
  • the method includes: the first network element sends a first data packet, the first data packet includes first request information, and the first request information is used to request to verify whether the second network element is credible; the first network element The element receives a second data packet, where the second data packet includes first response information, and the first response information is used to verify whether the second network element is trustworthy.
  • remote attestation is deployed during the communication process between the first network element and the second network element, that is, the first network element initiates a verification request to the second network element, triggering the second network element to perform Credibility measurement and response, the first network element verifies the trust status of the second network element according to the response information of the second network element, and can perform trustworthiness in the process of establishing communication between the first network element and the second network element
  • the measurement is beneficial to improving the security of the communication process between the first network element and the second network element, and improving the security of the first network element and the second network element.
  • the first request information includes a first field, the first field is a first flag, and the first flag is used to trigger generation of the First response message.
  • only the first flag bit may be included in the first data packet, and the first challenge value may not be included.
  • the second network element receives the first data packet including the first flag bit, it generates the first A response message.
  • the first network element does not need to generate or multiplex the challenge value for the second network element to generate the first response information, which can save resource overhead.
  • the first flag bit is used to identify that the first request information includes a first challenge value, and the first challenge value is used to generate the first response information .
  • the first data packet may include both the first flag bit and the first challenge value, and the first flag bit may be used to identify that the first data packet includes the first challenge value.
  • a challenge value triggers the second network element to generate the first response information.
  • the information related to the trusted measurement can be included in the data packet, and the trusted verification of the second network element can be carried out in the process of establishing communication, so as to improve the security of the communication process between the first network element and the second network element, and further improve the security of the second network element. Security of a network element and a second network element.
  • the first request information includes a second field
  • the second field includes the first challenge value
  • the first challenge value is used for the The second network element generates the first response information.
  • the first request information may include the first challenge value, which can be used for the second network element when the first network element and the second network element do not pre-agreed and store the challenge value.
  • the element generates the first response information, which is used by the first network element to perform trusted verification on the second network element, improving the security of the communication process between the first network element and the second network element, and further improving the communication between the first network element and the second network element. Second, the security of network elements.
  • the first challenge value is any one of a first random number, a second random number, a time stamp, and a value in a promise field.
  • the first random number is a random number provided by a trusted third party;
  • the second random number is a random number generated by the first network element to verify whether the second network element is credible;
  • the timestamp is the first A trusted clock trusted by both the first network element and the second network element, such as clock information generated by the clock endorsed by the endorser;
  • the value of the agreed field is any X-th to Y-th bit data in protocols such as the IPsec protocol.
  • the first network element can reuse the first random number, the timestamp or the value of the agreed field as the challenge value, and there is no need to generate a random number as the challenge value in order to measure the credibility of the second network element.
  • the resource overhead can be saved without adding a new field to store the challenge value, the structure of the first data packet can be simplified, and it is convenient for the second network element to analyze the first data packet, thereby improving the efficiency of its response.
  • the value of the agreed field is the sequence number of the first data packet.
  • the first network element can reuse the serial number of the first data packet as the first challenge value, and the agreed field is the serial number field, which can save resource overhead and does not need to add new fields to store
  • the challenge value can simplify the structure of the first data packet, which is convenient for the second network element to parse the first data packet, thereby improving its response efficiency.
  • the first network element can select different types of challenge values according to actual needs, and use them for the second network element to generate the first response information, which can improve the flexibility of the first network element to initiate trusted verification.
  • the first request information includes a third field
  • the third field includes a length of the first challenge value
  • the first challenge value may only occupy part of the second field, and the third field is used to store the length information of the challenge value, which can facilitate the second network Meta-reading the specific field occupied by the challenge value in the second field saves reading time and resource overhead.
  • the first response information includes a fourth field, the fourth field is a second flag bit, and the second flag bit is used to identify the first
  • the second data packet includes certification information or a certification result, the certification information is generated by the first network element according to the first challenge value, and the certification result includes a result that the second network element is proved to be credible.
  • the second flag bit is included in the data packet, which can facilitate the first network element to know that the second data packet includes valid information for verifying whether the second network element is trustworthy, so as to read the
  • the first response information is used to verify the trusted state of the second network element according to the first response information, so as to prevent problems such as packet loss.
  • the first response information includes a fifth field
  • the fifth field includes the certification information or the certification result.
  • the certification information may be included in the second data packet, and the certification information of the second network element can be verified during the process of establishing communication between the first network element and the second network element, thereby verifying the second network element Whether the network element is trustworthy, improve the security of the communication process between the first network element and the second network element, and improve the security of the first network element and the second network element; or, the second data packet may also include The proof result, the proof result can be the result of verifying the credibility of the second network element by other verifiers, and send it to the second network element for the second network element to show to subsequent verifiers such as the first network element, the first network element The element does not need to verify the certification information, but only needs to check the certification result to confirm the trusted status of the second network element, which can save resource overhead.
  • the certification result includes one or more of identity information, trusted content, and freshness
  • the identity information is used to indicate that the second The identity of the verifier who is trusted by the network element
  • the trusted content is used to indicate the content that the second network element is verified to be credible
  • the freshness is used to indicate the time when the second network element is verified to be credible .
  • the second network element may store the certification result of other verifiers verifying its trusted status, and send the certification result when receiving the first data packet from the first network element , without repeatedly generating proof information, and the first network element does not need to perform repeated verification processes, thereby saving resource overhead.
  • the first response information includes proof information
  • the proof information includes a reference and a measurement log
  • the reference includes a summary of the measurement log
  • the measurement log includes Information about the process of credible measurement performed by the terminal device.
  • the summary of the measurement log is obtained by performing hash calculation on the measurement log, which can be used for the integrity verification of the measurement log by the first network element. This is beneficial to improving the security of the communication process and improving the security of network elements.
  • the certification information includes a metric value
  • the metric value is trustworthy state information of the second network element.
  • the metric value is obtained by computing the metric log on the trusted computing platform of the second network element, and can be used by the first network element to Verification of the measurement log, judging the validity of the measurement log in the certification information, thereby improving the security of the communication process between the first network element and the second network element, and improving the security of the first network element and the second network element sex.
  • the certification information includes a trusted signature, where the trusted signature is a signature of the second network element on the metric value.
  • the trusted signature in the certification information, it can be used for the first network element to verify the trusted signature according to the corresponding challenge value, that is, the first challenge value, and confirm that the trusted
  • the letter signature is generated by the second network element according to the first challenge value, thereby verifying the trusted state of the second network element and improving the security of the communication process between the first network element and the second network element, And improve the security of the first network element and the second network element.
  • the fifth field includes a second challenge value
  • the second challenge value is used by the first network element to generate the second response information
  • the first The second response information is used to verify whether the first network element is authentic.
  • the second network element when the second network element, as the verified party, generates the first response information, it can also serve as the verification direction to initiate a verification request to the first network element, requesting to verify whether the first network element is credible, and to perform two-way verification , further improving communication security between the first network element and the second network element, and improving security between the first network element and the second network element.
  • the second challenge value is any one of a third random number, a fourth random number, a timestamp, and a value in the agreed field
  • the third The random number is a random number provided by a trusted third party
  • the fourth random number is a random number generated by the second network element to verify whether the first network element is trustworthy.
  • the second network element can reuse the third random number, the timestamp or the value of the agreed field as the challenge value, without generating a challenge value for credible measurement, which can save resource overhead, and does not require Adding a new field to store the challenge value can simplify the structure of the second data packet, facilitate the analysis of the second data packet by the first network element, and improve the efficiency of its response.
  • the second flag bit is further used to trigger the first network element to generate the second response information.
  • the first network element and the second network element may pre-agreed on the second challenge value and store it in the second network element, and when the second network element needs to initiate a verification request to the first network element, When requesting to verify whether the first network element is authentic, the second network element does not need to generate a challenge value or multiplex the challenge value, but the second flag bit triggers the first network element to generate the second response information.
  • the first response information includes a sixth field, where the sixth field is used to indicate the length of the certification information or the certification result.
  • the certification information may only occupy part of the fifth field, and the sixth field is used to store the certification information or the length information of the certification result, which can facilitate the first
  • the network element reads the specific field occupied by the certification information or the certification result in the fifth field, saving reading time and resource overhead.
  • a communication method for integrating credibility metrics is provided, and the method may be executed by a second network element, or may also be executed by a chip or a circuit used for the second network element, which is not limited in this application .
  • the execution subject is the second network element as an example.
  • the method includes: a second network element receives a first data packet, the first data packet includes first request information, and the first request information is used to request to verify whether the second network element is credible; the second network element The element sends a second data packet, where the second data packet includes first response information, and the first response information is used to verify whether the second network element is trustworthy.
  • remote attestation is deployed during the communication process between the first network element and the first network element, that is, the first network element initiates a verification request to the second network element, triggering the second network element to perform Credibility measurement and response, the first network element verifies the trust status of the second network element according to the response information of the second network element, and can perform trustworthiness in the process of establishing communication between the first network element and the second network element
  • the measurement is beneficial to improving the security of the communication process between the first network element and the second network element, and improving the security of the first network element and the second network element.
  • the first request information includes a first field
  • the first field is a first flag
  • the first flag is used to trigger the first
  • the second network element generates the first response information.
  • the first challenge value can be pre-agreed by the first network element and the second network element, and stored in the second network element, and one or more bits in the reserved field of the data packet header Set to 1 as the first flag, and the first flag directly triggers the second network element to generate the first response information. That is, only the first flag bit may be included in the first data packet, and the first challenge value may not be included, and when the second network element receives the first data packet including the first flag bit, the first response information is generated. The first network element does not need to generate or multiplex the challenge value for the second network element to generate the first response information, which can save resource overhead.
  • the first flag bit is used to identify that the first request information includes a first challenge value, and the first challenge value is used to generate the first response information .
  • the first data packet may include both the first flag bit and the first challenge value, and the first flag bit may be used to identify that the first data packet includes the first challenge value.
  • a challenge value triggers the second network element to generate the first response information.
  • the information related to the trusted measurement can be included in the data packet, and the trusted verification of the second network element can be carried out in the process of establishing communication, so as to improve the security of the communication process between the first network element and the second network element, and further improve the security of the second network element. Security of a network element and a second network element.
  • the first request information includes a second field
  • the second field includes the first challenge value
  • the first challenge value is used for the The second network element generates the first response information.
  • the first request information may include the first challenge value, which can be used for the second network element when the first network element and the second network element do not pre-agreed and store the challenge value.
  • the element generates the first response information, which is used by the first network element to perform trusted verification on the second network element, improving the security of the communication process between the first network element and the second network element, and further improving the communication between the first network element and the second network element. Second, the security of network elements.
  • the first challenge value is any one of a first random number, a second random number, a time stamp, and a value in a promise field.
  • the first random number is a random number provided by a trusted third party;
  • the second random number is a random number generated by the first network element to verify whether the second network element is credible;
  • the timestamp It is a trusted clock trusted by both the first network element and the second network element, such as the clock information generated by the clock endorsed by the endorser;
  • the value of the agreed field is any X to Y bit data in the IPsec protocol and other protocols .
  • the first network element reuses the first random number, the timestamp or the value of the agreed field as the challenge value, and there is no need to generate a random number as the challenge value in order to measure the credibility of the second network element.
  • the resource overhead is saved without adding a new field to store the challenge value, the structure of the first data packet can be simplified, and it is convenient for the second network element to parse the first data packet, thereby improving the efficiency of its response.
  • the value of the agreed field is the sequence number of the first data packet.
  • the first network element can reuse the serial number of the first data packet as the first challenge value, and the agreed field is the serial number field, which can save resource overhead and does not need to add new fields to store
  • the challenge value can simplify the structure of the first data packet, which is convenient for the second network element to parse the first data packet, thereby improving its response efficiency.
  • the first network element can select different types of challenge values according to actual needs, and use them for the second network element to generate the first response information, which can improve the flexibility of the first network element to initiate trusted verification.
  • the first request information includes a third field
  • the third field includes a length of the first challenge value
  • the first challenge value may only occupy part of the second field, and the third field is used to store the length information of the challenge value, which can facilitate the second network Meta-reading the specific field occupied by the challenge value in the second field saves reading time and resource overhead.
  • the first response information includes a fourth field, the fourth field is a second flag bit, and the second flag bit is used to identify the first
  • the second data packet includes certification information or a certification result, the certification information is generated by the first network element according to the first challenge value, and the certification result includes a result that the second network element is proved to be credible.
  • the second flag bit is included in the data packet, which can facilitate the first network element to know that the second data packet includes valid information for verifying whether the second network element is trustworthy, so as to read the
  • the first response information is used to verify the trusted state of the second network element according to the first response information, so as to prevent problems such as packet loss.
  • the first response information includes a fifth field
  • the fifth field includes the certification information or the certification result.
  • the certification information may be included in the second data packet, and the certification information of the second network element can be verified during the process of establishing communication between the first network element and the second network element, thereby verifying the second network element Whether the network element is trustworthy, improve the security of the communication process between the first network element and the second network element, and improve the security of the first network element and the second network element; or, the second data packet may also include The proof result, the proof result can be the result of verifying the credibility of the second network element by other verifiers, and send it to the second network element for the second network element to show to subsequent verifiers such as the first network element, the first network element The element does not need to verify the certification information, but only needs to check the certification result to confirm the trusted status of the second network element, which can save resource overhead.
  • the fifth field includes a certification result
  • the certification result includes one or more of identity information, trusted content, and freshness
  • the identity is used to indicate the identity of the verifier who verifies the trustworthiness of the second network element
  • the trusted content is used to indicate the content that the second network element is verified to be credible
  • the freshness is used to indicate the second network element The time when the second network element is verified as credible.
  • the second network element may store the certification result of other verifiers verifying its trusted status, and send the certification result when receiving the first data packet from the first network element , without repeatedly generating proof information, and the first network element does not need to perform repeated verification processes, thereby saving resource overhead.
  • the first response information includes proof information
  • the proof information includes a reference and a measurement log
  • the reference includes a summary of the measurement log
  • the measurement log includes Information about the process of credible measurement performed by the terminal device.
  • the summary of the measurement log is obtained by performing hash calculation on the measurement log, which can be used for the integrity verification of the measurement log by the first network element. This is beneficial to improving the security of the communication process and improving the security of network elements.
  • the certification information includes a metric value, where the metric value is trustworthy state information of the second network element.
  • the metric value is obtained by computing the metric log on the trusted computing platform of the second network element, and can be used by the first network element to Verification of the measurement log, judging the validity of the measurement log in the certification information, thereby improving the security of the communication process between the first network element and the second network element, and improving the security of the first network element and the second network element sex.
  • the certification information includes a trusted signature, where the trusted signature is a signature of the second network element on the metric value.
  • the trusted signature in the certification information, it can be used for the first network element to verify the trusted signature according to the corresponding challenge value, that is, the first challenge value, and confirm that the trusted
  • the letter signature is generated by the second network element according to the first challenge value, thereby verifying the trusted state of the second network element and improving the security of the communication process between the first network element and the second network element, And improve the security of the first network element and the second network element.
  • the fifth field includes a second challenge value
  • the second challenge value is used by the first network element to generate the second response information
  • the first network element The second response information is used to verify whether the first network element is authentic.
  • the second network element when the second network element, as the verified party, generates the first response information, it can also serve as the verification direction to initiate a verification request to the first network element, requesting to verify whether the first network element is credible, and to perform two-way verification , further improving communication security between the first network element and the second network element, and improving security between the first network element and the second network element.
  • the second challenge value is any one of a third random number, a fourth random number, a timestamp, and a value in the agreed field, and the third The random number is a random number provided by a trusted third party, and the fourth random number is a random number generated by the second network element to verify whether the first network element is trustworthy.
  • the second network element can reuse the third random number, the timestamp or the value of the agreed field as the challenge value, without generating a challenge value for credible measurement, which can save resource overhead, and does not require Adding a new field to store the challenge value can simplify the structure of the second data packet, facilitate the analysis of the second data packet by the first network element, and improve the efficiency of its response.
  • the second flag bit is further used to trigger the first network element to generate the second response information.
  • the first network element and the second network element may pre-agreed on the second challenge value and store it in the second network element, and when the second network element needs to initiate a verification request to the first network element, When requesting to verify whether the first network element is authentic, the second network element does not need to generate a challenge value or multiplex the challenge value, but the second flag bit triggers the first network element to generate the second response information.
  • the first response information includes a sixth field, where the sixth field is used to indicate the length of the certification information or the certification result.
  • the certification information may only occupy part of the fifth field, and the sixth field is used to store the certification information or the length information of the certification result, which can facilitate the first
  • the network element reads the specific field occupied by the certification information or the certification result in the fifth field, saving reading time and resource overhead.
  • a communication device including: a sending unit, configured to send a first data packet, the first data packet includes first request information, and the first request information is used to request to verify whether the second network element Credible; a receiving unit configured to receive a second data packet, where the second data packet includes response information, and the response information is used to verify whether the second network element is credible.
  • the first request information includes a first field, the first field is a first flag, and the first flag is used to trigger the first
  • the second network element generates the first response information.
  • the first flag bit is used to identify that the first request information includes a first challenge value, and the first challenge value is used to generate the first Response message.
  • the first request information includes a second field
  • the second field includes the first challenge value
  • the first challenge value is any one of a first random number, a second random number, a time stamp, and a value in a promise field.
  • the value of the agreed field is the sequence number of the first data packet.
  • the first request information includes a third field
  • the third field includes a length of the first challenge value
  • the first response information includes a fourth field, the fourth field is a second flag bit, and the second flag bit is used to identify the first
  • the second data packet includes certification information or a certification result, the certification information is generated by the second network element according to the first challenge value, and the certification result includes a result that the second network element is proved to be credible.
  • the certification result includes one or more of identity information, trusted content, and freshness
  • the identity information is used to indicate that the second The identity of the verifier who is trusted by the network element
  • the trusted content is used to indicate the content that the second network element is verified to be credible
  • the freshness is used to indicate the time when the second network element is verified to be credible .
  • the first response information includes a fifth field
  • the fifth field includes the certification information or the certification result.
  • the fifth field includes a second challenge value
  • the second challenge value is used for the first network element to generate the second response information
  • the first network element The second response information is used to verify whether the first network element is authentic.
  • the second challenge value is any one of a third random number, a fourth random number, a time stamp, and a value in a promise field.
  • the value of the agreed field is the sequence number of the second data packet.
  • the second flag bit is further used to trigger the first network element to generate the second response information.
  • the second flag bit is further used to identify that the first response information includes the second challenge value.
  • the first response information includes a sixth field, where the sixth field is used to indicate the length of the certification information or the certification result.
  • a communication device including: a receiving unit, configured to receive a first data packet, the first data packet includes first request information, and the first request information is used to request verification of the second network Whether the element is credible; the sending unit is further configured to send a second data packet, the second data packet includes first response information, and the first response information is used to verify whether the second network element is credible.
  • the first request information includes a first field
  • the first field is a first flag
  • the first flag is used to trigger the first
  • the second network element generates the first response information.
  • the first flag bit is used to identify that the first request information includes a first challenge value, and the first challenge value is used to generate the first Response message.
  • the request information includes a second field, and the second field includes the first challenge value.
  • the first challenge value is any one of a first random number, a second random number, a time stamp, and a value in a promise field.
  • the value of the agreed field is the sequence number of the first data packet.
  • the request information includes a third field
  • the third field includes a length of the first challenge value
  • the response information includes a fourth field, the fourth field is a second flag bit, and the second flag bit is used to identify the second data
  • the packet includes the proof information or proof result, the proof information is generated by the second network element according to the first challenge value, and the proof result includes a result that the second network element is proved to be credible.
  • the response information includes a fifth field, where the fifth field includes the certification information or the certification result.
  • the certification result includes one or more of identity information, trusted content, and freshness
  • the identity information is used to indicate that the second The identity of the verifier who is trusted by the network element
  • the trusted content is used to indicate the content that the second network element is verified to be credible
  • the freshness is used to indicate the time when the second network element is verified to be credible .
  • the fifth field includes a second challenge value
  • the second challenge value is used for the first network element to generate the second response information
  • the first network element The second response information is used by the second network element to verify whether the first network element is trustworthy.
  • the second challenge value is any one of a third random number, a fourth random number, a time stamp, and a value in a promise field.
  • the value of the agreed field is the sequence number of the second data packet.
  • the second flag bit is further used to trigger the first network element to generate the second response information.
  • the second flag bit is further used to identify that the first response information includes the second challenge value.
  • the response information includes a sixth field, and the sixth field is used to indicate the length of the certification information or the certification result.
  • a communication system in a fifth aspect, includes the device in the above-mentioned first aspect or any possible implementation manner of the first aspect and the second aspect or the device in any possible implementation manner of the second aspect. device.
  • a computer program product comprising: a computer program or a set of instructions, when the computer program or a set of instructions is executed by a computer, the first aspect or any possible implementation thereof The method in the method is executed.
  • a computer program product comprising: a computer program or a set of instructions, when the computer program or a set of instructions is run by a computer, the second aspect or any possible implementation thereof The method in the method is executed.
  • a computer-readable medium for storing a computer program, where the computer program includes instructions for executing the method in the above-mentioned first aspect or any possible implementation thereof.
  • a computer-readable medium for storing a computer program, where the computer program includes instructions for executing the method in the above-mentioned second aspect or any possible implementation thereof.
  • a chip including a processor, configured to call and execute instructions stored in the memory from the memory, so that the communication device installed with the chip executes the above first aspect or any possible implementation thereof methods in methods.
  • processor and the memory are integrated together;
  • the foregoing memory is located outside the communication device.
  • the communication device further includes a communication interface, which is used for the communication device to communicate with other devices, such as sending or receiving data and/or signals.
  • the communication interface may be a transceiver, a circuit, a bus, a module or other types of communication interfaces.
  • a chip including a processor, configured to call and execute instructions stored in the memory from the memory, so that the communication device installed with the chip executes the above-mentioned second aspect or any possible method in the implementation.
  • processor and the memory are integrated together;
  • the foregoing memory is located outside the communication device.
  • the communication device further includes a communication interface, which is used for the communication device to communicate with other devices, such as sending or receiving data and/or signals.
  • the communication interface may be a transceiver, a circuit, a bus, a module or other types of communication interfaces.
  • a communication device in a twelfth aspect, includes at least one processor, and the at least one processor is used to execute the program or instruction to enable the communication device to perform any of the above first aspect or the first aspect. method in a possible implementation.
  • a communication device in a thirteenth aspect, includes at least one processor, and the at least one processor is used to execute the program or instruction so that the communication device performs any of the above second aspect or the second aspect. method in a possible implementation.
  • Figure 1 is a schematic diagram of the architecture of the IPsec protocol.
  • Fig. 2 is an interactive schematic diagram of a communication method integrating credibility metrics provided by an embodiment of the present application.
  • Fig. 3 is an interactive schematic diagram of another communication method integrating credibility metrics provided by an embodiment of the present application.
  • FIG. 4 is a schematic structural diagram of a header of an AH protocol data packet applicable to the embodiment of the present application.
  • FIG. 5 is a schematic structural diagram of a header of an AH protocol data packet provided by an embodiment of the present application.
  • FIG. 6 is a schematic structural diagram of another AH protocol data packet header provided by the embodiment of the present application.
  • FIG. 7 is a schematic structural diagram of another AH protocol data packet header provided by the embodiment of the present application.
  • FIG. 8 is a schematic structural diagram of another AH protocol data packet header provided by the embodiment of the present application.
  • FIG. 9 is a schematic structural diagram of another AH protocol data packet header provided by the embodiment of the present application.
  • FIG. 10 is an interactive schematic diagram of an AH protocol communication method provided by an embodiment of the present application.
  • FIG. 11 is a schematic structural diagram of a header of an IKE protocol data packet applicable to the embodiment of the application.
  • FIG. 12 is a schematic structural diagram of a header of an IKE protocol data packet provided by an embodiment of the present application.
  • FIG. 13 is a schematic structural diagram of a header of an ESP protocol data packet applicable to the embodiment of the present application.
  • FIG. 14 is an interactive schematic diagram of an IKE protocol communication method provided by an embodiment of the present application.
  • FIG. 15 is a schematic structural diagram of an IP data packet header applicable to the embodiment of the present application.
  • Fig. 16 is a block diagram of a device provided by an embodiment of the present application.
  • Fig. 17 is a block diagram of another device provided by the embodiment of the present application.
  • GSM global system of mobile communication
  • CDMA code division multiple access
  • WCDMA broadband code division multiple access
  • general packet radio service general packet radio service, GPRS
  • long term evolution long term evolution, LTE
  • LTE frequency division duplex frequency division duplex
  • FDD frequency division duplex
  • TDD Time Division Duplex
  • UMTS Universal Mobile Telecommunications System
  • WiMAX Worldwide Interoperability for Microwave Access (WiMAX) Communication System
  • Fifth Generation (5G) system the future sixth generation system (6th generation, 6G) and other communication systems, etc.
  • the network element in the embodiment of the present application may be a device for communicating with a terminal device, and the network element may be a global system of mobile communication (GSM) system or a code division multiple access (CDMA)
  • GSM global system of mobile communication
  • CDMA code division multiple access
  • the base transceiver station (BTS) in the system can also be the base station (nodeB, NB) in the wideband code division multiple access (WCDMA) system, or the evolved base station (evolutionary base station) in the LTE system.
  • NB base station
  • WCDMA wideband code division multiple access
  • evolutionary base station evolved base station
  • nodeB eNB or eNodeB
  • it can also be a wireless controller in the cloud radio access network (cloud radio access network, CRAN) scenario
  • the network device can be a relay station, access point, vehicle-mounted device, wearable device, 5G
  • the embodiments of the present application are not limited to network equipment in communication networks such as network and future 6G network, or network equipment or functional units in public land mobile network (public land mobile network, PLMN).
  • "for indicating” may include both for direct indicating and for indirect indicating.
  • the indication information When describing a certain indication information for indicating A, it may include that the indication information directly indicates A or indirectly indicates A, but it does not mean that A must be carried in the indication information.
  • nouns as for the number of nouns, unless otherwise specified, it means “singular noun or plural noun", that is, “one or more”. “At least one” refers to one or more, “multiple” refers to two or more, and “multiple” in “one or more” refers to two or more. "And/or” describes the association relationship of associated objects, indicating that there may be three types of relationships, for example, A and/or B, which can mean: A exists alone, A and B exist simultaneously, and B exists alone, where A, B can be singular or plural. The character “/" generally indicates that the contextual objects are an "or” relationship. For example, A/B means: A or B.
  • At least one of the following or similar expressions refer to any combination of these items, including any combination of single or plural items.
  • at least one item (piece) of a, b, or c means: a, b, c, a and b, a and c, b and c, or a and b and c, wherein a, b, c can be It can be single or multiple.
  • Trusted computing (trusted computing, TC): It is a technology designed to make computers always run in the expected way. "Trusted” emphasizes that the behavior results are predictable and controllable. Trusted computing is enforced by computer hardware and software. The trusted technology of computing systems starts with a root of trust and develops to trust in hardware platforms, operating systems, and applications. The strength of management and authentication at each layer corresponds to the credibility of each layer. Further, trust will be extended to the complete computer system, and protective measures will be adopted to ensure the integrity of computer resources and expected computer behavior, thereby enhancing the trustworthiness of computer systems.
  • TEE general trusted execution environment
  • Remote attestation (remote attestation, RA) is one of the key technologies in the overall trusted computing solution, which is used to judge the trustworthiness status of the device. Remote attestation allows a user or others to detect changes to that user's computer, which prevents sending private information or important commands to unsecured or compromised computers. The remote attestation mechanism generates a certificate through the hardware, stating which software is running. The user can send this certificate to a remote party to show that his computer has not been tampered with. Remote attestation is often combined with public key cryptography to ensure that sent messages can only be read by the program requesting the attestation, not other eavesdroppers. Through these restrictions, the purpose of enhancing the credibility of the terminal and strengthening the security of the system is achieved. At present, the remote proof technology mainly adopts the following schemes:
  • Privacy certificate authority (privacy certificate authority, PCA): the verifier (verifier) (also called challenger) sends a challenge to the trusted computing platform (trusted platform module, TPM), that is, requests one or more platforms
  • the content of the status register platform configuration register, PCR
  • the platform collects and stores measurement log files, and the TPM uses the identity key to sign the content of the PCR
  • the platform sends a message requesting the platform certificate to the certificate authority (CA), and then sends
  • the platform certificate, storage measurement log (event_log), and signed PCR are sent to the verifier; the verifier proves the request, that is, recalculates the storage measurement log and compares it with the received PCR value, and verifies the platform certificate and signature.
  • TPM selects a secret information, and obtains the DAA certificate issued by the DAA issuer (issuer) for the secret information through a secure "zero-knowledge proof”; the verifier passes the "zero-knowledge proof” Proof of Knowledge” proves that the TPM has a valid DAA certificate.
  • DAA Direct anonymous attestation
  • Intel software guard extensions Intel software guard extensions, Intel SGX
  • SGX technology allows developers to divide applications into CPU-enhanced enclaves or executable protected areas in memory, even if It also improves security in compromised platforms.
  • the scheme of Intel SGX is roughly as follows: the certified enclave obtains the current information to generate a report structure, uses the report key of the quoted enclave (quote enclave) to generate a tag, and sends it to the quoted enclave; the quoted enclave verifies whether the certified enclave is in On the same platform (like the same device), the received report structure is encapsulated into a quote structure and signed with a signing key; the target enclave verifies that the quote (quote) was generated by a reliable Intel processor.
  • IPsec Internet Protocol Security Protocol
  • IP Internet Engineering Task Force
  • IKE protocol Internet key exchange (internet key exchange, IKE) protocol: a hybrid protocol that implements Oakley key exchange and secure key exchange mechanism (SKEME). Both Oakley and SKEME define a method for exchanging keys, which includes the structure of the payload, the information payload transmitted, the steps in which the key is processed, and how the key is used.
  • IKE Internet key exchange
  • SKEME secure key exchange mechanism
  • Message authentication header (authentication header, AH) protocol: a protocol in the IPsec architecture, which is used to provide connectionless integrity and data source authentication for Internet protocol data (internet protocol, IP), and provide protection to avoid replay situations.
  • IP Internet protocol
  • Encapsulating security payload (ESP) protocol a protocol in the IPsec architecture. This protocol is used in transport mode and tunnel mode, it adopts encryption and verification mechanism, and provides data source verification, data integrity, anti-replay and confidentiality security services for IP data packets.
  • IPsec ESP provides confidentiality and integrity by encrypting the data to be protected and placing the encrypted data in the data section of IPsec ESP. According to user security requirements, this mechanism can be used to encrypt a segment of the transport layer, such as: transmission control protocol (transmission control protocol, TCP), user data packet protocol (user datagram protocol, UDP), Internet control message protocol (internet control message protocol, ICMP), Internet group management protocol (internet group management protocol, IGMP), can also be used to encrypt the entire IP data packet.
  • transmission control protocol transmission control protocol
  • user data packet protocol user datagram protocol
  • UDP Internet control message protocol
  • ICMP Internet control message protocol
  • IGMP Internet group management protocol
  • SA Security Association
  • Security association database used for already established SA-related information.
  • Security policy configured by the user, defines a number of policies, explaining what kind of processing should be done for each IP data flow, whether to transparently transmit, discard, or perform IPSec encryption and decryption.
  • the security policy database (security policy database, SPD) is used to store the SP of the node. It is usually an ordered structure, and the access control list is used to describe the characteristics of the data flow.
  • SPD security policy database
  • the SPD is first looked up to determine how to proceed. There are 3 possible processing methods: drop, not use IPSec and use IPSec. When IPSec needs to be used, the corresponding information is searched in the SAD.
  • SPI Security parameters index
  • FIG. 1 is a schematic diagram of the architecture of the IPsec protocol.
  • the security policy SP and security association SA are stored by the SPD and SAD of node A and node B respectively.
  • SA can be regarded as a one-way logical connection built in the network layer.
  • the IKE protocol is used to establish and manage SA. By running the IKE protocol, node A and node B complete the key exchange, and establish two SAs from node A to node B and from node B to node A, so that two-way IPsec communication can be performed between node A and node B .
  • the AH or ESP transport protocol uses the key obtained by IKE to provide services such as connectionless data integrity, anti-replay, data confidentiality, and limited communication traffic confidentiality for the communication between nodes A and B.
  • the peer authorization database (PAD) is used to indicate the authentication method of the peer end, such as presetting, or IKE negotiation, etc.
  • Fig. 2 is an interactive schematic diagram of a communication method integrating credibility metrics provided by an embodiment of the present application.
  • the first network element sends the first data packet, and correspondingly, the second network element receives the first data packet.
  • the first network element sends a first data packet, where the first data packet includes first request information, and the first request information is used to request to verify whether the second network element is authentic.
  • the first network element sends a data packet including the first request information to the second network element, which triggers the second network element to perform credibility measurement and generate first response information, and the first response
  • the information may include certification information or certification results, and the first response information is used by the first network element to verify whether the second network element is trustworthy, so as to improve the security of communication between the first network element and the second network element, and improve Security of the first network element and the second network element.
  • the first request information includes a first field, and the first field is a first flag bit, and the first flag bit is used to trigger the second network element to generate the first A response message.
  • the first flag bit may be located in the header of the first data packet, that is, a part of the reserved field in the header of the first data packet is set to 1 as the flag bit, triggering the second network element to generate the first response message.
  • the first data packet may not include a challenge value (challenge data), and the challenge value may be pre-agreed by the first network element and the second network element and stored in the first network element and/or the second network element, When the second network element receives the first data packet including the flag bit, it is triggered to generate the first response information.
  • the first flag bit may also be used to identify that the first request information includes the first challenge value.
  • the first request information may include a first flag bit and a first challenge value, and the first flag bit is used to identify that the first request information includes the first challenge value, and the first request information includes the first challenge value.
  • a challenge value triggers the second network element to generate the first response information.
  • the first flag bit can also be located in the body of the first data packet, or in other fields with reserved fields.
  • the first flag bit can be located in the next in the reserved field in the payload field.
  • the first request information includes a second field
  • the second field includes a first challenge value
  • the first challenge value is used by the second network element to generate the first response information .
  • the first network element and the second network element may not pre-agreed on the challenge value, and the first network element generates the first challenge value according to actual needs, and stores it in the first data packet, A verification request is initiated to the second network element, and the second network element generates first response information according to the first challenge value.
  • the first challenge value is any one of a first random number, a second random number, a time stamp, and a value in a promise field.
  • the first random number may be a random number provided by a trusted third party, and the trusted third party is a third party trusted by both the first network element and the second network element; the second random number is the first A random number generated by a network element to verify whether the second network element is trustworthy; the timestamp may be clock information, and the clock information may be a trusted clock trusted by both the first network element and the second network element, Such as the clock information generated by the clock endorsed by the endorser, the endorsement proves that the platform is credible, for example, by writing the endorsement key (endorsement key, EK) to identify the unique identity of the platform to prove that the platform is credible etc.; the value of the agreed field may be any X-th to Y-th bit data in any protocol such as the IPsec protocol pre-agreed between the first network element and the second network element.
  • EK endorsement key
  • the value of the agreed field may be the sequence number of the first data packet.
  • the first network element may reuse the first random number, the value of the time stamp or the value of the agreed field including the sequence number of the first data packet as the challenge value, and there is no need to challenge the second network element Generating random numbers as challenge values for reliable measurement can save resource overhead.
  • the first network element can also generate a challenge value, and the challenge value is selected according to actual conditions, which can improve the flexibility of the first network element to initiate trusted verification.
  • the request information includes a third field, where the third field includes a length of the first challenge value.
  • the first challenge value may only occupy part of the second field, and the third field is used to store the length information of the challenge value, which can facilitate the second network Meta-reading the specific field occupied by the challenge value in the second field saves reading time and resource overhead.
  • the first network element receives the second data packet, and correspondingly, the second network element sends the second data packet.
  • the first network element receives the second data packet, where the second data packet includes first response information, and the first response information is used by the first network element to verify whether the second network element is trustworthy.
  • the second network element responds to the request information of the first network element, and the first network element can verify whether it is credible, so as to improve the communication between the first network element and the second network element.
  • the security of the communication process is improved, and the security of the first network element and the second network element is improved.
  • the first response information includes a fourth field, and the fourth field is a second flag bit, and the second flag bit is used to identify that the second data packet includes certification information or A certification result, the certification information is generated by the second network element according to the challenge value, and the certification result includes a result that the second network element is verified as credible.
  • including the second flag bit in the data packet can facilitate the first network element to know that the second data packet includes valid information for credibility measurement, thereby reading the first response information and The trusted state of the second network element is verified according to the first response information to prevent problems such as packet loss.
  • the first response information includes a fifth field
  • the fifth field includes certification information
  • the certification information includes a reference and a measurement log
  • the measurement log is the Information about the process for making feasible measurements, the citation including a summary of the measurement log.
  • the certification information may further include a metric value, where the metric value is trustworthy state information of the second network element.
  • the certification information may further include a trusted signature, where the trusted signature is a signature of the second network element on the metric value.
  • the first network element may verify the trusted signature according to the corresponding challenge value, and confirm that the trusted signature is generated by the second network element according to the challenge value, Therefore, the trusted state of the second network element is verified, the validity of the measurement log is judged according to the measurement, and the integrity of the measurement log is verified according to the summary of the measurement log, which is beneficial to improving the security of the communication process.
  • the fifth field includes a certification result
  • the certification result includes one or more of identity information, trusted content, and freshness
  • the identity information is used to indicate that the The identity of the verifier who is trusted by the second network element
  • the trusted content is used to indicate the content that the second network element is proved to be trusted
  • the freshness is used to indicate that the second network element is proved to be trusted time.
  • the first network element can determine the identity of the verifier who made the proof result through the identity information, and can determine the specific credible content verified by the verifier during the credible proof process through the trusted content, and whether it is applicable to this credible In the letter verification process, the freshness can determine the time when other verifiers made the proof result, and then determine whether the proof result is within the validity period, and judge whether it is necessary to perform credible verification again.
  • the second network element may store the certification result of other verifiers verifying its trusted status, and send the certification result when receiving the first data packet from the first network element , without repeatedly generating proof information, thereby saving resource overhead.
  • the fifth field includes a second challenge value
  • the second challenge value is used by the first network element to generate second response information
  • the second response information is used to verify the first network element Whether a network element is trustworthy.
  • the second response information may include certification information or certification results of the first network element.
  • the second network element as the verified party when the second network element as the verified party generates the response information, it can also serve as the verification direction to initiate a verification request to the first network element, requesting to verify whether the first network element is credible, and perform two-way verification, further
  • the communication security between the first network element and the second network element is improved, and the security of the first network element and the second network element is improved.
  • the second challenge value is any one of a third random number, a fourth random number, a time stamp, and a value in a promise field.
  • the third random number is a random number provided by a trusted third party, and the trusted third party is a third party trusted by both the first network element and the second network element; the fourth random number is that the second network element is A random number generated for verifying whether the first network element is trustworthy.
  • the third random number and the first random number may be the same value, and the third random number and the first random number may also be called trusted random numbers.
  • the second network element can reuse the third random number, the timestamp or the value of the agreed field as the challenge value, without generating a challenge value for credibility measurement, which can save resource overhead.
  • the second challenge value may also be a random number generated by the second network element for credible verification of the first network element.
  • the second flag bit is further used to indicate that the first response information includes the second challenge value.
  • the first response information may include a second challenge value and a second flag bit, and the second flag bit indicates that the first network element A response message includes a second challenge value, and the second challenge value triggers the first network element to generate the second response message, and conducts two-way verification with the first network element, further improving communication security between the first network element and the second network element.
  • the second flag bit is also used to trigger the first network element to generate the second response information.
  • the first response information may include the second flag bit but not the second challenge value, and the second flag The bit triggers the first network element to generate the second response information.
  • the second challenge value may be pre-agreed by the first network element and the second network element and stored in the first network element and/or the second network element.
  • the element receives the verification request from the first network element, it generates the second response information according to the pre-stored challenge value.
  • the first response information includes a sixth field, where the sixth field is used to indicate the length of the proof information or the proof result.
  • the certification information may only occupy part of the fifth field, and the sixth field is used to store the certification information or the length information of the certification result, which can facilitate the first
  • the network element reads the specific field occupied by the certification information or the certification result in the fifth field, saving reading time and resource overhead.
  • Fig. 3 is an interactive schematic diagram of another communication method integrating credibility metrics provided by the present application.
  • the first network element does not need to send the first data packet including the first request information to the second network element
  • the second network element actively generates the first response information
  • the second network element generates first response information.
  • the second network element may actively generate the first response information based on a timing mechanism, a counting mechanism, or an event trigger mechanism, etc., for the first network element to verify the trusted state of the second network element, the The first response information is stored in the second data packet.
  • the second network element triggers the active generation of the first response information based on a timing mechanism, that is, the second network element actively generates the first response information after the timer counts to an agreed time.
  • the second network element triggers the active generation of the first response information based on the counting mechanism, that is, after the counter counts to an agreed value, the second network element actively generates the first response information.
  • the second network element actively generates the first response information based on an event trigger mechanism, that is, when a preset event occurs, the second network element is triggered to actively generate the first response information.
  • an event trigger mechanism that is, when a preset event occurs, the second network element is triggered to actively generate the first response information.
  • the preset When other verifiers send their certification results to the second network element, the second network element is triggered to actively generate the first response information to the first network element.
  • the second network element actively generates the first response message, and there is no need for the first network element to send the first data packet containing the first request information to trigger the terminal device to generate the first response message, which can reduce signaling overhead.
  • the second network element sends the second data packet to the first network element.
  • the second network element may actively send a second data packet to the first network element based on a timing mechanism, a counting mechanism, or an event trigger mechanism, where the second data packet includes the first response information.
  • the first response message includes certification information
  • the certification information is generated by the terminal device according to the first challenge value.
  • the first challenge value may be a trusted random number, a time stamp, or a value of an agreed field.
  • the value of the agreed field may be the sequence number of the first data packet.
  • the first challenge value may be pre-agreed by the second network element and the first network element and stored in the terminal device, and the second network element may be triggered based on the timing mechanism, counting mechanism, etc. according to the challenge value Actively generating the first response message does not require the first network element to send the first data packet to trigger the second network element to generate the first response message, which can reduce signaling overhead.
  • the certification information includes a reference and a measurement log
  • the measurement log is the measurement process information of the trusted computing platform supported by the second network element
  • the reference includes the information of the measurement log Abstract
  • the summary of the measurement log is obtained by performing hash calculation on the measurement log.
  • the certification information may further include a metric value, where the metric value is credible state information of the terminal device.
  • the certification information may further include a trusted signature, where the trusted signature is a signature of the terminal device on the metric value.
  • the certification information may also include the operating status, health, security-related configuration or construction information of the terminal device, hardware, firmware, software, file system, identity of the certification environment, trusted execution environment, and data integrity. sex.
  • the first response message includes a certification result
  • the certification result includes one or more of identity information, trusted content, and freshness.
  • the first network element verifies the first response information of the second network element.
  • the first response information includes certification information
  • the certification information is generated by the second network element according to the first challenge value.
  • the first network element decrypts the trusted signature using the certification public key and the first challenge value, verifies whether the certification information is generated by the second network element, and compares the decrypted metric value with the trusted certification
  • the reference value comparison is used to verify the trusted state of the second network element, and to verify whether the measurement log is valid.
  • the first response information includes a certification result
  • the certification result includes one or more of identity information, trusted content, and freshness.
  • the first network element can determine the identity of the verifier who made the proof result through the identity information, and can determine the specific credible content verified by the verifier during the credible proof process through the trusted content, and whether it is applicable to this credible In the letter verification process, the freshness can determine the time when other verifiers made the proof result, and then determine whether the proof result is within the validity period, and judge whether it is necessary to perform credible verification again.
  • the attestation result may also include one or more of the following information: configuration, executable file, file system, hardware, attestation environment identity, source data, storage visibility.
  • the second network element before the first network element requests to verify whether the second network element is trustworthy, other verifiers have verified whether the second network element is trustworthy, and sent the proof result to the second network element , the second network element can directly send the certification result to the first network element, without repeatedly generating certification information, which can save air interface resources.
  • other verifiers send the proof result to a trusted third party, and the trusted third party stores the proof result, and the trusted third party is trusted by both the first network element and the second network element
  • the trusted third party sends the certification result to the first network element.
  • the first network element directly checks the certification result without verifying the certification information one by one, which can save resource overhead.
  • the relevant information of the credible measurement is added in , so that the communication subject can carry out the credible measurement in the process of establishing the communication channel, thereby improving the security of the communication process and the communication subject.
  • Fig. 4 is the header structure of the AH data packet applicable to this application.
  • the AH header structure mainly includes the following fields:
  • next payload header field (next header) is used to identify the type of the next payload, and its size may be 8 bits. Exemplarily, if its value is 6, then the next payload of the AH header is TCP.
  • the payload length field (payload length) is used to indicate the length of the message header. Its size can be 8 bits, and its value is the length of the entire AH data in units of 32 bits or 4 bytes minus 2.
  • the AH data includes the original AH packet header data and added authentication data.
  • the reserved field is a preset reserved bit of the protocol, which is reserved for future use according to actual needs. In the prior art, its values are all set to 0 when sending, and its size can be 16 bits.
  • the security parameter index field (security parameter index, SPI) is used to distinguish each SA, and its value corresponds to the SA one by one. If the value is 0, it means that there is no SA, and its size can be 32 bits.
  • the sequence number field (sequence number) is used to store the sequence number of the data packet, and its value increases from 1 to ensure the real-time performance of this data packet transmission and prevent the replay attack of the data packet.
  • the sequence number field The size of can be 32 bits.
  • the authentication data field contains an integrity check value (integrity check value, ICV), which can also be called a message authentication code, and is used to verify the identity and integrity of the message.
  • ICV integrity check value
  • ICV is calculated by IP header, AH header and IP payload. After receiving the data packet, the receiving end performs a hash calculation and compares it with this value. If they are equal, it means that the data has integrity.
  • AH provides authentication, integrity and anti-replay for the entire packet (IP header and data payload in the packet).
  • the verifier sends an AH packet to the attester (also referred to as the challenged), and includes request information for credible verification of the verifier in the AH packet, the AH data
  • the structure of the packet header may be the structure described in FIG. 5 to FIG. 9 .
  • FIG. 5 is a schematic diagram of a header structure of an AH data packet provided by an embodiment of the present application. As shown in FIG. 5 , the reserved fields of the header of the AH data packet are multiplexed, and some fields are split from the reserved fields as flag bits.
  • the flag bit is used to trigger the verifier to generate credible response information
  • the credible response information is used by the verifier to verify whether the verifier is credible.
  • the first challenge value may not be included in the packet header and the packet body of the AH data packet, and the first challenge value is used by the verifier to generate credible response information, and the first challenge value may be used by the verifier and the verified
  • the verifier pre-agrees and stores it in the verifier and/or the verifier, and includes a flag bit in the header of the sent AH data packet, and the flag bit triggers the verifier to generate credible response information.
  • the verifier is triggered to generate credible response information.
  • the embodiment of the present application only exemplarily shows that 1 bit or 2 bits are selected as the flag bit, but the number of bits occupied by the flag bit is not limited in this application.
  • the flag bit is used to identify that the AH data packet includes a first challenge value, and the challenge value is used by the verifier to generate credible response information.
  • the bit is 01, it means that the AH data packet includes the first challenge value.
  • the first challenge value may be stored in a header of the AH data packet.
  • a trusted data field is added after the authentication data field to store the first challenge value, and the structure of the header of the AH data packet may be the structure shown in FIG. 6 .
  • the first challenge value may be any one of a trusted random number, a time stamp, and a value in an agreed field.
  • the trusted random number is a random number provided by a trusted third party trusted by both the verifier and the verifier, and the trusted random number can be stored in the trusted data field as the first challenge value.
  • the time stamp is a trusted clock trusted by both the verifier and the verifier, such as clock information generated by the clock endorsed by the endorser, and the time stamp can be stored in the trusted data field as the first challenge value.
  • the value of the agreed field may be the value of any field in the AH protocol pre-agreed between the verifier and the verifiable.
  • the value of the agreed field may be the sequence number of the AH data packet, and the sequence number of the AH data packet is the sequence of the AH data packet sent in real time when the verifier initiates credible verification to the verifiable number, the verifier reuses the sequence number of the data packet sent this time as the first challenge value.
  • the AH data packet may not add a trusted data field, that is, the first challenge value is directly stored in the sequence number field, and the flag bit identifies that the data packet includes the first challenge value.
  • a trusted response is known when the number field is displayed.
  • the first challenge value may also be a random number generated by the verifier for credible verification of the verifier, and the random number may be stored in the credible data field.
  • the first challenge value may also be used to prevent replay attacks of this verification request.
  • the header of the AH data packet may also include a first challenge value length field, which is used to indicate the length of the first challenge value, and the first challenge value may be stored in the body of the AH data packet
  • a trusted data field is added at any position in the body of the AH data packet to store the first challenge value. That is, the header of the AH data packet includes a flag bit and a length field of the first challenge value, and the structure of the header of the AH data packet is shown in FIG. 7 .
  • the length field of the first challenge value may also be stored in the packet body of the AH data packet.
  • FIG. 8 is a schematic diagram of another AH data packet header structure provided by the embodiment of the present application. As shown in FIG. 8 , the AH data packet header may only include a credible data field for storing the first challenge value.
  • the first challenge value may be any one of a trusted random number, a time stamp, a value of an agreed field, and a random number generated by a verifier.
  • any position in the body of the AH data packet may further include a challenge value length field.
  • FIG. 9 is a schematic diagram of another AH data packet header structure provided by the embodiment of the present application.
  • the AH data packet header may include flag bits, credible data, and first challenge value length fields.
  • Partial fields are split from the reserved field of the AH data packet as a flag bit and a challenge value length field, and the flag bit is used to identify that the AH data packet includes the first challenge value.
  • a credible data field is added after the authentication data field to store the first challenge value and to be used by the verifier to generate credible response information.
  • the verifier sends an AH data packet to the verifier, and includes the response information to the verification request of the verifier in the AH data packet
  • the header structure of the AH data packet described in Fig. 5 to Fig. 9 can also be used Send the AH data packet.
  • the AH data packet header only includes a flag bit, and the flag bit is used to identify that the AH data packet includes credible response information made by the verifier, and the The trusted response information includes certification information or certification results, that is, verification data, and the verification data can be stored in a trusted data field, and the trusted data field can be located at any position in the body of the AH data packet.
  • 1 bit is selected in the reserved field as the flag bit field, and if the bit is 1, it means that the AH data packet includes certification information or certification results.
  • the bit is 10
  • the bit is 11
  • the value is used by the verifier to generate credible response information, and the verifier verifies whether it is credible for two-way verification.
  • the verification data includes certification information.
  • the verifier performs trust measurement and generates proof information, and the verifier sends the proof information to the verifier, that is, sends an AH data packet including the proof information.
  • the attestation information includes a reference and a measurement log, the reference includes a summary of the measurement log, and the measurement log includes process information of credible measurement performed by the verifier.
  • the proof information may include a metric value.
  • the certification information may also include a trusted signature.
  • the attestation information may also include the operating status, health, security-related configuration or construction information of the verifier, hardware, firmware, software, file system, identity of the attestation environment, trusted execution environment, data integrity.
  • the verification data includes proof results. Before the verifier requests to verify whether the verified person is credible, other verifiers have verified the authenticity of the verified person and sent the proof result to the verified person. Therefore, the verified The verifier may directly send the proof result to the verifier, and the proof result includes one or more of identity information, trusted content and freshness.
  • the certification result may also include one or more of the following information:
  • the verifier verifies the configuration of the verifier
  • Executables live files, scripts and/or other content loaded into memory by the verifier to verify the verifier;
  • File system (file-system): The verifier verifies the file system of the verifier;
  • the verifier has verified the hardware and firmware of the verifier, and can sign and run the program;
  • Attestation environment identity the verifier has verified the identity of the attestation environment of the verifier, such as TPM's attestation identity key (AIK);
  • Runtime visibility The verifier verifies the visibility of the verifier from outside the verifier's memory
  • Sourced-data The verifier verifies the integrity of the data used by the verifier
  • Storage visibility (storage-opaque): The verifier verifies that the verifier can encrypt persistent storage.
  • the credible data field may also include a second challenge value, which is used by the verifier to generate credible response information according to the second challenge value, and is used by the verifier to verify whether the verifier is credible, and perform two-way verification, and further Improve the security of the communication process.
  • a second challenge value which is used by the verifier to generate credible response information according to the second challenge value, and is used by the verifier to verify whether the verifier is credible, and perform two-way verification, and further Improve the security of the communication process.
  • the second challenge value may be any one of a trusted random number, a time stamp, a value of an agreed field, and a random number generated by the verifier.
  • the second challenge value may also be used to prevent replay of the verification request information this time.
  • the verification data may also be located in the header of the AH data packet, that is, the header of the AH data packet includes flag bits and verification data, and the structure of the AH header is shown in Figure 6. Part of the reserved field is split as a flag, and a trusted data field is added after the authentication data field to store the verification data.
  • the trusted data field can also include a second challenge value, and the verified Turn into a verifier while making a trusted response, and perform two-way verification.
  • the AH data packet header may include a flag bit and a verification data length field, that is, the proof information or the length of the proof result.
  • the structure of the AH packet header is shown in FIG. 7 , and the verification data length The field is used to indicate the proof information or the length of the proof result.
  • the AH data packet header may only include a trusted data field, the structure of the AH header is shown in Figure 8, and the trusted data field includes the verification data of the verifier, that is For the certification information or the certification result, the trusted data field may also include a second challenge value, and the verified person turns into a verifier while making a trusted response, so as to realize two-way verification.
  • the header of the AH data packet may include a flag bit, a verification data length, and a trusted data field.
  • the structure of the AH header is shown in FIG. 9 , and the trusted data field includes the verified The author's verification data, that is, proof information or proof results.
  • FIG. 10 is a schematic diagram of an AH communication process provided by an embodiment of the present application.
  • any AH data packet containing trusted extended information described in FIG. 5 to FIG. 9 is used.
  • the first network element integrates trusted request information.
  • the first network element searches for the first matching security policy in the security policy database, and decides whether to adopt IPsec protection. Find the SA corresponding to the SP in the security association database, check the trusted extension field attribute in the security association database, if there is no SA, then IPsec invokes the IKE service to create the SA, if the SA has been created, then perform the AH data packet Encryption, you can choose to add a message authentication code (message attestation code, MAC), and use the AH data packet integrated with the trusted request information, that is, use the AH data packet including the header structure described in Figures 5 to 9 to request verification. Whether the second network element is credible.
  • MAC message authentication code
  • the first network element sends trusted request information, and correspondingly, the second network element receives the trusted request information.
  • the first network element sends trusted request information to the second network element, the trusted request information is included in the AH data packet, and the trusted request information is used to request whether the second network element is trusted or not.
  • the second network element integrates the certification information.
  • the second network element After receiving the request information from the first network element, the second network element retrieves the corresponding SA in the local security association database based on the received SPI value, and uses the behavior defined in the SA to process the data packet, including verifying the MAC and The data packet is decrypted, and the authentication information requested by the first network element is added to the header of the AH data packet.
  • the second network element performs feasible measurement, and adds certification information to the AH data packet, where the certification information includes a reference and a measurement log, where the reference includes a summary of the measurement log, and the The measurement log includes process information of trusted measurement performed by the second network element.
  • the certification information may also include a metric value.
  • the certification information may also include a trusted signature.
  • the second network element before the second network element receives the credible request information of the first network element, the second network element is verified by other verification, and the verification result is sent to the second network element, The second network element stores the proof result, and when receiving the credible request from the first network element, adds the proof result in the AH data packet for the first network element to check whether the second network element is trustworthy.
  • the proof result includes one or more of identity information, credible content and freshness.
  • the second network element sends trusted response information, and correspondingly, the first network element receives trusted response information.
  • the second network element sends an AH data packet with trusted extension information to the first network element, where the second data packet includes response information.
  • the credible response information includes certification information.
  • the credible response information includes a certification result.
  • the first network element verifies the trusted response information.
  • the first network element retrieves the corresponding SA in the local security association database, and uses the behavior defined in the SA to process the data packet, including verifying the MAC and decrypting the data packet.
  • the trusted response information includes certification information
  • the first network element uses the public key and the challenge value sent to decrypt the trusted signature, and compares the decrypted metric value with the standard Values are compared to verify the trusted status of the second network element and check the validity of the measurement log.
  • the authenticity response information includes a certification result
  • the first network element directly checks the certification result to confirm whether the second network element is trustworthy.
  • the credibility measurement is integrated into the communication process of the AH protocol. Without changing the header structure of the AH data packet, the idle fields are reused and the trusted extension information is added, which has good compatibility with existing protocols. It is convenient for business deployment.
  • the existing AH protocol authentication process is further improved, and the request, response and verification of remote certification are added in the communication process, so that nodes can realize confidentiality, integrity, identity verification and remote trusted certification in communication, and the security is endogenous to During communication.
  • an SA needs to be established first, which is used to indicate which security policy, algorithm and key should be adopted between the communication subjects.
  • Table 1 is a kind of SA data structure that the embodiment of the present application provides, and as shown in Table 1, in the existing SA data structure, add extended information such as trusted extension (trusted extension) and trigger mechanism (trigger), when establishing SA Trusted extension information is added at any time, which is used for nodes to judge whether to take a trusted operation and when to take a trusted operation.
  • the trusted operation can include any one of trusted request, trusted measurement and trusted response.
  • the credible request is a request to verify whether the person being verified is credible;
  • the credible measure is the integrity measure, using the hash function to calculate the hash value of the code, comparing it with the stored hash value, judging whether the code has changed, and judging the platform based on the comparison result Whether it is credible;
  • a credible response means that the verifier sends response information to the verifier for the verifier to verify whether it is credible, and the response information may include certification information or certification results.
  • the security policy index (SPI) field is used to uniquely identify a specific SA. If its value is 0, it means that there is no SA, and its size can be 323 bits.
  • the SPD selection value field is used to indicate the IP destination address. For example, TCP, 1.2.3.0/24, 5.6.7.0/24 indicates that the destination address is a transmission control protocol address.
  • the protocol field is used to indicate which IPsec protocol is adopted. For example, ESP tunnel from 4.5.6.7 indicates that the ESP encryption protocol is adopted.
  • the algorithm and key fields are used to indicate the algorithm type and key type adopted.
  • the algorithm type may include message digest algorithm (message digest 5, MD5), secure hash algorithm (secure hash algorithm, SHA) SHA-1 , SHA-2, etc.
  • the MD5 algorithm can generate a 128-bit message digest by inputting a message of any length.
  • the SHA-1 algorithm can generate a 160-bit message digest by inputting a message whose length is less than 2 to the power of 64 bits.
  • the SHA-2 algorithm Compared with SHA-1, the number of encrypted data has increased, and the security performance is much higher than that of SHA-1.
  • the key type can include symmetric key, asymmetric key, etc.
  • the symmetric key means that the encryption party and the decryption party use the same key
  • the asymmetric key means a pair of keys, including a public key and a private key. Encryption requires a private key to decrypt, and private key encryption requires a public key to decrypt.
  • the trusted extension field is used to indicate whether the communication subject needs to perform a trusted operation, and the trusted operation includes one or more of trusted request, trusted measurement, trusted response and trusted verification. If its value is YES, it means that a trusted action needs to be taken, and if its value is NO, it means that no trusted action needs to be taken.
  • the trigger mechanism field is used to indicate which trigger mechanism is adopted to trigger the trusted operation, and the trigger mechanism includes a counting mechanism, a timing mechanism, or an event trigger mechanism.
  • FIG. 11 is a data structure of an IKE protocol header provided by this embodiment.
  • the credibility measurement information is added in the IKE protocol data packet header.
  • the original data structure of the IKE header is not changed, but the trusted extension information is added to the data structure of the next payload header field of the IKE header.
  • the IKE header structure includes the following fields:
  • IKE SA Initiator's SPI An entity cookie used to initiate SA establishment, notification, or deletion.
  • IKE SA Responder's SPI An entity cookie used to respond to SA establishment, notification, or deletion.
  • the next payload (next payload) field is used to identify the type of the next payload.
  • the value range of the next payload field is between 33 and 55. For example, a value of 33 indicates that the next payload is a security association, and 38 indicates that the next payload is a certificate request; and values greater than 55 are still used. Reserved, a value interval greater than 55 may be used as an identifier that the data packet includes trusted extended information.
  • a value of 56 in the next payload header indicates that the data packet includes a challenge value for the verifier to initiate a verification request to the verifier
  • a value of 57 indicates that the data packet includes verification data. Since the verifier verifies whether the verifiable is credible, a value of 58 indicates that the data packet includes verification data and a challenge value, which is used by the verifier to verify whether the verifiable is credible, and initiate a verification request to the verifier for two-way verify.
  • the major version (MjVer) field is used to indicate the major version of ISAKMP used.
  • the minor version (MnVer) field is used to indicate the minor version of ISAKMP used.
  • the exchange type (exchange type) field is used to indicate the key exchange mechanism, which can include the implementation of public key encryption or the use of DH algorithm and other mechanisms.
  • the implementation of public key encryption means that the sender uses the public key of the receiver to encrypt its own key, and the receiver uses You can decrypt your own private key to get the sender's key, and vice versa, so as to realize the key exchange.
  • the DH algorithm is Diffie-Hellman key exchange (Diffie-Hellman key exchange, DH), which allows both parties to communicate without A key is established through an insecure channel without any prior information from the other party.
  • the flag bit (flag) field sets various options for ISAKMP exchange.
  • the message ID (message ID) is a unique information identifier used to identify the status of the protocol.
  • the length (length) field is used to indicate the length of all information, including the header of the data packet plus the payload.
  • next payload the data structure of the next payload is shown in Figure 12.
  • the reserved fields in the next payload field can be reused, and trusted extension information such as flag bits, trusted data, and trusted data length can be added, and there can be no reserved fields.
  • the header of the packet provides a way to add trusted extension information.
  • a flag bit field is included in the reserved field.
  • the flag bit field is used to trigger the verifier to generate trusted response information, and the header of the IKE data packet may not include a challenge value field.
  • the flag bit field is used to identify that the IKE data packet includes a challenge value
  • the challenge value may be stored in a trusted data field
  • the trusted data field may be located after the payload field of the data packet header.
  • This application only shows a structural schematic diagram of the trusted data field located behind the payload field of the data packet header, and the trusted data field may also be located at any position in the data packet body, which is not limited in this application.
  • the flag bit field is used to identify that the data packet includes verification data, that is, certification information or a certification result.
  • the flag bit field is used to identify that the data packet includes verification data and a challenge value, and the challenge value is used by the verifier to generate credible response information for two-way verification.
  • the flag bit field is used to identify that the data packet includes verification data, and can trigger the verifier to generate credible response information for two-way verification.
  • 1 bit is selected from the reserved field as the flag bit field, and if the bit is 1, it indicates that the data packet contains the trusted extension.
  • 2 bits are selected from the reserved field as the flag bit field.
  • 01 indicates that the IKE data packet contains trusted request information; 10 indicates that the data packet includes trusted response information; 11 indicates that the data packet includes trusted response information and includes trusted request information, and the authentication process is performed with the verifier. Two-way authentication.
  • Fig. 12 only exemplarily shows that the flag bit is included in the IKE data packet header, and the IKE data packet header may not include the flag bit, for example, only includes the trusted data field, and the challenge is directly read by the verifier or the verified This application does not limit the content such as value or verification data, or only the verification data length field, etc., to store trusted extended information.
  • a trusted data field is added after the payload field, the trusted data field includes a challenge value or verification data, and the verification data is used by the verifier to verify whether the verified person is credible, so
  • the verification data includes certification information or certification results, and the trusted data field may also include a challenge value, which is used by the verifier to generate verification data for two-way verification.
  • the verifier sends the data packet to the verifier, the credible data field includes a challenge value, and the challenge value is used by the verifier to generate certification information.
  • the challenge value may be any one of a trusted random number, a time stamp, and a numerical value in an agreed field.
  • the challenge value may be a random number generated by the verifier for credibility measurement.
  • the random number generated by the verifier may be recorded as Ni.
  • the trusted computing data field includes verification data.
  • the verification data includes certification information
  • the certification information includes references and measurement logs
  • the measurement logs are process information for credible measurement of the challenge value
  • the references may include a summary of the measurement logs .
  • the certification information may also include a measurement value or a trusted signature.
  • the trusted data field may also include the challenge value of the verifier, which is used for the verifier to generate credible response information for two-way verification, and the random number generated by the verifier may be recorded as Nr .
  • the verification data includes a certification result
  • the certification result includes one or more of identity information, credible content and freshness.
  • FIG. 12 only shows that the trusted data field is located in the header of the IKE data packet, and the trusted data field may also be stored in any position in the body of the IKE data packet, which is not limited in this application.
  • the reserved field may further include the challenge value or verification data length field, which is used to indicate the challenge value or the length of the verification data. If the IKE data packet is sent by the verifier to the verifier, the challenge value length field may be included in the packet header; if the IKE packet is sent to the verifier by the verifier, the verification value may be included in the packet header. In the data length field, the verification data includes proof information or proof results.
  • FIG. 12 only exemplarily shows that the challenge value or verification data length field is located in the header of the IKE data packet, and the length field can also be stored in any position in the body of the IKE data packet, which is not limited in this application.
  • Fig. 13 is a schematic diagram of the structure of the ESP data packet header applicable to the embodiment of the present application, and the ESP data packet header includes the following fields:
  • the SPI field is an IPSec security parameter index, which is used to uniquely identify an IPSec security association, and its size may be 32 bits.
  • the sequence number field is used to uniquely identify each data packet, and its value increases from 1 to prevent replay attacks, and its size can be 32 bits.
  • the payload data field contains variable-length data content in the original IP packet.
  • the content type protected by ESP is identified by the next header field.
  • the padding field is used to increase the number of bits in the ESP header, and the length of the padding field is related to the length of the payload data and the algorithm.
  • the length of the packet to be encrypted is not the block length required by the encryption algorithm, padding is required.
  • the padding length gives the length of the padding field, and when its value is 0, it means no padding, and its size can be 8 bits.
  • the next payload field is used to identify the next payload type after the ESP packet header, and its size may be 8 bits.
  • the authentication data field includes a data integrity check value ICV, which is used by the receiver to check the integrity.
  • ICV data integrity check value
  • the authentication function of ESP is optional. If packet authentication is enabled, an ICV value will be added at the end of the encrypted data. Its length can be an integer multiple of 32 bits, usually 96 bits.
  • the reserved field is included in the next load field of the ESP data packet header, and its structure is the same as that of the reserved field in the IKE data packet header. Similarly, the reserved field is reused for storing flag bits, trusted data and trusted.
  • the structure and function of the data length and other information are similar to the solution described in FIG. 12 , and will not be repeated here.
  • next payload field of a protocol data packet such as IPsec protocol includes a reserved field. Therefore, the scheme of reusing the reserved field and adding the trusted extended information should fall within the scope of protection of this application.
  • FIG. 14 is an IKE communication process provided by the embodiment of the present application.
  • the data packet sent in this communication process includes the IKE header structure shown in FIG. 11 and FIG. 12 , and the IKE communication process can be used to negotiate and establish SA.
  • the first network element sends first negotiation information to the second network element.
  • the first network element sends first negotiation information to the second network element, where the first negotiation information includes a packet header of the first network element, an IKE SA suggestion, a public value of a DH algorithm, and a random number.
  • the second network element sends the first request information to the first network element.
  • the second network element sends the first request information to the first network element, the first request information includes the message header of the first network element, the IKE SA suggestion, the DH algorithm public value and the random number, and the first request information also includes A request for a trusted certificate of the first network element.
  • the first network element sends first response information to the second network element.
  • the first network element sends first response information to the second network element, where the first response information includes a packet header, a trusted certificate of the first network element, and certification information of the first network element.
  • the first response information may also include trusted certificate request information from the first network element to the second network element.
  • the second network element verifies the first response information.
  • the second network element verifies the trusted certificate and proof information included in the first response information, and judges the trusted state of the first network element.
  • the second network element updates the local security association database, that is, the security association from the first network element to the second network element is established.
  • the second network element sends second response information to the first network element.
  • the second network element sends second response information to the first network element, where the second response information includes the trusted certificate of the second network element and certification information of the second network element.
  • the first network element verifies the second response information.
  • the first network element verifies the trusted certificate and proof information included in the second response information, and judges the trusted state of the second network element.
  • the first network element updates the local security association database, that is, the security association from the second network element to the first network element is established. At this time, a two-way security association has been established between the first network element and the second network element, and the negotiated policy and key can be used for communication.
  • Fig. 15 is an IP data packet header structure provided by an embodiment of this application. Remote proof can be performed without using the packet header of the AH protocol, IKE protocol or ESP protocol in the IPsec protocol system, and without reusing the reserved fields in the IPsec packet header.
  • the packet header includes the following fields:
  • Next header (next header) field Its length can be 8 bits, which is used to indicate the protocol of the next header. For example, when its value is 51, it means that the next packet header to be sent is a packet of the AH protocol Packet header, if the value is 50, it means the packet header of the ESP protocol. At present, the value range of the next payload header within the range of 0 to 140 has been occupied, and 141 to 254 is still reserved, and a value in the reserved range can be used as the identifier of the trusted extended information included in the data packet .
  • the value of the next payload header is 142, which means that the data packet includes a challenge value, which is used for the verifier to initiate a verification request to the verifier, and the value of 143, which means that the data packet includes verification data. Since the verifier verifies whether the verifiable is credible, a value of 144 indicates that the data packet includes verification data and a challenge value, which is used by the verifier to verify whether the verifiable is credible, and initiate a verification request to the verifier for two-way verify.
  • the payload header with a value ranging from 141 to 254 may be occupied, but the technical solutions for using unoccupied values as identification data packets including trusted extended information should fall into this application scope of protection.
  • Flag bit field the flag bit can be used to identify that the data packet includes trusted extended information.
  • the flag bit field may trigger the verifier to generate verification data.
  • the flag bit field occupies 1 bit, and if the bit is 1, it indicates that the header or body of the data packet includes a challenge value.
  • the flag bit field occupies 2 bits. Exemplarily, if the bit is 01, it means that the data packet includes a challenge value, or the header of the data packet can trigger the verifier to generate verification data; if the bit is 10, it means that the data packet includes verification data ; If the bit is 11, it means that the data packet includes verification data and a challenge value, the verification data is used by the verifier to verify whether the verifier is credible, the challenge value is used by the verifier to generate verification data, and the verifier verifies whether it is Trusted, or, if the bit is 11, it indicates that the data packet includes verification data, and the header of the data packet can trigger the verifier to generate verification data.
  • the header of the data packet may not include a flag bit field, and only the next payload field is used to identify that the data packet includes trusted extended information, or trigger the verifier to generate verification data.
  • Payload length field used to indicate the length of the packet header.
  • Reserved field preset reserved bit, its value is 0 in the initial state, reserved for future use.
  • Sequence number field it is a numerical value incremented from 1, which is used to prevent the replay attack of the data packet.
  • Trusted data field including challenge value or verification data, etc.
  • the trusted data field includes a challenge value.
  • the challenge value may be any one of a trusted random number, a time stamp, and a numerical value in an agreed field.
  • the trusted random number is a random number provided by a trusted third party trusted by both the verifier and the verifier, and the trusted random number can be stored in the trusted data field as a challenge value.
  • the time stamp is a trusted clock trusted by both the verifier and the verifier, such as the clock information generated by the clock endorsed by the endorser.
  • the time stamp is used as a challenge value, it can be stored in the trusted data field.
  • the value of the agreed field may be the value of any field in the communication protocol pre-agreed between the verifier and the verifiable.
  • the serial number of the data packet is the serial number of the data packet sent in real time when the verifier initiates trusted verification to the verifier, and the verifier reuses the serial number of the data packet sent this time as the challenge value.
  • the challenge value can be directly stored in the serial number field, and the flag bit identifies that the data packet includes the challenge value, and the verifier can know that a credible response needs to be made when the serial number field is read.
  • the challenge value may also be a random number generated by the verifier for trusted verification, and the random number may be stored in the trusted data field.
  • the challenge value may also be used to prevent replay attacks of this verification request.
  • the credible data field includes verification data.
  • the verification data is certification information.
  • the verifier performs trust measurement and generates proof information, and the verifier sends the proof information to the verifier, that is, sends a data packet including the proof information.
  • the attestation information includes a reference and a measurement log, the reference includes a summary of the measurement log, and the measurement log includes process information of credible measurement performed by the verifier.
  • the proof information may include a metric value.
  • the certification information may also include a trusted signature.
  • the attestation information may also include the operating status, health, security-related configuration or construction information of the verifier, hardware, firmware, software, file system, identity of the attestation environment, trusted execution environment, data integrity.
  • the verification data is a certification result.
  • the verifier requests to verify whether the verified person is credible, other verifiers have verified the authenticity of the verified person and sent the proof result to the verified person. Therefore, the verified The verifier may directly send the proof result to the verifier, and the proof result includes one or more of identity information, trusted content and freshness.
  • the verification data further includes a challenge value, which is used for the verifier to initiate a verification request to the verifier for two-way verification.
  • the header of the data packet may not include a trusted data field, and the trusted data field may be stored in any position in the body of the data packet.
  • the use of the data packet header can reduce the dependence on the existing protocol, and is not limited by whether there are reserved fields in the existing protocol, and can provide a more professional and flexible remote certification method.
  • Fig. 16 is a structural block diagram of a communication device provided according to an embodiment of the present application.
  • the communication device may have the functions of the first network element or the second network element in the above method embodiments, and may be used to execute the steps performed by the first network element or the second network element in the above method embodiments.
  • the communication device 1600 shown in FIG. 16 may serve as the first network element involved in the foregoing method embodiments, and execute the steps performed by the first network element in the foregoing method embodiments.
  • the communication device 1600 may include a sending module 1610 and a receiving module 1620 .
  • the sending module 1610 can be used to support the communication device 1600 to send information, for example, to perform the sending action performed by the first network element in S210, S1020, S1410 and S1430 in FIG. 2 , FIG. 3 , FIG. 10 and FIG. 14 .
  • the receiving module 1620 can be used to support the communication device 1600 to receive information, for example, to perform the receiving action performed by the first network element in S220, S320, S1040, S1420 and S1450 in FIG. 2 , FIG. 3 , FIG. 10 and FIG. 14 .
  • the communication device 1600 may further include a processing module 1630, which is coupled with the sending module 1610 and the receiving module 1620, and may be used to support the communication device 1600 in performing the processing actions in the above method embodiments, for example, executing the processing actions in FIG. 2 and FIG. 3. Processing actions performed by the first network element such as S330, S1010, S1050, and S1460 in FIG. 10 and FIG. 14 .
  • a processing module 1630 which is coupled with the sending module 1610 and the receiving module 1620, and may be used to support the communication device 1600 in performing the processing actions in the above method embodiments, for example, executing the processing actions in FIG. 2 and FIG. 3. Processing actions performed by the first network element such as S330, S1010, S1050, and S1460 in FIG. 10 and FIG. 14 .
  • the communication device 1600 shown in FIG. 16 may serve as the second network element involved in the above method embodiment, and execute the steps performed by the first network element in the above method embodiment.
  • the communication device 1600 may include a sending module 1610 and a receiving module 1620 .
  • the sending module 1610 can be used to support the communication device 1600 to send information, for example, to execute the sending actions performed by the second network element in S220, S320, S1040, S1420 and S1450 in FIG. 2 , FIG. 3 , FIG. 10 and FIG. 14 .
  • the receiving module 1620 may be used to support the communication device 1600 to receive information, for example, to perform the receiving actions performed by the second network element in S210, S1020, S1410 and S1430 in FIG. 2 , FIG. 3 , FIG. 10 and FIG. 14 .
  • the communication device 1600 may further include a processing module 1630, which is coupled with the sending module 1610 and the receiving module 1620, and may be used to support the communication device 1600 in performing the processing actions in the above method embodiments, for example, executing the processing actions in FIG. 2 and FIG. 3. Processing actions performed by the first network element such as S310, S1030, and S1440 in FIG. 10 and FIG. 14 .
  • a processing module 1630 which is coupled with the sending module 1610 and the receiving module 1620, and may be used to support the communication device 1600 in performing the processing actions in the above method embodiments, for example, executing the processing actions in FIG. 2 and FIG. 3. Processing actions performed by the first network element such as S310, S1030, and S1440 in FIG. 10 and FIG. 14 .
  • the communication device 1600 may further include a storage module 1640 for storing program codes and data of the communication device 1600 .
  • Fig. 17 is a schematic block diagram of a communication device 1700 provided by an embodiment of the present application.
  • the communication device 1700 includes: at least one processor 1710 and a transceiver 1720 .
  • the processor 1710 is coupled with the memory, and is used for executing instructions stored in the memory to control the transceiver 1720 to send signals and/or receive signals.
  • the communications device 1700 further includes a memory 1730 for storing instructions.
  • the processor 1710 and the memory 1730 may be combined into one processing device, and the processor 1710 is configured to execute the program codes stored in the memory 1730 to implement the above functions.
  • the memory 1730 may also be integrated in the processor 1710 , or be independent of the processor 1710 .
  • the transceiver 1720 may include a receiver (or called receiver) and a transmitter (or called transmitter).
  • the transceiver 1720 may further include antennas, and the number of antennas may be one or more.
  • the transceiver 1720 may be a communication interface or an interface circuit.
  • the chip When the communication device 1700 is a chip, the chip includes a transceiver unit and a processing unit.
  • the transceiver unit may be an input-output circuit or a communication interface
  • the processing unit may be a processor or a microprocessor or an integrated circuit integrated on the chip.
  • the network equipment chip implements the functions of the network equipment in the above method embodiments.
  • the network device chip receives information from other modules in the network device (such as radio frequency modules or antennas), and the information is sent to the network device by terminals or other network devices; or, the network device chip sends information to other modules in the network device (such as a radio frequency module or an antenna) output information, which is sent by the network device to the terminal or other network devices.
  • the embodiment of the present application also provides a computer-readable storage medium, the computer-readable storage medium stores a computer program or instruction, and the computer program or instruction is executed by a computer (for example, a processor), so as to realize the Some or all steps of any method performed by any device.
  • a computer for example, a processor
  • the embodiment of the present application also provides a computer program product containing instructions, which, when run on a computer, causes some or all steps of any method performed by any device in the embodiments of the present application to be executed.
  • the disclosed systems, devices and methods may be implemented in other ways.
  • the device embodiments described above are only illustrative.
  • the division of the units is only a logical function division. In actual implementation, there may be other division methods.
  • multiple units or components can be combined or May be integrated into another system, or some features may be ignored, or not implemented.
  • the mutual coupling or direct coupling or communication connection shown or discussed may be through some interfaces, and the indirect coupling or communication connection of devices or units may be in electrical, mechanical or other forms.
  • the units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place, or may be distributed to multiple network units. Part or all of the units can be selected according to actual needs to achieve the purpose of the solution of this embodiment.
  • each functional unit in each embodiment of the present application may be integrated into one processing unit, each unit may exist separately physically, or two or more units may be integrated into one unit.
  • the functions described above are realized in the form of software function units and sold or used as independent products, they can be stored in a computer-readable storage medium.
  • the technical solution of the present application is essentially or the part that contributes to the prior art or the part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including Several instructions are used to make a computer device (which may be a personal computer, a server, or a network device, etc.) execute all or part of the steps of the methods described in the various embodiments of the present application.
  • the aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (read-only memory, ROM), random access memory (random access memory, RAM), magnetic disk or optical disc and other media that can store program codes. .

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请提供了一种集成可信度量的通信方法,包括:第一网元发送第一数据包,所述第一数据包包括第一请求信息,所述第一请求信息用于请求验证第二网元是否可信;所述第一网元接收第二数据包,所述第二数据包包括第一响应信息,所述第一响应信息用于验证第二网元是否可信。本申请提供的技术方案,能够在第一网元与第二网元之间建立通信通道时进行可信度量,有利于提高通信主体及通信过程的安全性。

Description

集成可信度量的通信方法和装置
本申请要求于2022年01月05日提交中国专利局、申请号为202210011105.1、申请名称为“集成可信度量的通信方法和装置”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及通信领域,更具体地,涉及一种集成可信度量的通信方法和装置。
背景技术
英特网协议安全(internet protocol security,IPsec)协议为网络层安全协议,可以对两个或多个通信主体之间的通信进行规范或描述,为通信过程提供安全性和数据完整性保障。但是,该协议只考虑了通信主体之间通信过程的安全性,无法判断通信主体是否处于可信的执行状态,若通信主体中任一方处于不可信的状态,则通信过程的安全性将会受到威胁。因此,在建立通信通道的同时,有必要对通信主体进行可信度量,以提升通信过程及通信主体的安全性。
发明内容
本申请提供一种集成可信度量的通信方法和装置,用于通信主体之间在建立通信通道的同时进行可信度量,可以提高通信设备与通信过程的安全性。
第一方面,提供了一种集成可信度量的通信方法,所述方法可以由第一网元执行,或者,也可以由用于第一网元的芯片或电路执行,本申请对此不作限定。为便于描述,以执行主体为第一网元为例。
所述方法包括:第一网元发送第一数据包,所述第一数据包包括第一请求信息,所述第一请求信息用于请求验证第二网元是否可信;所述第一网元接收第二数据包,所述第二数据包包括第一响应信息,所述第一响应信息用于验证所述第二网元是否可信。
在本申请提供的实施例中,在第一网元与第二网元之间的通信过程中部署远程证明,即由第一网元向第二网元发起验证请求,触发第二网元进行可信度量并作出响应,第一网元根据第二网元的响应信息对第二网元的可信状态进行验证,能够在第一网元与第二网元建立通信的过程中进行可信度量,有利于提高第一网元与第二网元之间通信过程的安全性,并提高第一网元与第二网元的安全性。
结合第一方面,在第一方面的某些实现方式中,所述第一请求信息包括第一字段,所述第一字段为第一标志位,所述第一标志位用于触发生成所述第一响应信息。
本申请提供的实施例中,在第一数据包中可以只包括第一标志位,不包括第一挑战值,在第二网元接收到包括第一标志位的第一数据包时,生成第一响应信息。第一网元无需生成或复用挑战值用于所述第二网元生成第一响应信息,能够节约资源开销。
结合第一方面,在第一方面的某些实现方式中,所述第一标志位用于标识所述第一请求信息包括第一挑战值,所述第一挑战值用于生成第一响应信息。
本申请提供的实施例中,在第一数据包中可以既包括第一标志位,又包括第一挑战值,第一标志位可以用于标识第一数据包中包括第一挑战值,由第一挑战值触发第二网元生成第一响应信息。能够在数据包中包括可信度量相关信息,在建立通信的过程中对第二网元进行可信验证,提高第一网元与第二网元之间通信过程的安全性,并进一步提高第一网元与第二网元的安全性。
结合第一方面,在第一方面的某些实现方式中,所述第一请求信息包括第二字段,所述第二字段包括所述第一挑战值,所述第一挑战值用于所述第二网元生成第一响应信息。
本申请提供的实施例中,在第一请求信息中可以包括第一挑战值,能够在第一网元与第二网元没有预先约定和存储挑战值的情况下,用于所述第二网元生成第一响应信息,用于第一网元对第二网元进行可信验证,提高第一网元与第二网元之间通信过程的安全性,并进一步提高第一网元与第二网元的安全性。
结合第一方面,在第一方面的某些实现方式中,所述第一挑战值为第一随机数、第二随机数、时间戳和约定字段的数值中的任意一种。所述第一随机数为可信第三方提供的随机数;所述第二随机数为所述第一网元为验证第二网元是否可信而生成的随机数;所述时间戳为第一网元和第二网元均信任的可信时钟,如通过背书者背书的时钟产生的时钟信息;所述约定字段的数值为IPsec协议等协议中任意第X至第Y位比特数据。
本申请提供的实施例中,第一网元可以复用第一随机数、时间戳或约定字段的数值作为挑战值,无需为了对第二网元进行可信度量而生成随机数作为挑战值,能够节约资源开销,且无需增加新的字段存放挑战值,能够简化第一数据包的结构,便于第二网元解析第一数据包,从而提高其作出响应的效率。
结合第一方面,在第一方面的某些实现方式中,所述约定字段的数值为所述第一数据包的序列号。
本申请提供的实施例中,第一网元可以复用第一数据包的序列号作为第一挑战值,所述约定字段即为序列号字段,能够节约资源开销,且无需增加新的字段存放挑战值,能够简化第一数据包的结构,便于第二网元解析第一数据包,从而提高其作出响应的效率。
第一网元可以根据实际需求选择不同类型的挑战值,用于第二网元生成第一响应信息,能够提高第一网元发起可信验证的灵活性。
结合第一方面,在第一方面的某些实现方式中,所述第一请求信息包括第三字段,所述第三字段包括所述第一挑战值的长度。
本申请提供的实施例中,在数据包中,所述第一挑战值可以只占用所述第二字段中的部分字段,利用第三字段存储挑战值的长度信息,能够便于所述第二网元读取所述第二字段中挑战值所占据的具体字段,节约读取时间和资源开销。
结合第一方面,在第一方面的某些实现方式中,所述第一响应信息包括第四字段,所述第四字段为第二标志位,所述第二标志位用于标识所述第二数据包包括证明信息或证明结果,所述证明信息由所述第一网元根据所述第一挑战值生成的,所述证明结果包括所述第二网元被证明可信的结果。
本申请提供的实施例中,在数据包中包括第二标志位,能够便于第一网元获知所述第 二数据包包括用于验证第二网元是否可信的有效信息,从而读取所述第一响应信息并根据所述第一响应信息验证第二网元的可信状态,防止出现丢包等问题。
结合第一方面,在第一方面的某些实现方式中,所述第一响应信息包括第五字段,所述第五字段包括所述证明信息或所述证明结果。
本申请提供的实施例中,在第二数据包中可以包括证明信息,能够在第一网元与第二网元建立通信的过程中对第二网元的证明信息进行验证,从而验证第二网元是否可信,提高第一网元与第二网元之间通信过程的安全性,并提高第一网元与第二网元的安全性;或者,在第二数据包中也可以包括证明结果,所述证明结果可以为其他验证者验证第二网元可信的结果,并发送给第二网元,用于第二网元展示给后续验证者如第一网元,第一网元无需对证明信息进行验证,只需查验证明结果,确认第二网元的可信状态,能够节约资源开销。
结合第一方面,在第一方面的某些实现方式中,所述证明结果包括身份信息、可信内容和新鲜度中的一种或多种,所述身份信息用于指示验证所述第二网元可信的验证者的身份,所述可信内容用于指示所述第二网元被验证可信的内容,所述新鲜度用于指示所述第二网元被验证可信的时间。
在本申请提供的实施例中,所述第二网元可以存储其他验证方对其可信状态进行验证的证明结果,在接收到第一网元的第一数据包时,发送所述证明结果,而无需重复生成证明信息,第一网元也无需执行重复的验证过程,从而节约资源开销。
结合第一方面,在第一方面的某些实现方式中,所述第一响应信息包括证明信息,所述证明信息包括引证和度量日志,所述引证包括度量日志的摘要,所述度量日志包括所述终端设备进行可信度量的过程信息。
在本申请提供的实施例中,通过在证明信息中包括引证和度量日志,度量日志的摘要是对度量日志进行哈希计算所得,可以用于第一网元对度量日志的完整性验证,有利于提高通信过程的安全性,并提高网元的安全性。
结合第一方面,在第一方面的某些实现方式中,所述证明信息包括度量值,所述度量值为所述第二网元的可信状态信息。
在本申请提供的实施例中,通过在证明信息中包括度量值,所述度量值是由所述第二网元的可信计算平台对度量日志进行运算所得,可以用于第一网元对度量日志的验证,判断所述证明信息中的度量日志的有效性,进而提高第一网元与第二网元之间通信过程的安全性,并提高第一网元与第二网元的安全性。
结合第一方面,在第一方面的某些实现方式中,所述证明信息包括可信签名,所述可信签名为所述第二网元对度量值的签名。
在本申请提供的实施例中,通过在证明信息中包括可信签名,可以用于第一网元根据对应的挑战值即第一挑战值对所述可信签名进行验签,确认所述可信签名是由所述第二网元根据所述第一挑战值生成,从而验证所述第二网元的可信状态,提高第一网元与第二网元之间通信过程的安全性,并提高第一网元与第二网元的安全性。
结合第一方面,在第一方面的某些实现方式中,所述第五字段包括第二挑战值,所述第二挑战值用于所述第一网元生成第二响应信息,所述第二响应信息用于验证所述第一网元是否可信。
本申请提供的实施例中,第二网元作为被验证方在生成第一响应信息时,也可以作为验证方向第一网元发起验证请求,请求验证第一网元是否可信,进行双向验证,进一步提高第一网元与第二网元之间的通信安全性,并提高第一网元与第二网元的安全性。
结合第一方面,在第一方面的某些实现方式中,所述第二挑战值为第三随机数、第四随机数、时间戳和约定字段的数值中的任意一种,所述第三随机数为可信第三方提供的随机数,所述第四随机数为第二网元为验证所述第一网元是否可信而生成的随机数。
本申请提供的实施例中,第二网元可以复用第三随机数、时间戳或约定字段的数值作为挑战值,而无需为进行可信度量而生成挑战值,能够节约资源开销,且无需增加新的字段存放挑战值,能够简化第二数据包的结构,便于第一网元解析第二数据包,从而提高其作出响应的效率。
结合第一方面,在第一方面的某些实现方式中,所述第二标志位还用于触发所述第一网元生成第二响应信息。
本申请提供的实施例中,第一网元和第二网元可以预先约定第二挑战值,并存储于所述第二网元,在第二网元需要向第一网元发起验证请求,请求验证第一网元是否可信时,所述第二网元无需生成挑战值或复用挑战值,而是由第二标志位触发第一网元生成第二响应信息。
结合第一方面,在第一方面的某些实现方式中,所述第一响应信息包括第六字段,所述第六字段用于指示所述证明信息或所述证明结果的长度。
本申请提供的实施例中,在数据包中,所述证明信息可以只占用所述第五字段中的部分字段,利用第六字段存储证明信息或证明结果的长度信息,能够便于所述第一网元读取所述第五字段中证明信息或证明结果所占据的具体字段,节约读取时间和资源开销。
第二方面,提供了一种集成可信度量的通信方法,所述方法可以由第二网元执行,或者,也可以由用于第二网元的芯片或电路执行,本申请对此不作限定。为便于描述,以执行主体为第二网元为例。
所述方法包括:第二网元接收第一数据包,所述第一数据包包括第一请求信息,所述第一请求信息用于请求验证第二网元是否可信;所述第二网元发送第二数据包,所述第二数据包包括第一响应信息,所述第一响应信息用于验证所述第二网元是否可信。
在本申请提供的实施例中,在第一网元与第一网元之间的通信过程中部署远程证明,即由第一网元向第二网元发起验证请求,触发第二网元进行可信度量并作出响应,第一网元根据第二网元的响应信息对第二网元的可信状态进行验证,能够在第一网元与第二网元建立通信的过程中进行可信度量,有利于提高第一网元与第二网元之间通信过程的安全性,并提高第一网元与第二网元的安全性。
结合第二方面,在第二方面的某些实现方式中,所述第一请求信息包括第一字段,所述第一字段为第一标志位,所述第一标志位用于触发所述第二网元生成所述第一响应信息。
本申请提供的实施例中,可以由第一网元和第二网元预先约定第一挑战值,并将其存储于第二网元,将数据包包头的保留字段中的一位或多位设置为1作为第一标志位,直接由第一标志位触发第二网元生成第一响应信息。即,在第一数据包中可以只包括第一标志位,不包括第一挑战值,在第二网元接收到包括第一标志位的第一数据包时,生成第一响应信息。第一网元无需生成或复用挑战值用于所述第二网元生成第一响应信息,能够节约 资源开销。
结合第一方面,在第一方面的某些实现方式中,所述第一标志位用于标识所述第一请求信息包括第一挑战值,所述第一挑战值用于生成第一响应信息。
本申请提供的实施例中,在第一数据包中可以既包括第一标志位,又包括第一挑战值,第一标志位可以用于标识第一数据包中包括第一挑战值,由第一挑战值触发第二网元生成第一响应信息。能够在数据包中包括可信度量相关信息,在建立通信的过程中对第二网元进行可信验证,提高第一网元与第二网元之间通信过程的安全性,并进一步提高第一网元与第二网元的安全性。
结合第二方面,在第二方面的某些实现方式中,所述第一请求信息包括第二字段,所述第二字段包括所述第一挑战值,所述第一挑战值用于所述第二网元生成第一响应信息。
本申请提供的实施例中,在第一请求信息中可以包括第一挑战值,能够在第一网元与第二网元没有预先约定和存储挑战值的情况下,用于所述第二网元生成第一响应信息,用于第一网元对第二网元进行可信验证,提高第一网元与第二网元之间通信过程的安全性,并进一步提高第一网元与第二网元的安全性。
结合第二方面,在第二方面的某些实现方式中,所述第一挑战值为第一随机数、第二随机数、时间戳和约定字段的数值中的任意一种。所述第一随机数为可信第三方提供的随机数;所述第二随机数为所述第一网元为验证所述第二网元是否可信而生成的随机数;所述时间戳为第一网元和第二网元均信任的可信时钟,如通过背书者背书的时钟产生的时钟信息;所述约定字段的数值为IPsec协议等协议中任意第X至第Y位比特数据。
本申请提供的实施例中,第一网元复用第一随机数、时间戳或约定字段的数值作为挑战值,无需为了对第二网元进行可信度量而生成随机数作为挑战值,能够节约资源开销,且无需增加新的字段存放挑战值,能够简化第一数据包的结构,便于第二网元解析第一数据包,从而提高其作出响应的效率。
结合第二方面,在第二方面的某些实现方式中,所述约定字段的数值为所述第一数据包的序列号。
本申请提供的实施例中,第一网元可以复用第一数据包的序列号作为第一挑战值,所述约定字段即为序列号字段,能够节约资源开销,且无需增加新的字段存放挑战值,能够简化第一数据包的结构,便于第二网元解析第一数据包,从而提高其作出响应的效率。
第一网元可以根据实际需求选择不同类型的挑战值,用于第二网元生成第一响应信息,能够提高第一网元发起可信验证的灵活性。
结合第二方面,在第二方面的某些实现方式中,所述第一请求信息包括第三字段,所述第三字段包括所述第一挑战值的长度。
本申请提供的实施例中,在数据包中,所述第一挑战值可以只占用所述第二字段中的部分字段,利用第三字段存储挑战值的长度信息,能够便于所述第二网元读取所述第二字段中挑战值所占据的具体字段,节约读取时间和资源开销。
结合第二方面,在第二方面的某些实现方式中,所述第一响应信息包括第四字段,所述第四字段为第二标志位,所述第二标志位用于标识所述第二数据包包括证明信息或证明结果,所述证明信息由所述第一网元根据所述第一挑战值生成的,所述证明结果包括所述第二网元被证明可信的结果。
本申请提供的实施例中,在数据包中包括第二标志位,能够便于第一网元获知所述第二数据包包括用于验证第二网元是否可信的有效信息,从而读取所述第一响应信息并根据所述第一响应信息验证第二网元的可信状态,防止出现丢包等问题。
结合第二方面,在第二方面的某些实现方式中,所述第一响应信息包括第五字段,所述第五字段包括所述证明信息或所述证明结果。
本申请提供的实施例中,在第二数据包中可以包括证明信息,能够在第一网元与第二网元建立通信的过程中对第二网元的证明信息进行验证,从而验证第二网元是否可信,提高第一网元与第二网元之间通信过程的安全性,并提高第一网元与第二网元的安全性;或者,在第二数据包中也可以包括证明结果,所述证明结果可以为其他验证者验证第二网元可信的结果,并发送给第二网元,用于第二网元展示给后续验证者如第一网元,第一网元无需对证明信息进行验证,只需查验证明结果,确认第二网元的可信状态,能够节约资源开销。
结合第二方面,在第二方面的某些实现方式中,所述第五字段包括证明结果,所述证明结果包括身份信息、可信内容和新鲜度中的一种或多种,所述身份信息用于指示验证所述第二网元可信的验证者的身份,所述可信内容用于指示所述第二网元被验证可信的内容,所述新鲜度用于指示所述第二网元被验证可信的时间。
在本申请提供的实施例中,所述第二网元可以存储其他验证方对其可信状态进行验证的证明结果,在接收到第一网元的第一数据包时,发送所述证明结果,而无需重复生成证明信息,第一网元也无需执行重复的验证过程,从而节约资源开销。
结合第二方面,在第二方面的某些实现方式中,所述第一响应信息包括证明信息,所述证明信息包括引证和度量日志,所述引证包括度量日志的摘要,所述度量日志包括所述终端设备进行可信度量的过程信息。
在本申请提供的实施例中,通过在证明信息中包括引证和度量日志,度量日志的摘要是对度量日志进行哈希计算所得,可以用于第一网元对度量日志的完整性验证,有利于提高通信过程的安全性,并提高网元的安全性。
结合第二方面,在第二方面的某些实现方式中,所述证明信息包括度量值,所述度量值为所述第二网元的可信状态信息。
在本申请提供的实施例中,通过在证明信息中包括度量值,所述度量值是由所述第二网元的可信计算平台对度量日志进行运算所得,可以用于第一网元对度量日志的验证,判断所述证明信息中的度量日志的有效性,进而提高第一网元与第二网元之间通信过程的安全性,并提高第一网元与第二网元的安全性。
结合第二方面,在第二方面的某些实现方式中,所述证明信息包括可信签名,所述可信签名为所述第二网元对度量值的签名。
在本申请提供的实施例中,通过在证明信息中包括可信签名,可以用于第一网元根据对应的挑战值即第一挑战值对所述可信签名进行验签,确认所述可信签名是由所述第二网元根据所述第一挑战值生成,从而验证所述第二网元的可信状态,提高第一网元与第二网元之间通信过程的安全性,并提高第一网元与第二网元的安全性。
结合第二方面,在第二方面的某些实现方式中,所述第五字段包括第二挑战值,所述第二挑战值用于所述第一网元生成第二响应信息,所述第二响应信息用于验证所述第一网 元是否可信。
本申请提供的实施例中,第二网元作为被验证方在生成第一响应信息时,也可以作为验证方向第一网元发起验证请求,请求验证第一网元是否可信,进行双向验证,进一步提高第一网元与第二网元之间的通信安全性,并提高第一网元与第二网元的安全性。
结合第二方面,在第二方面的某些实现方式中,所述第二挑战值为第三随机数、第四随机数、时间戳和约定字段的数值中的任意一种,所述第三随机数为可信第三方提供的随机数,所述第四随机数为第二网元为验证所述第一网元是否可信而生成的随机数。
本申请提供的实施例中,第二网元可以复用第三随机数、时间戳或约定字段的数值作为挑战值,而无需为进行可信度量而生成挑战值,能够节约资源开销,且无需增加新的字段存放挑战值,能够简化第二数据包的结构,便于第一网元解析第二数据包,从而提高其作出响应的效率。
结合第二方面,在第二方面的某些实现方式中,所述第二标志位还用于触发所述第一网元生成第二响应信息。
本申请提供的实施例中,第一网元和第二网元可以预先约定第二挑战值,并存储于所述第二网元,在第二网元需要向第一网元发起验证请求,请求验证第一网元是否可信时,所述第二网元无需生成挑战值或复用挑战值,而是由第二标志位触发第一网元生成第二响应信息。
结合第二方面,在第二方面的某些实现方式中,所述第一响应信息包括第六字段,所述第六字段用于指示所述证明信息或所述证明结果的长度。
本申请提供的实施例中,在数据包中,所述证明信息可以只占用所述第五字段中的部分字段,利用第六字段存储证明信息或证明结果的长度信息,能够便于所述第一网元读取所述第五字段中证明信息或证明结果所占据的具体字段,节约读取时间和资源开销。
第三方面,提供一种通信装置,包括:发送单元,用于发送第一数据包,所述第一数据包包括第一请求信息,所述第一请求信息用于请求验证第二网元是否可信;接收单元,用于接收第二数据包,所述第二数据包包括响应信息,所述响应信息用于验证所述第二网元是否可信。
结合第三方面,在第三方面的某些实现方式中,所述第一请求信息包括第一字段,所述第一字段为第一标志位,所述第一标志位用于触发所述第二网元生成所述第一响应信息。
结合第三方面,在第三方面的某些实现方式中,所述第一标志位用于标识所述第一请求信息包括第一挑战值,所述第一挑战值用于生成所述第一响应信息。
结合第三方面,在第三方面的某些实现方式中,所述第一请求信息包括第二字段,所述第二字段包括所述第一挑战值。
结合第三方面,在第三方面的某些实现方式中,所述第一挑战值为第一随机数、第二随机数、时间戳和约定字段的数值中的任意一种。
结合第三方面,在第三方面的某些实现方式中,所述约定字段的数值为所述第一数据包的序列号。
结合第三方面,在第三方面的某些实现方式中,所述第一请求信息包括第三字段,所述第三字段包括所述第一挑战值的长度。
结合第三方面,在第三方面的某些实现方式中,所述第一响应信息包括第四字段,所 述第四字段为第二标志位,所述第二标志位用于标识所述第二数据包包括证明信息或证明结果,所述证明信息由所述第二网元根据所述第一挑战值生成,所述证明结果包括所述第二网元被证明可信的结果。
结合第三方面,在第三方面的某些实现方式中,所述证明结果包括身份信息、可信内容和新鲜度中的一种或多种,所述身份信息用于指示验证所述第二网元可信的验证者的身份,所述可信内容用于指示所述第二网元被验证可信的内容,所述新鲜度用于指示所述第二网元被验证可信的时间。
结合第三方面,在第三方面的某些实现方式中,所述第一响应信息包括第五字段,所述第五字段包括所述证明信息或所述证明结果。
结合第三方面,在第三方面的某些实现方式中,所述第五字段包括第二挑战值,所述第二挑战值用于所述第一网元生成第二响应信息,所述第二响应信息用于验证所述第一网元是否可信。
结合第三方面,在第三方面的某些实现方式中,所述第二挑战值为第三随机数、第四随机数、时间戳和约定字段的数值中的任意一种。
结合第三方面,在第三方面的某些实现方式中,所述约定字段的数值为所述第二数据包的序列号。
结合第三方面,在第三方面的某些实现方式中,所述第二标志位还用于触发所述第一网元生成所述第二响应信息。
结合第三方面,在第三方面的某些实现方式中,所述第二标志位还用于标识所述第一响应信息包括所述第二挑战值。
结合第三方面,在第三方面的某些实现方式中,所述第一响应信息包括第六字段,所述第六字段用于指示所述证明信息或证明结果的长度。
第四方面,提供一种通信装置,包括:接收单元,用于接收第一数据包,所述第一数据包包括第一请求信息,所述第一请求信息用于请求验证所述第二网元是否可信;发送单元,还用于发送第二数据包,所述第二数据包包括第一响应信息,所述第一响应信息用于验证所述第二网元是否可信。
结合第四方面,在第四方面的某些实现方式中,所述第一请求信息包括第一字段,所述第一字段为第一标志位,所述第一标志位用于触发所述第二网元生成所述第一响应信息。
结合第四方面,在第四方面的某些实现方式中,所述第一标志位用于标识所述第一请求信息包括第一挑战值,所述第一挑战值用于生成所述第一响应信息。
结合第四方面,在第四方面的某些实现方式中,所述请求信息包括第二字段,所述第二字段包括所述第一挑战值。
结合第四方面,在第四方面的某些实现方式中,所述第一挑战值为第一随机数、第二随机数、时间戳和约定字段的数值中的任意一种。
结合第四方面,在第四方面的某些实现方式中,所述约定字段的数值为所述第一数据包的序列号。
结合第四方面,在第四方面的某些实现方式中,所述请求信息包括第三字段,所述第三字段包括所述第一挑战值的长度。
结合第四方面,在第四方面的某些实现方式中,所述响应信息包括第四字段,所述第 四字段为第二标志位,所述第二标志位用于标识所述第二数据包包括所述证明信息或证明结果,所述证明信息由所述第二网元根据所述第一挑战值生成,所述证明结果包括所述第二网元被证明可信的结果。
结合第四方面,在第四方面的某些实现方式中,所述响应信息包括第五字段,所述第五字段包括所述证明信息或所述证明结果。
结合第四方面,在第四方面的某些实现方式中,所述证明结果包括身份信息、可信内容和新鲜度中的一种或多种,所述身份信息用于指示验证所述第二网元可信的验证者的身份,所述可信内容用于指示所述第二网元被验证可信的内容,所述新鲜度用于指示所述第二网元被验证可信的时间。
结合第四方面,在第四方面的某些实现方式中,所述第五字段包括第二挑战值,所述第二挑战值用于所述第一网元生成第二响应信息,所述第二响应信息用于所述第二网元验证所述第一网元是否可信。
结合第四方面,在第四方面的某些实现方式中,所述第二挑战值为第三随机数、第四随机数、时间戳和约定字段的数值中的任意一种。
结合第四方面,在第四方面的某些实现方式中,所述约定字段的数值为所述第二数据包的序列号。
结合第四方面,在第四方面的某些实现方式中,所述第二标志位还用于触发所述第一网元生成所述第二响应信息。
结合第四方面,在第四方面的某些实现方式中,所述第二标志位还用于标识所述第一响应信息包括所述第二挑战值。
结合第四方面,在第四方面的某些实现方式中,所述响应信息包括第六字段,所述第六字段用于指示所述证明信息或证明结果的长度。
第五方面,提供了一种通信系统,该系统包括上述第一方面或第一方面的任一种可能实现方式中的装置以及第二方面或第二方面中的任一种可能实现方式中的装置。
第六方面,提供了一种计算机程序产品,所述计算机程序产品包括:计算机程序或一组指令,当所述计算机程序或一组指令被计算机运行时,使得第一方面或其任意可能的实现方式中的方法被执行。
第七方面,提供了一种计算机程序产品,所述计算机程序产品包括:计算机程序或一组指令,当所述计算机程序或一组指令被计算机运行时,使得第二方面或其任意可能的实现方式中的方法被执行。
第八方面,提供了一种计算机可读介质,用于存储计算机程序,所述计算机程序包括用于执行上述第一方面或其任意可能的实现方式中的方法的指令。
第九方面,提供了一种计算机可读介质,用于存储计算机程序,所述计算机程序包括用于执行上述第二方面或其任意可能的实现方式中的方法的指令。
第十方面,提供了一种芯片,包括处理器,用于从存储器中调用并运行所述存储器中存储的指令,使得安装有所述芯片的通信设备执行上述第一方面或其任意可能的实现方式中的方法。
在一种可能的实现方式中,处理器和存储器集成在一起;
在另一种可能的实现方式中,上述存储器位于所述通信装置之外。
所述通信装置还包括通信接口,所述通信接口用于所述通信装置与其他设备进行通信,例如数据和/或信号的发送或接收。示例性的,通信接口可以是收发器、电路、总线、模块或其它类型的通信接口。
第十一方面,提供了一种芯片,包括处理器,用于从存储器中调用并运行所述存储器中存储的指令,使得安装有所述芯片的通信设备执行上述第二方面或其任意可能的实现方式中的方法。
在一种可能的实现方式中,处理器和存储器集成在一起;
在另一种可能的实现方式中,上述存储器位于所述通信装置之外。
所述通信装置还包括通信接口,所述通信接口用于所述通信装置与其他设备进行通信,例如数据和/或信号的发送或接收。示例性的,通信接口可以是收发器、电路、总线、模块或其它类型的通信接口。
第十二方面,提供一种通信装置,所述装置包括至少一个处理器,所述至少一个处理器用于执行所述程序或指令以使所述通信装置执行以上第一方面或第一方面的任意可能的实现方式中的方法。
第十三方面,提供一种通信装置,所述装置包括至少一个处理器,所述至少一个处理器用于执行所述程序或指令以使所述通信装置执行以上第二方面或第二方面的任意可能的实现方式中的方法。
附图说明
图1是IPsec协议体系架构示意图。
图2是本申请实施例提供的一种集成可信度量的通信方法交互示意图。
图3是本申请实施例提供的另一种集成可信度量的通信方法交互示意图。
图4是本申请实施例适用的AH协议数据包包头的结构示意图。
图5是本申请实施例提供的一种AH协议数据包包头的结构示意图。
图6是本申请实施例提供的另一种AH协议数据包包头的结构示意图。
图7是本申请实施例提供的又一种AH协议数据包包头的结构示意图。
图8是本申请实施例提供的又一种AH协议数据包包头的结构示意图。
图9是本申请实施例提供的又一种AH协议数据包包头的结构示意图。
图10是本申请实施例提供的一种AH协议通信方法的交互示意图。
图11是申请实施例适用的一种IKE协议数据包包头的结构示意图。
图12是本申请实施例提供的一种IKE协议数据包包头的结构示意图。
图13是本申请实施例适用的一种ESP协议数据包包头的结构示意图。
图14是本申请实施例提供的一种IKE协议通信方法的交互示意图。
图15是本申请实施例适用的一种IP数据包包头的结构示意图。
图16是本申请实施例提供的一种装置框图。
图17是本申请实施例提供的另一种装置框图。
具体实施方式
下面将结合附图,对本申请中的技术方案进行描述。
本申请实施例的技术方案可以应用于各种通信系统,例如:全球移动通讯(global system of mobile communication,GSM)系统、码分多址(code division multiple access,CDMA)系统、宽带码分多址(wideband code division multiple access,WCDMA)系统、通用分组无线业务(general packet radio service,GPRS)、长期演进(long term evolution,LTE)系统、LTE频分双工(frequency division duplex,FDD)系统、LTE时分双工(time division duplex,TDD)、通用移动通信系统(universal mobile telecommunication system,UMTS)、全球互联微波接入(worldwide interoperability for microwave access,WiMAX)通信系统、第五代(5th generation,5G)系统、未来的第六代系统(6th generation,6G)等通信系统等。
本申请实施例中的网元可以是用于与终端设备通信的设备,该网元可以是全球移动通讯(global system of mobile communication,GSM)系统或码分多址(code division multiple access,CDMA)中的基站(base transceiver station,BTS),也可以是宽带码分多址(wideband code division multiple access,WCDMA)系统中的基站(nodeB,NB),还可以是LTE系统中的演进型基站(evolutional nodeB,eNB或eNodeB),还可以是云无线接入网络(cloud radio access network,CRAN)场景下的无线控制器,或者该网络设备可以为中继站、接入点、车载设备、可穿戴设备、5G网络以及未来6G网络等通信网络中的网络设备或者公共陆地移动网络(public land mobile network,PLMN)中的网络设备或功能单元等,本申请实施例并不限定。
在本申请中,“用于指示”可以包括用于直接指示和用于间接指示。当描述某一指示信息用于指示A时,可以包括该指示信息直接指示A或间接指示A,而并不代表该指示信息中一定携带有A。在本申请实施例中,“当……时”、“在……的情况下”、“若”以及“如果”等描述均指在某种客观情况下设备会做出相应的处理,并非是限定时间,且也不要求设备在实现时一定要有判断的动作,也不意味着存在其它限定。
本申请实施例中,对于名词的数目,除非特别说明,表示“单数名词或复数名词”,即“一个或多个”。“至少一个”是指一个或者多个,“多个”是指两个或两个以上,“一种或多种”中的“多种”是指也类似两种或两种以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A、B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。例如,A/B,表示:A或B。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a、b或c中的至少一项(个),表示:a,b,c,a和b,a和c,b和c,或者a和b和c,其中a,b,c可以是单个,也可以是多个。
为便于理解本申请实施例,首先对本申请中涉及的概念进行简单说明。
1.可信计算(trusted computing,TC):是一项旨在使得计算机总是按照期望的方式运行的技术,“可信”强调行为结果是可预测和可控制的。可信计算由计算机硬件和软件强制执行。计算系统的可信技术,以一个信任根作为起始,发展到对硬件平台、操作系统和应用程序的信任,每层的管理和认证的强度和每层的可信性相对应。进一步地,信任会被延伸到完整的计算机系统,并且会采用保护措施来保证计算机资源和预期计算机行为的整体性,以此提升计算机系统的可信任性。
可信计算发展至今,目前产生了两个不同的研究方向。一个是利用物理防篡改设备保障可信计算根(trusted computing base,TCB)可信,以TCB为信任锚点构建计算机系统的可信计算体系;另一个是构建隔离计算系统保障特定敏感软件代码运行环境的可信,以此思路为演进,发展出了基于中央处理单元(central processing unit,CPU)特殊安全模式的通用可信执行环境(trusted execution environment,TEE)。
2.远程证明(remote attestation,RA)是可信计算整体解决方案中的关键技术之一,用来判断设备的可信性状态。远程证明使得用户或其他人可以检测到该用户的计算机的变化,这样可以避免向不安全或安全受损的计算机发送私有信息或重要的命令。远程证明机制通过硬件生成一个证书,声明哪些软件正在运行。用户可以将这个证书发给远程的一方以表明他的计算机没有受到篡改。远程证明通常与公钥加密结合来保证发出的信息只能被发出证明要求的程序读取,而非其它窃听者。通过这些限制,达到增强终端可信性,加强系统安全的目的。目前远程证明技术主要采用以下几种方案:
(1)隐私证书颁发机构(privacy certificate authority,PCA):验证者(verifier)(也可以称为挑战者)给可信计算平台(trusted platform module,TPM)发送挑战,即请求一个或者多个平台状态寄存器(platform configuration register,PCR)的内容;平台收集存储度量日志文件,TPM使用身份密钥对PCR的内容进行签名;平台向证书中心(certificate authority,CA)发出请求平台证书的消息,然后将平台证书、存储度量日志(event_log)、签名的PCR发送给验证者;验证者证明请求,即重新计算存储度量日志并与收到的PCR值进行比对,验证平台证书和签名。
(2)直接匿名认证(direct anonymous attestation,DAA):TPM选择一个秘密信息,并通过安全的“零知识证明”获取DAA发行者(issuer)对该秘密信息签发的DAA证书;验证者通过“零知识证明”的方式证明TPM拥有一个有效的DAA证书。
(3)英特尔软件保护扩展(intel software guard extensions,Intel SGX)跨平台验证:SGX技术使得开发者可以把应用程序划分到CPU强化的飞地(enclave)中或者内存中可执行的保护区域,即使在受攻击的平台中也能提高安全性。Intel SGX的方案大致如下:被认证飞地获取当前信息生成报告结构,使用引用飞地(quote enclave)的报告密钥生成标签,发送给引用飞地;引用飞地根据验证被认证飞地是否处于同一平台(如同一设备),将收到的报告结构封装成引用结构并使用签名密钥进行签名;目标飞地验证引证(quote)是否由可靠英特尔处理器生成。
3.因特网协议安全协议(IPsec):国际互联网工程任务组(the internet engineering task force,IETF)定义的一个协议组。通信双方在英特网协议(the internet protocol,IP)层通过加密、完整性校验、数据源认证等方式,保证了IP数据报文在网络上传输的机密性、完整性和防重放。
4.因特网密钥交换(internet key exchange,IKE)协议:一种混合协议,在英特网安全关联和密钥管理协议(internet security association key management protocol,ISAKMP)框架内实现了Oakley密钥交换和安全密钥交换(secure key exchange mechanism,SKEME)。Oakley和SKEME都定义了一种交换密钥的方法,这包括了有效负载的结构、传输的信息有效负载、密钥的处理步骤以及如何使用密钥。
5.报文认证头(authentication header,AH)协议:IPsec体系结构中的一种协议,该 协议用于为因特网协议数据(internet protocol,IP)提供无连接完整性与数据源认证,并提供保护以避免重播情况。
6.封装安全载荷(encapsulating security payload,ESP)协议:IPsec体系结构中的一种协议。该协议在传输模式和隧道模式下使用,它采用加密和验证机制,为IP数据包提供数据源验证、数据完整性、反重放和机密安全服务。IPsec ESP通过加密需要保护的数据,并且将加密后的数据放置在IPsec ESP的数据部分来提供机密性和完整性。根据用户安全要求,这个机制既可以用于加密一个传输层的段,如:传输控制协议(transmission control protocol,TCP)、用户数据包协议(user datagram protocol,UDP)、英特网控制报文协议(internet control message protocol,ICMP)、英特网组管理协议(internet group management protocol,IGMP),也可以用于加密整个IP数据包。
7.安全关联(security association,SA):SA对两台计算机之间的策略协议进行编码,指定它们将使用哪些算法和什么样的密钥长度,以及实际的密钥本身。SA是单向的,在两个使用IPSec的实体如主机或路由器间建立逻辑连接,定义实体间如何使用安全服务(如加密)进行通信。
8.安全关联数据库(security association database,SAD):用于已经建立的SA相关信息。
9.安全策略(security policy,SP):由用户配置,定义了若干策略,说明对于各个IP数据流应当做出怎样的处理,是透传、丢弃,还是执行IPSec加解密。
10.安全策略数据库(security policy database,SPD)用于存放节点的SP,通常是一个有序的结构,用访问控制列表来描述数据流特性。当接收或将要发出IP包时,首先要查找SPD来决定如何进行处理。存在3种可能的处理方式:丢弃、不用IPSec和使用IPSec。当需要使用IPSec时,再在SAD中查找对应的信息。
11.安全参数索引(security parameters index,SPI):一个32位(bit)的数值,用于唯一标识一个SA。
图1是IPsec协议体系架构的示意图。安全策略SP和安全关联SA分别由节点A和节点B的SPD和SAD进行存储。SA可以看作网络层中构建的单向逻辑连接,IPsec提供服务首先需要建立SA,IKE协议就是用来建立和管理SA的。通过运行IKE协议,节点A和节点B完成密钥交换,建立了由节点A向节点B和由节点B向节点A的两个SA,这样节点A和节点B之间就可以进行双向的IPsec通信。之后,AH或ESP传输协议利用IKE得到的密钥,为节点A和B之间的通信提供无连接数据完整性、抗重播、数据机密性和有限的通信流量机密性等服务。对等授权数据库(peer authorization database,PAD)用于指示对端的认证方法,如预先设置,或IKE协商等。
图2是本申请实施例提供的一种集成可信度量的通信方法的交互示意图。
S210,第一网元发送第一数据包,相应地,第二网元接收第一数据包。
第一网元发送第一数据包,所述第一数据包包括第一请求信息,所述第一请求信息用于请求验证所述第二网元是否可信。
在本申请提供的实施例中,由第一网元向第二网元发送包括第一请求信息的数据包,触发第二网元执行可信度量、生成第一响应信息,所述第一响应信息可以包括证明信息或证明结果,所述第一响应信息用于第一网元验证第二网元是否可信,以提高第一网元与第 二网元之间通信的安全性,并提高第一网元与第二网元的安全性。
在一种可能的实现方式中,所述第一请求信息包括第一字段,所述第一字段为第一标志位,所述第一标志位用于触发所述第二网元生成所述第一响应信息。
在本申请提供的实施例中,第一标志位可以位于所述第一数据包的包头中,即,将第一数据包包头中保留字段的部分字段设置为1作为标志位,触发第二网元生成第一响应信息。在所述第一数据包中可以不包括挑战值(challenge data),所述挑战值可以由第一网元与第二网元预先约定并存储于第一网元和/或第二网元,在第二网元接收到包括标志位的第一数据包时,触发生成第一响应信息。
在一种可能的实现方式中,所述第一标志位还可以用于标识所述第一请求信息包括第一挑战值。
在本申请提供的实施例中,所述第一请求信息可以包括第一标志位和第一挑战值,并利用第一标志位标识所述第一请求信息包括所述第一挑战值,由第一挑战值触发第二网元生成第一响应信息。
可选地,所述第一标志位也可以位于所述第一数据包的包体中,或者位于其他具有保留字段的字段中,示例性地,第一标志位可以位于数据包包头的下一载荷字段中的保留字段中。
在一种可能的实现方式中,所述第一请求信息包括第二字段,所述第二字段包括第一挑战值,所述第一挑战值用于所述第二网元生成第一响应信息。
在本申请提供的实施例中,所述第一网元与第二网元可以不预先约定挑战值,由第一网元根据实际需要生成第一挑战值,并存储于第一数据包中,对第二网元发起验证请求,第二网元根据所述第一挑战值生成第一响应信息。
在一种可能的实现方式中,所述第一挑战值为第一随机数、第二随机数、时间戳和约定字段的数值中的任意一种。
所述第一随机数可以为可信第三方提供的随机数,所述可信第三方为第一网元与第二网元均信任的第三方;所述第二随机数为所述第一网元为验证所述第二网元是否可信而生成的随机数;所述时间戳可以为时钟信息,所述时钟信息可以为第一网元与第二网元均信任的可信时钟,如通过背书者背书的时钟产生的时钟信息,所述背书即证明平台是可信的,例如通过写入背书证书(endorsement key,EK)用来标识平台的唯一身份,以证明所述平台可信等;所述约定字段的数值可以为第一网元与第二网元预先约定的IPsec协议等任意协议中任意第X到第Y位比特数据。
在一种可能的实现方式中,所述约定字段的数值可以为所述第一数据包的序列号。
在本申请提供的实施例中,所述第一网元可以复用第一随机数、时间戳或约定字段的数值包括第一数据包的序列号等作为挑战值,无需为了对第二网元进行可信度量而生成随机数作为挑战值,能够节约资源开销。第一网元也可以生成挑战值,根据实际情况选取挑战值,能够提高第一网元发起可信验证的灵活性。
在一种可能的实现方式中,所述请求信息包括第三字段,所述第三字段包括所述第一挑战值的长度。
本申请提供的实施例中,在数据包中,所述第一挑战值可以只占用所述第二字段中的部分字段,利用第三字段存储挑战值的长度信息,能够便于所述第二网元读取所述第二字 段中挑战值所占据的具体字段,节约读取时间和资源开销。
S220,第一网元接收第二数据包,相应地,第二网元发送第二数据包。
第一网元接收第二数据包,所述第二数据包包括第一响应信息,所述第一响应信息用于第一网元验证第二网元是否可信。
本申请提供的实施例中,第二网元对第一网元的请求信息作出响应,能够由第一网元对其是否可信进行验证,以提高第一网元与第二网元之间通信过程的安全性,并提高第一网元与第二网元的安全性。
在一种可能的实现方式中,所述第一响应信息包括第四字段,所述第四字段为第二标志位,所述第二标志位用于标识所述第二数据包包括证明信息或证明结果,所述证明信息由第二网元根据挑战值生成,所述证明结果包括第二网元被验证可信的结果。
本申请提供的实施例中,在数据包中包括第二标志位能够便于第一网元获知所述第二数据包包括用于可信度量的有效信息,从而读取所述第一响应信息并根据所述第一响应信息验证第二网元的可信状态,防止出现丢包等问题。
在一种可能的实现方式中,所述第一响应信息包括第五字段,所述第五字段包括证明信息,所述证明信息包括引证和度量日志,所述度量日志为所述第二网元进行可行度量的过程信息,所述引证包括所述度量日志的摘要。
可选地,所述证明信息还可以包括度量值,所述度量值为所述第二网元的可信状态信息。
可选地,所述证明信息还可以包括可信签名,所述可信签名为所述第二网元对度量值的签名。
在本申请提供的实施例中,第一网元可以根据对应的挑战值对所述可信签名进行验签,确认所述可信签名是由所述第二网元根据所述挑战值生成,从而验证所述第二网元的可信状态,并根据度量判断度量日志的有效性,根据度量日志的摘要对度量日志的完整性验证,有利于提高通信过程的安全性。
在一种可能的实现方式中,所述第五字段包括证明结果,所述证明结果包括身份信息、可信内容和新鲜度中的一种或多种,所述身份信息用于指示证明所述第二网元可信的验证者的身份,所述可信内容用于指示所述第二网元被证明可信的内容,所述新鲜度用于指示所述第二网元被证明可信的时间。
第一网元通过身份信息可以确定作出所述证明结果的验证者的身份,通过可信内容可以确定验证者执行可信证明过程中验证的具体可信内容,及其是否适用于本次的可信验证过程,通过新鲜度可以确定其他验证者作出所述证明结果的时间,进而确定所述证明结果是否在有效期内,判断是否需要重新进行可信验证。
在本申请提供的实施例中,所述第二网元可以存储其他验证方对其可信状态进行验证的证明结果,在接收到第一网元的第一数据包时,发送所述证明结果,而无需重复生成证明信息,从而节约资源开销。
在一种可能的实现方式中,所述第五字段包括第二挑战值,所述第二挑战值用于所述第一网元生成第二响应信息,所述第二响应信息用于验证第一网元是否可信。
同样地,所述第二响应信息可以包括第一网元的证明信息或证明结果。
本申请提供的实施例中,第二网元作为被验证方在生成响应信息时,也可以作为验证 方向第一网元发起验证请求,请求验证第一网元是否可信,进行双向验证,进一步提高第一网元与第二网元之间的通信安全性,并提高第一网元与第二网元的安全性。
在一种可能的实现方式中,所述第二挑战值为第三随机数、第四随机数、时间戳和约定字段的数值中的任意一种。所述第三随机数为可信第三方提供的随机数,所述可信第三方为第一网元与第二网元均信任的第三方;所述第四随机数为第二网元为验证第一网元是否可信而生成的随机数。所述第三随机数与所述第一随机数可以为同一数值,所述第三随机数与第一随机数也可以称为可信随机数。
本申请提供的实施例中,第二网元可以复用第三随机数、时间戳或约定字段的数值作为挑战值,而无需为进行可信度量而生成挑战值,能够节约资源开销。
可选地,所述第二挑战值也可以为第二网元为对第一网元进行可信验证而生成的随机数。
在一种可能的实现方式中,所述第二标志位还用于指示所述第一响应信息包括所述第二挑战值。
在本申请提供的实施例中,在第二网元需要对第一网元进行可信验证时,所述第一响应信息可以包括第二挑战值和第二标志位,第二标志位指示第一响应信息包括第二挑战值,并由第二挑战值触发第一网元生成第二响应信息,与第一网元进行双向验证,进一步提高第一网元与第二网元的通信安全。
在一种可能的实现方式中,所述第二标志位还用于触发所述第一网元生成第二响应信息。
在本申请提供的实施例中,在第二网元需要对第一网元进行可信验证时,所述第一响应信息可以包括第二标志位而不包括第二挑战值,由第二标志位触发第一网元生成第二响应信息,所述第二挑战值可以由第一网元与第二网元预先约定并存储于第一网元和/或第二网元,在第一网元收到第一网元的验证请求时,根据预先存储的挑战值生成第二响应信息。
在一种可能的实现方式中,所述第一响应信息包括第六字段,所述第六字段用于指示所述证明信息或证明结果的长度。
本申请提供的实施例中,在数据包中,所述证明信息可以只占用所述第五字段中的部分字段,利用第六字段存储证明信息或证明结果的长度信息,能够便于所述第一网元读取所述第五字段中证明信息或证明结果所占据的具体字段,节约读取时间和资源开销。
图3是本申请提供的另一种集成可信度量的通信方法的交互示意图。如图3所示,第一网元无需向第二网元发送包括第一请求信息的第一数据包,由第二网元主动生成第一响应信息,并发送包括第一响应信息的第二数据包,用于所述第一网元验证所述第二网元是否可信。
S310,第二网元生成第一响应信息。
在一种可能的实现方式中,第二网元可以基于计时机制、计数机制或事件触发机制等主动生成第一响应信息,用于第一网元验证第二网元的可信状态,所述第一响应信息存储于第二数据包中。
可选地,第二网元基于计时机制触发主动生成第一响应信息,即,在计时器计时到约定时间后,第二网元主动生成第一响应信息。
可选地,第二网元基于计数机制触发主动生成第一响应信息,即,在计数器计数到约定数值后,第二网元主动生成第一响应信息。
可选地,第二网元基于事件触发机制主动生成第一响应信息,即,在预设的某一事件发生时,触发第二网元主动生成第一响应信息,示例性地,可以预设在其他验证者向第二网元发送对其的证明结果时,触发第二网元主动生成对第一网元的第一响应信息。
在本申请提供的实施例中,第二网元主动生成第一响应消息,无需由第一网元发送包含第一请求信息的第一数据包触发终端设备生成第一响应信息,能够减少信令开销。
S320,第二网元向第一网元发送第二数据包。
第二网元可以基于计时机制、计数机制或事件触发机制等主动向第一网元发送第二数据包,所述第二数据包包括所述第一响应信息。
在一种可能的实现方式中,所述第一响应消息包括证明信息,所述证明信息由所述终端设备根据第一挑战值生成。
可选地,所述第一挑战值可以为可信随机数、时间戳或约定字段的数值。
可选地,所述约定字段的数值可以为第一数据包的序列号。
在本申请提供的实施例中,所述第一挑战值可以由第二网元与第一网元预先约定并存储于终端设备,并基于计时机制、计数机制等触发第二网元根据挑战值主动生成第一响应信息,无需第一网元发送第一数据包触发第二网元生成第一响应消息,可以减少信令开销。
在一种可能的实现方式中,所述证明信息包括引证和度量日志,所述度量日志为所述第二网元支持的可信计算平台的度量过程信息,所述引证包括所述度量日志的摘要,所述度量日志的摘要为对度量日志进行哈希计算所得。
可选地,所述证明信息还可以包括度量值,所述度量值为所述终端设备的可信状态信息。
可选地,所述证明信息还可以包括可信签名,所述可信签名为所述终端设备对所述度量值的签名。
可选地,所述证明信息还可以包括终端设备的运行状态、健康度、安全相关的配置或构建信息,硬件、固件、软件、文件系统、证明环境的身份、可信执行环境、数据的完整性。
在一种可能的实现方式中,所述第一响应消息包括证明结果,所述证明结果包括身份信息、可信内容和新鲜度中的一种或多种。
S330,第一网元验证第二网元的第一响应信息。
在一种可能的实现方式中,所述第一响应信息包括证明信息,所述证明信息由第二网元根据第一挑战值生成。
所述第一网元利用证明公钥和第一挑战值对所述可信签名进行解密,验证所述证明信息是否由所述第二网元生成,并将解密所得的度量值与可信证明参考值对比,验证所述第二网元的可信状态,并验证所述度量日志是否有效。
在另一种可能的实现方式中,所述第一响应信息包括证明结果,所述证明结果包括身份信息、可信内容和新鲜度中的一种或多种。
第一网元通过身份信息可以确定作出所述证明结果的验证者的身份,通过可信内容可以确定验证者执行可信证明过程中验证的具体可信内容,及其是否适用于本次的可信验证 过程,通过新鲜度可以确定其他验证者作出所述证明结果的时间,进而确定所述证明结果是否在有效期内,判断是否需要重新进行可信验证。
可选地,证明结果还可以包括以下信息中的一种或多种:配置、可执行文件、文件系统、硬件、证明环境身份、源数据、存储可见性。
在本申请提供的实施例中,在第一网元请求验证第二网元是否可信前,其他验证者对第二网元是否可信进行过验证,并向第二网元发送了证明结果,第二网元可直接向第一网元发送所述证明结果,无需重复生成证明信息,能够节约空口资源。
在一种可能的实现方式中,其他验证者向可信第三方发送证明结果,并由可信第三方保存证明结果,所述可信第三方为第一网元和第二网元均信任的第三方,当第一网元请求验证第二网元是否可信时,由可信第三方向第一网元发送证明结果。
在本申请提供的实施例中,所述第一网元直接对证明结果进行查验,无需对证明信息进行逐一验证,能够节约资源开销。
以IPsec协议为例,为使图2或图3所描述的集成可信度量的通信方法的实现,可以在AH协议数据包、IKE协议数据包或ESP协议数据包等数据包的包头或包体中加入可信度量的相关信息,以使得通信主体在建立通信通道的过程中能够进行可信度量,从而提高通信过程及通信主体的安全性。
图4是本申请适用的AH数据包包头结构。所述AH包头结构中主要包括以下字段:
下一载荷头字段(next header)用于标识下一个载荷的类型,其大小可以为8比特。示例性地,其值为6,则AH包头的下一个载荷为TCP。
载荷长度字段(payload length)用于指示报文头长度,其大小可以为8比特,其值为以32位即4字节为单位的整个AH数据的长度减去2,该AH数据包括原有的AH包包头数据和加入的认证数据。
保留字段(reserved)为协议的预置保留位,用于根据实际需求留作未来使用,现有技术中,发送时其数值均设置为0,其大小可以为16比特。
安全参数索引字段(security parameter index,SPI)用于区别各个SA,其值与SA一一对应,若其值为0,则表示无SA,其大小可以为32比特。
序列号字段(sequence number)用于存放数据包的序列号,其数值从1开始递增,用于保证本次数据包发送的实时性,防止所述数据包的重放攻击,所述序列号字段的大小可以为32比特。
认证数据字段(authentication data)包含完整性校验值(integrity check value,ICV),也可以称为消息身份验证码,用于验证消息身份与完整性。ICV是通过IP报头、AH报头与IP负载来计算的。接收端在接收到数据包后,执行哈希计算,并与该值比较,若相等,则表示数据具有完整性。AH可对整个数据包(IP报头与数据包中的数据负载)提供身份验证、完整性与防重放。
若由验证者向被验证者(attester)(也可以称为被挑战者)发送AH数据包,并在所述AH数据包中包括对被验证者进行可信验证的请求信息,所述AH数据包包头的结构可以为图5至图9所描述的结构。
图5为本申请实施例提供的一种AH数据包包头结构示意图。如图5所示,复用所述AH数据包包头的保留字段,并从所述保留字段中拆分出部分字段作为标志位。
在一种可能的实现方式中,所述标志位用于触发被验证者生成可信响应信息,所述可信响应信息用于验证者验证被验证者是否可信。
在所述AH数据包的包头和包体中可以不包括第一挑战值,所述第一挑战值用于被验证者生成可信响应信息,所述第一挑战值可以由验证者和被验证者预先约定并存储于验证者和/或被验证者,在发送的AH数据包的包头中包括标志位,由标志位触发被验证者生成可信响应信息。
可选地,在保留字段中选取1比特作为标志位字段,若该位为1则触发被验证者生成可信响应信息。
可选地,在保留字段中选取2比特作为标志位字段。示例性地,若该位为01则触发被验证者生成可信响应信息。
本申请实施例仅示例性地示出选取1比特或2比特作为标志位,但对于标志位所占的比特数本申请不做限定。
在另一种可能的实现方式中,所述标志位用于标识所述AH数据包中包括第一挑战值,所述挑战值用于被验证者生成可信响应信息。
可选地,在保留字段中选取1比特作为标志位字段,若该位为1则表示所述AH数据包中包括第一挑战值。
可选地,在保留字段中选取2比特作为标志位字段。示例性地,若该位为01则表示所述AH数据包中包括第一挑战值。
可选地,所述第一挑战值可以存放于所述AH数据包的包头中。在认证数据字段后新增可信数据字段,用于存放所述第一挑战值,所述AH数据包包头的结构可以为图6所示的结构。
所述第一挑战值可以为可信随机数、时间戳和约定字段的数值中的任意一种。
所述可信随机数为验证者与被验证者均信任的可信第三方提供的随机数,所述可信随机数作为第一挑战值时可以存放于所述可信数据字段。
所述时间戳为验证者与被验证者均信任的可信时钟,如通过背书者背书的时钟产生的时钟信息,时间戳作为第一挑战值时可以存放于所述可信数据字段。
所述约定字段的数值可以为验证者与被验证者预先约定的AH协议中任意字段的数值。
示例性地,所述约定字段的数值可以为所述AH数据包的序列号,所述AH数据包的序列号即验证者向被验证者发起可信验证时,实时发送的AH数据包的序列号,验证者复用本次发送的数据包的序列号作为第一挑战值。所述AH数据包可以不新增可信数据字段,即所述第一挑战值直接存放于序列号字段,由标志位标识所述数据包包括第一挑战值,在被验证者读取到序列号字段时即可知道需作出可信响应。
所述第一挑战值还可以为验证者为对被验证者进行可信验证而生成的随机数,所述随机数可以存放于所述可信数据字段。
可选地,所述第一挑战值还可以用于防止本次验证请求的重放攻击。
可选地,所述AH数据包包头中还可以包括第一挑战值长度字段,用于指示所述第一挑战值的长度,所述第一挑战值可以存放于所述AH数据包的包体中,在所述AH数据包包体中的任意位置新增可信数据字段,用于存放所述第一挑战值。即,所述AH数据包的包头中包括标志位和第一挑战值长度字段,所述AH数据包的包头结构如图7所示。
可选地,所述第一挑战值长度字段也可以存放于AH数据包的包体中。
图8是本申请实施例提供的又一种AH数据包包头结构示意图,如图8所示,所述AH数据包包头中可以只包括可信数据字段,用于存储第一挑战值。
可选地,所述第一挑战值可以为可信随机数、时间戳、约定字段的数值和验证者生成的随机数中的任意一种。
可选地,在所述AH数据包包体中的任意位置还可以包括挑战值长度字段。
图9是本申请实施例提供的又一种AH数据包包头结构示意图,如图9所示,所述AH数据包包头中可以包括标志位、可信数据和第一挑战值长度字段。
在所述AH数据包的保留字段中拆分出部分字段分别作为标志位和挑战值长度字段,所述标志位用于标识AH数据包中包括第一挑战值。并在认证数据字段后新增可信数据字段,用于存放第一挑战值,用于被验证者生成可信响应信息。
若由被验证者向验证者发送AH数据包,并在所述AH数据包中包括对验证者的验证请求作出的响应信息,同样可以使用包含图5至图9所描述的AH数据包包头结构发送所述AH数据包。
如图5所示,在一种可能的实现方式中,AH数据包包头中仅包括标志位,所述标志位用于标识所述AH数据包包括被验证者作出的可信响应信息,所述可信响应信息包括证明信息或证明结果,即验证数据,所述验证数据可以存储于可信数据字段中,所述可信数据字段可以位于AH数据包包体中的任意位置。
可选地,在保留字段中选取1比特作为标志位字段,若该位为1则表示所述AH数据包中包括证明信息或证明结果。
可选地,在保留字段中选取2比特作为标志位字段。示例性地,若该位为10则表示所述AH数据包中包括验证数据,若该位为11则表示所述AH数据包中包括验证数据,且包括第二挑战值,所述第二挑战值用于验证者生成可信响应信息,由被验证者验证其是否可信,进行双向验证。
在一种可能的实现方式中,验证数据包括证明信息。被验证者执行可信度量并生成证明信息,被验证者向验证者发送证明信息,即发送包括证明信息的AH数据包。所述证明信息包括引证和度量日志,所述引证包括度量日志的摘要,所述度量日志包括被验证者进行可信度量的过程信息。
可选地,所述证明信息可以包括度量值。
可选地,所述证明信息还可以包括可信签名。
可选地,所述证明信息还可以包括被验证者的运行状态、健康度、安全相关的配置或构建信息,硬件、固件、软件、文件系统、证明环境的身份、可信执行环境、数据的完整性。
在另一种可能的实现方式中,验证数据包括证明结果。在所述验证者请求验证所述被验证者是否可信之前,其他验证者对所述被验证者进行过可信验证,并将证明结果发送给所述被验证者,因此,所述被验证者可直接向所述验证者发送证明结果,所述证明结果包括身份信息、可信内容和新鲜度中的一种或多种。
可选地,证明结果还可以包括以下信息中的一种或多种:
配置(configuration):验证者验证了被验证者的配置;
可执行文件(executables):验证者验证了被验证者的实时文件、脚本和/或其他加载到内存中的内容;
文件系统(file-system):验证者验证了被验证者的文件系统;
硬件(hardware):验证者验证了被验证者的硬件和固件,可以签名和运行程序;
证明环境身份(instance-identity):验证者验证了被验证者的证明环境的身份,如TPM的证明标识密钥(attestation identity key,AIK);
运行可见性(runtime-opaque):验证者从被验证者内存的外部验证了被验证者的可见性;
源数据(sourced-data):验证者验证了被验证者使用的数据的完整性;
存储可见性(storage-opaque):验证者验证了被验证者能够加密永久存储器。
可选地,所述可信数据字段还可以包括第二挑战值,用于验证者根据第二挑战值生成可信响应信息,用于被验证者验证验证者是否可信,进行双向验证,进一步提高通信过程的安全性。
所述第二挑战值可以为可信随机数、时间戳、约定字段的数值和被验证者生成的随机数中的任意一种。
可选地,所述第二挑战值还可以用于本次验证请求信息的防重放。
在一种可能的实现方式中,所述验证数据也可以位于AH数据包的包头中,即,AH数据包的包头中包括标志位和验证数据,所述AH包头结构如图6所示,在保留字段中拆分出部分字段作为标志位,并在认证数据字段后新增可信数据字段,用于存放所述验证数据,所述可信数据字段还可以包括第二挑战值,被验证者在作出可信响应的同时转变为验证者,进行双向验证。
在一种可能的实现方式中,所述AH数据包包头中可以包括标志位以及验证数据长度字段,即证明信息或证明结果长度,所述AH包头结构如图7所示,所述验证数据长度字段用于指示证明信息或证明结果长度。
在一种可能的实现方式中,所述AH数据包包头中可以只包括可信数据字段,所述AH包头结构如图8所示,所述可信数据字段包括被验证者的验证数据,即证明信息或证明结果,所述可信数据字段还可以包括第二挑战值,被验证者在作出可信响应的同时转变为验证者,实现双向验证。
在一种可能的实现方式中,所述AH数据包包头中可以包括标志位、验证数据长度及可信数据字段,所述AH包头结构如图9所示,所述可信数据字段包括被验证者的验证数据,即证明信息或证明结果。
图10为本申请实施例提供的一种AH通信流程示意图。在AH通信流程所交互的信息中,使用图5至图9所描述的任意一种包含可信拓展信息的AH数据包。
S1010,第一网元集成可信请求信息。
第一网元在安全策略数据库中寻找第一个匹配的安全策略,决定是否采取IPsec保护。在安全关联数据库中寻找SP对应的SA,检查安全关联数据库中的可信拓展字段属性,如果不存在SA,则IPsec调用IKE服务,创建SA,如果该SA已被创建,则对AH数据包进行加密,可以选择加入消息鉴别码(message attestation code,MAC),并使用集成了可信请求信息的AH数据包,即使用包括图5至图9所描述的包头结构的AH数据包,请求 验证第二网元是否可信。
S1020,第一网元发送可信请求信息,相应地,第二网元接收可信请求信息。
第一网元向第二网元发送可信请求信息,所述可信请求信息包括在AH数据包中,所述可信请求信息用于请求验证第二网元是否可信。
S1030,第二网元集成证明信息。
在接收到第一网元的请求信息后,第二网元基于接收到的SPI值,在本地安全关联数据库中检索对应的SA,使用SA中定义的行为对数据包进行处理,包括验证MAC以及对数据包进行解密,并向AH数据包头加入第一网元请求的验证信息。
在一种可能的实现方式中,第二网元执行可行度量,并在所述AH数据包中加入证明信息,所述证明信息包括引证和度量日志,所述引证包括度量日志的摘要,所述度量日志包括第二网元进行可信度量的过程信息。
可选地,所述证明信息还可以包括度量值。
可选地,所述证明信息还可以包括可信签名。
在另一种可能的实现方式中,第二网元在接收第一网元的可信请求信息之前,由其他验证对第二网元进行过验证,并将证明结果发送给第二网元,所述第二网元存储所述证明结果,在接收到第一网元的可信请求时,在AH数据包中加入证明结果,用于第一网元查验第二网元是否可信。
可选地,所述证明结果包括身份信息、可信内容和新鲜度中的一种或多种。
S1040,第二网元发送可信响应信息,相应地,第一网元接收可信响应信息。
第二网元向第一网元发送具有可信拓展信息的AH数据包,该第二数据包包括响应信息。
在一种可能的实现方式中,所述可信响应信息包括证明信息。
在另一种可能的实现方式中,所述可信响应信息包括证明结果。
S1050,第一网元验证可信响应信息。
第一网元基于接收到的SPI值,在本地安全关联数据库中检索对应的SA,使用SA中定义的行为对数据包进行处理,包括验证MAC以及对数据包进行解密。
在一种可能的实现方式中,所述可信响应信息包括证明信息,所述第一网元利用公钥及其发送的挑战值对可信签名进行解密,并将解密所得的度量值与标准值进行比较,验证该第二网元的可信状态,并查验度量日志的有效性。
在另一种可能的实现方式中,所述可信响应信息包括证明结果,所述第一网元直接查验所述证明结果,确认第二网元是否可信。
在该实现方式中,将可信度量融入AH协议的通信过程中,在不改变AH数据包包头结构的情况下,复用闲置字段并加入可信拓展信息,对现有协议的兼容性好,便于业务的部署。进一步改进了现有的AH协议认证流程,在通信过程中加入远程证明的请求、响应和验证,使得节点在通信中实现机密性、完整性、身份验证和远程可信证明,将安全内生于通信过程中。
在通信主体进行IPsec通信前,需要先建立SA,用于指示通信主体之间应采取何种安全策略、算法和密钥。
表1为本申请实施例提供的一种SA数据结构,如表1所示,在现有的SA数据结构 中加入可信拓展(trusted extension)和触发机制(trigger)等拓展信息,在建立SA时即加入可信拓展信息,用于节点判断是否采取可信操作和采取可信操作的时机,可信操作可以包括可信请求、可信度量和可信响应中的任意一种。其中,可信请求即请求验证被验证者是否可信;可信度量即完整性度量,利用杂凑函数计算代码的杂凑值,与存储的杂凑值对比,判断代码是否改变,根据比对结果判断平台是否可信;可信响应即被验证者向验证者发送响应信息用于验证者验证其是否可信,所述响应信息可以包括证明信息或证明结果。如表1所示,安全策略索引(SPI)字段用于唯一标识一个特定的SA,若其值为0,则表示不存在SA,其大小可以为323bits。
表1
Figure PCTCN2022140545-appb-000001
SPD选择值字段用于表示IP目的地址,示例性地,TCP,1.2.3.0/24,5.6.7.0/24表示目的地址为传输控制协议地址。
协议字段用于表示采用何种IPsec协议,示例性地,ESP tunnel from 4.5.6.7表示采用ESP加密协议。
算法和密钥字段用于指示采取的算法类型和密钥类型,示例性地,算法类型可以包括信息摘要算法(message digest 5,MD5)、安全哈希算法(secure hash algorithm,SHA)SHA-1、SHA-2等,MD5算法可以通过输入任意长度的消息,产生128bit的消息摘要,SHA-1算法可以通过输入长度小于2的64次方bit的消息,产生160bit的消息摘要,SHA-2算法相对于SHA-1加密数据位数有所上升,安全性能要远远高于SHA-1。密钥类型可以包括对称密钥、非对称密钥等,对称密钥即加密方与解密方使用相同的密钥,非对称密钥即一对密钥,包括公钥与私钥,利用公钥加密则需用私钥解密,利用私钥加密则需公钥解密。
可信拓展字段用于指示通信主体是否需要进行可信操作,该可信操作包括可信请求、可信度量、可信响应及可信验证中的一种或多种。若其值为YES,则表示需采取可信操作,若其值为NO,则表示无需采取可信操作。
触发机制字段用于指示采取何种触发机制来触发可信操作,该触发机制包括计数机制、计时机制或事件触发机制等。
图11是本实施例提供的一种IKE协议包头的数据结构。在建立SA的过程中,在IKE协议数据包头中加入可信度量信息。不改变IKE包头的原有数据结构,而是在IKE包头的下一载荷头字段的数据结构中加入可信拓展信息。
如图11所示,IKE包头结构包括如下字段:
IKE SA发起者的SPI(IKE SA Initiator’s SPI):用于启动SA的建立、通知或删除的实体cookie。
IKE SA响应者的SPI(IKE SA Responder’s SPI):用于响应SA的建立、通知或删除的实体cookie。
下一载荷(next payload)字段用于标识下一载荷的类型。目前,下一载荷字段的值区间在33~55的值已被占用,例如,取值为33表示下一载荷为安全关联,38则表示下一载荷为证书请求;而大于55的值还被保留,可以使用大于55的值区间作为所述数据包包括可信拓展信息的标识。
示例性地,下一载荷头的取值为56则表示所述数据包包括挑战值,用于验证者向被验证者发起验证请求,取值为57则表示所述数据包包括验证数据,用于验证者验证被验证者是否可信,取值为58则表示所述数据包包括验证数据和挑战值,用于验证者验证被验证者是否可信,并向验证者发起验证请求,进行双向验证。
在未来的通信事业发展过程中,取值范围大于55的载荷头有可能会被占用,但使用未被占用的数值作为标识数据包包括可信拓展信息的技术方案均应落入本申请的保护范围。
主要版本(MjVer)字段用于指示使用的ISAKMP的主要版本。
次要版本(MnVer)字段用于指示使用的ISAKMP的次要版本。
交换类型(exchange type)字段用于指示密钥交换机制,可以包括公钥加密实现或使用DH算法等机制,公钥加密实现即发送方使用接收方的公钥加密自己的密钥,接收方用自己的私钥解密得到发送方的密钥,反之亦然,从而实现密钥交换,DH算法即迪菲-赫尔曼密钥交换(Diffie-Hellman key exchange,DH),可以让双方在完全没有对方任何预先信息的条件下通过不安全信道建立起一个密钥。
标志位(flag)字段为ISAKMP交换设置的各种选项。
消息标识(message ID)为唯一的信息标识符,用于识别协议状态。
长度(length)字段用于指示全部信息的长度,包含数据包包头加上有效载荷。
其中,下一载荷的数据结构如图12所示,可以复用下一载荷字段中的保留字段,加入标志位、可信数据及可信数据长度等可信拓展信息,可以为不存在保留字段的数据包包头提供一种加入可信拓展信息的方式。
在一种可能的实现方式中,在保留字段中包括标志位字段。
若由验证者向被验证者发送所述IKE数据包:
可选地,所述标志位字段用于触发被验证者生成可信响应信息,所述IKE数据包的包头中可以不包括挑战值字段。
可选地,所述标志位字段用于标识所述IKE数据包中包括挑战值,所述挑战值可以存放于可信数据字段,所述可信数据字段可以位于数据包包头的载荷字段后。本申请仅示出可信数据字段位于数据包包头的载荷字段后的结构示意图,所述可信数据字段也可以位于所述数据包包体的任意位置,本申请对此不做限定。
若由验证者向被验证者发送所述IKE数据包:
可选地,所述标志位字段用于标识所述数据包包括验证数据,即证明信息或证明结果。
可选地,所述标志位字段用于标识所述数据包包括验证数据和挑战值,挑战值用于验 证者生成可信响应信息,进行双向验证。
可选地,所述标志位字段用于标识所述数据包包括验证数据,且可触发验证者生成可信响应信息,进行双向验证。
可选地,从保留字段中选取1比特作为标志位字段,若该位为1则表示所述数据包包含可信拓展。
可选地,从保留字段中选取2比特作为标志位字段。示例性地,01表示所述IKE数据包包含可信请求信息;10表示该数据包包括可信响应信息;11表示该数据包包括可信响应信息,且包括可信请求信息,与验证方进行双向验证。
图12仅示例性地示出IKE数据包包头中包括标志位,所述IKE数据包包头也可以不包括标志位,例如,只包括可信数据字段,由验证者或被验证者直接读取挑战值或验证数据等内容,或者只包括验证数据长度字段等多种存放可信拓展信息的情况,本申请对此不作限定。
在一种可能的实现方式中,在载荷字段后新增可信数据字段,所述可信数据字段包括挑战值或验证数据,所述验证数据用于验证者验证被验证者是否可信,所述验证数据包括证明信息或证明结果,所述可信数据字段还可以包括挑战值,用于验证者生成验证数据,进行双向验证。
若由验证者向被验证者发送该数据包,则可信数据字段包括挑战值,所述挑战值用于被验证者生成证明信息。
可选地,所述挑战值可以为可信随机数、时间戳和约定字段的数值中的任意一种。
可选地,所述挑战值可以为验证者为进行可信度量而生成的随机数。示例性地,可以将验证者产生的随机数记为Ni。
若由被验证者向验证者发送所述数据包,则所述可信计算数据字段包括验证数据。
可选地,所述验证数据包括证明信息,所述证明信息包括引证和度量日志,所述度量日志为所述挑战值进行可信度量的过程信息,所述引证可以包括所述度量日志的摘要。
可选地,所述证明信息还可以包括度量值或可信签名。
可选地,所述可信数据字段中还可以包含所述被验证者的挑战值,用于所述验证者生成可信响应信息,进行双向验证,被验证者产生的随机数可以记为Nr。
可选地,所述验证数据包括证明结果,所述证明结果包括身份信息、可信内容和新鲜度中的一种或多种。
图12中仅示出可信数据字段位于IKE数据包的包头中,所述可信数据字段也可以存放于所述IKE数据包包体中的任意位置,本申请对此不做限定。
在一种可能的实现方式中,该保留字段还可以包括该挑战值或验证数据长度字段,用于指示该挑战值或验证数据的长度取值。若由验证者向被验证者发送所述IKE数据包,则数据包包头中可以包括挑战值长度字段;若由被验证者向验证者发送所述IKE数据包,则数据包包头中可以包括验证数据长度字段,验证数据包括证明信息或证明结果。
图12仅示例性地示出挑战值或验证数据长度字段位于IKE数据包包头中,所述长度字段也可以存放于所述IKE数据包包体中的任意位置,本申请对此不作限定。
图13是本申请实施例适用的ESP数据包包头结构示意图,所述ESP数据包包头包含以下字段:
SPI字段为IPSec安全参数索引,用于唯一标识IPSec安全关联,其大小可以为32比特。
序列号字段用于唯一地标识每一个数据包,其数值从1开始单项递增,用于防止重放攻击,其大小可以为32比特。
负载数据字段包含原始IP报文中可变长度数据内容。ESP保护的内容类型由下一头部字段标识。
填充字段用于增加ESP报文头的位数,填充字段的长度与负载数据的长度和算法有关。当待加密报文的长度不是加密算法所要求的块长度时,需要进行填充补齐。
填充长度给出填充字段的长度,其数值为0时表示没有填充,其大小可以为8比特。
下一载荷字段用于标识ESP报文头后面的下一个负载类型,其大小可以为8比特。
认证数据字段包含数据完整性校验值ICV,用于接收方进行完整性校验。ESP的验证功能是可选的,如果启动了数据包验证,会在加密数据的尾部添加一个ICV数值。其长度可以为32比特的整数倍,通常为96比特。
在ESP数据包包头的下一载荷字段中包括保留字段,其结构与IKE数据包包头中的保留字段结构相同,类似地,复用所述保留字段用于存放标志位、可信数据和可信数据长度等信息,其结构及作用与图12所描述的方案类似,此处不再赘述。
通常情况下,在IPsec协议等协议数据包的下一载荷字段中均包含保留字段,因此,复用保留字段并加入所述可信拓展信息的方案均应落在本申请保护范围内。
图14是本申请实施例提供的一种IKE通信流程,在该通信流程中发送的数据包包含图11和图12所示的IKE包头结构,所述IKE通信流程可以用于协商和建立SA。
S1410,第一网元向第二网元发送第一协商信息。
第一网元向第二网元发送第一协商信息,该第一协商信息包括第一网元的报文头部、IKE SA建议、DH算法公共值和随机数。
S1420,第二网元向第一网元发送第一请求信息。
第二网元向第一网元发送第一请求信息,该第一请求信息包括第一网元的报文头部、IKE SA建议、DH算法公共值和随机数,该第一请求信息还包括对第一网元的可信证书的请求。
S1430,第一网元向第二网元发送第一响应信息。
第一网元向第二网元发送第一响应信息,该第一响应信息包括报文头部、该第一网元的可信证书及第一网元的证明信息。此外,该第一响应信息还可以包括该第一网元对第二网元的可信证书请求信息。
S1440,第二网元验证第一响应信息。
第二网元对第一响应信息中包括的可信证书和证明信息进行验证,判断该第一网元的可信状态。
若该第一网元为可信状态,则第二网元更新本地的安全关联数据库,即第一网元到第二网元的安全关联建立。
S1450,第二网元向第一网元发送第二响应信息。
第二网元向第一网元发送第二响应信息,该第二响应信息包括该第二网元的可信证书,以及该第二网元的证明信息。
S1460,第一网元验证第二响应信息。
第一网元对第二响应信息中包括的可信证书和证明信息进行验证,判断该第二网元的可信状态。
若第二网元为可信状态,则第一网元更新本地的安全关联数据库,即第二网元到第一网元的安全关联建立。此时,第一网元与第二网元之间已建立双向的安全关联,可采用协商好的策略和密钥进行通信。
图15是本申请是实施例提供的一种IP数据包包头结构。不借助IPsec协议体系中的AH协议、IKE协议或ESP协议的数据包包头,无需复用IPsec数据包包头中的保留字段,即可进行远程证明。
如图15所示,所述数据包包头包括以下字段:
下一载荷头(next header)字段:其长度可以为8比特,用于指示下一个包头的协议,例如,当其取值为51时则表示下一个发送的数据包包头为AH协议的数据包包头,取值为50则表示为ESP协议的数据包包头。目前下一载荷头的值区间在0~140范围内的均已被占用,141~254还被保留,可以使用所述保留的区间中的一个值作为所述数据包包括可信拓展信息的标识。
示例性地,下一载荷头的取值为142则表示所述数据包包括挑战值,用于验证者向被验证者发起验证请求,取值为143则表示所述数据包包括验证数据,用于验证者验证被验证者是否可信,取值为144则表示所述数据包包括验证数据和挑战值,用于验证者验证被验证者是否可信,并向验证者发起验证请求,进行双向验证。
在未来的通信事业发展过程中,取值为141~254范围的载荷头有可能会被占用,但使用未被占用的数值作为标识数据包包括可信拓展信息的技术方案均应落入本申请的保护范围。
标志位字段:标志位可以用于标识所述数据包包括可信拓展信息。
可选地,若所述下一载荷头字段的数值在0~140值区间内,可以由所述标志位字段触发被验证者生成验证数据。
可选地,标志位字段占据1比特,若该位为1则表示数据包的包头或包体中包括挑战值。
可选地,标志位字段占据2比特。示例性地,若该位为01则表示所述数据包中包括挑战值,或者,所述数据包包头可以触发被验证者生成验证数据;若该位为10则表示所述数据包包括验证数据;若该位为11则表示所述数据包包括验证数据和挑战值,验证数据用于验证者验证被验证者是否可信,挑战值用于验证者生成验证数据,由被验证者验证其是否可信,或者,若该位为11则表示所述数据包包括验证数据,且所述数据包包头可以触发验证者生成验证数据。
可选地,所述数据包包头也可以不包括标志位字段,仅由下一载荷字段对数据包包括可信拓展信息进行标识,或触发验证者生成验证数据。
载荷长度字段:用于指示报文头的长度。
保留字段:预置保留位,初始状态下其值均为0,用于留作未来使用。
序列号字段:为从1开始递增的数值,用于防止所述数据包的重放攻击。
可信数据字段:包括挑战值或验证数据等。
若由验证者向被验证者发送所述数据包,则所述可信数据字段包括挑战值。
所述挑战值可以为可信随机数、时间戳和约定字段的数值中的任意一种。
所述可信随机数为验证者与被验证者均信任的可信第三方提供的随机数,所述可信随机数作为挑战值时可以存放于所述可信数据字段。
所述时间戳为验证者与被验证者均信任的可信时钟,如通过背书者背书的时钟产生的时钟信息,时间戳作为挑战值时可以存放于所述可信数据字段。
所述约定字段的数值可以为验证者与被验证者预先约定的通信协议中任意字段的数值。示例性地,所述数据包的序列号即验证者向被验证者发起可信验证时,实时发送的数据包的序列号,验证者复用本次发送的数据包的序列号作为挑战值。所述挑战值可以直接存放于序列号字段,由标志位标识所述数据包包括挑战值,在被验证者读取到序列号字段时即可知道需作出可信响应。
所述挑战值还可以为验证者为进行可信验证而生成的随机数,所述随机数可以存放于所述可信数据字段。
可选地,所述挑战值还可以用于防止本次验证请求的重放攻击。
若由被验证者向验证者发送所述数据包,则所述可信数据字段包括验证数据。
在一种可能的实现方式中,所述验证数据为证明信息。被验证者执行可信度量并生成证明信息,被验证者向验证者发送证明信息,即发送包括证明信息的数据包。所述证明信息包括引证和度量日志,所述引证包括度量日志的摘要,所述度量日志包括被验证者进行可信度量的过程信息。
可选地,所述证明信息可以包括度量值。
可选地,所述证明信息还可以包括可信签名。
可选地,所述证明信息还可以包括被验证者的运行状态、健康度、安全相关的配置或构建信息,硬件、固件、软件、文件系统、证明环境的身份、可信执行环境、数据的完整性。
在另一种可能的实现方式中,所述验证数据为证明结果。在所述验证者请求验证所述被验证者是否可信之前,其他验证者对所述被验证者进行过可信验证,并将证明结果发送给所述被验证者,因此,所述被验证者可直接向所述验证者发送证明结果,所述证明结果包括身份信息、可信内容和新鲜度中的一种或多种。
在另一种可能的实现方式中,所述验证数据还包括挑战值,用于被验证者向验证者发起验证请求,进行双向验证。
可选地,所述数据包包头也可以不包括可信数据字段,所述可信数据字段可以存放于数据包包体中的任意位置。
在本申请提供的实施例中,使用数据包包头,可以降低对现有协议的依赖,不受到现有协议中是否存在保留字段的限制,能够提供更专业、灵活的远程证明方法。
图16是根据本申请实施例提供的通信装置的结构框图。该通信装置可具备上述方法实施例中的第一网元或第二网元的功能,并可用于执行上述方法实施例中由第一网元或第二网元执行的步骤。
在一种可能的实现方式中,如图16所示的通信装置1600可作为上述方法实施例所涉及的第一网元,并执行上述方法实施例中由第一网元执行的步骤。
如图16所示,该通信装置1600可包括发送模块1610和接收模块1620。
发送模块1610可用于支持通信装置1600发送信息,例如执行图2、图3、图10和图14中的S210、S1020、S1410和S1430中由第一网元执行的发送动作。
接收模块1620可用于支持通信装置1600接收信息,例如执行图2、图3、图10和图14中的S220、S320、S1040、S1420和S1450中由第一网元执行的接收动作。
可选地,通信装置1600还可以包括处理模块1630,该处理模块1630与发送模块1610和接收模块1620耦合,可用于支持通信装置1600执行上述方法实施例中的处理动作,例如执行图2、图3、图10和图14中的S330、S1010、S1050和S1460等由第一网元执行的处理动作。
在另一种可能的实现方式中,如图16所示的通信装置1600可作为上述方法实施例所涉及的第二网元,并执行上述方法实施例中由第一网元执行的步骤。
如图16所示,该通信装置1600可包括发送模块1610和接收模块1620。
发送模块1610可用于支持通信装置1600发送信息,例如执行图2、图3、图10和图14中的S220、S320、S1040、S1420和S1450中由第二网元执行的发送动作。
接收模块1620可用于支持通信装置1600接收信息,例如执行图2、图3、图10和图14中的S210、S1020、S1410和S1430中由第二网元执行的接收动作。
可选地,通信装置1600还可以包括处理模块1630,该处理模块1630与发送模块1610和接收模块1620耦合,可用于支持通信装置1600执行上述方法实施例中的处理动作,例如执行图2、图3、图10和图14中的S310、S1030和S1440等由第一网元执行的处理动作。
可选地,通信装置1600还可以包括存储模块1640,用于存储通信装置1600的程序代码和数据。
图17是本申请实施例提供的通信设备1700的示意性框图。如图所示,该通信设备1700包括:至少一个处理器1710和收发器1720。该处理器1710与存储器耦合,用于执行存储器中存储的指令,以控制收发器1720发送信号和/或接收信号。
可选地,该通信设备1700还包括存储器1730,用于存储指令。
在一些实施例中,上述处理器1710和存储器1730可以合成一个处理装置,处理器1710用于执行存储器1730中存储的程序代码来实现上述功能。具体实现时,该存储器1730也可以集成在处理器1710中,或者独立于处理器1710。
在一些实施例中,收发器1720可以包括接收器(或者称,接收机)和发射器(或者称,发射机)。
收发器1720还可以进一步包括天线,天线的数量可以为一个或多个。收发器1720有可以是通信接口或者接口电路。
当该通信设备1700为芯片时,该芯片包括收发单元和处理单元。其中,收发单元可以是输入输出电路或通信接口;处理单元可以为该芯片上集成的处理器或者微处理器或者集成电路。
当上述通信装置为应用于网络设备的芯片时,该网络设备芯片实现上述方法实施例中网络设备的功能。该网络设备芯片从网络设备中的其它模块(如射频模块或天线)接收信息,该信息是终端或其他网络设备发送给该网络设备的;或者,该网络设备芯片向网络设 备中的其它模块(如射频模块或天线)输出信息,该信息是网络设备发送给终端或其他网络设备的。
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序或指令,该计算机程序或指令被计算机(例如,处理器)执行,以实现本申请实施例中由任意装置执行的任意一种方法的部分或全部步骤。
本申请实施例还提供一种包含指令的计算机程序产品,当其在计算机上运行时,使得本申请实施例中由任意装置执行的任意一种方法的部分或全部步骤被执行。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

Claims (34)

  1. 一种集成可信度量的通信方法,其特征在于,包括:
    第一网元发送第一数据包,所述第一数据包包括第一请求信息,所述第一请求信息用于请求验证第二网元是否可信;
    所述第一网元接收第二数据包,所述第二数据包包括第一响应信息,所述第一响应信息用于第一网元验证所述第二网元是否可信。
  2. 一种集成可信度量的通信方法,其特征在于,包括:
    第二网元接收第一数据包,所述第一数据包包括第一请求信息,所述第一请求信息用于请求验证第二网元是否可信;
    所述第二网元发送第二数据包,所述第二数据包包括第一响应信息,所述第一响应信息用于第一网元验证所述第二网元是否可信。
  3. 根据权利要求1或2所述的方法,其特征在于,所述第一请求信息包括第一字段,所述第一字段为第一标志位,所述第一标志位用于触发生成所述第一响应信息。
  4. 根据权利要求3所述的方法,其特征在于,所述第一标志位用于标识所述第一请求信息包括第一挑战值,所述第一挑战值用于生成所述第一响应信息。
  5. 根据权利要求4所述的方法,其特征在于,所述第一请求信息包括第二字段,所述第二字段包括所述第一挑战值。
  6. 根据权利要求4或5所述的方法,其特征在于,所述第一挑战值为第一随机数、第二随机数、时间戳和约定字段的数值中的任意一种,所述第一随机数为可信第三方提供的随机数,所述第二随机数为所述第一网元为验证所述第二网元是否可信而生成的随机数。
  7. 根据权利要求6所述的方法,其特征在于,所述约定字段的数值为所述第一数据包的序列号。
  8. 根据权利要求4至7中任一项所述的方法,其特征在于,所述第一请求信息包括第三字段,所述第三字段用于指示所述第一挑战值的长度。
  9. 根据权利要求4至8中任一项所述的方法,其特征在于,所述第一响应信息包括第四字段,所述第四字段为第二标志位,所述第二标志位用于标识所述第二数据包包括证明信息或证明结果,所述证明信息根据所述第一挑战值生成,所述证明结果包括所述第二网元被证明可信的结果。
  10. 根据权利要求9所述的方法,其特征在于,所述证明结果包括身份信息、可信内容和新鲜度中的一种或多种,所述身份信息用于指示验证所述第二网元可信的验证者的身份,所述可信内容用于指示所述第二网元被验证可信的内容,所述新鲜度用于指示所述第二网元被验证可信的时间。
  11. 根据权利要求9或10所述的方法,其特征在于,所述第一响应信息包括第五字段,所述第五字段包括所述证明信息或所述证明结果。
  12. 根据权利要求10或11所述的方法,其特征在于,所述第五字段包括第二挑战值,所述第二挑战值用于生成第二响应信息,所述第二响应信息用于验证所述第一网元是否可信。
  13. 根据权利要求9至12中任一项所述的方法,其特征在于,所述第二标志位还用于触发生成所述第二响应信息。
  14. 根据权利要求12或13所述的方法,其特征在于,所述第二标志位还用于标识所述第一响应信息包括所述第二挑战值。
  15. 根据权利要求9至14中任一项所述的方法,其特征在于,所述第一响应信息包括第六字段,所述第六字段用于指示所述证明信息或所述证明结果的长度。
  16. 一种通信装置,其特征在于,包括:
    发送单元,用于发送第一数据包,所述第一数据包包括第一请求信息,所述第一请求信息用于请求验证第二网元是否可信;
    接收单元,用于接收第二数据包,所述第二数据包包括第一响应信息,所述第一响应信息用于第一网元验证所述第二网元是否可信。
  17. 一种通信装置,其特征在于,包括:
    接收单元,用于接收第一数据包,所述第一数据包包括第一请求信息,所述第一请求信息用于请求验证所述第二网元是否可信;
    发送单元,用于发送第二数据包,所述第二数据包包括第一响应信息,所述第一响应信息用于第一网元验证所述第二网元是否可信。
  18. 根据权利要求16或17所述的装置,其特征在于,所述第一请求信息包括第一字段,所述第一字段为第一标志位,所述第一标志位用于触发生成所述第一响应信息。
  19. 根据权利要求18所述的装置,其特征在于,所述第一标志位用于标识所述第一请求信息包括第一挑战值,所述第一挑战值用于生成所述第一响应信息。
  20. 根据权利要求19所述的装置,其特征在于,所述第一请求信息包括第二字段,所述第二字段包括所述第一挑战值。
  21. 根据权利要求19或20所述的装置,其特征在于,所述第一挑战值为第一随机数、第二随机数、时间戳和约定字段的数值中的任意一种,所述第一随机数为可信第三方提供的随机数,所述第二随机数为所述第一网元为验证所述第二网元是否可信而生成的随机数。
  22. 根据权利要求21所述的方法,其特征在于,所述约定字段的数值为所述第一数据包的序列号。
  23. 根据权利要求19至22中任一项所述的装置,其特征在于,所述第一请求信息包括第三字段,所述第三字段包括所述第一挑战值的长度。
  24. 根据权利要求16至23中任一项所述的装置,其特征在于,所述第一响应信息包括第四字段,所述第四字段为第二标志位,所述第二标志位用于标识所述第二数据包包括证明信息或证明结果,所述证明信息根据第一挑战值生成,所述证明结果包括所述第二网元被证明可信的结果。
  25. 根据权利要求24所述的装置,其特征在于,所述第一响应信息包括第五字段,所述第五字段包括所述证明信息或所述证明结果。
  26. 根据权利要求24或25所述的装置,其特征在于,所述证明结果包括身份信息、可信内容和新鲜度中的一种或多种,所述身份信息用于指示验证所述第二网元可信的验证者的身份,所述可信内容用于指示所述第二网元被验证可信的内容,所述新鲜度用于指示所述第二网元被验证可信的时间。
  27. 根据权利要求25或26所述的装置,其特征在于,所述第五字段包括第二挑战值,所述第二挑战值用于生成第二响应信息,所述第二响应信息用于验证所述第一网元是否可信。
  28. 根据权利要求24至27中任一项所述的装置,其特征在于,所述第二标志位用于触发所述第一网元生成所述第二响应信息。
  29. 根据权利要求27或28所述的装置,其特征在于,所述第二标志位用于标识所述第一响应信息包括所述第二挑战值。
  30. 根据权利要求24至29中任一项所述的装置,其特征在于,所述第一响应信息包括第六字段,所述第六字段用于指示所述证明信息或所述证明结果的长度。
  31. 一种通信装置,其特征在于,包括:
    处理器,用于执行存储器中存储的计算机指令,以使得所述装置执行权利要求1或者权利要求2至15中任一项所述的方法。
  32. 一种计算机可读存储介质,其特征在于,其上存储有计算机程序,所述计算机程序被计算机执行,以使得实现权利要求1至15中任一项所述的方法。
  33. 一种计算机程序产品,其特征在于,所述计算机程序产品中包括计算机程序代码,当所述计算机程序代码在计算机上运行时,权利要求1至15中任一项所述的方法被执行。
  34. 一种芯片,其特征在于,包括:处理器,用于读取存储器中存储的指令,当所述处理器执行所述指令时,使得所述芯片实现上述权利要求1至15中任一项所述的方法。
PCT/CN2022/140545 2022-01-05 2022-12-21 集成可信度量的通信方法和装置 WO2023130958A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202210011105.1A CN116456335A (zh) 2022-01-05 2022-01-05 集成可信度量的通信方法和装置
CN202210011105.1 2022-01-05

Publications (1)

Publication Number Publication Date
WO2023130958A1 true WO2023130958A1 (zh) 2023-07-13

Family

ID=87073086

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/140545 WO2023130958A1 (zh) 2022-01-05 2022-12-21 集成可信度量的通信方法和装置

Country Status (2)

Country Link
CN (1) CN116456335A (zh)
WO (1) WO2023130958A1 (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120260345A1 (en) * 2011-04-05 2012-10-11 Assured Information Security, Inc. Trust verification of a computing platform using a peripheral device
WO2020143906A1 (en) * 2019-01-08 2020-07-16 Huawei Technologies Co., Ltd. Method and apparatus for trust verification
US20200320199A1 (en) * 2019-04-04 2020-10-08 Cisco Technology, Inc. Network security by integrating mutual attestation
US20200322423A1 (en) * 2019-04-05 2020-10-08 Cisco Technology, Inc. Attestation-based scheme for validating peering setups for critical infrastructure protocols
US20200322375A1 (en) * 2019-04-05 2020-10-08 Cisco Technology, Inc. Verifying the trust-worthiness of arp senders and receivers using attestation-based methods

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120260345A1 (en) * 2011-04-05 2012-10-11 Assured Information Security, Inc. Trust verification of a computing platform using a peripheral device
WO2020143906A1 (en) * 2019-01-08 2020-07-16 Huawei Technologies Co., Ltd. Method and apparatus for trust verification
US20200320199A1 (en) * 2019-04-04 2020-10-08 Cisco Technology, Inc. Network security by integrating mutual attestation
US20200322423A1 (en) * 2019-04-05 2020-10-08 Cisco Technology, Inc. Attestation-based scheme for validating peering setups for critical infrastructure protocols
US20200322375A1 (en) * 2019-04-05 2020-10-08 Cisco Technology, Inc. Verifying the trust-worthiness of arp senders and receivers using attestation-based methods

Also Published As

Publication number Publication date
CN116456335A (zh) 2023-07-18

Similar Documents

Publication Publication Date Title
US11934525B2 (en) Network security by integrating mutual attestation
AlFardan et al. On the security of RC4 in TLS and WPA
US7660980B2 (en) Establishing secure TCP/IP communications using embedded IDs
Giesen et al. On the security of TLS renegotiation
US8281127B2 (en) Method for digital identity authentication
Cam-Winget et al. The flexible authentication via secure tunneling extensible authentication protocol method (EAP-FAST)
Brincat et al. On the use of Blockchain technologies in WiFi networks
Patel et al. Vehiclechain: Blockchain-based vehicular data transmission scheme for smart city
Rizzardi et al. Analysis on functionalities and security features of Internet of Things related protocols
Ravilla et al. Implementation of HMAC-SHA256 algorithm for hybrid routing protocols in MANETs
Cho et al. Securing ethernet-based optical fronthaul for 5g network
Schmitt et al. Two-way authentication for the internet-of-things
Kumari et al. A comprehensive and critical analysis of TLS 1.3
Fazzat et al. A comparative performance study of cryptographic algorithms for connected vehicles
Ouaissa et al. A Secure Model for Machine to Machine Device Domain Based Group in a Smart City Architecture.
WO2023130958A1 (zh) 集成可信度量的通信方法和装置
Shojaie et al. Enhancing EAP-TLS authentication protocol for IEEE 802.11 i
Kahya et al. Formal analysis of PKM using scyther tool
Nasraoui et al. Implementing lightweight key exchange solutions for WSN with LoRa connectivity
WO2023130970A1 (zh) 集成可信度量的通信方法和装置
Mohamed et al. Extending hybrid approach to secure Trivial File Transfer Protocol in M2M communication: a comparative analysis
Basic et al. Establishing Dynamic Secure Sessions for ECQV Implicit Certificates in Embedded Systems
WO2023130971A1 (zh) 集成可信度量的通信方法和装置
US11791994B1 (en) Quantum cryptography in an internet key exchange procedure
Limniotis et al. Cryptography threats

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22918401

Country of ref document: EP

Kind code of ref document: A1