Data encapsulation method, data protection method and system supporting TPCM trusted platform configuration updating

Through the use of encrypted packaging and signature verification methods in the TPCM standard, the problem that cannot be unblocked when the packaging stored in the software and hardware configuration update is solved, and the reliable unblocking of the data after the configuration is updated.

CN119377983AActive Publication Date: 2025-01-28NARI INFORMATION & COMM TECH
View PDF 7 Cites 0 Cited by

Patent Information

Application Number
CN202411457809.7
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-10-18
Publication Date
2025-01-28
Estimated Expiration
2044-10-18

AI Technical Summary

Technical Problem

In the existing TPCM standard, the encapsulated storage mechanism cannot unpack data when software and hardware configuration is updated, resulting in the encapsulated storage failure.

Method used

The encryption packaging is encrypted by receiving the safety key generated by the packaging data packet, the security key generated by TPCM, and the PCRINFO combination value, and the packaging data Sealeddata is generated, and the security key and signature value are stored in the Flash memory of the trusted platform control module TPCM. Calculate the signature value and save it during the update, and re -calculate the PCRINFO combination value for comparison during unblocking to ensure the security of data unblocking.

Benefits of technology

After the software and hardware configuration is updated, the data can still be unsealed, solving the problem of packaging storage failure, and ensuring the reliability and security of the data.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119377983A_ABST
    Figure CN119377983A_ABST
Patent Text Reader

Abstract

The invention discloses a data encapsulation method and system and a data protection method and system supporting TPCM trusted platform configuration updating. Receiving an encapsulation data packet, and performing encryption encapsulation on the encapsulation data packet, the security key generated by the TPCM and the pcrInfo combined value to obtain encapsulation data; the pcrInfo combination value is obtained through calculation according to a hash value obtained through calculation of a metric value of a platform configuration register PCR bound with a plurality of packaging data. And comparing the recalculated pcrInfo combined value with the decrypted pcrInfo combined value, comparing the recalculated signature value with the signature value stored in the FLASH memory, and judging whether to unpack the data or not. And the data is bound with the security key attribute of the software and hardware configuration during data sealing. As long as the software and hardware configuration of the computer meets the corresponding security-related attributes, the data can be unpacked regardless of the state of the specific software and hardware configuration. And after software and hardware are updated, as long as the attributes of the platform are not changed, the data still can be unpacked. And the failure problem existing in packaging storage is solved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of data security technology, and in particular to a data encapsulation method, a data protection method and a system that support TPCM trusted platform configuration update. Background Art

[0002] The implementation mechanism of encapsulation storage in the existing TPCM standard is described as follows: When a user encapsulates and stores a certain data, the user first selects all the software and hardware configurations bound to the data, that is, selects the measurement values ​​in certain platform configuration registers PCR as binding information. The selected platform configuration registers PCR are represented by pcrSelection. These measurement values ​​are then hashed, and the data to be encapsulated and the hash value are encrypted as a whole and stored. When unpacking is required, the measurement values ​​in the PCR under the current software and hardware configuration are first read according to pcrSelection, and the hash is calculated. Only when the hash value is consistent with the data encapsulated together, the data is allowed to be read.

