Inverter safe starting method, inverter and energy storage system

By using preset key information for signature verification during inverter startup, the integrity and security of the data to be verified are ensured, thus solving the network security problem during inverter startup and achieving secure startup.

CN121723477APending Publication Date: 2026-03-24BEIJING HEKANG NEW ENERGY FREQUENCY CONVERSION TECH CO LTD +1
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-09-23
Publication Date
2026-03-24

AI Technical Summary

Technical Problem

Existing inverter startup methods have cybersecurity issues, failing to guarantee secure inverter startup and making them vulnerable to cyberattacks and data theft and tampering.

Method used

By acquiring the data to be verified when the inverter starts up, and using the preset inverter key information for signature verification, the startup verification result is determined. Secure startup is only performed when the verification is successful, including decryption and signature verification steps to ensure data integrity and security.

Benefits of technology

It enables safe startup of the inverter, avoids startup failures due to network security issues, and improves the safety and data integrity of the inverter.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121723477A_ABST
    Figure CN121723477A_ABST
Patent Text Reader

Abstract

The invention discloses an inverter safe starting method, an inverter and an energy storage system, relates to the technical field of equipment safety, is applied to the inverter, and comprises the following steps: obtaining to-be-verified data information when the inverter is started, and determining a starting verification result according to the to-be-verified data information and preset inverter key information; and when the starting verification result is that the starting verification is successful, performing safe starting on the inverter according to the to-be-verified data information. According to the invention, safe starting of the inverter is realized.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of equipment safety technology, and in particular to a safe start-up method for an inverter, an inverter, and an energy storage system. Background Technology

[0002] As inverters are used more and more widely in various fields, users are also putting forward higher requirements for the safe startup of inverters.

[0003] Traditional inverter startup methods involve directly launching various applications. However, this method is susceptible to cybersecurity vulnerabilities, such as data theft and tampering, which compromise the safety of the inverter's startup. Therefore, a new secure startup method is urgently needed to ensure the safe operation of inverters.

[0004] The above content is only used to help understand the technical solution of this application and does not represent an admission that the above content is prior art. Summary of the Invention

[0005] The main purpose of this application is to provide a safe start-up method for an inverter, an inverter, and an energy storage system, aiming to solve the technical problem of how to achieve safe start-up of an inverter.

[0006] To achieve the above objectives, this application provides a safe startup method for an inverter, which is applied to an inverter and includes:

[0007] Obtain the data information to be verified when the inverter starts up, and determine the start-up verification result based on the data information to be verified and the preset inverter key information;

[0008] When the startup verification result is successful, the inverter is safely started according to the data information to be verified.

[0009] In one embodiment, the inverter key information includes a root key, a first ciphertext random number corresponding to the data information to be verified, and a first ciphertext user key. The step of determining the start-up verification result based on the data information to be verified and the preset inverter key information includes:

[0010] The first ciphertext random number is decrypted based on the root key to obtain the first plaintext random number, and the first chip key is determined based on the root key, the first plaintext random number, and the preset chip unique code.

[0011] The first ciphertext user key is decrypted based on the first chip key to obtain the first plaintext user key. The firmware data in the data information to be verified is determined, and the firmware data is signed and verified based on the firmware verification key in the first plaintext user key to obtain the startup verification result.

[0012] In one embodiment, the first plaintext user key includes a communication decryption key and a data decryption key. After the step of decrypting the first ciphertext user key based on the first chip key to obtain the first plaintext user key, the method further includes:

[0013] The encrypted static data in the data information to be verified is identified, and the encrypted static data is decrypted based on the data decryption key to obtain plaintext static data;

[0014] The encrypted communication data in the data information to be verified is identified, and the encrypted communication data is decrypted based on the communication decryption key to obtain plaintext communication data.

[0015] In one embodiment, the step of safely starting the inverter based on the data to be verified includes:

[0016] The firmware data is decrypted using the firmware decryption key in the first plaintext user key to obtain plaintext firmware data. After executing a preset boot state machine function, the inverter is controlled to start safely based on the plaintext firmware data.

[0017] In one embodiment, after the step of safely starting the inverter based on the data to be verified, the method includes:

[0018] If the input firmware upgrade data is received, the firmware upgrade data is signed and verified based on the plaintext user key in the inverter key information to obtain the upgrade verification result;

[0019] When the upgrade verification result is successful, the inverter is upgraded with firmware based on the firmware upgrade data.

[0020] In one embodiment, the inverter key information further includes multiple intermediate keys, and the inverter secure startup method further includes:

[0021] Obtain the input update key information, wherein the update key information includes the encrypted update user key and the first intermediate key for encrypting the update user key;

[0022] In the inverter key information, the intermediate key corresponding to the first intermediate key is determined as the second intermediate key, and the encrypted updated user key is decrypted based on the second intermediate key to obtain the updated user key as the second plaintext user key.

[0023] The second plaintext user key is encrypted based on the preset second chip key to obtain the second ciphertext user key. The second chip key is determined by the root key in the inverter key information, the preset second plaintext random number, and the preset chip unique code.

[0024] In one embodiment, the inverter includes an assembly interface, and prior to the step of obtaining the input update key information, the following steps are included:

[0025] During the preset production phase, the root key and multiple intermediate keys injected by the assembly interface are obtained, and the root key and multiple intermediate keys are used as inverter key information.

[0026] In one embodiment, after the step of encrypting the second plaintext user key based on a preset second chip key to obtain the second ciphertext user key, the following steps are included:

[0027] The second plaintext random number is encrypted using the root key to obtain a second ciphertext random number, and the second ciphertext random number and the second ciphertext user key are stored in the inverter key information.

[0028] Furthermore, to achieve the above objectives, this application also provides an inverter, the inverter comprising:

[0029] The main control chip is used to execute the above-described inverter safe start-up method.

[0030] In addition, to achieve the above objectives, this application also provides an energy storage system, which includes an inverter;

[0031] The inverter is used to perform the above-described inverter safe start-up method.

[0032] This application provides a secure inverter startup method. This method is applied to an inverter and involves acquiring verification data information during inverter startup and determining a startup verification result based on the verification data information and preset inverter key information. If the startup verification result is successful, the inverter is securely started based on the verification data information. By determining the startup verification result based on the verification data information and preset inverter key information, and ensuring that the startup verification is successful only when the result is confirmed, secure startup of the inverter based on the verification data information can be avoided due to network security issues such as data theft or tampering, which could compromise the inverter's secure startup. This secure inverter startup method achieves secure startup by determining the startup verification result based on the verification data information and preset inverter key information before performing a secure startup on the inverter. Attached Figure Description

[0033] Figure 1 This is a flowchart illustrating the first embodiment of the inverter safe start-up method of this application;

[0034] Figure 2 This is a flowchart illustrating the inverter safe start-up method of this application;

[0035] Figure 3 This is a schematic diagram illustrating the implementation process of the inverter safe start-up method of this application;

[0036] Figure 4 This is a schematic diagram of the inverter module of this application;

[0037] Figure 5 This is a schematic diagram of the hardware operating environment involved in the device in this application;

[0038] Figure 6 This is a schematic diagram of the inverter in this application.

[0039] The realization of the purpose, functional features and advantages of this application will be further explained in conjunction with the embodiments and with reference to the accompanying drawings. Detailed Implementation

[0040] It should be understood that the specific embodiments described herein are merely illustrative of this application and are not intended to limit this application.

[0041] To better understand the technical solution of this application, a detailed description will be provided below in conjunction with the accompanying drawings and specific implementation methods.

[0042] With the popularization of IoT devices, cybersecurity issues are becoming increasingly prominent. Malicious attackers can use network attacks to intrude into devices, steal sensitive information, and even disrupt the normal operation of devices such as inverters. The common way to start inverters is to directly launch various applications, which does not take into account network attacks, device intrusion, and the theft of sensitive information. As a result, there are instances where the safe startup of inverters cannot be guaranteed due to the above-mentioned cybersecurity issues.

[0043] Therefore, based on the shortcomings of the above-mentioned inverter secure startup schemes, this application proposes an inverter secure startup method. The main solution of this application's embodiments is: determining the startup verification result based on the data to be verified and the preset inverter key information; and only when the startup verification result is successful will the inverter be securely started based on the data to be verified. This avoids the possibility of the inverter's secure startup being compromised due to network security issues, such as data theft or tampering. This inverter secure startup method can securely start the inverter by determining the startup verification result after determining the data to be verified and the preset inverter key information.

[0044] It should be noted that the executing entity in this embodiment can be a computing service device with data processing, network communication, and program execution functions, such as a tablet computer, personal computer, or mobile phone, or a device capable of performing the above functions, such as an inverter. The following description uses an inverter as an example to illustrate this embodiment and the subsequent embodiments.

[0045] Based on this, this application provides an inverter safe start-up method, which is applied to an inverter, and refers to... Figure 1 , Figure 1 This is a flowchart illustrating the first embodiment of the inverter safe start-up method of this application.

[0046] Reference Figure 1 This application provides a method for safe startup of an inverter. In a first embodiment of the method, the method includes:

[0047] Step S10: Obtain the data information to be verified when the inverter starts up, and determine the start-up verification result based on the data information to be verified and the preset inverter key information.

[0048] In this embodiment, to ensure the safe startup of the inverter, data information to be verified is acquired during inverter startup. Then, based on preset inverter key information, the data information to be verified is signed and verified to obtain a startup verification result. Finally, based on the determined startup verification result, safe startup control can be executed or the inverter startup can be prohibited. The data information to be verified refers to data required for inverter startup, such as firmware, encrypted communication data, and encrypted static data stored internally and related to inverter operation. The preset inverter key information refers to different keys used for signing and verifying the data information to be verified. These different keys include at least keys for signing and verifying the firmware, encrypted communication data, and encrypted static data respectively. Since key storage is encrypted, the inverter key information should also include keys for encrypting and decrypting the above different keys, such as random numbers and root keys used to determine the encryption and decryption keys. The startup verification result refers to the result of signing and verifying the data information to be verified. If the data information to be verified is encrypted, it will be decrypted and then signed and verified. When the startup verification result is successful, it will be determined that the data information to be verified has not been attacked, intruded, or had sensitive information stolen. Based on this result, a safe startup can be performed to ensure the safety of the inverter.

[0049] Step S20: When the startup verification result is successful, the inverter is safely started according to the data information to be verified.

[0050] In this embodiment, the inverter will be safely started only when the startup verification result is successful, based on the data to be verified. The safe startup method based on the data to be verified can be to directly control the inverter to start safely based on the firmware data in the data to be verified, or to use an internal startup program, such as the BOOT program, to start the inverter. This is because the data to be verified has already been securely verified (signature verification), and the inverter will only be safely started after the security verification is successful, so as to ensure the safe startup of the inverter.

[0051] In one embodiment, reference is made to Figure 3 , Figure 3This is a schematic diagram illustrating the implementation process of the inverter safe startup method in this application. After the safety engine starts successfully, system security is configured, including enabling resource protection services and secure user memory protection. However, if the safety engine fails to start, the running application or the entire inverter will be restarted. After configuring system security, dual security monitoring is performed on the inverter system, including verifying whether static and dynamic protections have been correctly applied. That is, at this time, relevant startup environment and mechanisms are configured for the inverter startup (i.e., the data in the startup environment and mechanisms can be used as verification data information, such as the data in the static and dynamic protections mentioned above). When the verification is successful, BSP (Board Support Packet) initialization and BOOT initialization are performed. After initialization, the program of the safe boot state machine is executed. That is, at this time, the startup control is determined, and the user firmware that has been successfully verified in the verification data information is determined during the execution of the safe boot state machine program. After executing the user firmware jump, the UserAPP (user application) is entered to complete the safe startup of the inverter. It's worth noting that the entire secure boot process can be controlled by three programs: ① the security engine program; ② the secure boot program; and ③ the product application program. ① provides a standardized security engine interface to handle data encryption / decryption and key upgrades. ② manages the secure boot and upgrade of ③ based on the security engine interface of ①. Before each boot of ③, it calls the interface of ① and the key in the security area to perform firmware signature authentication. Only after successful authentication can ③ boot. If ③ is maliciously tampered with, authentication fails, and boot is refused. When upgrading ③, ② calls the interface of ① and the key in the security area to perform integrity and security verification on the upgrade package. Only after successful verification can the upgrade be initiated.

[0052] This embodiment provides a secure inverter startup method. This method is applied to an inverter and involves acquiring verification data information during inverter startup and determining a startup verification result based on the verification data information and preset inverter key information. If the startup verification result is successful, the inverter is securely started based on the verification data information. By determining the startup verification result based on the verification data information and preset inverter key information, and ensuring that the startup verification is successful only when the result is confirmed, secure startup of the inverter based on the verification data information can be avoided due to network security issues such as data theft or tampering, which could compromise the inverter's secure startup. This secure inverter startup method achieves secure startup by determining the startup verification result based on the verification data information and preset inverter key information before performing a secure startup on the inverter.

[0053] Furthermore, based on the first embodiment of this application described above, a second embodiment of the inverter safe start-up method of this application is proposed. In this embodiment, step S10 is referred to... Figure 2 , Figure 2 This is a flowchart illustrating the inverter secure startup method of this application. The inverter key information includes a root key, a first ciphertext random number corresponding to the data to be verified, and a first ciphertext user key. The steps for determining the startup verification result based on the data to be verified and the preset inverter key information include:

