Remote equipment updating method and device based on PUF (Physical Unclonable Function) security
By embedding a PUF module in the device and employing a two-way authentication mechanism, a unique authentication key is generated and the integrity of the update package is verified, thus resolving security threats in remote updates and achieving an efficient and secure remote update process.
Patent Information
- Application Number
- CN202411625255.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-14
- Publication Date
- 2025-03-11
AI Technical Summary
Existing remote update technologies pose security threats, such as unauthorized access, data tampering, and man-in-the-middle attacks, which compromise device security and stability.
The device remote update method based on PUF is adopted. A unique authentication key is generated through the built-in PUF module. Combined with a two-way authentication mechanism, the identity authentication of the device and the server is ensured. The integrity and origin of the update package are verified through hash calculation and digital signature.
It improves the security and reliability of remote updates, prevents malicious code injection, and ensures the safe and stable operation of devices during the update process.
Smart Images

Figure CN119602963A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of network security technology, and in particular to a PUF-based device remote update method and device. Background Art
[0002] With the rapid development of technologies such as the Internet of Things (IoT), industrial automation, and embedded systems, a large number of smart devices and industrial controllers need to be remotely updated over the network to maintain their security and functionality. However, security threats in the remote update process, such as unauthorized access, data tampering, and malicious code injection, pose a serious threat to the security and stability of the equipment.
[0003] In existing remote update and maintenance technologies, a key-based security authentication mechanism is usually used to ensure the security of the update. However, traditional key management methods have many security risks, such as improper key storage, key leakage, key theft, etc., which may cause the remote update process to be exploited by malicious attackers and cause damage to the device. In addition, traditional security authentication mechanisms can often only achieve one-way authentication, that is, the device verifies the identity of the server, but cannot achieve two-way authentication, thereby increasing the risk of man-in-the-middle attacks.
[0004] In summary, the prior art has the following problems: how to enhance the security of remote updating and ensure the authenticity and integrity of data. Summary of the invention
[0005] The purpose of the present invention is to solve the problem of how to enhance the security of remote update and ensure the authenticity and integrity of data.
[0006] To this end, on the one hand, an embodiment of the present invention provides a device remote update method based on PUF security, the method comprising the following steps:
[0007] The server sends a challenge message to the device;
[0008] The device receives the challenge information, and the built-in PUF module of the device generates response information according to the challenge information, and sends the response information or the hash calculation value of the response information back to the server;
[0009] The server verifies the received response information or the hash calculation value of the response information using the pre-stored PUF expected response information to confirm the identity of the device;
[0010] The server sends the server's certificate to the device, and the device uses the public key to verify the server's identity;
[0011] After the identities of the device and the server are successfully authenticated, the server sends the software package to be updated to the device;
[0012] The device receives the software package to be updated, and installs the software package to be updated.
[0013] On the other hand, an embodiment of the present invention further provides a device remote update apparatus based on PUF security, comprising:
[0014] A first sending unit, configured to send a challenge message from the server to the device;
[0015] A first receiving unit, configured for a device to receive the challenge information, a built-in PUF module of the device to generate response information according to the challenge information, and to send the response information or a hash calculation value of the response information back to the server;
[0016] A first confirmation unit, configured for the server to verify the received response information or the hash calculation value of the response information using the pre-stored PUF expected response information to confirm the identity of the device;
[0017] A second confirmation unit, used for the server to send the server certificate to the device, and the device uses the public key to verify the identity of the server;
[0018] A second sending unit, configured to, after the identities of the device and the server are successfully authenticated, send the software package to be updated to the device by the server;
[0019] The second receiving unit is used for receiving the software package to be updated by the device and installing the software package to be updated.
[0020] The above technical solution has the following beneficial effects: the present invention provides an efficient and secure remote update method by utilizing PUF technology and a two-way authentication mechanism, solves the security risks in the prior art, and significantly improves the security and reliability of remote updates. Through a detailed interactive protocol and a strict security mechanism, the present invention not only ensures the authenticity and integrity of the update package, but also effectively prevents various potential security threats, ensuring the safe and stable operation of the device during the remote update process. BRIEF DESCRIPTION OF THE DRAWINGS
[0021] Figure 1 It is a flow chart of a device remote update method based on PUF security provided by an embodiment of the present invention;
[0022] Figure 2 It is a structural diagram of a device remote update apparatus based on PUF security provided by an embodiment of the present invention;
[0023] Figure 3 This is a flow chart of a first implementation of a method for remote updating of a device based on PUF security provided by an embodiment of the present invention. DETAILED DESCRIPTION
[0024] The following will be combined with the drawings in the embodiments of the present invention to clearly and completely describe the technical solutions in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.
[0025] In response to the low security problem of existing remote updates, this application embeds the PUF module into each device to generate a unique authentication key and participate in the security authentication and data protection process of remote updates. In this application, the server sends a challenge message (Challenge) to the device, and the device uses PUF to generate a response message (Response) based on the challenge, and sends the response message or the hash calculation value of the response message back to the server. The server uses the pre-stored PUF expected response information to verify the received response information and confirm the identity of the device. At the same time, the server also sends its own certificate to the device, and the device uses the public key to verify the identity of the server.
[0026] In the embodiment of the present invention, Figure 1 , provides a device remote update method based on PUF security, the method comprising the following steps:
[0027] S101: The server sends a challenge message to the device;
[0028] When a device detects that it needs to update its firmware or software, it initiates an update request. The device sends an update request message to a remote server via the network, which contains a unique identifier of the device, such as a device ID.
[0029] Server responds to the request: After receiving the update request, the server checks whether the device's unique identifier is in the list of devices allowed to update.
[0030] If the device is authorized to update, the server selects a challenge message (Challenge) from the pre-stored challenge-response database and sends the string together with the server's certificate to the device.
[0031] S102: The device receives the challenge information, and the built-in PUF module of the device generates response information according to the challenge information, and sends the response information or the hash calculation value of the response information back to the server;
[0032] The device sends the generated hash value of the response information back to the server, along with the device's public key certificate, so that the server can authenticate the device.
[0033] S103: The server verifies the received response information or the hash calculation value of the response information using the pre-stored PUF expected response information to confirm the identity of the device;
[0034] Server Verification Response: After receiving the device's response, the server uses the pre-stored PUF expected response information to verify the correctness of the response information. If the response information matches, the server confirms the device's identity is legitimate and records the successful verification log.
[0035] Server sends confirmation: The server sends a confirmation message of successful authentication to the device, including a new challenge message. The terminal will form a session key based on the challenge message of PUF for encryption of subsequent data transmission. Among them, the response message of the device is the session key. The response message includes the hash value of the response.
[0036] S104: The server sends the server certificate to the device, and the device uses the public key to verify the identity of the server; specifically, the following steps are included:
[0037] After receiving the encrypted software package to be updated and the signature, the device uses the session key to decrypt the software package to be updated.
[0038] The device calculates the hash value of the decrypted software package to be updated, and uses the server's public key to decrypt the signature to obtain the original hash value;
[0039] The device compares the calculated hash value with the original hash value decrypted from the signature to ensure that the update package has not been tampered with and the source is trustworthy.
[0040] S105: After the identities of the device and the server are successfully authenticated, the server sends the software package to be updated to the device;
[0041] The server sends the software package to be updated to the device, including:
[0042] The server encrypts the software package to be updated using the session key and generates a digital signature of the software package to be updated; the signature is obtained by calculating a hash value of the software package to be updated and encrypting it using the server's private key;
[0043] The server sends the encrypted software package to be updated and the signature to the device.
[0044] S106: The device receives the software package to be updated, and installs the software package to be updated.
[0045] After the device receives the encrypted update package and signature, it uses the session key to decrypt the update package.
[0046] The device calculates the hash value of the decrypted update package and decrypts the signature using the server's public key to obtain the original hash value.
[0047] The device compares the calculated hash value with the hash value decrypted from the signature to ensure that the update package has not been tampered with and the source is trustworthy.
[0048] The server confirms the identity of the device, including:
[0049] After receiving the response information or the hash value of the response information from the device, the server uses the pre-stored PUF expected response information to verify the correctness of the response information or the hash value of the response information. If the response information or the hash value of the response information matches, the server confirms that the device identity is legitimate and records the log of the successful verification.
[0050] The server sends a confirmation message of successful identity authentication to the device, wherein the confirmation message includes a confirmation challenge message. The device forms a session key according to the confirmation challenge message to encrypt subsequent data transmission.
[0051] The device compares the calculated hash value with the original hash value decrypted from the signature, including:
[0052] If the calculated hash value is consistent with the original hash value, the device confirms the installation of the software package to be updated; the device records the log of the update installation and sends a notification of successful update;
[0053] If the calculated hash value is inconsistent with the original hash value, the device refuses to install the software package to be updated.
[0054] The present invention also provides a device remote update device based on PUF security, such as Figure 2 As shown, including:
[0055] A first sending unit 21, configured to send a challenge message from the server to the device;
[0056] A first receiving unit 22 is used for the device to receive the challenge information, the built-in PUF module of the device to generate response information according to the challenge information, and send the response information or the hash calculation value of the response information back to the server;
[0057] A first confirmation unit 23 is used for the server to verify the received response information or the hash calculation value of the response information using the pre-stored PUF expected response information to confirm the identity of the device;
[0058] A second confirmation unit 24 is used for the server to send the server certificate to the device, and the device uses the public key to verify the identity of the server;
[0059] A second sending unit 25, configured to send the software package to be updated to the device by the server after both the identity of the device and the identity of the server are successfully authenticated;
[0060] The second receiving unit 26 is used for the device to receive the software package to be updated and install the software package to be updated.
[0061] The first confirmation unit includes:
[0062] A matching module is used for, after the server receives the response information or the hash calculation value of the response information from the device, to use the pre-stored PUF expected response information to verify the correctness of the response information or the hash calculation value of the response information. If the response information or the hash calculation value of the response information matches, the server confirms that the device identity is legitimate and records a log of the successful verification;
[0063] The key module is used for the server to send a confirmation message of successful identity authentication to the device. The confirmation message includes a confirmation challenge information. The device will form a session key based on the confirmation challenge information to encrypt subsequent data transmission.
[0064] The second sending unit includes:
[0065] An encryption module, used for the server to encrypt the software package to be updated using the session key, and generate a digital signature of the software package to be updated; the signature is obtained by calculating the hash value of the software package to be updated and encrypting it with the private key of the server;
[0066] The transmission module is used for the server to send the encrypted software package to be updated and the signature to the device.
[0067] The second confirmation unit; including:
[0068] The decryption module is used to decrypt the software package to be updated using the session key after the device receives the encrypted software package to be updated and the signature.
[0069] A calculation module, used for the device to calculate the hash value of the decrypted software package to be updated, and use the public key of the server to decrypt the signature to obtain the original hash value;
[0070] The comparison module is used for the device to compare the calculated hash value with the original hash value decrypted from the signature to ensure that the update package has not been tampered with and the source is credible.
[0071] Comparison module; including:
[0072] If the calculated hash value is consistent with the original hash value, the device confirms the installation of the software package to be updated; the device records the log of the update installation and sends a notification of successful update;
[0073] If the calculated hash value is inconsistent with the original hash value, the device refuses to install the software package to be updated.
[0074] The advantages of the present invention are: the PUF technology is used to generate a unique authentication key, which improves the security of the key and reduces the risk of the key being extracted and abused. A two-way authentication mechanism is implemented, which effectively prevents security threats such as man-in-the-middle attacks. By verifying the integrity and source credibility of the update package, malicious code injection is prevented. The security and reliability of the update package are ensured. When any verification step fails, the device will refuse to install the update, effectively preventing security threats such as malicious code injection.
[0075] The above technical solution of the embodiment of the present invention is described in detail below in conjunction with specific application examples. For technical details not introduced during the implementation process, please refer to the relevant description in the previous text.
[0076] Embodiment 1:
[0077] The present invention provides a device remote update method based on PUF security. The core component of the present invention is the PUF module. The PUF module generates a unique, unpredictable, and unclonable response based on the physical properties of the hardware, such as slight differences in the manufacturing process. Figure 3 As shown, in the present invention, the PUF module is built into each device to generate a unique authentication key and participate in the security authentication and data protection process of remote updates.
[0078] Interaction protocol process:
[0079] The interactive protocol flow of the present invention describes in detail the communication steps between the device and the server during the remote update process, ensuring that each step has the necessary security. The entire process includes initial connection, identity authentication, data transmission and verification, and update package installation. The specific process is as follows:
[0080] Initialize the connection:
[0081] Device initiates update request: When a device detects that it needs to update its firmware or software, it initiates an update request. The device sends an update request message to a remote server over the network, which contains the device's unique identifier (e.g., device ID).
[0082] Server responds to the request: After receiving the update request, the server checks whether the device's unique identifier is in the list of devices allowed to update.
[0083] If the device is authorized to update, the server selects a challenge message (Challenge) from the pre-stored challenge-response database and sends the string together with the server's certificate to the device.
[0084] The device responds to the server challenge:
[0085] Device generates response: After receiving the challenge information and certificate from the server, the device verifies the validity and credibility of the server certificate. If the certificate is invalid, the device terminates the update process.
[0086] The device uses the built-in PUF module to generate a unique response message based on the received challenge information.
[0087] Device sends response: The device sends the hash value of the generated response information back to the server, along with the device's public key certificate, so that the server can authenticate the device.
[0088] Server verifies device identity:
[0089] Server Verification Response: After receiving the device's response information, the server uses the pre-stored PUF expected response information to verify the correctness of the response information. If the response information matches, the server confirms the device's identity is legitimate and records the successful verification log.
[0090] Server sends confirmation: The server sends a confirmation message of successful identity authentication to the device, including a new challenge message. The terminal will form a session key based on the PUF challenge message for encryption of subsequent data transmission.
[0091] Update package transmission and verification:
[0092] Send update package and signature:
[0093] The server encrypts the firmware / software update package using the session key and generates a digital signature for the package. The signature is obtained by calculating the hash value of the update package and encrypting it with the server's private key.
[0094] The server sends the encrypted update package (software package to be updated) and the signature to the device.
[0095] The device receives and verifies the update package:
[0096] After the device receives the encrypted update package and signature, it uses the session key to decrypt the update package.
[0097] The device calculates the hash value of the decrypted update package and decrypts the signature using the server's public key to obtain the original hash value.
[0098] The device compares the calculated hash value with the hash value decrypted from the signature to ensure that the update package has not been tampered with and the source is trustworthy.
[0099] Install the update:
[0100] Update package verification passed:
[0101] If the hash values match, the device confirms the integrity and authenticity of the update package and starts installing the update package.
[0102] The device records a log of the update installation and notifies the user or administrator that the update was successful.
[0103] Update package verification failed:
[0104] If the hash values do not match, the device refuses to install the update package.
[0105] The device notifies the user or administrator that the update failed and provides detailed error information.
[0106] The device will initiate a security rollback mechanism and restore to the previous security version to ensure the stability and security of the device.
[0107] Failure handling and safe rollback
[0108] Failure handling:
[0109] If any verification step fails, the device terminates the update process and records a detailed error log.
[0110] The device notifies the user or administrator of the specific reason for the failure and recommends appropriate safety measures.
[0111] Safe rollback:
[0112] If an exception occurs during the update process or verification fails, the device will automatically roll back to the previous secure version to ensure the normal operation of the device.
[0113] After the rollback is complete, the device will restart and try to connect to the server again for updates, or wait for manual intervention by the administrator.
[0114] Session Ended:
[0115] Session Termination:
[0116] After the update process is completed, both the device and the server terminate the session and release the session key and related resources.
[0117] The device and server record all interaction details of this update for subsequent auditing and analysis.
[0118] Safety mechanism:
[0119] The safety mechanism of the present invention is mainly reflected in the following aspects:
[0120] PUF-based key generation: PUF technology is used to generate unique authentication keys, which improves the security of the keys and reduces the risk of key extraction and abuse.
[0121] Two-way authentication mechanism: Through two-way authentication between the server and the device, security threats such as man-in-the-middle attacks are effectively prevented.
[0122] Update package integrity verification: Ensure the integrity and source credibility of the update package through digital signature and hash value verification to prevent malicious code injection.
[0123] Failure handling: If any verification step fails, the device will refuse to install the update and notify the user or administrator, ensuring the device is protected from potential threats.
[0124] Embodiment 2:
[0125] The present invention provides a PUF-based remote device update method, comprising:
[0126] 1. Device identity verification method:
[0127] 1) The server sends a random challenge message to the device;
[0128] 2) The device uses PUF to generate unique response information based on the challenge information;
[0129] 3) The device performs a hash operation on the response information value and sends the result back to the server, thus avoiding the risk of the response information value being monitored;
[0130] 4) The server verifies the correctness of the response information and confirms the identity of the device.
[0131] 2. Remote update method based on two-way authentication
[0132] A remote update method based on two-way authentication includes the following steps:
[0133] 1) The device sends an update request to the server;
[0134] 2) The server sends a challenge message and server certificate to the device;
[0135] 3) The device verifies the server certificate based on the public key and generates PUF response information after successful verification;
[0136] 4) The device sends the response information hash value back to the server;
[0137] 5) After the server verifies the response information, it sends a challenge value and an encrypted update package to generate the session key;
[0138] 6) The device uses the session key to decrypt the update package and verify the integrity and source authenticity of the update package.
[0139] 3. Digital signature and hash verification method
[0140] A digital signature and hash verification method for remote update package transmission includes the following steps:
[0141] 1) The server generates a hash value for the update package and signs it with a private key;
[0142] 2) The server sends the signature and update package to the device;
[0143] 3) The device calculates the hash value of the update package, verifies the signature using the server public key, and compares the hash value for consistency.
[0144] 4. Update failure handling and safe rollback mechanism
[0145] A remote update failure processing and safe rollback mechanism includes the following steps:
[0146] 1) If any verification step fails, the device refuses to install the update package and notifies the user or administrator;
[0147] 2) The device records detailed error logs;
[0148] 3) The device starts the security rollback mechanism and restores to the previous security version to ensure stable operation of the device.
[0149] 5. Secure session management mechanism
[0150] A mechanism for secure session management during a remote update process, comprising the following steps:
[0151] 1) The server and the device establish an encrypted session based on PUF, and transmit challenge information to generate the session key;
[0152] 2) Use session keys to encrypt and decrypt update packages to improve the security of data transmission;
[0153] 3) After the update is completed, the session is terminated and the session key and related resources are released.
[0154] 6. Two-way authentication devices and systems
[0155] A device and system including a two-way authentication mechanism, comprising:
[0156] 1) A device including a PUF module, used to generate response information;
[0157] 2) Server, used to send challenge information and verify response information
[0158] Embodiment 3:
[0159] The present invention provides a PUF-based remote device update method, comprising:
[0160] 1. Implementation of PUF module
[0161] PUF modules can be implemented in many ways, such as SRAM-based PUF, delay-based PUF (such as ring oscillator PUF), etc. Each PUF has its own unique physical properties that can be embedded during the device manufacturing process.
[0162] 2. Two-way authentication protocol
[0163] The key to the two-way authentication protocol is:
[0164] Challenge-response mechanism: The server pre-stores multiple sets of challenge-response data of the PUF module. The server sends the challenge information, and the device generates the response information based on the PUF, ensuring the uniqueness and unpredictability of each communication.
[0165] Certificate verification: Use public key infrastructure (PKI) to verify the server certificate to ensure the credibility of the server.
[0166] 3. Secure transmission of update packages
[0167] Secure delivery of update packages includes:
[0168] Digital signature: The server uses its private key to generate a digital signature for the update package, and the device uses the public key to verify the signature to ensure that the update package has not been tampered with.
[0169] Hash value verification: The device calculates the hash value of the update package and compares it with the hash value in the signature to ensure the integrity of the update package.
[0170] 4. Failure handling mechanism
[0171] Verification failure: If any verification step fails, the device will refuse to install the update and immediately notify the user or administrator, providing detailed error information through logging and other means.
[0172] Safe rollback: If an exception occurs during the update process, the device can roll back to the previous safe version to ensure the stability and security of the device.
[0173] The present invention provides an efficient and secure remote update method by utilizing PUF technology and a two-way authentication mechanism, which solves the security risks in the prior art and significantly improves the security and reliability of remote updates. Through a detailed interactive protocol and a strict security mechanism, the present invention not only ensures the authenticity and integrity of the update package, but also effectively prevents various potential security threats, ensuring the safe and stable operation of the device during the remote update process.
[0174] It should be understood that the specific order or hierarchy of steps in the disclosed process is an example of an exemplary method. Based on design preferences, it should be understood that the specific order or hierarchy of steps in the process can be rearranged without departing from the scope of protection of the present disclosure. The attached method claims present the elements of the various steps in an exemplary order and are not intended to be limited to the specific order or hierarchy described.
[0175] In the above detailed description, various features are grouped together in a single embodiment to simplify the disclosure. This method of disclosure should not be interpreted as reflecting an intention that the embodiments of the claimed subject matter require more features than are clearly stated in each claim. On the contrary, as reflected in the appended claims, the invention is in a state of having less than all the features of the disclosed individual embodiments. Therefore, the appended claims are hereby expressly incorporated into the detailed description, with each claim standing on its own as a separate preferred embodiment of the invention.
[0176] The disclosed embodiments are described above to enable any person skilled in the art to implement or use the present invention. Various modifications of these embodiments are obvious to those skilled in the art, and the general principles defined herein may also be applied to other embodiments without departing from the spirit and scope of the present disclosure. Therefore, the present disclosure is not limited to the embodiments given herein, but is consistent with the broadest scope of the principles and novel features disclosed in this application.
[0177] The above description includes examples of one or more embodiments. Of course, it is impossible to describe all possible combinations of components or methods for the purpose of describing the above embodiments, but it should be recognized by those skilled in the art that the various embodiments may be further combined and arranged. Therefore, the embodiments described herein are intended to cover all such changes, modifications and variations that fall within the scope of protection of the appended claims. In addition, with respect to the term "comprising" used in the specification or claims, the word is covered in a manner similar to the term "including", just as "including," is explained as a transitional word in the claims. In addition, any term "or" used in the specification of the claims is intended to mean "non-exclusive or".
[0178] Those skilled in the art may also understand that the various illustrative logical blocks, units, and steps listed in the embodiments of the present invention may be implemented by electronic hardware, computer software, or a combination of the two. In order to clearly demonstrate the interchangeability of hardware and software, the various illustrative components, units, and steps described above have generally described their functions. Whether such functions are implemented by hardware or software depends on the specific application and the design requirements of the entire system. Those skilled in the art may use various methods to implement the described functions for each specific application, but such implementation should not be understood as exceeding the scope of protection of the embodiments of the present invention.
[0179] The various illustrative logic blocks or units described in the embodiments of the present invention can be implemented or operated by a general-purpose processor, a digital signal processor, an application-specific integrated circuit (ASIC), a field programmable gate array or other programmable logic device, a discrete gate or transistor logic, a discrete hardware component, or any combination of the above. The general-purpose processor can be a microprocessor, and optionally, the general-purpose processor can also be any conventional processor, controller, microcontroller or state machine. The processor can also be implemented by a combination of computing devices, such as a digital signal processor and a microprocessor, a plurality of microprocessors, one or more microprocessors combined with a digital signal processor core, or any other similar configuration.
[0180] The steps of the method or algorithm described in the embodiments of the present invention can be directly embedded in hardware, a software module executed by a processor, or a combination of the two. The software module can be stored in a RAM memory, a flash memory, a ROM memory, an EPROM memory, an EEPROM memory, a register, a hard disk, a removable disk, a CD-ROM, or other storage media of any form in the art. Exemplarily, the storage medium can be connected to the processor so that the processor can read information from the storage medium and can write information to the storage medium. Optionally, the storage medium can also be integrated into the processor. The processor and the storage medium can be arranged in an ASIC, and the ASIC can be arranged in a user terminal. Optionally, the processor and the storage medium can also be arranged in different components in the user terminal.
[0181] In one or more exemplary designs, the above functions described in the embodiments of the present invention can be implemented in hardware, software, firmware or any combination of the three. If implemented in software, these functions can be stored on a computer-readable medium, or transmitted in the form of one or more instructions or codes on a computer-readable medium. Computer-readable media include computer storage media and communication media that facilitate the transfer of computer programs from one place to another. The storage medium can be any available medium that can be accessed by any general or special computer. For example, such computer-readable media can include but are not limited to RAM, ROM, EEPROM, CD-ROM or other optical disk storage, disk storage or other magnetic storage devices, or any other medium that can be used to carry or store program codes in the form of instructions or data structures and other forms that can be read by general or special computers, or general or special processors. In addition, any connection can be appropriately defined as a computer-readable medium, for example, if the software is transmitted from a website site, server or other remote resource through a coaxial cable, fiber optic cable, twisted pair, digital subscriber line (DSL) or wirelessly, such as infrared, wireless and microwave, it is also included in the defined computer-readable medium. The disk and disc include compact disk, laser disk, optical disk, DVD, floppy disk and blue-ray disk. Disks usually copy data magnetically, while discs usually copy data optically with lasers. The above combination can also be included in computer readable media.
[0182] The specific implementation methods described above further illustrate the objectives, technical solutions and beneficial effects of the present invention in detail. It should be understood that the above description is only a specific implementation method of the present invention and is not intended to limit the scope of protection of the present invention. Any modifications, equivalent substitutions, improvements, etc. made within the spirit and principles of the present invention should be included in the scope of protection of the present invention.
Claims
1. A device remote update method based on PUF security, characterized in that: The method comprises the following steps: The server sends a challenge message to the device; The device receives the challenge information, and the built-in PUF module of the device generates response information according to the challenge information, and sends the response information or the hash calculation value of the response information back to the server; The server verifies the received response information or the hash calculation value of the response information using the pre-stored PUF expected response information to confirm the identity of the device; The server sends the server's certificate to the device, and the device uses the public key to verify the server's identity; After the identities of the device and the server are successfully authenticated, the server sends the software package to be updated to the device; The device receives the software package to be updated, and installs the software package to be updated.
2. A device remote update method based on PUF security according to claim 1, characterized in that: The server confirms the identity of the device, including: After receiving the response information or the hash value of the response information from the device, the server uses the pre-stored PUF expected response information to verify the correctness of the response information or the hash value of the response information. If the response information or the hash value of the response information matches, the server confirms that the device identity is legitimate and records the log of the successful verification. The server sends a confirmation message of successful identity authentication to the device, wherein the confirmation message includes a confirmation challenge message. The device forms a session key according to the confirmation challenge message to encrypt subsequent data transmission.
3. A PUF-based remote device update method according to claim 2, characterized in that: The server sends a software package to be updated to the device, including: The server encrypts the software package to be updated using the session key and generates a digital signature of the software package to be updated; the signature is obtained by calculating a hash value of the software package to be updated and encrypting it using the server's private key; The server sends the encrypted software package to be updated and the signature to the device.
4. A device remote update method based on PUF security according to claim 3, characterized in that: The server sends the server certificate to the device, and the device uses the public key to verify the identity of the server; including: After receiving the encrypted software package to be updated and the signature, the device uses the session key to decrypt the software package to be updated; The device calculates the hash value of the decrypted software package to be updated, and uses the server's public key to decrypt the signature to obtain the original hash value; The device compares the calculated hash value with the original hash value decrypted from the signature to ensure that the update package has not been tampered with and the source is trustworthy.
5. A device remote update method based on PUF security according to claim 4, characterized in that: The device compares the calculated hash value with the original hash value decrypted from the signature, including: If the calculated hash value is consistent with the original hash value, the device confirms the installation of the software package to be updated; the device records the log of the update installation and sends a notification of successful update; If the calculated hash value is inconsistent with the original hash value, the device refuses to install the software package to be updated.
6. A device remote update device based on PUF security, characterized in that: include: A first sending unit, configured to send a challenge message from the server to the device; A first receiving unit, configured for a device to receive the challenge information, a built-in PUF module of the device to generate response information according to the challenge information, and to send the response information or a hash calculation value of the response information back to the server; A first confirmation unit, configured for the server to verify the received response information or the hash calculation value of the response information using the pre-stored PUF expected response information to confirm the identity of the device; A second confirmation unit, used for the server to send the server certificate to the device, and the device uses the public key to verify the identity of the server; A second sending unit, configured to, after the identities of the device and the server are successfully authenticated, send the software package to be updated to the device by the server; The second receiving unit is used for receiving the software package to be updated by the device and installing the software package to be updated.
7. The device remote update apparatus based on PUF security according to claim 6, characterized in that: The first confirmation unit includes: A matching module is used for the server to verify the correctness of the response information or the hash calculation value of the response information after receiving the response information or the hash calculation value of the response information from the device. If the response information or the hash calculation value of the response information matches, the server confirms that the device identity is legitimate and records a log of the successful verification. The key module is used for the server to send a confirmation message of successful identity authentication to the device. The confirmation message includes a confirmation challenge information. The device will form a session key based on the confirmation challenge information to encrypt subsequent data transmission.
8. The device remote update apparatus based on PUF security according to claim 7, characterized in that: The second sending unit includes: An encryption module, used for the server to encrypt the software package to be updated using the session key, and generate a digital signature of the software package to be updated; the signature is obtained by calculating the hash value of the software package to be updated and encrypting it with the private key of the server; The transmission module is used for the server to send the encrypted software package to be updated and the signature to the device.
9. The device remote update apparatus based on PUF security according to claim 8, characterized in that: The second confirmation unit comprises: A decryption module, used for decrypting the software package to be updated using a session key after the device receives the encrypted software package to be updated and the signature; A calculation module, used for the device to calculate the hash value of the decrypted software package to be updated, and use the public key of the server to decrypt the signature to obtain the original hash value; The comparison module is used for the device to compare the calculated hash value with the original hash value decrypted from the signature to ensure that the update package has not been tampered with and the source is credible.
10. The device remote update apparatus based on PUF security according to claim 9, characterized in that: The comparison module comprises: If the calculated hash value is consistent with the original hash value, the device confirms the installation of the software package to be updated; the device records the log of the update installation and sends a notification of successful update; If the calculated hash value is inconsistent with the original hash value, the device refuses to install the software package to be updated.