[0003] Although encapsulated storage effectively prevents data from being read in a system where the software and hardware configuration has been illegally changed, if the configuration has been legally modified (for example, the normal update of the system's software and hardware), the change in the metric value in the PCR will make it impossible to unseal the data, so the encapsulated storage will fail. For example, suppose that the user needs to bind the data Data to a secure operating system. The metric value of the operating system is stored in PCR[8]. During encapsulation, the metric value in PCR[8] is p1, and Data and p1 are encapsulated into [Data, P1]. Only when the metric value in PCR[8] is P1 can the data Data be unsealed. If the operating system is infected with a virus and the metric value of the operating system in PCR[8] becomes p1′, Data cannot be unsealed at this time, which plays a role in protecting the data; if the metric value in PCR[8] changes from P1 to P2 due to a legal update of the operating system, Data cannot be unsealed either. This is the failure problem of encapsulated storage. Summary of the invention

[0004] Purpose of the invention: In view of the above shortcomings, the present invention provides a data encapsulation method, a data protection method and a system that support TPCM trusted platform configuration update.

[0005] Technical solution: To solve the above problems, the present invention adopts a data encapsulation method supporting TPCM trusted platform configuration update, including:

[0006] Receive the encapsulated data packet, encrypt and encapsulate the encapsulated data packet, the security key generated by TPCM and the pcrInfo combination value to obtain the encapsulated data SealedData;

[0007] The pcrInfo combination value is calculated based on a hash value calculated based on the measurement values ​​of the platform configuration register PCR bound to a number of encapsulated data.

[0008] Furthermore, the security key generated by the TPCM is a random number generated by the TPCM.

[0009] The present invention also adopts a data protection method supporting TPCM trusted platform configuration update, comprising:

[0010] Step 1: receiving an encapsulated data packet, selecting a number of platform configuration registers PCR to which the encapsulated data packets need to be bound; the selected number of platform configuration registers PCR form a platform configuration group PCRS;

[0011] Step 2: Read the measurement value of the platform configuration group PCRS and calculate the hash value to obtain the pcrInfo combination value;

[0012] Step 3: Encrypt and encapsulate the security key, encapsulation data packet, and pcrInfo combination value generated by TPCM to obtain the encapsulation data SealedData;

[0013] Step 4: Calculate the signature value Sign of the combined value of the security key of the sealed data SealedData and pcrInfo (pcrInfo,B0) ; and the security key and signature value Sign (pcrInfo,B0) Stored in the FLASH memory of the trusted platform control module TPCM; when the trusted platform control module TPCM is updated normally, the signature value Sign of the pcrInfo combination value is recalculated (pcrInfo,B0) And save it to FLASH memory;

[0014] Step 5: When the data is unsealed, the pcrInfo combination value is recalculated, and the recalculated pcrInfo combination value is compared with the pcrInfo combination value obtained by decrypting the sealed data SealedData. If they are consistent, proceed to the next step. If they are inconsistent, the unsealing fails.

[0015] Step 6: Recalculate the signature value Sign of the pcrInfo combination value (pcrInfo,B0) ; Compare the recalculated signature value with the signature value saved in the FLASH memory. If they are consistent, the data is unsealed. If they are inconsistent, the system configuration information is modified and the unsealing fails.

[0016] Furthermore, the security key generated by the TPCM is a random number generated by the TPCM.

[0017] Furthermore, encryption, decryption operations and signature and signature verification operations are all completed inside the trusted cryptographic module TPCM; user authorization information is managed and verified through the trusted cryptographic module TPCM's own protocol.

[0018] Furthermore, encryption and signature keys are generated by the trusted cryptographic module TPCM, are non-migratable keys, are stored inside the trusted cryptographic module TPCM, are protected by the trusted cryptographic module TPCM, and are not used outside the trusted cryptographic module TPCM.

[0019] The present invention also adopts a data encapsulation system supporting TPCM trusted platform configuration update, including:

[0020] A receiving module, used for receiving encapsulated data packets;

[0021] The encapsulation module is used to encrypt and encapsulate the encapsulation data packet, the security key generated by TPCM and the pcrInfo combination value to obtain the encapsulated data SealedData;

[0022] The pcrInfo combination value is calculated based on a hash value calculated based on the measurement values ​​of the platform configuration register PCR bound to a number of encapsulated data.

[0023] The present invention also adopts a data protection system supporting TPCM trusted platform configuration update, including:

[0024] The data acquisition module is used to receive the encapsulated data packet, select a number of platform configuration registers PCR to which the encapsulated data packet needs to be bound; the selected number of platform configuration registers PCR form a platform configuration group PCRS; read the measurement value of the platform configuration group PCRS and calculate the hash value, and calculate the pcrInfo combination value;

[0025] The encapsulation module is used to encrypt and encapsulate the security key, encapsulation data packet, and pcrInfo combination value generated by TPCM to obtain the encapsulation data SealedData;

[0026] Update module, used to calculate the signature value Sign of the combination of the security key of the encapsulated data SealedData and the pcrInfo value (pcrInfo,B0) ; and the security key and signature value Sign (pcrInfo,B0) Stored in the FLASH memory of the trusted platform control module TPCM; when the trusted platform control module TPCM is updated normally, the signature value Sign of the pcrInfo combination value is recalculated (pcrInfo,B0) And save it to FLASH memory;

[0027] The decapsulation module is used to recalculate the pcrInfo combination value when decapsulating data, and compare the recalculated pcrInfo combination value with the pcrInfo combination value obtained by decrypting the encapsulated data SealedData. If they are inconsistent, the decapsulation fails; if they are consistent, the signature value Sign of the pcrInfo combination value is recalculated. (pcrInfo,B0) ; Compare the recalculated signature value with the signature value saved in the FLASH memory. If they are consistent, the data is unsealed. If they are inconsistent, the system configuration information is modified and the unsealing fails.

[0028] The present invention also adopts a computer device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the steps of the above method when executing the computer program.

[0029] The present invention also adopts a computer-readable storage medium on which a computer program is stored. When the computer program is executed by a processor, the steps of the above method are implemented.

[0030] Beneficial effect: Compared with the prior art, the significant advantage of the present invention is that when sealing data, the data is not bound to the measurement value of the software and hardware configuration information in the PCR, but is bound to the security key attribute of the software and hardware configuration. The attribute of a software and hardware configuration is all the security-related requirements satisfied by the software and hardware configuration. As long as the software and hardware configuration of this computer meets this security-related attribute, the data can be unsealed regardless of the specific status of the software and hardware configuration. In this way, after the software and hardware are updated, as long as the attributes of the platform have not changed, the data can still be unsealed. Solve the failure problem of encapsulated storage. BRIEF DESCRIPTION OF THE DRAWINGS

[0031] Figure 1 It is a flowchart of the data protection method in the present invention. DETAILED DESCRIPTION

[0032] Example 1

[0033] like Figure 1 As shown, in this embodiment, a data protection method supporting TPCM trusted platform configuration update includes the following steps:

[0034] Step 1: Prepare the necessary information for encapsulation, including the user's storage public / private key pair (PK, SK), signature public / private key pair (SP, SS); the plaintext data data to be encrypted; the unique identifier of TPCM, TPCMProof; select the hardware and software configuration to be bound, that is, select several platform configuration registers PCR. The selected platform configuration register PCR combination is called PCRS, and the selection information is saved in pcrSelect.

[0035] Step 2: Read the measurement value in PCRS and calculate the hash value: pcrInfo = Hash (PCRs), TPCM generates a random number B0 to represent the security key.

[0036] Step 3: Encrypt and encapsulate pcrInfo, security key B0 and plaintext data data, SealedData = Enc pk (B0, pcrInfo, data), get the packaged data SealedData and save it in the hard disk.

[0037] Step 4: Calculate the signature value Sign of the security key B0 and pcrInfo (pcrInfo,B0) It is stored in the FLASH of TPCM. Each time the system configuration is legally updated, pcrInfo changes, and the signature value is recalculated and updated to FLASH.

[0038] Step 5: When decrypting the data, first decrypt the encrypted packaged data SealedData to obtain pcrInfo, data, and security key B 0 , recalculate the pcrInfo′ combination value, and determine whether the pcrInfo′ combination value is consistent with the pcrInfo combination value. If they are inconsistent, the unsealing fails.

[0039] Step 7: After the pcrInfo combination value is successfully compared, recalculate the security key and the signature value Sign′ of pcrInfo (pcrInfo,B0) , and retrieve the signature value Sign in Flash (pcrInfo,B0) Compare, if there is any inconsistency, the system configuration information has been modified and the unblocking fails.

[0040] Example 2

[0041] In this embodiment, a data protection system supporting TPCM trusted platform configuration update includes:

[0042] The data acquisition module is used to receive the encapsulated data packet, select a number of platform configuration registers PCR to which the encapsulated data packet needs to be bound; the selected number of platform configuration registers PCR form a platform configuration group PCRS; read the measurement value of the platform configuration group PCRS and calculate the hash value, and calculate the pcrInfo combination value;

[0043] The encapsulation module is used to encrypt and encapsulate the unique identifier of TPCM, the encapsulation data packet, and the pcrInfo combination value to obtain the encapsulation data SealedData;

[0044] Update module, used to calculate the signature value Sign of the combination of the security key of the encapsulated data SealedData and the pcrInfo value (pcrInfo,B0); and the security key and signature value Sign (pcrInfo,B0) Stored in the FLASH memory of the trusted platform control module TPCM; when the trusted platform control module TPCM is updated normally, the signature value Sign of the pcrInfo combination value is recalculated (pcrInfo,B0) And save it to FLASH memory;

[0045] The decapsulation module is used to recalculate the pcrInfo combination value when decapsulating data, and compare the recalculated pcrInfo combination value with the pcrInfo combination value obtained by decrypting the encapsulated data SealedData. If they are inconsistent, the decapsulation fails; if they are consistent, the signature value Sign of the pcrInfo combination value is recalculated. (pcrInfo,B0) ; Compare the recalculated signature value with the signature value saved in the FLASH memory. If they are consistent, the data is unsealed. If they are inconsistent, the system configuration information is modified and the unsealing fails.

[0046] Encryption, decryption, signature, and signature verification operations are all completed inside the trusted cryptographic module TPCM; user authorization information is managed and verified through the trusted cryptographic module TPCM's own protocol. Encryption and signature keys are generated by the trusted cryptographic module TPCM, are non-migratable keys, stored inside the trusted cryptographic module TPCM, protected by the trusted cryptographic module TPCM, and are not used outside the trusted cryptographic module TPCM.

[0047] Example 3

[0048] Those skilled in the art should understand that an embodiment of the present application may provide a computer device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the steps of the above-mentioned method for regional air conditioning load prediction based on a large time series model when executing the computer program.

[0049] Example 4

[0050] Those skilled in the art will appreciate that the embodiments of the present application may be provided as methods, systems, or computer program products. Therefore, the present application may adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment in combination with software and hardware. Moreover, the present application may adopt the form of a computer program product implemented in one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) that contain computer-usable program code.

