Upgrade methods, devices, and computer program products for private cloud servers

By using encryption keys to encrypt and decrypt firmware upgrade packages between the private cloud server and the vendor server, the problem of vulnerability to intrusion during firmware upgrades on private cloud servers is solved, and an external network isolation layer is implemented to ensure data security.

CN119449605BActive Publication Date: 2025-11-14GREE ELECTRIC APPLIANCE INC OF ZHUHAI +1
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411619968.2
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-11-13
Publication Date
2025-11-14
Estimated Expiration
2044-11-13

AI Technical Summary

Technical Problem

In existing technologies, firmware upgrades for private cloud servers are easily compromised, posing a risk to user data security.

Method used

The upgrade package verification key and transmission key are sent to the supplier server via the private cloud server and the bound client. The supplier server uses these keys to encrypt the firmware upgrade package and receives and decrypts the encrypted firmware upgrade package through the external network of the private cloud server, ensuring that only legitimate encrypted firmware upgrade packages can be transmitted to the private cloud server for firmware upgrade.

Benefits of technology

It effectively prevents intrusion into private cloud servers during firmware upgrades, ensures data security, avoids malicious program spoofing and injection, and achieves data protection through an external network isolation layer.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119449605B_ABST
    Figure CN119449605B_ABST
Patent Text Reader

Abstract

This application provides a method, apparatus, and computer program product for upgrading a private cloud server. The method includes: the private cloud server sending an upgrade package verification key and a first transmission key to a target client, causing the target client to send the upgrade package verification key and the first transmission key to a vendor server. The upgrade package verification key is an encryption key for a firmware upgrade package generated by the private cloud server, and the first transmission key is a transmission key for the private cloud server's external network port. If the private cloud server receives an encrypted firmware upgrade package sent by the vendor server on its external network and decrypts the encrypted firmware upgrade package to obtain a firmware upgrade package, the private cloud server receives the firmware upgrade package transmitted from its external network and performs a firmware upgrade. The encrypted firmware upgrade package is obtained by the vendor server encrypting the firmware upgrade package using the upgrade package verification key and the first transmission key. This method solves the problem of easy intrusion during firmware upgrades of private cloud servers.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of private cloud upgrades, and more specifically, to a method, apparatus, computer-readable storage medium, and computer program product for upgrading a private cloud server. Background Technology

[0002] With the rapid development of IoT technology, the number of devices in homes is constantly increasing, leading to the concept of a smart home hub. This hub can unify the control of devices within the home, coordinate the status of different devices, and control them through a unified entry point. As people increasingly value personal privacy, devices like home private cloud hubs have emerged. These hubs can operate without relying on a device vendor's server, using a private server within the home as a remote control relay, storing all user-controlled data within the home. However, as devices evolve, the next challenge is how to upgrade the functionality of the private cloud while simultaneously protecting user privacy and security. Summary of the Invention

[0003] The main objective of this application is to provide a method, apparatus, computer-readable storage medium, and computer program product for upgrading a private cloud server, so as to at least solve the problem that the firmware upgrade of a private cloud server is easily compromised in the prior art.

[0004] To achieve the above objectives, according to one aspect of this application, a method for upgrading a private cloud server is provided, comprising: the private cloud server sending an upgrade package verification key and a first transmission key to a target client, causing the target client to send the upgrade package verification key and the first transmission key to a vendor server, wherein the upgrade package verification key is an encryption key for a firmware upgrade package generated by the private cloud server, the first transmission key is a transmission key for the external network port of the private cloud server, and the target client is a client registered with the vendor server and bound to the private cloud server; wherein, if the private cloud server receives the encrypted firmware upgrade package sent by the vendor server on its external network and decrypts the encrypted firmware upgrade package to obtain the firmware upgrade package, the private cloud server receives the firmware upgrade package transmitted from its external network and performs a firmware upgrade, wherein the encrypted firmware upgrade package is obtained by the vendor server encrypting the firmware upgrade package using the upgrade package verification key and the first transmission key.

[0005] Optionally, after the private cloud server sends the upgrade package verification key and the first transmission key to the target client, causing the target client to send the upgrade package verification key and the first transmission key to the supplier server, the method further includes: if the private cloud server fails to receive the encrypted firmware upgrade package sent by the supplier server on the external network and fails to decrypt the encrypted firmware upgrade package, the private cloud server does not receive data from the external network of the private cloud server.

[0006] Optionally, the private cloud server sends the upgrade package verification key and the first transmission key to the target client, causing the target client to send the upgrade package verification key and the first transmission key to the supplier server. This includes: the private cloud server receiving a second transmission key uploaded by the target client, the second transmission key being a transmission key generated and sent to the target client by the supplier server in response to a firmware upgrade request, the firmware upgrade request being a request issued by the target client when a new device is added or when a firmware upgrade is required; the private cloud server encrypting the upgrade package verification key and the first transmission key using the second transmission key to obtain encrypted information; and the private cloud server sending the encrypted information to the target client, causing the target client to forward the encrypted information to the supplier server.

[0007] Optionally, the process of generating the encrypted firmware upgrade package includes: the supplier server decrypting the encrypted information using the second transmission key to obtain the upgrade package verification key and the first transmission key; the supplier server encrypting the firmware upgrade package using the upgrade package verification key to obtain a first encrypted firmware upgrade package; and then encrypting the first encrypted firmware upgrade package a second time using the second transmission key to obtain the encrypted firmware upgrade package.