[0054] Step S11: Decrypt the first ciphertext random number based on the root key to obtain the first plaintext random number, and determine the first chip key based on the root key, the first plaintext random number and the preset chip unique code;

[0055] Step S12: Decrypt the first encrypted user key based on the first chip key to obtain the first plaintext user key, determine the firmware data in the data information to be verified, and perform signature verification on the firmware data based on the firmware verification key in the first plaintext user key to obtain the startup verification result.

[0056] In this embodiment, when determining the startup verification result, the signature verification of the data information to be verified is performed based on the inverter key information to obtain the startup verification result. The inverter key information includes a root key, a first encrypted random number corresponding to the data information to be verified, and a first encrypted user key. The root key refers to the initially programmed key. The first encrypted random number refers to a random number related to verifying the data information to be verified; it can be randomly generated each time or appear in pairs with the first encrypted user key. The first encrypted user key refers to the encrypted key used to verify the data in the data information to be verified. Then, the first encrypted random number is decrypted based on the root key to obtain a first plaintext random number. The first chip key is determined based on the root key, the first plaintext random number, and a preset chip unique code. That is, the first plaintext random number is encrypted by the root key and stored in the inverter key information. For example, the inverter randomly generates a random number Rand, then calls the root key HRK to encrypt Rand, obtaining encrypted Rand which is stored within the inverter, such as in the external memory data area. It's worth noting that the first chip key HUK1 is not stored at this stage. When used, it is decrypted using the root key HRK to obtain the plaintext Rand. Then, HUK1 = SHA256(HRK||CPUID||Rand) is calculated. Here, SHA (Secure Hash Algorithm) is an algorithm, and CPUID refers to the chip's unique code, i.e., the ID (Identification) of the main control chip in the inverter. Directly inputting Rand, HRK, and CPUID into the SHA algorithm will directly yield HUK. At this point, the first encrypted user key can be decrypted based on the first chip key to obtain the first plaintext user key, which is the key used for signing and verifying the data. Finally, the firmware data in the data to be verified can be signed and verified based on the first plaintext user key to obtain the startup verification result. This means that verifying the signature determines whether the data has been tampered with, ensuring data security. The firmware verification key is the key used to verify the firmware program, and the firmware data refers to the firmware program data in the data to be verified. By using the encryption and decryption method of the first chip key, the security of the first encrypted user key can be guaranteed, thereby improving the overall security of the inverter.

[0057] Furthermore, the first plaintext user key includes a communication decryption key and a data decryption key. After the step of decrypting the first ciphertext user key based on the first chip key to obtain the first plaintext user key, the process includes:

[0058] Step S121: Determine the encrypted static data in the data information to be verified, and decrypt the encrypted static data based on the data verification key to obtain the plaintext static data;

[0059] Step S122: Determine the encrypted communication data in the data information to be verified, and decrypt the encrypted communication data based on the communication decryption key to obtain the plaintext communication data.

[0060] In this embodiment, the first plaintext user key includes a communication decryption key and a data decryption key. The communication decryption key is used to decrypt communication-related data, and the data decryption key is used to decrypt stored or running data. At this point, the encrypted static data and encrypted communication data in the data information to be verified are determined separately. Then, their respective decryption keys are used to decrypt these data, resulting in plaintext static data and plaintext communication data. The encrypted static data refers to the encrypted stored or running data in the data information to be verified, and the encrypted communication data refers to the encrypted communication-related data in the data information to be verified. The plaintext static data refers to the decrypted stored or running data, and the plaintext communication data refers to the decrypted communication data. Encryption and decryption of both types of data ensure data security and subsequent use. It is worth noting that signature verification or decryption can also be performed on other types of data to ensure the security of different types of data in the data information to be verified. That is, different verification keys are designed to perform signature verification on different data to achieve safe startup of the inverter.

[0061] Furthermore, based on the first and / or second embodiments of this application described above, a third embodiment of the inverter safe startup method of this application is proposed. In this embodiment, step S20, the step of safely starting the inverter according to the data information to be verified, includes:

[0062] Step S21: Determine the firmware decryption key in the first plaintext user key to decrypt the firmware data to obtain plaintext firmware data, and after executing the preset boot state machine function, control the inverter to start safely based on the plaintext firmware data.

[0063] In this embodiment, if the startup verification result is successful, the firmware decryption key in the first plaintext user key is used to decrypt the firmware data to obtain plaintext firmware data. After executing a preset boot state machine function, the inverter is controlled to start securely based on the plaintext firmware data. The boot state machine function can be a commonly used program for booting the inverter securely. The firmware decryption key is the key used to decrypt the firmware data, and the plaintext firmware data is the decrypted firmware data. During the inverter's secure startup, previously decrypted plaintext static data and plaintext communication data can be called to ensure normal inverter operation.