[0051] The present invention is described with reference to the flowcharts and / or block diagrams of the methods, devices (systems), and computer program products according to the embodiments of the present application. It should be understood that each process and / or block in the flowchart and / or block diagram, as well as the combination of the processes and / or blocks in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to generate a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.

[0052] These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.

[0053] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions for implementing the process in the computer or other programmable device. Figure 1 A process or multiple processes and / or boxes Figure 1 The steps for the functions specified in one or more boxes.

[0054] The embodiments of the present invention are described above in conjunction with the accompanying drawings, but the present invention is not limited to the above-mentioned specific implementation methods. The above-mentioned specific implementation methods are merely illustrative and not restrictive. Under the enlightenment of the present invention, ordinary technicians in this field can also make many forms without departing from the scope of protection of the purpose of the present invention and the claims, which all fall within the protection of the present invention.

Claims

1. A data encapsulation method supporting TPCM trusted platform configuration update, characterized in that: include: Receive the encapsulated data packet, encrypt and encapsulate the encapsulated data packet, the security key generated by TPCM and the pcrInfo combination value to obtain the encapsulated data SealedData; The pcrInfo combination value is calculated based on a hash value calculated based on the measurement values ​​of the platform configuration register PCR bound to a number of encapsulated data.

2. The data encapsulation method according to claim 1, characterized in that: The security key generated by the TPCM is a random number generated by the TPCM.