[0008] Optionally, the private cloud server receiving the second transmission key uploaded by the target client includes: the private cloud server receiving the second transmission key and a first firmware upgrade verification ID uploaded by the target client, wherein the first firmware upgrade verification ID is the ID of the firmware upgrade package sent by the supplier server to the target client; the private cloud server's external network receiving the encrypted firmware upgrade package sent by the supplier server and decrypting the encrypted firmware upgrade package to obtain the firmware upgrade package includes: the private cloud server's external network receiving the encrypted firmware upgrade package and the second firmware upgrade verification ID sent by the supplier server, wherein the second firmware upgrade verification ID is the ID of the firmware upgrade package in the encrypted firmware upgrade package; if the second firmware upgrade verification ID is the same as the first firmware upgrade verification ID, it is determined that the ID verification is successful; if the ID verification is successful, the private cloud server's external network decrypts the encrypted firmware upgrade package to obtain the firmware upgrade package.

[0009] Optionally, the private cloud server receiving the second transmission key uploaded by the target client includes: the private cloud server receiving an obfuscated transmission key uploaded by the target client, wherein the obfuscated transmission key is obtained by the supplier server encrypting the second transmission key using an obfuscation encryption algorithm and then sending it to the target client; and the private cloud server decrypting the obfuscated transmission key using a decryption algorithm corresponding to the obfuscation encryption algorithm to obtain the second transmission key.

[0010] Optionally, the private cloud server sends the encrypted information to the target client, causing the target client to forward the encrypted information to the supplier server, including: the private cloud server converts the encrypted information into a QR code, causing the target client to recognize the QR code and send the recognition result to the supplier server; or, the private cloud server converts the encrypted information into a string, causing the target client to forward the string to the supplier server.

[0011] According to another aspect of this application, an upgrade apparatus for a private cloud server is provided, comprising: a sending unit, configured to send an upgrade package verification key and a first transmission key from the private cloud server to a target client, such that the target client sends the upgrade package verification key and the first transmission key to a vendor server, wherein the upgrade package verification key is an encryption key for a firmware upgrade package generated by the private cloud server, and the first transmission key is a transmission key for the external network port of the private cloud server, and the target client is a client registered with the vendor server and bound to the private cloud server; and a receiving unit, configured to, when the private cloud server receives an encrypted firmware upgrade package sent by the vendor server on its external network and decrypts the encrypted firmware upgrade package to obtain the firmware upgrade package, perform a firmware upgrade upon receiving the firmware upgrade package transmitted from its external network, wherein the encrypted firmware upgrade package is obtained by the vendor server encrypting the firmware upgrade package using the upgrade package verification key and the first transmission key.

[0012] According to another aspect of this application, a computer-readable storage medium is provided, the computer-readable storage medium including a stored program, wherein, when the program is executed, it controls the device on which the computer-readable storage medium is located to perform any of the methods described.

[0013] According to another aspect of this application, a computer program product is provided, comprising a computer program that, when executed by a processor, implements any of the methods described.

[0014] By applying the technical solution of this application, in the above-mentioned private cloud server upgrade method, the private cloud server forwards the upgrade package verification key and the first transmission key to the supplier server through the bound client. The supplier server then uses the upgrade package verification key and the first transmission key to encrypt the firmware upgrade package, obtaining an encrypted firmware upgrade package. The private cloud server can then receive the encrypted firmware upgrade package sent by the supplier server through the external network and decrypt it using the upgrade package verification key and the first transmission key. If decryption is successful, the decrypted firmware upgrade package is transmitted to the private cloud server for firmware upgrade; otherwise, it is retained on the external network of the private cloud server. This prevents the private cloud server from being compromised, ensures the data security of the private cloud server, and solves the problem of easy intrusion during firmware upgrades of private cloud servers in the prior art. Attached Figure Description

[0015] Figure 1 A hardware structure block diagram of a mobile terminal for performing a private cloud server upgrade method is shown in an embodiment of this application.

[0016] Figure 2A flowchart illustrating an upgrade method for a private cloud server according to an embodiment of this application is shown.

[0017] Figure 3 A schematic diagram illustrating the communication connection relationship of a private cloud server according to an embodiment of this application is shown.

[0018] Figure 4 A flowchart illustrating another method for upgrading a private cloud server according to an embodiment of this application is shown.

[0019] Figure 5 A structural block diagram of an upgrade apparatus for a private cloud server provided according to an embodiment of this application is shown.

[0020] The above figures include the following reference numerals:

[0021] 102. Processor; 104. Memory; 106. Transmission device; 108. Input / output device. Detailed Implementation

[0022] It should be noted that, unless otherwise specified, the embodiments and features described in this application can be combined with each other. This application will now be described in detail with reference to the accompanying drawings and embodiments.

[0023] To enable those skilled in the art to better understand the present application, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present application, and not all embodiments. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative effort should fall within the scope of protection of the present application.

[0024] It should be noted that the terms "first," "second," etc., in the specification, claims, and accompanying drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate for the embodiments of this application described herein. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.

[0025] As described in the background section, the firmware upgrade of private cloud servers in the prior art is easily compromised. To solve this technical problem, embodiments of this application provide a method, apparatus, computer-readable storage medium, and computer program product for upgrading a private cloud server.

[0026] The technical solutions of the present invention will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present invention.