[0064] Furthermore, after the step of safely starting the inverter based on the data to be verified, the process includes:

[0065] Step S22: If the input firmware upgrade data is received, the firmware upgrade data is signed and verified based on the plaintext user key in the inverter key information to obtain the upgrade verification result.

[0066] Step S23: When the upgrade verification result is successful, the inverter is upgraded with firmware based on the firmware upgrade data.

[0067] In this embodiment, after the inverter secure boot is completed, if input firmware upgrade data is received, the firmware upgrade data is signed and verified based on the plaintext user key in the inverter key information to obtain an upgrade verification result. If the upgrade verification result is successful, the inverter is upgraded with firmware based on the firmware upgrade data. It is worth noting that the firmware upgrade can be performed after receiving the input firmware upgrade data and executing the inverter secure boot process of this application, or it can be performed after the inverter secure boot. Here, firmware upgrade data refers to the firmware program to be upgraded, the upgrade verification result refers to the result of signing and verifying the firmware upgrade data, and the firmware upgrade process can involve updating the firmware at the corresponding location in the inverter. By performing firmware upgrade after signing and verifying the firmware upgrade data, the security of the inverter firmware upgrade can be improved.

[0068] Furthermore, based on the first, second, and / or third embodiments of this application described above, a fourth embodiment of the inverter secure startup method of this application is proposed. In this embodiment, the inverter key information further includes multiple intermediate keys, and the inverter secure startup method further includes:

[0069] Step S30: Obtain the input update key information, wherein the update key information includes the encrypted update user key and the first intermediate key for encrypting the update user key;

[0070] Step S40: Determine the intermediate key corresponding to the first intermediate key in the inverter key information as the second intermediate key, and decrypt the encrypted updated user key based on the second intermediate key to obtain the updated user key as the second plaintext user key.

[0071] Step S50: The second plaintext user key is encrypted based on the preset second chip key to obtain the second ciphertext user key. The second chip key is determined by the root key in the inverter key information, the preset second plaintext random number, and the preset chip unique code.

[0072] In this embodiment, to ensure the safe startup of the inverter, it is necessary to securely store and upgrade the key. Upon obtaining the update key information, which includes the encrypted update user key and the first intermediate key for encrypting the update user key, the update user key refers to the key that needs to be updated, and the first intermediate key refers to the key used to encrypt the update user key. Since the update user key is encrypted on the host computer, it is necessary to determine the intermediate key corresponding to the first intermediate key in the inverter key information as the second intermediate key, that is, to determine the second intermediate key that is used to encrypt and decrypt the first intermediate key. At this point, the encrypted updated user key can be decrypted based on the second intermediate key to obtain the updated user key as the second plaintext user key. The second plaintext user key refers to the decrypted user key. Finally, the second plaintext user key can be encrypted based on the preset second chip key to obtain the second ciphertext user key. The second chip key is determined by the root key in the inverter key information, the preset second plaintext random number, and the preset chip unique code, which is the same as the method for determining the first chip key described above. At this point, the first plaintext random number can also be encrypted based on the root key and stored with the second ciphertext user key for later use. At this point, all updated keys can be stored directly, and the required key can be selected for signature verification when used. For example, when updating user keys (AES, public key, private key, etc.), the first intermediate key MK1 is encrypted and downloaded to the inverter via the customer gateway. The inverter then calls the second intermediate key MK11 corresponding to the first intermediate key MK1 to decrypt and obtain the second plaintext user key. Based on the first chip key method described above, the second chip key HUK2 is calculated, and HUK2 is used to encrypt the second ciphertext user key. This ciphertext user key is stored in the inverter's key information. The inverter key information can be stored in the inverter's external memory data area. Multiple keys can be pre-set for each key (inverter firmware upgrade key, communication encryption, encrypted static data encryption, external chip upgrade key, etc.). Initially, key1 is used. Each time a key needs to be upgraded, the key offset is used to upgrade from 1 to n, so that the application uses the new key after the key is upgraded. This key upgrade method in this embodiment ensures the data security of the inverter by guaranteeing the secure storage of the key, and allows for timely signature verification when needed.

[0073] In one embodiment, the inverter includes an assembly interface, and prior to the step of obtaining input update key information, it includes:

[0074] Step S31: In the preset production stage, obtain the root key and multiple intermediate keys injected by the assembly interface, and use the root key and multiple intermediate keys as inverter key information.

