Data transmission method
By using trusted computing for identity authentication and platform integrity authentication, a shared key is generated, which solves the problem of low security in traditional data transmission and achieves secure data transmission that ensures both device identity legitimacy and platform integrity.
Patent Information
- Application Number
- CN202211617499.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-12-15
- Publication Date
- 2026-01-27
- Estimated Expiration
- 2042-12-15
AI Technical Summary
In traditional data transmission methods, the security of sensitive data is low, making it vulnerable to malware attacks that could lead to the cracking of encryption keys and high risks associated with data transmission.
Trusted computing is used to generate shared keys by leveraging identity authentication and platform integrity authentication, ensuring the legitimacy of device identities and the integrity of the platform, thereby achieving secure data transmission.
It improves the security of data transmission, especially the security of sensitive data transmission, and ensures the legitimacy of device identities and the integrity of the platform.
Smart Images

Figure CN116248264B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of communication technology, specifically to a data transmission method. Background Technology
[0002] Currently, with the popularization of network technology in people's lives, network security issues such as computer viruses, malicious code, and hacker attacks are increasing, and incidents such as information leakage and privacy theft occur frequently. With the rapid development of cloud computing technology, the interaction between devices is growing explosively, and the risk of sensitive data transmission is further amplified.
[0003] Traditionally, sensitive data is encrypted before being sent to remote devices. However, since the encrypted transmission program runs within the operating system, it poses certain security risks. For example, malware, Trojans, or other cracking programs can obtain the encryption key, acquire the encrypted data within the system, and decrypt it, resulting in low data transmission security. Summary of the Invention
[0004] This application provides a data transmission method to solve the technical problem of low security in traditional data transmission methods.
[0005] In a first aspect, embodiments of this application provide a data transmission method, including:
[0006] Obtain the first parameter and send the first parameter to the second device;
[0007] Receive the third parameter sent by the second device, and perform identity authentication and platform integrity authentication on the second device based on the third parameter;
[0008] If the identity authentication and platform integrity authentication of the second device pass, a fourth parameter is generated and sent to the second device;
[0009] The device receives a fifth parameter sent by the second device, generates a sixth parameter and a first shared key based on the fifth parameter, sends the sixth parameter to the second device, and uses the first shared key to transmit data with the second device.
[0010] In one embodiment, obtaining the first parameter includes:
[0011] The integrity of the first platform component is measured and verified according to the trusted policy to obtain the first integrity metric value;
[0012] A first identity key is generated based on the first platform master key. The first identity information and the public key of the first identity key are sent to a trusted third party to obtain the first identity certificate.
[0013] Generate a first sequence number corresponding to the first integrity metric value, and generate a first random value using a random number generator;
[0014] The first identity certificate, the first serial number, and the first random value are determined as the first parameter.
[0015] In one embodiment, the step of performing identity authentication and platform integrity authentication on the second device based on the third parameter includes:
[0016] The third parameter includes a second identity certificate, a second serial number, a second reference value, and a second signature value. The second identity certificate is the identity certificate of the second device. The second serial number corresponds to the second integrity metric value, which is the platform integrity metric value of the second device. The second reference value is generated by the second device together with the first random value, based on the second integrity metric value corresponding to the second serial number. The second signature value is obtained by the second device signing the second reference value.
[0017] The second device is authenticated by verifying the legitimacy of the second identity certificate.
[0018] If the second device successfully authenticates its identity, the public key of the second identity key is used to verify the legality of the second signature value; the second identity key is generated based on the platform master key of the second device.
[0019] If the second signature value is valid, the second device is authenticated for platform integrity by verifying whether the second reference value contains the first random value and the second integrity metric value.
[0020] In one embodiment, generating the fourth parameter includes:
[0021] A first reference value is generated based on the first integrity metric and the second random value; the second random value belongs to the third parameter, and the second random value is a random value of the second device;
[0022] The first reference value is signed using the private key of the first identity key to obtain the first signature value;
[0023] Configure the first encryption flag bit according to the information transmission security level;
[0024] The first reference value, the first signature value, and the value of the first encryption flag are used as the fourth parameter.
[0025] In one embodiment, generating the sixth parameter and the first shared key based on the fifth parameter includes:
[0026] The fifth parameter includes the public key of the second key pair and the second certificate. The second key pair is generated by the second device based on the value of the first encryption flag. The second certificate is generated by the second device after signing the first random value and the public key of the second key pair.
[0027] The public key of the second identity key is used to verify the legitimacy of the signature information in the second certificate; the second identity key is generated based on the platform master key of the second device;
[0028] If the signature information in the second certificate is valid, then verify whether the second certificate contains the first random value and the public key of the second key pair;
[0029] If the second certificate contains the first random value and the public key of the second key pair, then the first key pair is generated;
[0030] The first certificate is generated by signing the second random value and the public key of the first key pair using the private key of the first identity key.
[0031] The public key of the first key pair and the first certificate are determined as the sixth parameter;
[0032] A first shared key is generated based on the private key of the first key pair and the public key of the second key pair.
[0033] Secondly, embodiments of this application provide a data transmission method, including:
[0034] Obtain the second parameter and receive the first parameter sent by the first device;
[0035] The first device is authenticated based on the first parameter. If the authentication of the first device is successful, a third parameter is generated based on the first parameter and the second parameter, and the third parameter is sent to the first device.
[0036] The system receives a fourth parameter sent by the first device, performs platform integrity authentication on the first device based on the first parameter and the fourth parameter, and if the platform integrity authentication of the first device passes, generates a fifth parameter based on the fourth parameter and sends the fifth parameter to the first device.
[0037] The system receives a sixth parameter sent by the first device, generates a second shared key based on the sixth parameter, and uses the second shared key to transmit data with the first device.
[0038] In one embodiment, obtaining the second parameter includes:
[0039] The integrity of the second platform component is measured and verified according to the trusted policy to obtain the second integrity metric value;
[0040] A second identity key is generated based on the second platform master key. The second identity information and the public key of the second identity key are sent to a trusted third party to obtain a second identity certificate.
[0041] The second identity certificate is determined as the second parameter.
[0042] In one embodiment, the step of authenticating the first device based on the first parameter, and generating a third parameter based on the first parameter and the second parameter if the authentication of the first device is successful, includes:
[0043] The first parameter includes a first identity certificate and a first random value, wherein the first identity certificate is the identity certificate of the first device, and the first random value is a random value of the first device;
[0044] The second parameter is the second identity certificate;
[0045] The first device is authenticated by verifying the legitimacy of the first identity certificate;
[0046] If the first device passes authentication, a second serial number corresponding to the second integrity metric is generated, and a second random value is generated using a random number generator.
[0047] A second reference value is generated based on the second integrity metric value and the first random value;
[0048] The second reference value is signed using the private key of the second identity key to obtain the second signature value;
[0049] The second serial number, the second random value, the second identity certificate, the second reference value, and the second signature value are used as the third parameter.
[0050] In one embodiment, the step of performing platform integrity authentication on the first device based on the first parameter and the fourth parameter, and generating a fifth parameter based on the fourth parameter if the platform integrity authentication of the first device passes, includes:
[0051] The first parameter includes a first sequence number, which corresponds to a first integrity metric value, and the first integrity metric value is the platform integrity metric value of the first device;
[0052] The fourth parameter includes the values of a first reference value, a first signature value, and a first encryption flag. The first reference value is generated by the first device together with the second random value, based on the first integrity metric value obtained by the first device according to the first sequence number. The first signature value is obtained by the first device signing the first reference value. The first encryption flag is configured by the first device according to the information transmission security level.
[0053] The legality of the first signature value is verified using the public key of the first identity key; the first identity key is generated based on the platform master key of the first device;
[0054] If the first signature value is valid, the first device is authenticated for platform integrity by verifying whether the first reference value contains the second random value and the first integrity metric value.
[0055] If the platform integrity authentication of the first device passes and the value of the first encryption flag is 1, then a second key pair is generated;
[0056] The first random value and the public key of the second key pair are signed using the private key of the second identity key to generate a second certificate;
[0057] The public key of the second key pair and the second certificate are determined as the fifth parameter.
[0058] In one embodiment, generating the second shared key based on the sixth parameter includes:
[0059] The sixth parameter includes the public key of the first key pair and the first certificate. The first key pair is generated by the first device based on the second certificate. The first certificate is obtained by the first device signing the second random value and the public key of the first key pair.
[0060] The public key of the first identity key is used to verify the legitimacy of the signature information in the first certificate; the first identity key is generated based on the platform master key of the first device;
[0061] If the signature information in the first certificate is valid, then verify whether the first certificate contains the second random value and the public key of the first key pair;
[0062] If the first certificate contains the second random value and the public key of the first key pair, then a second shared key is generated based on the private key of the second key pair and the public key of the first key pair.
[0063] The data transmission method provided in this application, through trusted computing, transmits various parameters between a first device and a second device. This enables the first device to use these parameters to authenticate the identity and platform integrity of the second device. After authentication, a first shared key is generated, which is then used to transmit data with the second device. Because the first device completes the identity and platform integrity authentication of the second device, the legitimacy of the second device's identity information and the integrity of its computing platform are guaranteed, thus confirming the second device's trustworthiness. The use of the first shared key for data transmission significantly improves the security of data transmission, especially for sensitive data transmission. Attached Figure Description
[0064] To more clearly illustrate the technical solutions in this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0065] Figure 1 This is one of the flowcharts illustrating the data transmission method provided in the embodiments of this application;
[0066] Figure 2 This is a second schematic flowchart of the data transmission method provided in the embodiments of this application;
[0067] Figure 3 This is the third flowchart illustrating the data transmission method provided in the embodiments of this application;
[0068] Figure 4 This is the fourth flowchart illustrating the data transmission method provided in the embodiments of this application;
[0069] Figure 5 This is the fifth flowchart illustrating the data transmission method provided in the embodiments of this application;
[0070] Figure 6 This is the sixth flowchart illustrating the data transmission method provided in the embodiments of this application;
[0071] Figure 7 This is the seventh flowchart illustrating the data transmission method provided in the embodiments of this application;
[0072] Figure 8 This is the eighth flowchart illustrating the data transmission method provided in the embodiments of this application;
[0073] Figure 9 This is the ninth flowchart illustrating the data transmission method provided in the embodiments of this application;
[0074] Figure 10 This is the tenth flowchart illustrating the data transmission method provided in the embodiments of this application;
[0075] Figure 11 This is a data transmission diagram of the data transmission system provided in the embodiments of this application. Detailed Implementation
[0076] To make the objectives, technical solutions, and advantages of this application clearer, the technical solutions of this application will be clearly and completely described below with reference to the accompanying drawings of the embodiments. Obviously, the described embodiments are only some embodiments of this application, not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.
[0077] Figure 1 This is one of the flowcharts illustrating the data transmission method provided in this application. (Refer to...) Figure 1 This application provides a data transmission method, which may include:
[0078] 101. Obtain the first parameter and send the first parameter to the second device;
[0079] 102. Receive the third parameter sent by the second device, and perform identity authentication and platform integrity authentication on the second device based on the third parameter;
[0080] 103. If the identity authentication and platform integrity authentication of the second device pass, the fourth parameter is generated and sent to the second device;
[0081] 104. Receive the fifth parameter sent by the second device, generate the sixth parameter and the first shared key based on the fifth parameter, send the sixth parameter to the second device, and use the first shared key to transmit data with the second device.
[0082] In step 101, the first parameter is sent to the second device to initiate a connection request to the second device.
[0083] The data transmission method provided in this embodiment, through trusted computing, transmits various parameters between a first device and a second device. This enables the first device to authenticate the identity and platform integrity of the second device using these parameters. After authentication, a first shared key is generated, which is then used to transmit data with the second device. Because the first device has completed the authentication of the second device's identity and platform integrity, the legitimacy of the second device's identity information and the integrity of its computing platform are guaranteed, thus confirming the second device's trustworthiness. The use of the first shared key for data transmission significantly improves the security of data transmission, especially for sensitive data transmissions.
[0084] Figure 2 This is a second schematic flowchart of the data transmission method provided in the embodiments of this application. (Refer to...) Figure 2 In one embodiment, obtaining the first parameter may include:
[0085] 201. Measure and verify the integrity of the first platform component according to the trusted policy to obtain the first integrity metric value;
[0086] 202. Generate a first identity key based on the first platform master key, and send the first identity information and the public key of the first identity key to a trusted third party to obtain the first identity certificate;
[0087] 203. Generate a first sequence number corresponding to the first integrity metric value, and generate a first random value using a random number generator;
[0088] 204. The first identity certificate, the first serial number, and the first random value are determined as the first parameter.
[0089] In step 201, after the first device completes trusted boot, it measures and verifies the integrity of the first platform components according to the trusted policy, that is, it measures and verifies the integrity of the components of the first device's own computing platform. The obtained first integrity measurement value can be stored in the platform configuration register of the trusted cryptographic module of the first device's computing platform, and at the same time, the measurement event log is generated and saved.
[0090] In step 202, a first identity key is generated based on the first platform master key, which means generating the first device's identity key based on the master key of the first device's own computing platform.
[0091] In step 203, a first sequence number corresponding to the first integrity metric is generated, which can be used to find the first integrity metric conveniently and quickly. In addition, the random number generator can be built into the trusted cryptographic module of the computing platform of the first device.
[0092] This embodiment obtains the identity certificate of the first device, the integrity measurement information of the computing platform of the first device, and the random value of the first device, and uses them as the first parameter. The first parameter can be used to characterize the identity and platform integrity of the first device, which helps the second device to perform identity authentication and platform integrity authentication of the first device based on the first parameter.
[0093] Figure 3 This is the third flowchart illustrating the data transmission method provided in this application. (Refer to...) Figure 3 In one embodiment, performing identity authentication and platform integrity authentication on the second device based on the third parameter may include:
[0094] The third parameter includes a second identity certificate, a second serial number, a second reference value, and a second signature value. The second identity certificate is the identity certificate of the second device. The second serial number corresponds to the second integrity metric value. The second integrity metric value is the platform integrity metric value of the second device. The second reference value is generated by the second device based on the second integrity metric value corresponding to the second serial number, together with the first random value. The second signature value is obtained by the second device signing the second reference value.
[0095] 301. Verify the legitimacy of the second identity certificate to authenticate the identity of the second device;
[0096] 302. If the second device passes the identity authentication, the legality of the second signature value is verified using the public key of the second identity key;
[0097] The second identity key is generated based on the platform master key of the second device;
[0098] 303. If the second signature value is valid, the second device is authenticated for platform integrity by verifying whether the second reference value contains the first random value and the second integrity metric value.
[0099] In step 302, the second signature value is obtained by the second device signing the second reference value using the private key of the second identity key. Therefore, the legality of the second signature value can be verified using the public key of the second identity key.
[0100] In step 303, since the second reference value is generated by the second integrity metric value obtained by the second device according to the second serial number and the first random value, the platform integrity authentication of the second device can be performed by verifying whether the second reference value contains the first random value and the second integrity metric value at the first device. If so, the platform integrity authentication of the second device is determined to be successful.
[0101] It should be noted that when the first device verifies whether the second reference value contains the second integrity metric value, it not only verifies whether the second reference value contains the integrity metric data of the second device, but also verifies whether the integrity metric data is consistent with the expected integrity metric value. This is to prevent the second integrity metric value from being lost or tampered with during transmission. Only when the second reference value contains the first random value and the integrity metric data of the second device is consistent with the expected integrity metric value can the second integrity metric value be determined to be the correct second integrity metric value, and the integrity authentication of the second device platform is passed.
[0102] This embodiment verifies whether the identity certificate of the second device is valid. If it is valid, the identity authentication of the second device is determined to be successful, thereby completing the identity authentication of the second device. Furthermore, the integrity authentication of the second device's computing platform is completed by verifying the second signature value and the second reference value of the second device.
[0103] Figure 4 This is the fourth flowchart illustrating the data transmission method provided in this application. (Refer to...) Figure 4 In one embodiment, generating the fourth parameter may include:
[0104] 401. Generate a first reference value based on the first integrity metric and the second random value;
[0105] The second random value belongs to the third parameter, and the second random value is the random value of the second device;
[0106] 402. Sign the first reference value using the private key of the first identity key to obtain the first signature value;
[0107] 403. Configure the first encryption flag bit according to the information transmission security level;
[0108] 404. Use the first reference value, the first signature value, and the first encryption flag value as the fourth parameter.
[0109] In steps 401 and 402, the trusted cryptographic module in the first device computing platform can be used to generate the first reference value and the first signature value.
[0110] In step 403, if the information transmission security level is high and the data needs to be transmitted in encrypted form, the value of the first encryption flag is configured to 1; otherwise, it is configured to 0.
[0111] In step 404, the first device may also regenerate a random value and use that random value as the fourth parameter.
[0112] In addition, after the first device completes the identity authentication and platform integrity authentication of the second device, it can generate its own platform integrity report and record the fourth parameter in the report. The fourth parameter can then be sent to the second device by sending the report.
[0113] This embodiment encrypts the integrity metric of the first device computing platform by generating a first reference value, a first signature value, and a first encryption flag, thereby ensuring the security of subsequent transmission processes.
[0114] Figure 5 This is the fifth flowchart illustrating the data transmission method provided in this application. (Refer to...) Figure 5 In one embodiment, generating the sixth parameter and the first shared key based on the fifth parameter may include:
[0115] The fifth parameter includes the public key of the second key pair and the second certificate. The second key pair is generated by the second device based on the value of the first encryption flag. The second certificate is generated by the second device after signing the first random value and the public key of the second key pair.
[0116] 501. Verify the legitimacy of the signature information in the second certificate using the public key of the second identity key;
[0117] The second identity key is generated based on the platform master key of the second device;
[0118] 502. If the signature information in the second certificate is valid, then verify whether the second certificate contains the first random value and the public key of the second key pair;
[0119] 503. If the second certificate contains the first random value and the public key of the second key pair, then generate the first key pair;
[0120] 504. Use the private key of the first identity key to sign the second random value and the public key of the first key pair to generate the first certificate;
[0121] 505. Determine the public key and the first certificate of the first key pair as the sixth parameter;
[0122] 506. Generate a first shared key based on the private key of the first key pair and the public key of the second key pair.
[0123] In step 501, the second certificate is generated by the second device after signing it with the private key of the second identity key. Therefore, the legality of the signature information in the second certificate can be verified using the public key of the second identity key.
[0124] In step 502, since the second certificate is generated by the second device signing the public key of the first random value and the second key pair, the second certificate can be authenticated by verifying whether the second certificate contains the public key of the first random value and the second key pair at the first device. If it does, the second certificate is confirmed to be authenticated.
[0125] In step 503, the first key pair of SM2 can be generated by the trusted cryptographic module of the first device computing platform, and the first key pair can be loaded into the trusted cryptographic module.
[0126] In step 504, the trusted cryptographic module of the first device computing platform can use the private key of the first identity key to sign the second random value and the public key of the first key pair to generate a first certificate. The second random value can also be a random value regenerated by the second device.
[0127] In step 505, the sixth parameter can be included as part of the key negotiation information so that it can be sent to the second device for key negotiation later.
[0128] In step 506, a first shared key can be generated by the trusted cryptographic module of the first device computing platform based on the private key of the first key pair and the public key of the second key pair.
[0129] This embodiment generates a sixth parameter, which facilitates subsequent key negotiation with the second device. By generating a first shared key, data transmission with the second device can be achieved using the first shared key, thereby improving data transmission security.
[0130] Figure 6 This is the sixth flowchart illustrating the data transmission method provided in this application. (Refer to...) Figure 6 This application provides a data transmission method, which may include:
[0131] 601. Obtain the second parameter and receive the first parameter sent by the first device;
[0132] 602. Authenticate the identity of the first device according to the first parameter. If the identity authentication of the first device is successful, generate the third parameter according to the first parameter and the second parameter, and send the third parameter to the first device.
[0133] 603. Receive the fourth parameter sent by the first device, perform platform integrity authentication on the first device based on the first parameter and the fourth parameter, and if the platform integrity authentication of the first device passes, generate the fifth parameter based on the fourth parameter and send the fifth parameter to the first device;
[0134] 604. Receive the sixth parameter sent by the first device, generate a second shared key based on the sixth parameter, and use the second shared key to transmit data with the first device.
[0135] In step 602, the third parameter is sent to the first device to initiate a verification request to the first device.
[0136] The data transmission method provided in this embodiment, through trusted computing, transmits various parameters between a first device and a second device. This enables the second device to use these parameters to authenticate the identity and platform integrity of the first device. After authentication, a second shared key is generated, which is then used to transmit data with the first device. Because the second device has completed the identity and platform integrity authentication of the first device, the legitimacy of the first device's identity information and the integrity of its computing platform are guaranteed, thus confirming the first device's trustworthiness. The use of the second shared key for data transmission significantly improves the security of data transmission, especially for sensitive data transmissions.
[0137] Figure 7 This is the seventh flowchart illustrating the data transmission method provided in this application. (Refer to...) Figure 7 In one embodiment, obtaining the second parameter may include:
[0138] 701. Measure and verify the integrity of the second platform component according to the trusted policy to obtain the second integrity metric value;
[0139] 702. Generate a second identity key based on the second platform master key, and send the second identity information and the public key of the second identity key to a trusted third party to obtain a second identity certificate;
[0140] 703. The second identity certificate is designated as the second parameter.
[0141] In step 701, after the second device completes trusted boot, it measures and verifies the integrity of the second platform components according to the trusted policy, that is, it measures and verifies the integrity of the components of the second device's own computing platform. The obtained second integrity measurement value can be stored in the platform configuration register of the trusted cryptographic module of the second device's computing platform, and at the same time, the measurement event log is generated and saved.
[0142] In step 702, a second identity key is generated based on the second platform master key, which means generating the identity key of the second device based on the master key of the second device's own computing platform.
[0143] This embodiment can characterize the identity and platform integrity of the second device by obtaining the identity certificate of the second device and the integrity measurement information of the computing platform of the first device, which helps the first device to perform identity authentication and platform integrity authentication of the second device in the future.
[0144] Figure 8 This is the eighth flowchart illustrating the data transmission method provided in this application. (Refer to...) Figure 8 In one embodiment, the first device is authenticated based on the first parameter. If the authentication of the first device is successful, a third parameter is generated based on the first and second parameters, which may include:
[0145] The first parameter includes a first identity certificate and a first random value. The first identity certificate is the identity certificate of the first device, and the first random value is the random value of the first device.
[0146] The second parameter is the second identity certificate;
[0147] 801. Verify the legitimacy of the first identity certificate to authenticate the identity of the first device;
[0148] 802. If the first device passes authentication, a second serial number corresponding to the second integrity metric is generated, and a second random value is generated using a random number generator.
[0149] 803. Generate a second reference value based on the second integrity metric and the first random value;
[0150] 804. Sign the second reference value using the private key of the second identity key to obtain the second signature value;
[0151] 805. Use the second serial number, the second random value, the second identity certificate, the second reference value, and the second signature value as the third parameter.
[0152] In step 802, a second sequence number corresponding to the second integrity metric is generated, which allows the second integrity metric to be found conveniently and quickly. In addition, the random number generator can be built into the trusted cryptographic module of the computing platform of the second device.
[0153] In steps 803 and 804, the trusted cryptographic module in the second device computing platform can be used to generate the second reference value and the second signature value.
[0154] In addition, after the second device has fully authenticated the identity of the first device, it can generate its own platform integrity report and record the third parameter in the report. The third parameter can then be sent to the first device by sending the report.
[0155] This embodiment verifies whether the identity certificate of the first device is valid. If it is valid, the identity authentication of the first device is determined to be successful, thereby completing the identity authentication of the first device. Furthermore, by generating a second serial number, a second random value, a second reference value, and a second signature value, the integrity measurement value of the second device's computing platform is encrypted to ensure the security of subsequent transmission processes.
[0156] Figure 9 This is the ninth flowchart illustrating the data transmission method provided in the embodiments of this application. (Refer to...) Figure 9 In one embodiment, the first device is subjected to platform integrity authentication based on the first parameter and the fourth parameter. If the platform integrity authentication of the first device passes, a fifth parameter is generated based on the fourth parameter, which may include:
[0157] The first parameter includes a first serial number, which corresponds to a first integrity metric value, and the first integrity metric value is the platform integrity metric value of the first device.
[0158] The fourth parameter includes the values of the first reference value, the first signature value, and the first encryption flag. The first reference value is generated by the first device together with the second random value, based on the first integrity metric value obtained by the first device according to the first sequence number. The first signature value is obtained by the first device signing the first reference value. The first encryption flag is configured by the first device according to the information transmission security level.
[0159] 901. Verify the legitimacy of the first signature value using the public key of the first identity key;
[0160] The first identity key is generated based on the platform master key of the first device;
[0161] 902. If the first signature value is valid, then the first device is authenticated for platform integrity by verifying whether the first reference value contains the second random value and the first integrity metric value.
[0162] 903. If the platform integrity authentication of the first device passes and the value of the first encryption flag is 1, then generate the second key pair;
[0163] 904. Use the private key of the second identity key to sign the first random value and the public key of the second key pair to generate a second certificate;
[0164] 905. The public key and the second certificate of the second key pair are determined as the fifth parameter.
[0165] In step 901, the first signature value is obtained by the first device signing the first reference value using the private key of the first identity key. Therefore, the legality of the first signature value can be verified using the public key of the first identity key.
[0166] In step 902, since the first reference value is generated by the first device together with the second random value, based on the first integrity metric value obtained by the first device according to the first serial number, the first device can be verified at the second device to perform platform integrity authentication. If so, the platform integrity authentication of the first device is determined to be successful.
[0167] It should be noted that when the second device verifies whether the first reference value contains the first integrity metric value, it not only needs to verify whether the first reference value contains the integrity metric data of the first device, but also needs to verify whether the integrity metric data is consistent with the expected integrity metric value. This is to prevent the first integrity metric value from being lost or tampered with during transmission. Only when the first reference value contains the second random value and contains the integrity metric data of the first device, and the integrity metric data is consistent with the expected integrity metric value, can the first integrity metric value be determined to be the correct first integrity metric value, and the integrity authentication of the first device platform is passed.
[0168] In step 903, if the platform integrity authentication of the first device is passed, and the value of the first encryption flag is 0, then plaintext information is transmitted between the first device and the second device; if the value of the first encryption flag is 1, then the second key pair can be generated by the trusted cryptographic module in the computing platform of the second device.
[0169] In step 904, the trusted cryptographic module of the second device computing platform can use the private key of the second identity key to sign the first random value and the public key of the second key pair to generate a second certificate. The first random value can also be a random value regenerated by the first device.
[0170] In step 905, the second device may also regenerate a random value and use that random value as the fifth parameter.
[0171] This embodiment verifies the first signature value and the first reference value of the first device to complete the integrity authentication of the computing platform of the first device, and generates a public key and a second certificate for the second key pair, which helps to conduct key negotiation with the first device in the future.
[0172] Figure 10 This is the tenth flowchart illustrating the data transmission method provided in this application. (Refer to...) Figure 10 In one embodiment, generating the second shared key based on the sixth parameter may include:
[0173] The sixth parameter includes the public key of the first key pair and the first certificate. The first key pair is generated by the first device based on the second certificate. The first certificate is obtained by the first device signing the second random value and the public key of the first key pair.
[0174] 1001. Verify the legitimacy of the signature information in the first certificate using the public key of the first identity key;
[0175] The first identity key is generated based on the platform master key of the first device;
[0176] 1002. If the signature information in the first certificate is valid, then verify whether the first certificate contains the second random value and the public key of the first key pair;
[0177] 1003. If the first certificate contains a second random value and the public key of the first key pair, then generate a second shared key based on the private key of the second key pair and the public key of the first key pair.
[0178] In step 1001, the first certificate is generated by the first device after signing it with the private key of the first identity key. Therefore, the legality of the signature information in the first certificate can be verified using the public key of the first identity key.
[0179] In step 1002, since the first certificate is obtained by the first device signing the public key of the second random value and the first key pair, the first certificate can be authenticated by verifying whether the first certificate contains the public key of the second random value and the first key pair at the second device. If it does, the first certificate is confirmed to be authenticated.
[0180] In step 1003, a second shared key can be generated by the trusted cryptographic module of the second device computing platform based on the private key of the second key pair and the public key of the first key pair.
[0181] This embodiment generates a second shared key, which can be used to realize data transmission with the first device, thereby improving data transmission security.
[0182] The data transmission system provided in the embodiments of this application is described below. The data transmission system described below can be referred to in correspondence with the data transmission method described above.
[0183] Figure 11 This is a data transmission diagram of the data transmission system provided in an embodiment of this application. (Refer to...) Figure 11 This application provides a data transmission system, which may include:
[0184] First equipment and second equipment;
[0185] The first device is used for:
[0186] Obtain the first parameter and send it to the second device;
[0187] Specifically, the first parameter is sent to the second device to initiate a connection request to the second device.
[0188] Receive the third parameter sent by the second device, and perform identity authentication and platform integrity authentication on the second device based on the third parameter;
[0189] If the identity authentication and platform integrity authentication of the second device pass, a fourth parameter is generated and sent to the second device.
[0190] The device receives the fifth parameter sent by the second device, generates a sixth parameter and a first shared key based on the fifth parameter, sends the sixth parameter to the second device, and uses the first shared key to transmit data with the second device.
[0191] The second device is used for:
[0192] Obtain the second parameter and receive the first parameter sent by the first device;
[0193] The first device is authenticated based on the first parameter. If the authentication of the first device is successful, a third parameter is generated based on the first and second parameters and sent to the first device.
[0194] The third parameter is sent to the first device to initiate a verification request to the first device.
[0195] The system receives the fourth parameter sent by the first device, performs platform integrity authentication on the first device based on the first parameter and the fourth parameter, and if the platform integrity authentication of the first device passes, it generates the fifth parameter based on the fourth parameter and sends the fifth parameter to the first device.
[0196] The device receives the sixth parameter sent by the first device, generates a second shared key based on the sixth parameter, and uses the second shared key to transmit data with the first device.
[0197] The parameters transmitted between the first device and the second device include the first parameter, the third parameter, the fourth parameter, the fifth parameter, and the sixth parameter, see [link to documentation]. Figure 11 It can be known that:
[0198] The first parameter includes the first identity certificate, the first serial number, and the first random value;
[0199] The first identity certificate is the identity certificate of the first device; the first serial number corresponds to the first integrity metric value; the first integrity metric value is the platform integrity metric value of the first device; and the first random value is the random value of the first device.
[0200] The third parameter includes the second serial number, the second random value, the second identity certificate, the second reference value, and the second signature value;
[0201] The second serial number corresponds to the second integrity metric value, which is the platform integrity metric value of the second device. The second random value is the random value of the second device. The second identity certificate is the identity certificate of the second device. The second reference value is generated by the second device together with the first random value based on the second integrity metric value corresponding to the second serial number. The second signature value is obtained by the second device signing the second reference value.
[0202] The fourth parameter includes the first reference value, the first signature value, and the first encryption flag.
[0203] The first reference value is generated by the first device together with the second random value, based on the first integrity metric value obtained by the first device according to the first sequence number; the first signature value is obtained by the first device signing the first reference value; and the first encryption flag is configured by the first device according to the information transmission security level.
[0204] The fifth parameter includes the public key of the second key pair and the second certificate;
[0205] The second key pair is generated by the second device based on the value of the first encryption flag bit, and the second certificate is generated by the second device after signing the first random value and the public key of the second key pair;
[0206] The sixth parameter includes the public key of the first key pair and the first certificate;
[0207] The first key pair is generated by the first device based on the second certificate. The first certificate is obtained by the first device signing the second random value and the public key of the first key pair.
[0208] The data transmission system provided in this embodiment, through trusted computing, transmits various parameters between a first device and a second device. These parameters enable the first and second devices to authenticate each other's identities and verify the platform's integrity. After authentication, a first shared key and a second shared key are generated. Data transmission between the first and second devices is then achieved using these shared keys. Because the first and second devices have completed the authentication of each other's identities and the integrity of the computing platform, the legitimacy of the identity information of the first and second devices and the integrity of the computing platform are guaranteed, thus confirming that the first and second devices are trustworthy. The use of the first and second shared keys for data transmission significantly improves the security of data transmission, especially sensitive data transmission.
[0209] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit them. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of this application.
Claims
1. A data transmission method, characterized in that, include: Obtain the first parameter and send the first parameter to the second device; The first parameter includes a first random value; The system receives a third parameter sent by the second device and performs identity authentication and platform integrity authentication on the second device based on the third parameter. The third parameter includes a second sequence number, a second reference value, and a second random value. The second reference value is generated by the second device together with the first random value, based on the second integrity metric value obtained by the second device according to the second sequence number. If the identity authentication and platform integrity authentication of the second device pass, a fourth parameter is generated and sent to the second device; The device receives a fifth parameter sent by the second device, generates a sixth parameter and a first shared key based on the fifth parameter, sends the sixth parameter to the second device, and uses the first shared key to transmit data with the second device.
2. The data transmission method according to claim 1, characterized in that, The process of obtaining the first parameter includes: The integrity of the first platform component is measured and verified according to the trusted policy to obtain the first integrity metric value; A first identity key is generated based on the first platform master key, and the first identity information and the public key of the first identity key are sent to a trusted third party to obtain the first identity certificate; Generate a first sequence number corresponding to the first integrity metric value, and generate a first random value using a random number generator; The first identity certificate, the first serial number, and the first random value are determined as the first parameter.
3. The data transmission method according to claim 2, characterized in that, The step of performing identity authentication and platform integrity authentication on the second device based on the third parameter includes: The third parameter includes a second identity certificate and a second signature value. The second identity certificate is the identity certificate of the second device. The second serial number corresponds to the second integrity metric value, which is the platform integrity metric value of the second device. The second signature value is obtained by the second device signing the second reference value. The second device is authenticated by verifying the legitimacy of the second identity certificate. If the second device successfully authenticates its identity, the public key of the second identity key is used to verify the legality of the second signature value; the second identity key is generated based on the platform master key of the second device. If the second signature value is valid, the second device is authenticated for platform integrity by verifying whether the second reference value contains the first random value and the second integrity metric value.
4. The data transmission method according to claim 2, characterized in that, The generation of the fourth parameter includes: A first reference value is generated based on the first integrity metric value and the second random value; the second random value is a random value of the second device. The first reference value is signed using the private key of the first identity key to obtain the first signature value; Configure the first encryption flag bit according to the information transmission security level; The first reference value, the first signature value, and the value of the first encryption flag are used as the fourth parameter.
5. The data transmission method according to claim 4, characterized in that, The step of generating the sixth parameter and the first shared key based on the fifth parameter includes: The fifth parameter includes the public key of the second key pair and the second certificate. The second key pair is generated by the second device based on the value of the first encryption flag. The second certificate is generated by the second device after signing the first random value and the public key of the second key pair. The public key of the second identity key is used to verify the legitimacy of the signature information in the second certificate; the second identity key is generated based on the platform master key of the second device; If the signature information in the second certificate is valid, then verify whether the second certificate contains the first random value and the public key of the second key pair; If the second certificate contains the first random value and the public key of the second key pair, then the first key pair is generated; The first certificate is generated by signing the second random value and the public key of the first key pair using the private key of the first identity key. The public key of the first key pair and the first certificate are determined as the sixth parameter; A first shared key is generated based on the private key of the first key pair and the public key of the second key pair.
6. A data transmission method, characterized in that, include: Obtain the second parameter and receive the first parameter sent by the first device; The first device is authenticated based on the first parameter. If the authentication of the first device is successful, a third parameter is generated based on the first parameter and the second parameter, and the third parameter is sent to the first device. The third parameter includes a second random value. The system receives a fourth parameter sent by the first device, performs platform integrity authentication on the first device based on the first parameter and the fourth parameter, and if the platform integrity authentication of the first device passes, generates a fifth parameter based on the fourth parameter and sends the fifth parameter to the first device; the first parameter includes a first sequence number, and the fourth parameter includes a first reference value, which is generated by the first device together with a second random value based on a first integrity metric value obtained by the first device based on the first sequence number. The system receives a sixth parameter sent by the first device, generates a second shared key based on the sixth parameter, and uses the second shared key to transmit data with the first device.
7. The data transmission method according to claim 6, characterized in that, The process of obtaining the second parameter includes: The integrity of the second platform component is measured and verified according to the trusted policy to obtain the second integrity metric value; A second identity key is generated based on the second platform master key. The second identity information and the public key of the second identity key are sent to a trusted third party to obtain a second identity certificate. The second identity certificate is determined as the second parameter.
8. The data transmission method according to claim 7, characterized in that, The step of authenticating the first device based on the first parameter, and generating a third parameter based on the first parameter and the second parameter if the authentication of the first device is successful, includes: The first parameter includes a first identity certificate and a first random value, wherein the first identity certificate is the identity certificate of the first device, and the first random value is a random value of the first device; The second parameter is the second identity certificate; The first device is authenticated by verifying the legitimacy of the first identity certificate; If the first device passes authentication, a second serial number corresponding to the second integrity metric is generated, and a second random value is generated using a random number generator. A second reference value is generated based on the second integrity metric value and the first random value; The second reference value is signed using the private key of the second identity key to obtain the second signature value; The second serial number, the second random value, the second identity certificate, the second reference value, and the second signature value are used as the third parameter.
9. The data transmission method according to claim 8, characterized in that, The first device is subjected to platform integrity authentication based on the first parameter and the fourth parameter. If the platform integrity authentication of the first device passes, a fifth parameter is generated based on the fourth parameter, including: The first sequence number corresponds to the first integrity metric value, which is the platform integrity metric value of the first device; The fourth parameter includes the values of a first signature value and a first encryption flag. The first signature value is obtained by the first device signing the first reference value, and the first encryption flag is configured by the first device according to the information transmission security level. The legality of the first signature value is verified using the public key of the first identity key; the first identity key is generated based on the platform master key of the first device; If the first signature value is valid, the first device is authenticated for platform integrity by verifying whether the first reference value contains the second random value and the first integrity metric value. If the platform integrity authentication of the first device passes and the value of the first encryption flag is 1, then a second key pair is generated; The first random value and the public key of the second key pair are signed using the private key of the second identity key to generate a second certificate; The public key of the second key pair and the second certificate are determined as the fifth parameter.
10. The data transmission method according to claim 9, characterized in that, The step of generating the second shared key based on the sixth parameter includes: The sixth parameter includes the public key of the first key pair and the first certificate. The first key pair is generated by the first device based on the second certificate. The first certificate is obtained by the first device signing the second random value and the public key of the first key pair. The public key of the first identity key is used to verify the legitimacy of the signature information in the first certificate; the first identity key is generated based on the platform master key of the first device; If the signature information in the first certificate is valid, then verify whether the first certificate contains the second random value and the public key of the first key pair; If the first certificate contains the second random value and the public key of the first key pair, then a second shared key is generated based on the private key of the second key pair and the public key of the first key pair.
Citation Information
Patent Citations
Key negotiation method of DTU equipment and node equipment, DTU equipment, node equipment and key negotiation system
CN113556738A