[0027] The methods and embodiments provided in this application can be executed on a mobile terminal, computer terminal, or similar computing device. Taking running on a mobile terminal as an example, Figure 1 This is a hardware structure block diagram of a mobile terminal for an upgrade method of a private cloud server according to an embodiment of the present invention. Figure 1 As shown, a mobile terminal may include one or more ( Figure 1 Only one is shown in the diagram. A processor 102 (which may include, but is not limited to, a microprocessor MCU or a programmable logic device FPGA, etc.) and a memory 104 for storing data are also shown. The mobile terminal may further include a transmission device 106 for communication functions and an input / output device 108. Those skilled in the art will understand that... Figure 1 The structure shown is for illustrative purposes only and does not limit the structure of the mobile terminal described above. For example, the mobile terminal may also include components that are more... Figure 1 The more or fewer components shown, or having the same Figure 1 The different configurations shown.

[0028] The memory 104 can be used to store computer programs, such as application software programs and modules, like the computer program corresponding to the private cloud server upgrade method in this embodiment of the invention. The processor 102 executes various functional applications and data processing by running the computer program stored in the memory 104, thereby implementing the above-described method. The memory 104 may include high-speed random access memory and non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some instances, the memory 104 may further include memory remotely located relative to the processor 102, and these remote memories can be connected to the mobile terminal via a network. Examples of the aforementioned networks include, but are not limited to, the Internet, corporate intranets, local area networks, mobile communication networks, and combinations thereof. The transmission device 106 is used to receive or send data via a network. Specific examples of the aforementioned networks may include wireless networks provided by the mobile terminal's communication provider. In one example, the transmission device 106 includes a network interface controller (NIC), which can be connected to other network devices via a base station to communicate with the Internet. In one example, the transmission device 106 may be a radio frequency (RF) module, which is used to communicate with the Internet wirelessly.

[0029] This embodiment provides an upgrade method for a private cloud server running on a mobile terminal, computer terminal, or similar computing device. It should be noted that the steps shown in the flowchart in the accompanying drawings can be executed in a computer system such as a set of computer-executable instructions. Also, although a logical order is shown in the flowchart, in some cases, the steps shown or described may be executed in a different order than that shown here.

[0030] Figure 2 This is a flowchart of a method for upgrading a private cloud server according to an embodiment of this application. Figure 2 As shown, the method includes the following steps:

[0031] In step S201, the private cloud server sends the upgrade package verification key and the first transmission key to the target client, so that the target client sends the upgrade package verification key and the first transmission key to the supplier server. The upgrade package verification key is the encryption key of the firmware upgrade package generated by the private cloud server, the first transmission key is the transmission key of the external network port of the private cloud server, and the target client is a client registered with the supplier server and bound to the private cloud server.

[0032] In step S202, if the private cloud server receives the encrypted firmware upgrade package sent by the supplier server on the external network and decrypts the encrypted firmware upgrade package to obtain the firmware upgrade package, the private cloud server receives the firmware upgrade package transmitted from the external network of the private cloud server and performs firmware upgrade. The encrypted firmware upgrade package is obtained by the supplier server encrypting the firmware upgrade package using the upgrade package verification key and the first transmission key.

[0033] In the aforementioned upgrade method for a private cloud server, the private cloud server forwards the upgrade package verification key and the first transmission key to the supplier server through the bound client. The supplier server then encrypts the firmware upgrade package using the upgrade package verification key and the first transmission key, obtaining an encrypted firmware upgrade package. The private cloud server can then receive the encrypted firmware upgrade package sent by the supplier server via its external network and decrypt it using the upgrade package verification key and the first transmission key. If decryption is successful, the decrypted firmware upgrade package is transmitted to the private cloud server for firmware upgrade; otherwise, it remains on the private cloud server's external network. This prevents the private cloud server from being compromised, ensures the data security of the private cloud server, and solves the problem of easy intrusion during firmware upgrades of private cloud servers in existing technologies.

[0034] To prevent malicious program injection, in one optional implementation, after the private cloud server sends the upgrade package verification key and the first transmission key to the target client, causing the target client to send the upgrade package verification key and the first transmission key to the vendor server, the method further includes:

[0035] In step S301, if the private cloud server fails to decrypt the encrypted firmware upgrade package sent by the supplier server on the external network, the private cloud server will not receive data from the external network.

[0036] In the above implementation, if the encrypted firmware upgrade package fails to decrypt, it indicates that the encrypted firmware upgrade package was not encrypted using the upgrade package verification key and the first transmission key generated by the private cloud server. Therefore, the encrypted firmware upgrade package is considered to be intrusion data, and the private cloud server does not receive the encrypted firmware upgrade package to prevent malicious programs from being injected. The private cloud server does not expose its ports to the external network isolation layer of the private cloud server, so that the external network isolation layer of the private cloud server blocks intrusion data from outside the private cloud server.

[0037] To achieve secure interaction, in one optional implementation, step S201 includes:

[0038] In step S2011, the private cloud server receives the second transmission key uploaded by the target client. The second transmission key is a transmission key generated by the supplier server in response to the firmware upgrade request and sent to the target client. The firmware upgrade request is a request sent by the target client when a new device is added or when a firmware upgrade is required.

[0039] In step S2012, the private cloud server uses the second transmission key to encrypt the upgrade package verification key and the first transmission key to obtain encrypted information.

[0040] In step S2013, the private cloud server sends the encrypted information to the target client, causing the target client to forward the encrypted information to the supplier server.

[0041] In the above implementation, when a user adds a new device or needs a firmware upgrade, they can directly request a new firmware from the service provider in the target client (app). This action can only be initiated by the owner of the private server. The supplier server responds to the firmware upgrade request by generating and sending a second transmission key to the target client. When the user receives this second transmission key, they switch to their local area network, open the login management page of the user's private server, and select the firmware upgrade function on the page. The user then sends the instruction sent by the server to the private server via NFC, Bluetooth, local area network connection, etc. The private cloud server can then use the second transmission key to encrypt the upgrade package verification key and the first transmission key to obtain encrypted information. The encrypted information is then forwarded to the supplier server through the target client. Before the supplier server sends the firmware upgrade package to the private server, the supplier server and the private server interact through the target client to avoid key leakage and prevent data intrusion.

[0042] In order to obtain a qualified encrypted firmware upgrade package, in one optional implementation, the process of generating the encrypted firmware upgrade package includes:

[0043] In step S401, the supplier server decrypts the encrypted information using the second transmission key to obtain the upgrade package verification key and the first transmission key.

[0044] In step S402, the supplier server uses the upgrade package verification key to encrypt the firmware upgrade package to obtain a first encrypted firmware upgrade package, and uses the second transmission key to encrypt the first encrypted firmware upgrade package a second time to obtain the first encrypted firmware upgrade package.

[0045] In the above embodiments, in order to prevent the leakage of the upgrade package verification key and the first transmission key, the private cloud server uses the second transmission key to encrypt the upgrade package verification key and the first transmission key. Only the second transmission key of the supplier server can successfully decrypt them to obtain the upgrade package verification key and the first transmission key. The firmware upgrade package can then be encrypted using the upgrade package verification key and the first transmission key to obtain the encrypted firmware upgrade package. Only data encrypted with the upgrade package verification key and the first transmission key can be transmitted to the private cloud server.

[0046] To ensure the correct firmware upgrade package is sent, one alternative implementation is...

[0047] The above step S2011 includes:

[0048] In step S20111, the private cloud server receives the second transmission key and the first firmware upgrade verification ID uploaded by the target client. The first firmware upgrade verification ID is the ID of the firmware upgrade package sent by the supplier server to the target client.

[0049] Step S202 above includes:

[0050] Step S2021: The private cloud server receives the encrypted firmware upgrade package and the second firmware upgrade verification ID sent by the supplier server on the external network. The second firmware upgrade verification ID is the ID of the firmware upgrade package in the encrypted firmware upgrade package.

[0051] Step S2022: If the second firmware upgrade verification ID is the same as the first firmware upgrade verification ID, then the ID verification is confirmed to be successful.

[0052] Step S2023: If the ID verification is successful, the external network of the aforementioned private cloud server decrypts the aforementioned encrypted firmware upgrade package to obtain the aforementioned firmware upgrade package.

[0053] In the above implementation, when the supplier server sends the second transmission key, it can also send the first firmware upgrade verification ID corresponding to the firmware upgrade request to the private cloud server. Before the external network of the private cloud server decrypts the encrypted firmware upgrade package to obtain the firmware upgrade package, it compares the second firmware upgrade verification ID sent along with the encrypted firmware upgrade package with the first firmware upgrade verification ID. If they are the same, the ID verification is successful, indicating that the sent firmware upgrade package is the firmware upgrade package corresponding to the firmware upgrade request, thus avoiding the firmware upgrade package being sent incorrectly and causing the upgrade target to be incorrect.

[0054] To prevent the leakage of the second transmission key, in one optional implementation, step S2011 includes:

[0055] Step S20111: The private cloud server receives the obfuscated transmission key uploaded by the target client. The obfuscated transmission key is obtained by the supplier server encrypting the second transmission key using an obfuscated encryption algorithm and then sending it to the target client.

[0056] In step S20112, the private cloud server uses the decryption algorithm corresponding to the obfuscated encryption algorithm to decrypt the obfuscated transmission key to obtain the second transmission key.

[0057] In the above embodiments, the supplier server is equipped with an obfuscation encryption algorithm, and the private cloud server is equipped with a decryption algorithm corresponding to the obfuscation encryption algorithm. The obfuscated transmission key can be obtained by encrypting the second transmission key with the obfuscation encryption algorithm. The private cloud server can decrypt the obfuscated transmission key with the decryption algorithm corresponding to the obfuscation encryption algorithm to avoid leakage of the second transmission key and prevent data intrusion.

[0058] To facilitate user operation, in an optional implementation, step S2013 includes:

[0059] Step S20131: The private cloud server converts the encrypted information into a QR code, enabling the target client to recognize the QR code and send the recognition result to the supplier server.

[0060] In step S20132, the aforementioned private cloud server converts the encrypted information into a string, causing the target client to forward the string to the supplier server.

[0061] In the above implementation, since the user needs to import the encrypted information of the intranet into the external network and upload it to the supplier server through the target client, the encrypted information is converted into a QR code or string, which is convenient for the user to scan or copy, thus realizing the export of intranet and external network.

[0062] To enable those skilled in the art to better understand the technical solution of this application, the implementation process of the private cloud server upgrade method of this application will be described in detail below with reference to specific embodiments.

[0063] This embodiment relates to a specific method for upgrading a private cloud server, such as... Figure 3 As shown, the user's private server connects to multiple devices via a local area network (LAN) port, such as device 1, device 2, device 3, etc. The user's private server's external network isolation layer communicates encrypted with the vendor's server via an external network port. The user's private server can selectively expose ports to communicate with the external network isolation layer, such as... Figure 4 As shown, it includes the following steps:

[0064] 1. When a user adds a new device or needs a firmware upgrade, they can request a new firmware directly from the service provider within the app. This action can only be initiated by the owner of the private server.

[0065] 2. When the service provider receives a firmware upgrade request, it will send a firmware upgrade verification ID encrypted with AES to the mobile phone or app bound to the main home user. The validity period is 30 minutes or other. It will also send an obfuscated transmission key generated by the server.

[0066] 3. When the user receives this verification information, they should switch to their local area network, open the login management page of their private server, select the firmware upgrade function on the page, and send the instructions sent by the server to the private server via NFC, Bluetooth, local area network connection, or other means.

[0067] 4. The private server uses its internal decryption key to decrypt the firmware upgrade verification ID and transmission key generated by the server, and uses the obfuscated transmission key generated by the server to decrypt the key. It then encrypts the verification ID, the upgrade package verification key, the transmission key corresponding to its own external network port (generated in real-time), and the external network communication port that it will immediately expose.

[0068] 5. After the private cloud generates the above encrypted information, it will generate a QR code or string to display to the user. The user can scan the code or copy it using the app to upload the encrypted information generated by the private cloud server to the server.

[0069] 6. After receiving the encrypted information, the server will use its first-generated encryption key to decrypt it. After successful decryption, it will obtain the communication port of the private cloud exposed to the external network, use the private cloud's upgrade package verification key to encrypt the upgrade package, use the encryption key generated by the private cloud to encrypt the communication information a second time, and transmit the firmware package to the private cloud.

[0070] 7. Private clouds store communication data in an isolated external network layer. Data that fails verification will not be copied to the private server.

[0071] 8. After the isolation layer receives the encrypted firmware package, it parses and verifies the firmware package and verifies the firmware package verification ID.

[0072] 9. After successful verification, the firmware upgrade package is transmitted to the private server for firmware upgrade.

[0073] It should be noted that the steps shown in the flowchart in the accompanying drawings can be executed in a computer system such as a set of computer-executable instructions, and although a logical order is shown in the flowchart, in some cases the steps shown or described may be executed in a different order than that shown here.

[0074] This application also provides an upgrade device for a private cloud server. It should be noted that the upgrade device for a private cloud server in this application can be used to execute the upgrade method for a private cloud server provided in this application. This device is used to implement the above embodiments and preferred embodiments; details already described will not be repeated. As used below, the term "module" can refer to a combination of software and / or hardware that performs a predetermined function. Although the device described in the following embodiments is preferably implemented in software, hardware implementation, or a combination of software and hardware, is also possible and contemplated.

[0075] The following describes the upgrade device for the private cloud server provided in the embodiments of this application.

[0076] Figure 5 This is a structural block diagram of an upgrade device for a private cloud server according to an embodiment of this application. Figure 5 As shown, the device includes:

[0077] The sending unit 10 is used for the private cloud server to send the upgrade package verification key and the first transmission key to the target client, so that the target client sends the upgrade package verification key and the first transmission key to the supplier server. The upgrade package verification key is the encryption key of the firmware upgrade package generated by the private cloud server, the first transmission key is the transmission key of the external network port of the private cloud server, and the target client is a client registered with the supplier server and bound to the private cloud server.

[0078] The receiving unit 20 is configured to receive the encrypted firmware upgrade package sent by the supplier server on the external network of the private cloud server and decrypt the encrypted firmware upgrade package to obtain the firmware upgrade package. In this case, the private cloud server receives the firmware upgrade package transmitted from the external network of the private cloud server and performs firmware upgrade. The encrypted firmware upgrade package is obtained by the supplier server encrypting the firmware upgrade package using the upgrade package verification key and the first transmission key.

[0079] In the aforementioned upgrade device for a private cloud server, the private cloud server forwards the upgrade package verification key and the first transmission key to the supplier server through a bound client. The supplier server then encrypts the firmware upgrade package using the upgrade package verification key and the first transmission key, obtaining an encrypted firmware upgrade package. The private cloud server can then receive the encrypted firmware upgrade package sent by the supplier server via its external network and decrypt it using the upgrade package verification key and the first transmission key. If decryption is successful, the decrypted firmware upgrade package is transmitted to the private cloud server for firmware upgrade; otherwise, it remains on the private cloud server's external network. This prevents the private cloud server from being compromised, ensures the data security of the private cloud server, and solves the problem of easy intrusion during firmware upgrades of private cloud servers in existing technologies.

[0080] To prevent malicious program injection disguised as malware, in one optional implementation, the above-mentioned device further includes:

[0081] The blocking unit is used to prevent the private cloud server from receiving data from the external network of the private cloud server after the private cloud server sends the upgrade package verification key and the first transmission key to the target client, and the target client sends the upgrade package verification key and the first transmission key to the supplier server, and fails to decrypt the encrypted firmware upgrade package sent by the supplier server on the external network of the private cloud server.

[0082] In the above implementation, if the encrypted firmware upgrade package fails to decrypt, it indicates that the encrypted firmware upgrade package was not encrypted using the upgrade package verification key and the first transmission key generated by the private cloud server. Therefore, the encrypted firmware upgrade package is considered to be intrusion data, and the private cloud server does not receive the encrypted firmware upgrade package to prevent malicious programs from being injected. The private cloud server does not expose its ports to the external network isolation layer of the private cloud server, so that the external network isolation layer of the private cloud server blocks intrusion data from outside the private cloud server.

[0083] To achieve secure interaction, in one optional implementation, the sending unit includes:

[0084] The first receiving module is used for the private cloud server to receive the second transmission key uploaded by the target client. The second transmission key is a transmission key generated by the supplier server in response to a firmware upgrade request and sent to the target client. The firmware upgrade request is a request issued by the target client when a new device is added or when a firmware upgrade is required.

[0085] The first encryption module is used by the private cloud server to encrypt the upgrade package verification key and the first transmission key using the second transmission key to obtain encrypted information.

[0086] The sending module is used by the private cloud server to send the encrypted information to the target client, so that the target client forwards the encrypted information to the supplier server.

[0087] In the above implementation, when a user adds a new device or needs a firmware upgrade, they can directly request a new firmware from the service provider in the target client (app). This action can only be initiated by the owner of the private server. The supplier server responds to the firmware upgrade request by generating and sending a second transmission key to the target client. When the user receives this second transmission key, they switch to their local area network, open the login management page of the user's private server, and select the firmware upgrade function on the page. The user then sends the instruction sent by the server to the private server via NFC, Bluetooth, local area network connection, etc. The private cloud server can then use the second transmission key to encrypt the upgrade package verification key and the first transmission key to obtain encrypted information. The encrypted information is then forwarded to the supplier server through the target client. Before the supplier server sends the firmware upgrade package to the private server, the supplier server and the private server interact through the target client to avoid key leakage and prevent data intrusion.

[0088] In order to obtain a qualified encrypted firmware upgrade package, in one optional implementation, the receiving unit includes:

[0089] The first decryption module is used by the supplier server to decrypt the encrypted information using the second transmission key to obtain the upgrade package verification key and the first transmission key.

[0090] The second encryption module is used by the supplier server to encrypt the firmware upgrade package using the upgrade package verification key to obtain a first-encrypted firmware upgrade package, and then to encrypt the first-encrypted firmware upgrade package a second time using the second transmission key to obtain the first-encrypted firmware upgrade package.

[0091] In the above embodiments, in order to prevent the leakage of the upgrade package verification key and the first transmission key, the private cloud server uses the second transmission key to encrypt the upgrade package verification key and the first transmission key. Only the second transmission key of the supplier server can successfully decrypt them to obtain the upgrade package verification key and the first transmission key. The firmware upgrade package can then be encrypted using the upgrade package verification key and the first transmission key to obtain the encrypted firmware upgrade package. Only data encrypted with the upgrade package verification key and the first transmission key can be transmitted to the private cloud server.

[0092] To ensure the correct firmware upgrade package is sent, one alternative implementation is...

[0093] The aforementioned first receiving module includes:

[0094] The first receiving submodule is used for the private cloud server to receive the second transmission key and the first firmware upgrade verification ID uploaded by the target client. The first firmware upgrade verification ID is the ID of the firmware upgrade package sent by the supplier server to the target client.

[0095] The aforementioned receiving unit includes:

[0096] The second receiving module is used to receive the encrypted firmware upgrade package and the second firmware upgrade verification ID sent by the supplier server from the external network of the private cloud server. The second firmware upgrade verification ID is the ID of the firmware upgrade package in the encrypted firmware upgrade package.

[0097] The determination module is used to determine that ID verification is successful when the second firmware upgrade verification ID is the same as the first firmware upgrade verification ID.

[0098] The second decryption module is used to decrypt the encrypted firmware upgrade package on the external network of the private cloud server to obtain the firmware upgrade package when the ID verification is successful.

[0099] In the above implementation, when the supplier server sends the second transmission key, it can also send the first firmware upgrade verification ID corresponding to the firmware upgrade request to the private cloud server. Before the external network of the private cloud server decrypts the encrypted firmware upgrade package to obtain the firmware upgrade package, it compares the second firmware upgrade verification ID sent along with the encrypted firmware upgrade package with the first firmware upgrade verification ID. If they are the same, the ID verification is successful, indicating that the sent firmware upgrade package is the firmware upgrade package corresponding to the firmware upgrade request, thus avoiding the firmware upgrade package being sent incorrectly and causing the upgrade target to be incorrect.

[0100] To prevent the leakage of the second transmission key, in one optional implementation, the first receiving module includes:

[0101] The second receiving submodule is used for the private cloud server to receive the obfuscated transmission key uploaded by the target client. The obfuscated transmission key is obtained by the supplier server encrypting the second transmission key using an obfuscation encryption algorithm and then sending it to the target client.

[0102] The decryption submodule is used by the private cloud server to decrypt the obfuscated transmission key using the decryption algorithm corresponding to the obfuscation encryption algorithm, so as to obtain the second transmission key.

[0103] In the above embodiments, the supplier server is equipped with an obfuscation encryption algorithm, and the private cloud server is equipped with a decryption algorithm corresponding to the obfuscation encryption algorithm. The obfuscated transmission key can be obtained by encrypting the second transmission key with the obfuscation encryption algorithm. The private cloud server can decrypt the obfuscated transmission key with the decryption algorithm corresponding to the obfuscation encryption algorithm to avoid leakage of the second transmission key and prevent data intrusion.

[0104] To facilitate user operation, in one optional implementation, the above-mentioned sending module includes:

[0105] The first conversion submodule is used to convert the encrypted information into a QR code by the private cloud server, so that the target client can recognize the QR code and send the recognition result to the supplier server.

[0106] The second conversion submodule is used to convert the encrypted information into a string using either the private cloud server or the aforementioned private cloud server, so that the target client forwards the string to the supplier server.

[0107] In the above implementation, since the user needs to import the encrypted information of the intranet into the external network and upload it to the supplier server through the target client, the encrypted information is converted into a QR code or string, which is convenient for the user to scan or copy, thus realizing the export of intranet and external network.

[0108] The aforementioned upgrade device for the private cloud server includes a processor and a memory. The aforementioned sending and receiving units are all stored as program units in the memory, and the processor executes these program units to achieve the corresponding functions. All of the aforementioned modules reside in the same processor; alternatively, the modules may be located in different processors in any combination.

[0109] The processor contains a kernel, which retrieves the corresponding program units from memory. One or more kernels can be configured, and adjusting kernel parameters can address the vulnerability of private cloud servers to intrusion during firmware upgrades in existing technologies.

[0110] The memory may include non-permanent memory in computer-readable media, such as random access memory (RAM) and / or non-volatile memory, such as read-only memory (ROM) or flash RAM, and the memory includes at least one memory chip.

[0111] This invention provides a computer-readable storage medium that includes a stored program, wherein, when the program is executed, it controls the device where the computer-readable storage medium is located to perform the upgrade method of the private cloud server.

[0112] Specifically, the upgrade methods for private cloud servers include:

[0113] In step S201, the private cloud server sends the upgrade package verification key and the first transmission key to the target client, so that the target client sends the upgrade package verification key and the first transmission key to the supplier server. The upgrade package verification key is the encryption key of the firmware upgrade package generated by the private cloud server, the first transmission key is the transmission key of the external network port of the private cloud server, and the target client is a client registered with the supplier server and bound to the private cloud server.

[0114] In step S202, if the private cloud server receives the encrypted firmware upgrade package sent by the supplier server on the external network and decrypts the encrypted firmware upgrade package to obtain the firmware upgrade package, the private cloud server receives the firmware upgrade package transmitted from the external network of the private cloud server and performs firmware upgrade. The encrypted firmware upgrade package is obtained by the supplier server encrypting the firmware upgrade package using the upgrade package verification key and the first transmission key.

[0115] This invention provides a processor for running a program, wherein the program executes the upgrade method for the private cloud server.

[0116] Specifically, the upgrade methods for private cloud servers include:

[0117] In step S201, the private cloud server sends the upgrade package verification key and the first transmission key to the target client, so that the target client sends the upgrade package verification key and the first transmission key to the supplier server. The upgrade package verification key is the encryption key of the firmware upgrade package generated by the private cloud server, the first transmission key is the transmission key of the external network port of the private cloud server, and the target client is a client registered with the supplier server and bound to the private cloud server.

[0118] In step S202, if the private cloud server receives the encrypted firmware upgrade package sent by the supplier server on the external network and decrypts the encrypted firmware upgrade package to obtain the firmware upgrade package, the private cloud server receives the firmware upgrade package transmitted from the external network of the private cloud server and performs firmware upgrade. The encrypted firmware upgrade package is obtained by the supplier server encrypting the firmware upgrade package using the upgrade package verification key and the first transmission key.

[0119] This invention provides a device including a processor, a memory, and a program stored in the memory and executable on the processor. When the processor executes the program, it performs at least the following steps:

[0120] In step S201, the private cloud server sends the upgrade package verification key and the first transmission key to the target client, so that the target client sends the upgrade package verification key and the first transmission key to the supplier server. The upgrade package verification key is the encryption key of the firmware upgrade package generated by the private cloud server, the first transmission key is the transmission key of the external network port of the private cloud server, and the target client is a client registered with the supplier server and bound to the private cloud server.

[0121] In step S202, if the private cloud server receives the encrypted firmware upgrade package sent by the supplier server on the external network and decrypts the encrypted firmware upgrade package to obtain the firmware upgrade package, the private cloud server receives the firmware upgrade package transmitted from the external network of the private cloud server and performs firmware upgrade. The encrypted firmware upgrade package is obtained by the supplier server encrypting the firmware upgrade package using the upgrade package verification key and the first transmission key.

[0122] This application also provides a computer program product, which, when executed on a data processing device, is suitable for executing an initialization program having at least the following method steps:

[0123] In step S201, the private cloud server sends the upgrade package verification key and the first transmission key to the target client, so that the target client sends the upgrade package verification key and the first transmission key to the supplier server. The upgrade package verification key is the encryption key of the firmware upgrade package generated by the private cloud server, the first transmission key is the transmission key of the external network port of the private cloud server, and the target client is a client registered with the supplier server and bound to the private cloud server.

[0124] In step S202, if the private cloud server receives the encrypted firmware upgrade package sent by the supplier server on the external network and decrypts the encrypted firmware upgrade package to obtain the firmware upgrade package, the private cloud server receives the firmware upgrade package transmitted from the external network of the private cloud server and performs firmware upgrade. The encrypted firmware upgrade package is obtained by the supplier server encrypting the firmware upgrade package using the upgrade package verification key and the first transmission key.

[0125] It is obvious to those skilled in the art that the modules or steps of the present invention described above can be implemented using general-purpose computing devices. They can be centralized on a single computing device or distributed across a network of multiple computing devices. They can be implemented using computer-executable program code, and thus can be stored in a storage device for execution by a computing device. In some cases, the steps shown or described can be performed in a different order than those described herein, or they can be fabricated as separate integrated circuit modules, or multiple modules or steps can be fabricated as a single integrated circuit module. Thus, the present invention is not limited to any particular combination of hardware and software.

[0126] Those skilled in the art will understand that embodiments of this application can be provided as methods, systems, or computer program products. Therefore, this application can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, this application can take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.

[0127] This application is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of this application. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, generate instructions for implementing the flowchart... Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.

[0128] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.

[0129] These computer program instructions may also be loaded onto a computer or other programmable data processing equipment to cause a series of operational steps to be performed on the computer or other programmable equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.

[0130] In a typical configuration, a computing device includes one or more processors (CPU), input / output interfaces, network interfaces, and memory.

[0131] Memory may include non-persistent memory in computer-readable media, such as random access memory (RAM) and / or non-volatile memory, like read-only memory (ROM) or flash RAM. Memory is an example of computer-readable media.

[0132] Computer-readable media includes both permanent and non-permanent, removable and non-removable media that can store information using any method or technology. Information can be computer-readable instructions, data structures, modules of programs, or other data. Examples of computer storage media include, but are not limited to, phase-change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, CD-ROM, digital versatile optical disc (DVD) or other optical storage, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other non-transferable medium that can be used to store information accessible by a computing device. As defined herein, computer-readable media does not include transient computer-readable media, such as modulated data signals and carrier waves.

[0133] It should also be noted that the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such process, method, article, or apparatus. Unless otherwise specified, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes that element.

[0134] As can be seen from the above description, the embodiments of this application achieve the following technical effects:

[0135] 1) In the private cloud server upgrade method of this application, the private cloud server forwards the upgrade package verification key and the first transmission key to the supplier server through the bound client. The supplier server uses the upgrade package verification key and the first transmission key to encrypt the firmware upgrade package to obtain an encrypted firmware upgrade package. The private cloud server can then receive the encrypted firmware upgrade package sent by the supplier server through the external network and decrypt it using the upgrade package verification key and the first transmission key. If the decryption is successful, the decrypted firmware upgrade package is transmitted to the private cloud server for firmware upgrade. Otherwise, it is retained on the external network of the private cloud server to prevent the private cloud server from being compromised, thus ensuring the data security of the private cloud server and solving the problem of easy intrusion during firmware upgrade of private cloud servers in the prior art.