[0075] In this embodiment, the key generation tool installed on the host computer or other devices can be generated at the factory. It is converted into assembly code via a script, compiled into firmware by an IDE (Integrated Development Environment), and the inverter's protection mode is set at the factory (i.e., the preset production stage, inverter generation state). At this time, the key is uniquely read into RAM (Random Access Memory) only through the assembly interface on the inverter; no other means are allowed to read or rewrite the key, thus ensuring a high level of security for the chip's firmware and data. Specifically, during development, a random HRK and multiple MK spares (MK1, MK2, MK3...) are generated, injected through the assembly interface, and stored in the inverter's key storage area. In subsequent non-production stages, the assembly interface can be directly disabled to prevent reading or rewriting of the inverter's internal keys.

[0076] Furthermore, after the step of encrypting the second plaintext user key based on the preset second chip key to obtain the second ciphertext user key, the process includes:

[0077] Step S51: Encrypt the second plaintext random number based on the root key to obtain the second ciphertext random number, and store the second ciphertext random number and the second ciphertext user key in the inverter key information.

[0078] In this embodiment, after updating the key, the second plaintext random number is encrypted based on the root key to obtain the second ciphertext random number. The second ciphertext random number and the second ciphertext user key are stored in the inverter key information. That is, the inverter key information includes multiple sets of ciphertext random numbers and ciphertext user keys, so that when needed, the corresponding ciphertext random number and ciphertext user key can be called for signature verification to ensure the safe startup of the inverter.

[0079] In one embodiment, for the protection of encrypted static data, the encrypted static data stored in the external memory is encrypted using the AES-GCM algorithm (other algorithms can also be used, which are not limited here) before leaving the factory or after modification and then saved. Subsequently, after the inverter starts and reads the encrypted static data, it is decrypted using the AES-GCM algorithm before use. The key required for AES-GCM is stored in encrypted form in the external memory. For communication protection, to protect the communication security between chips and prevent man-in-the-middle attacks from intercepting the communication lines (SPI / SCI bus) between the main and auxiliary controllers and tampering with the encrypted communication data, messages transmitted between the inverter chips (main control chip, internal control chip, and external control chip, etc.) are encrypted using the AES-GCM algorithm to ensure data integrity and security.

[0080] It should be noted that the above examples are only for understanding this application and do not constitute a limitation on the inverter safe start-up method of this application. Any simple modifications based on this technical concept are within the protection scope of this application.

[0081] This application also provides an inverter, which includes a main control chip. Please refer to [reference needed]. Figure 4 The main control chip in the inverter may include:

[0082] The startup verification module A10 is used to acquire the data information to be verified when the inverter starts up, and to determine the startup verification result based on the data information to be verified and the preset inverter key information.

[0083] The safe startup module A20 is used to perform a safe startup on the inverter based on the data information to be verified when the startup verification result is successful.

[0084] The inverter provided in this application, employing the inverter safe startup method described in the above embodiments, can solve the technical problem of how to achieve safe startup of the inverter. Compared with the prior art, the beneficial effects of the inverter provided in this application are the same as those of the inverter safe startup method provided in the above embodiments, and other technical features in the inverter are the same as those disclosed in the methods of the above embodiments, and will not be repeated here. The inverter may further include an internal control chip and an external control chip, with a main control chip connected to both the internal and external control chips to achieve safe startup of the main control chip, internal control chip, and external control chip based on a key in the main control chip, thereby achieving safe startup of the inverter.

[0085] This application also provides an energy storage system, which includes an inverter;

[0086] The inverter is used to execute the aforementioned inverter safe startup method. (Refer to...) Figure 6 , Figure 6 This is a schematic diagram of the inverter scenario in this application. The host computer and the inverter are connected through a user gateway. During the production stage, the host computer can directly inject the key into the inverter via serial communication. At this time, the inverter can securely start the inverter after signing and verifying the encrypted static data, firmware data, and encrypted communication data based on the key. During the non-production stage, the communication interface between the host computer and the inverter is disabled. At this time, key upgrades and firmware upgrades are transmitted to the user gateway. The user gateway and the inverter can communicate via RS-485 to transmit the key or firmware to be upgraded to the inverter to complete the upgrade.

[0087] This application provides an inverter, which includes: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, the instructions being executed by the at least one processor to enable the at least one processor to perform the inverter safe startup method in Embodiment 1 above.