3. A data protection method supporting TPCM trusted platform configuration update, characterized in that: include: Step 1: receiving an encapsulated data packet, selecting a number of platform configuration registers PCR to which the encapsulated data packets need to be bound; the selected number of platform configuration registers PCR form a platform configuration group PCRS; Step 2: Read the measurement value of the platform configuration group PCRS and calculate the hash value to obtain the pcrInfo combination value; Step 3: Encrypt and encapsulate the security key, encapsulation data packet, and pcrInfo combination value generated by TPCM to obtain the encapsulation data SealedData; Step 4: Calculate the signature value Sign of the combined value of the security key of the sealed data SealedData and pcrInfo (pcrInfo,B0) ; and the security key and signature value Sign (pcrInfo,B0) Stored in the FLASH memory of the trusted platform control module TPCM; When the trusted platform control module TPCM is updated normally, the signature value Sign of the pcrInfo combination value is recalculated (pcrInfo,B0) And save it to FLASH memory; Step 5: When the data is unsealed, the pcrInfo combination value is recalculated, and the recalculated pcrInfo combination value is compared with the pcrInfo combination value obtained by decrypting the sealed data SealedData. If they are consistent, proceed to the next step. If they are inconsistent, the unsealing fails. Step 6: Recalculate the signature value Sign of the pcrInfo combination value (pcrInfo,B0) ; Compare the recalculated signature value with the signature value saved in the FLASH memory. If they are consistent, the data is unsealed. If they are inconsistent, the system configuration information is modified and the unsealing fails.