[0136] 2) In the private cloud server upgrade device of this application, the private cloud server forwards the upgrade package verification key and the first transmission key to the supplier server through the bound client. The supplier server uses the upgrade package verification key and the first transmission key to encrypt the firmware upgrade package to obtain an encrypted firmware upgrade package. The supplier server can then receive the encrypted firmware upgrade package sent by the supplier server through the external network of the private cloud server and decrypt it using the upgrade package verification key and the first transmission key. If the decryption is successful, the decrypted firmware upgrade package is transmitted to the private cloud server for firmware upgrade. Otherwise, it is retained on the external network of the private cloud server to prevent the private cloud server from being compromised, thus ensuring the data security of the private cloud server and solving the problem of easy intrusion during firmware upgrade of private cloud servers in the prior art.

[0137] The above description is merely a preferred embodiment of this application and is not intended to limit this application. Various modifications and variations can be made to this application by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this application should be included within the protection scope of this application.

Claims

1. A method for upgrading a private cloud server, characterized in that, include: The private cloud server sends the upgrade package verification key and the first transmission key to the target client, causing the target client to send the upgrade package verification key and the first transmission key to the supplier server. The upgrade package verification key is the encryption key of the firmware upgrade package generated by the private cloud server, and the first transmission key is the transmission key of the external network port of the private cloud server. The target client is a client registered with the supplier server and bound to the private cloud server. When the private cloud server receives the encrypted firmware upgrade package sent by the supplier server on the external network and decrypts the encrypted firmware upgrade package to obtain the firmware upgrade package, the private cloud server receives the firmware upgrade package transmitted from the external network of the private cloud server and performs firmware upgrade. The encrypted firmware upgrade package is obtained by the supplier server encrypting the firmware upgrade package using the upgrade package verification key and the first transmission key.