[0088] The following is for reference. Figure 5 The diagram illustrates a structural schematic of an inverter suitable for implementing embodiments of this application. The inverter in these embodiments may include, but is not limited to, mobile terminals such as mobile phones, laptops, digital radio receivers, PDAs (Personal Digital Assistants), PADs (Portable Application Descriptions), PMPs (Portable Media Players), in-vehicle terminals (e.g., in-vehicle navigation terminals), and fixed terminals such as digital TVs and desktop computers. Figure 5 The inverter shown is merely an example and should not be construed as limiting the functionality and scope of use of the embodiments of this application.

[0089] like Figure 5 As shown, the inverter may include a processing unit 1001 (e.g., a central processing unit, a graphics processing unit, etc.) that can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 1002 or a program loaded from a storage device 1003 into a random access memory (RAM) 1004. The RAM 1004 also stores various programs and data required for inverter operation. The processing unit 1001, ROM 1002, and RAM 1004 are interconnected via a bus 1005. An input / output (I / O) interface 1006 is also connected to the bus. Typically, the following systems can be connected to the I / O interface 1006: an input system 1007 including, for example, a touchscreen, touchpad, keyboard, mouse, image sensor, microphone, accelerometer, gyroscope, etc.; an output device 1008 including, for example, a liquid crystal display (LCD), speaker, vibrator, etc.; a storage device 1003 including, for example, magnetic tape, hard disk, etc.; and a communication device 1009. The communication device 1009 allows the inverter to communicate wirelessly or wiredly with other devices to exchange data. Although inverters with various systems are shown in the figures, it should be understood that implementation or possession of all the systems shown is not required. More or fewer systems may be implemented alternatively.

[0090] Specifically, according to the embodiments disclosed in this application, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, embodiments disclosed in this application include a computer program product comprising a computer program carried on a computer-readable medium, the computer program containing program code for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via a communication device, or installed from storage device 1003, or installed from ROM 1002. When the computer program is executed by processing device 1001, it performs the functions defined in the methods of the embodiments disclosed in this application.

[0091] The inverter provided in this application, employing the inverter safe start-up method in the above embodiments, can solve the technical problem of how to achieve safe inverter start-up. Compared with the prior art, the beneficial effects of the inverter provided in this application are the same as those of the inverter safe start-up method provided in the above embodiments, and other technical features in this inverter are the same as those disclosed in the previous embodiment method, and will not be repeated here.

[0092] It should be understood that the various parts disclosed in this application can be implemented using hardware, software, firmware, or a combination thereof. In the description of the above embodiments, specific features, structures, materials, or characteristics can be combined in any suitable manner in one or more embodiments or examples.

[0093] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.

[0094] This application provides a computer-readable storage medium having computer-readable program instructions (i.e., a computer program) stored thereon, the computer-readable program instructions being used to execute the inverter safe startup method in the above embodiments.

[0095] The computer-readable storage medium provided in this application may be, for example, a USB flash drive, but is not limited to, electrical, magnetic, optical, electromagnetic, infrared, or semiconductor systems, devices, or any combination thereof. More specific examples of computer-readable storage media may include, but are not limited to: electrical connections having one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof. In this embodiment, the computer-readable storage medium may be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system, system, or device. The program code contained on the computer-readable storage medium may be transmitted using any suitable medium, including but not limited to: wires, optical cables, RF (Radio Frequency), etc., or any suitable combination thereof.

[0096] The aforementioned computer-readable storage medium may be included in the inverter; or it may exist independently and not be assembled into the inverter.

[0097] The aforementioned computer-readable storage medium carries one or more programs that, when executed by the inverter, cause the inverter to:

[0098] Obtain the data information to be verified when the inverter starts up, and determine the start-up verification result based on the data information to be verified and the preset inverter key information;

[0099] When the startup verification result is successful, the inverter is safely started according to the data information to be verified.

[0100] Computer program code for performing the operations of this application can be written in one or more programming languages ​​or a combination thereof, including object-oriented programming languages ​​such as Java, Smalltalk, and C++, and conventional procedural programming languages ​​such as the "C" language or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving remote computers, the remote computer can be connected to the user's computer via any type of network—including a Local Area Network (LAN) or a Wide Area Network (WAN)—or can be connected to an external computer (e.g., via the Internet using an Internet service provider).

[0101] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of this application. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.

[0102] The modules described in the embodiments of this application can be implemented in software or hardware. The names of the modules do not necessarily limit the functionality of the unit itself.

[0103] The readable storage medium provided in this application is a computer-readable storage medium that stores computer-readable program instructions (i.e., a computer program) for executing the above-described inverter safe startup method, thereby solving the technical problem of how to achieve safe startup of the inverter. Compared with the prior art, the beneficial effects of the computer-readable storage medium provided in this application are the same as those of the inverter safe startup method provided in the above embodiments, and will not be repeated here.