4. The data protection method according to claim 3, characterized in that: The security key generated by the TPCM is a random number generated by the TPCM.

5. The data protection method according to claim 4, characterized in that: Encryption, decryption, signature and signature verification operations are all completed inside the trusted cryptographic module TPCM; the user's authorization information is managed and verified through the trusted cryptographic module TPCM's own protocol.

6. The data protection method according to claim 4, characterized in that: The encryption and signature keys are generated by the trusted cryptographic module TPCM, are non-migratable keys, stored inside the trusted cryptographic module TPCM, protected by the trusted cryptographic module TPCM, and are not used outside the trusted cryptographic module TPCM.

7. A data encapsulation system supporting TPCM trusted platform configuration update, characterized in that: include: A receiving module, used for receiving encapsulated data packets; The encapsulation module is used to encrypt and encapsulate the encapsulation data packet, the security key generated by TPCM and the pcrInfo combination value to obtain the encapsulated data SealedData; The pcrInfo combination value is calculated based on a hash value calculated based on the measurement values ​​of the platform configuration register PCR bound to a number of encapsulated data.

8. A data protection system supporting TPCM trusted platform configuration update, characterized in that: include: The data acquisition module is used to receive the encapsulated data packet, select a number of platform configuration registers PCR to which the encapsulated data packet needs to be bound; the selected number of platform configuration registers PCR form a platform configuration group PCRS; read the measurement value of the platform configuration group PCRS and calculate the hash value, and calculate the pcrInfo combination value; The encapsulation module is used to encrypt and encapsulate the security key, encapsulation data packet, and pcrInfo combination value generated by TPCM to obtain the encapsulation data SealedData; Update module, used to calculate the signature value Sign of the combination of the security key of the encapsulated data SealedData and the pcrInfo value (pcrInfo,B0) ; and the security key and signature value Sign (pcrInfo,B0) Stored in the FLASH memory of the trusted platform control module TPCM; When the trusted platform control module TPCM is updated normally, the signature value Sign of the pcrInfo combination value is recalculated (pcrInfo,B0) And save it to FLASH memory; The decapsulation module is used to recalculate the pcrInfo combination value when decapsulating data, and compare the recalculated pcrInfo combination value with the pcrInfo combination value obtained by decrypting the encapsulated data SealedData. If they are inconsistent, the decapsulation fails; if they are consistent, the signature value Sign of the pcrInfo combination value is recalculated. (pcrInfo,B0) ; Compare the recalculated signature value with the signature value saved in the FLASH memory. If they are consistent, the data is unsealed. If they are inconsistent, the system configuration information is modified and the unsealing fails.

9. A computer device comprising a memory, a processor and a computer program stored in the memory and executable on the processor, characterized in that: When the processor executes the computer program, the steps of the method according to any one of claims 3 to 6 are implemented.

10. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the method according to any one of claims 3 to 6 are implemented.

Citation Information

Patent Citations

  • Credible platform module test device

    CN101493870A

  • Computer secure startup system based on trusted platform module

    CN101576944A

  • Methods for updating PCR (Platform Configuration Register) reference values based on trusted platform

    CN102063591A

  • Remote authentication method, device and system, storage medium and computer equipment

    CN112000935A

  • White list library file protection method based on trusted computing

    CN112199682A