2. The method according to claim 1, characterized in that, After the private cloud server sends the upgrade package verification key and the first transmission key to the target client, causing the target client to send the upgrade package verification key and the first transmission key to the vendor server, the method further includes: If the private cloud server fails to receive the encrypted firmware upgrade package sent by the supplier server on the external network and fails to decrypt the encrypted firmware upgrade package, the private cloud server will not receive data from the external network.

3. The method according to claim 1, characterized in that, The private cloud server sends the upgrade package verification key and the first transmission key to the target client, causing the target client to send the upgrade package verification key and the first transmission key to the vendor server, including: The private cloud server receives a second transmission key uploaded by the target client. The second transmission key is a transmission key generated by the supplier server in response to a firmware upgrade request and sent to the target client. The firmware upgrade request is a request sent by the target client when a new device is added or when a firmware upgrade is required. The private cloud server uses the second transmission key to encrypt the upgrade package verification key and the first transmission key to obtain encrypted information; The private cloud server sends the encrypted information to the target client, causing the target client to forward the encrypted information to the supplier server.

4. The method according to claim 3, characterized in that, The process of generating the encrypted firmware upgrade package includes: The supplier server decrypts the encrypted information using the second transmission key to obtain the upgrade package verification key and the first transmission key; The supplier server uses the upgrade package verification key to encrypt the firmware upgrade package to obtain a first-encrypted firmware upgrade package, and uses the second transmission key to encrypt the first-encrypted firmware upgrade package a second time to obtain the encrypted firmware upgrade package.