[0104] This application also provides a computer program product, including a computer program that, when executed by a processor, implements the steps of the inverter safe startup method described above.

[0105] The computer program product provided in this application can solve the technical problem of how to achieve safe startup of inverters. Compared with the prior art, the beneficial effects of the computer program product provided in this application are the same as the beneficial effects of the inverter safe startup method provided in the above embodiments, and will not be repeated here.

[0106] The above description is only a part of the embodiments of this application and does not limit the patent scope of this application. All equivalent structural transformations made under the technical concept of this application and using the contents of the specification and drawings of this application, or direct / indirect applications in other related technical fields, are included in the patent protection scope of this application.

Claims

1. A method for safe startup of an inverter, characterized in that, The inverter safe startup method is applied to an inverter, and the inverter safe startup method includes the following steps: Obtain the data information to be verified when the inverter starts up, and determine the start-up verification result based on the data information to be verified and the preset inverter key information; When the startup verification result is successful, the inverter is safely started according to the data information to be verified.

2. The inverter safe start-up method as described in claim 1, characterized in that, The inverter key information includes a root key, a first ciphertext random number corresponding to the data to be verified, and a first ciphertext user key. The step of determining the startup verification result based on the data to be verified and the preset inverter key information includes: The first ciphertext random number is decrypted based on the root key to obtain the first plaintext random number, and the first chip key is determined based on the root key, the first plaintext random number, and the preset chip unique code. The first ciphertext user key is decrypted based on the first chip key to obtain the first plaintext user key. The firmware data in the data information to be verified is determined, and the firmware data is signed and verified based on the firmware verification key in the first plaintext user key to obtain the startup verification result.

3. The inverter safe start-up method as described in claim 2, characterized in that, The first plaintext user key includes a communication decryption key and a data decryption key. Following the step of decrypting the first ciphertext user key based on the first chip key to obtain the first plaintext user key, the process includes: The encrypted static data in the data information to be verified is identified, and the encrypted static data is decrypted based on the data decryption key to obtain plaintext static data; The encrypted communication data in the data information to be verified is identified, and the encrypted communication data is decrypted based on the communication decryption key to obtain plaintext communication data.

4. The inverter safe start-up method as described in claim 2, characterized in that, The step of safely starting the inverter based on the data to be verified includes: The firmware data is decrypted using the firmware decryption key in the first plaintext user key to obtain plaintext firmware data. After executing a preset boot state machine function, the inverter is controlled to start safely based on the plaintext firmware data.

5. The inverter safe start-up method as described in claim 1, characterized in that, After the step of safely starting the inverter based on the data to be verified, the following steps are included: If the input firmware upgrade data is received, the firmware upgrade data is signed and verified based on the plaintext user key in the inverter key information to obtain the upgrade verification result; When the upgrade verification result is successful, the inverter is upgraded with firmware based on the firmware upgrade data.

6. The inverter safe start-up method according to any one of claims 1 to 5, characterized in that, The inverter key information also includes multiple intermediate keys, and the inverter secure startup method further includes: Obtain the input update key information, wherein the update key information includes the encrypted update user key and the first intermediate key for encrypting the update user key; In the inverter key information, the intermediate key corresponding to the first intermediate key is determined as the second intermediate key, and the encrypted updated user key is decrypted based on the second intermediate key to obtain the updated user key as the second plaintext user key. The second plaintext user key is encrypted based on the preset second chip key to obtain the second ciphertext user key. The second chip key is determined by the root key in the inverter key information, the preset second plaintext random number, and the preset chip unique code.

7. The inverter safe start-up method as described in claim 6, characterized in that, The inverter includes an assembly interface, and prior to the step of obtaining the input update key information, the following is included: During the preset production phase, the root key and multiple intermediate keys injected by the assembly interface are obtained, and the root key and multiple intermediate keys are used as inverter key information.

8. The inverter safe start-up method as described in claim 6, characterized in that, After the step of encrypting the second plaintext user key based on the preset second chip key to obtain the second ciphertext user key, the following steps are included: The second plaintext random number is encrypted using the root key to obtain a second ciphertext random number, and the second ciphertext random number and the second ciphertext user key are stored in the inverter key information.

9. An inverter, characterized in that, The inverter includes: A main control chip, the main control chip being used to execute the inverter safe start-up method as described in any one of claims 1 to 8.

10. An energy storage system, characterized in that, The energy storage system includes an inverter; The inverter is used to perform the inverter safe start-up method as described in any one of claims 1 to 8.