5. The method according to claim 3, characterized in that, The private cloud server receives the second transmission key uploaded by the target client, including: The private cloud server receives the second transmission key and the first firmware upgrade verification ID uploaded by the target client, wherein the first firmware upgrade verification ID is the ID of the firmware upgrade package sent by the supplier server to the target client; The private cloud server receives the encrypted firmware upgrade package sent by the supplier server via its external network and decrypts the encrypted firmware upgrade package to obtain the firmware upgrade package, including: The private cloud server receives the encrypted firmware upgrade package and the second firmware upgrade verification ID sent by the supplier server on the external network. The second firmware upgrade verification ID is the ID of the firmware upgrade package in the encrypted firmware upgrade package. If the second firmware upgrade verification ID is the same as the first firmware upgrade verification ID, the ID verification is confirmed to be successful. If the ID verification is successful, the private cloud server can decrypt the encrypted firmware upgrade package on the external network to obtain the firmware upgrade package.

6. The method according to claim 3, characterized in that, The private cloud server receives the second transmission key uploaded by the target client, including: The private cloud server receives the obfuscated transmission key uploaded by the target client. The obfuscated transmission key is obtained by the supplier server encrypting the second transmission key using an obfuscation encryption algorithm and then sending it to the target client. The private cloud server uses the decryption algorithm corresponding to the obfuscation encryption algorithm to decrypt the obfuscated transmission key to obtain the second transmission key.

7. The method according to claim 3, characterized in that, The private cloud server sends the encrypted information to the target client, causing the target client to forward the encrypted information to the supplier server, including: The private cloud server converts the encrypted information into a QR code, enabling the target client to recognize the QR code and send the recognition result to the supplier server; Alternatively, the private cloud server converts the encrypted information into a string, causing the target client to forward the string to the supplier server.

8. An upgrade device for a private cloud server, characterized in that, include: The sending unit is used for the private cloud server to send the upgrade package verification key and the first transmission key to the target client, so that the target client sends the upgrade package verification key and the first transmission key to the supplier server. The upgrade package verification key is the encryption key of the firmware upgrade package generated by the private cloud server, the first transmission key is the transmission key of the external network port of the private cloud server, and the target client is a client registered with the supplier server and bound to the private cloud server. The receiving unit is configured to, when the private cloud server receives the encrypted firmware upgrade package sent by the supplier server on the external network and decrypts the encrypted firmware upgrade package to obtain the firmware upgrade package, perform firmware upgrade by receiving the firmware upgrade package transmitted from the external network of the private cloud server. The encrypted firmware upgrade package is obtained by the supplier server encrypting the firmware upgrade package using the upgrade package verification key and the first transmission key.

9. A computer-readable storage medium, characterized in that, The computer-readable storage medium includes a stored program, wherein, when the program is executed, it controls the device on which the computer-readable storage medium is located to perform the method according to any one of claims 1 to 7.

10. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by a processor, it implements the method described in any one of claims 1 to 7.

Citation Information

Patent Citations

  • Vehicle-mounted MCU upgrading method, vehicle-mounted MCU upgrading system and server group

    CN115437673A

  • Data transmission method and device, storage medium and electronic equipment

    CN118611927A