CN112653729B - Sharing upgrading method and device for Internet of things terminal, internet of things terminal and medium - Google Patents

Sharing upgrading method and device for Internet of things terminal, internet of things terminal and medium Download PDF

Info

Publication number
CN112653729B
CN112653729B CN202011423314.4A CN202011423314A CN112653729B CN 112653729 B CN112653729 B CN 112653729B CN 202011423314 A CN202011423314 A CN 202011423314A CN 112653729 B CN112653729 B CN 112653729B
Authority
CN
China
Prior art keywords
internet
firmware
sub
upgrading
upgrade
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202011423314.4A
Other languages
Chinese (zh)
Other versions
CN112653729A (en
Inventor
孙继国
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Individual
Original Assignee
Individual
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Priority to CN202011423314.4A priority Critical patent/CN112653729B/en
Publication of CN112653729A publication Critical patent/CN112653729A/en
Application granted granted Critical
Publication of CN112653729B publication Critical patent/CN112653729B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0435Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply symmetric encryption, i.e. same key used for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0442Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/30Services specially adapted for particular environments, situations or purposes

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

The invention provides a sharing upgrade method and device for an Internet of things terminal, the Internet of things terminal and a medium, wherein the sharing upgrade method comprises the following steps: the first Internet of things terminal sends a target upgrade version number of the firmware to be upgraded currently and a sub-package identifier of the downloaded upgrade sub-package to the second Internet of things terminal; receiving an upgrade sub-package which is sent by the second networking terminal according to the first sharing request information and is downloaded by the second networking terminal and is not downloaded by the first networking terminal; and the first Internet of things terminal receives the target upgrade version number of the firmware to be upgraded currently and the sub-package identification of the downloaded upgrade sub-package, which are sent by the second Internet of things terminal, generates second shared data according to the second sharing request information, and sends the second shared data to the second Internet of things terminal, so that the second Internet of things terminal stores the second shared data locally. The invention solves the problems of untimely upgrading and failed upgrading existing in the prior art when firmware of the terminal of the Internet of things is upgraded.

Description

Sharing upgrading method and device for Internet of things terminal, internet of things terminal and medium
Technical Field
The invention relates to the technical field of information, in particular to a sharing and upgrading method and device for an internet of things terminal, the internet of things terminal and a medium.
Background
The internet of things is an information carrier based on the internet, a traditional telecommunication network and the like, and independent physical objects form an interconnected network. With the development of the internet of things, various terminals forming the internet of things become an indispensable part. In the using process of the terminal, the terminal software needs to be continuously upgraded. In the prior art, when firmware of a terminal is upgraded, a mode of directly downloading an upgrade package from a server is generally adopted, and then software on the terminal is upgraded by using the upgrade package.
In the process of remotely upgrading the terminals of the internet of things, when network signals are unstable or a large number of terminals are simultaneously accessed to a server, network congestion is easy to occur, so that the upgrading is not timely, even the upgrading fails, and the stability and the perfection of the whole internet of things are seriously influenced.
Disclosure of Invention
The invention provides a sharing upgrading method and device for an Internet of things terminal, the Internet of things terminal and a medium, and aims to solve the problems of untimely upgrading and failed upgrading existing in the prior art when firmware of the Internet of things terminal is upgraded.
The invention is realized in such a way that a sharing upgrade method of an internet of things terminal is applied to a first internet of things terminal, and comprises the following steps:
sending first sharing request information to a second networking terminal, wherein the first sharing request information comprises a target upgrade version number of a firmware to be upgraded and a sub-package identifier of an upgrade sub-package downloaded by the first networking terminal;
receiving first shared data sent by the second networking terminal according to the first shared request information, and storing the first shared data to the local, wherein the first shared data comprises upgrade sub-packets which are downloaded by the second networking terminal and are not downloaded by the first networking terminal;
receiving second sharing request information sent by the second networking terminal, wherein the second sharing request information comprises a sub-package identifier of an upgrade sub-package of the firmware to be upgraded downloaded by the second networking terminal;
and generating second shared data according to the second sharing request information, wherein the second shared data comprises the upgrade sub-package which is downloaded by the first internet of things terminal and not downloaded by the second internet of things terminal, and sending the second shared data to the second internet of things terminal so that the second internet of things terminal stores the second shared data to the local.
Optionally, the receiving the first shared data sent by the second networked terminal according to the first sharing request information, and saving the first shared data locally includes:
receiving first shared data and a first key ciphertext which are sent by the second networking terminal according to the first shared request information;
and obtaining a first key according to the first key ciphertext, decrypting the first shared data by using the first key to obtain an upgrade sub-package in the first shared data, and storing the obtained upgrade sub-package into a corresponding sub-package file.
Optionally, the generating second shared data according to the second sharing request information, where the second shared data includes an upgrade package that the first internet of things terminal has downloaded and the second internet of things terminal has not downloaded includes:
and obtaining the upgrade sub-package downloaded by the first internet of things terminal and not downloaded by the second internet of things terminal according to the target upgrade version number, the sub-package identifier of the upgrade sub-package downloaded by the first internet of things terminal and the sub-package identifier of the upgrade sub-package of the firmware to be upgraded downloaded by the second internet of things terminal.
Optionally, after obtaining the upgrade package that the first internet of things terminal has downloaded and the second internet of things terminal has not downloaded, the method further includes:
encrypting the upgrade sub-package downloaded by the first internet of things terminal and not downloaded by the second internet of things terminal by using a second secret key to obtain second shared data;
encrypting the second key to obtain a second key ciphertext;
and sending the second shared data and the second key ciphertext to the second networking terminal.
Optionally, after saving the first shared data to the local, the method further includes:
and after all the upgrade sub-packages of the firmware to be upgraded are obtained by downloading, combining all the upgrade sub-packages to obtain target upgrade firmware of the firmware to be upgraded, and upgrading the firmware to be upgraded according to the target upgrade firmware.
Optionally, the method further comprises:
when the first Internet of things terminal is awakened, establishing communication connection with a server;
after the communication connection is established, the first Internet of things terminal sends synchronization information to the server;
the first Internet of things terminal receives upgrade information returned by the server according to the synchronous information, wherein the upgrade information comprises a target upgrade version number of the firmware to be upgraded, the size of the target upgrade firmware and the packet size;
and the first Internet of things terminal calculates the packet number according to the size of the target upgrading firmware and the packet size, and creates a packet file locally according to the packet number.
Optionally, the upgrade information further includes an upgrade address of the target upgrade firmware, and after the packet file is locally created according to the packet number, the method further includes:
downloading the upgrading data of the firmware to be upgraded from a server according to the upgrading address;
and decrypting the upgrading data to obtain an upgrading sub-package in the upgrading data, and storing the upgrading sub-package into a corresponding sub-package file.
Optionally, the updating information includes an MD5 value of the target updating firmware, and after downloading all the updating sub-packets of the firmware to be updated, all the updating sub-packets are combined to obtain the target updating firmware of the firmware to be updated, and updating the firmware to be updated according to the target updating firmware includes:
after all the upgrade sub-packages of the firmware to be upgraded are obtained through downloading, sequencing all the downloaded upgrade sub-packages to obtain a target upgrade firmware;
calculating an MD5 check value of the target upgrading firmware;
comparing the MD5 check value obtained by calculation with an MD5 check value issued by a server;
if the firmware to be upgraded is consistent with the target firmware to be upgraded, backing up the firmware to be upgraded, and upgrading the firmware to be upgraded according to the target firmware to be upgraded.
A sharing upgrading device of an Internet of things terminal comprises:
the request sending module is used for sending first sharing request information to a second networking terminal, wherein the first sharing request information comprises a target upgrade version number of the firmware to be upgraded and a sub-package identifier of an upgrade sub-package downloaded by the first networking terminal;
the data receiving module is used for receiving first shared data sent by the second internet-of-things terminal according to the first sharing request information and storing the first shared data to the local, wherein the first shared data comprises upgrade sub-packets which are downloaded by the second internet-of-things terminal and are not downloaded by the first internet-of-things terminal;
the request receiving module is used for receiving second sharing request information sent by the second networked terminal, wherein the second sharing request information comprises a sub-package identifier of an upgrading sub-package of the firmware to be upgraded downloaded by the second networked terminal;
and the data sharing module is used for generating second shared data according to the second sharing request information, wherein the second shared data comprises the upgrade sub-package downloaded by the first internet of things terminal and not downloaded by the second internet of things terminal, and sending the second shared data to the second internet of things terminal so that the second internet of things terminal stores the second shared data locally.
An internet of things terminal comprises a memory, a processor and a computer program stored in the memory and capable of running on the processor, wherein the processor executes the computer program to realize the sharing upgrade method of the internet of things terminal.
A computer-readable storage medium, which stores a computer program, which, when executed by a processor, implements the method for upgrading sharing of terminals of the internet of things.
The method and the device improve the mode that the existing Internet of things terminal downloads the upgrade subcontract of the firmware to be upgraded, and send first sharing request information to a second Internet of things terminal, wherein the first sharing request information comprises a target upgrade version number of the firmware to be upgraded and a subcontract identifier of the upgrade subcontract downloaded by the first Internet of things terminal; receiving first shared data sent by the second networking terminal according to the first shared request information, and storing the first shared data to the local, wherein the first shared data comprises upgrade sub-packets which are downloaded by the second networking terminal and are not downloaded by the first networking terminal; receiving second sharing request information sent by the second networking terminal, wherein the second sharing request information comprises a sub-package identifier of an upgrade sub-package of the firmware to be upgraded downloaded by the second networking terminal; and second shared data are generated according to the second sharing request information, the second shared data comprise upgrade sub-packets which are downloaded by the first internet of things terminal and not downloaded by the second internet of things terminal, and the second shared data are sent to the second internet of things terminal, so that the second shared data are stored to the local by the second internet of things terminal, the upgrade sub-packet mode of downloading the firmware to be upgraded by the internet of things terminal is expanded, the upgrade of the shared firmware among the internet of things terminals is realized, the upgrade success rate of the internet of things terminal is improved, and the problems of untimely upgrade and upgrade failure existing in the prior art when the firmware of the internet of things terminal is upgraded are solved.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the drawings needed to be used in the embodiments or the prior art descriptions will be briefly described below, and it is obvious that the drawings in the following description are only some embodiments of the present invention, and it is obvious for those skilled in the art to obtain other drawings based on these drawings without inventive exercise.
Fig. 1 is a schematic diagram illustrating components of an internet of things according to an embodiment of the present invention;
fig. 2 is a flowchart illustrating an implementation of a sharing upgrade method for terminals of the internet of things according to an embodiment of the present invention;
fig. 3 is a flowchart illustrating an implementation of a sharing upgrade method for terminals of the internet of things according to another embodiment of the present invention;
fig. 4 is a flowchart illustrating implementation of step S305 in a method for upgrading sharing of terminals of the internet of things according to another embodiment of the present invention;
fig. 5 is a flowchart illustrating implementation of step S311 in a method for upgrading sharing of terminals of the internet of things according to another embodiment of the present invention;
fig. 6 is a structural diagram of a sharing and upgrading apparatus of an internet of things terminal according to an embodiment of the present invention;
fig. 7 is a schematic diagram of the terminal of the internet of things according to an embodiment of the invention.
Detailed Description
In order to make the objects, technical solutions and advantages of the present invention more apparent, the present invention is described in further detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative of the invention and are not intended to limit the invention.
The embodiment of the invention solves the problems of untimely upgrading and failed upgrading of the firmware of the Internet of things terminal in the prior art, and the upgrading sub-package of the firmware to be upgraded is superposed on the basis that the Internet of things terminal downloads the firmware to be upgraded to the server based on a multipoint connection and multipath downloading mode by improving the mode that the Internet of things terminal acquires the firmware to be upgraded, so that the efficiency of acquiring the firmware to be upgraded by the Internet of things terminal is effectively improved, and the upgrading success rate of the Internet of things terminal is improved. The sharing and upgrading method for the internet of things terminal provided by the embodiment is described in detail below.
Fig. 1 is a schematic diagram of the composition of the internet of things provided by the present invention, and includes a server 1 and at least two terminals 2 of the internet of things. The internet of things terminal 2 comprises but is not limited to a vehicle-mounted terminal, a logistics terminal and remote monitoring terminals of various sensors, and can be in communication connection with each other or with a server.
The server 1 is a computer device and is used for an administrator to issue an upgrade subcontract of firmware to be upgraded, namely a subcontract of target upgrade firmware. The administrator uploads the target upgrading firmware of the terminal 2 of the internet of things to the server 1 in advance. The server 1 calculates an MD5 check value according to the target upgrade firmware, performs packet processing on the target upgrade firmware according to the size, network state, storage space, and processor performance of the target upgrade firmware, uniformly divides the relatively large target upgrade firmware into a plurality of upgrade packets of a preset size, such as upgrade packets of 512Byte, 1024Byte, and 2048Byte, and supplements the last upgrade packet by adding a free Byte at the end. And numbering the upgrading sub-packets according to the sequence of the division to obtain the corresponding identification of the upgrading sub-packets. According to the embodiment of the invention, the target upgrade firmware is divided into the plurality of upgrade sub-packets for transmission, so that each upgrade sub-packet can be transmitted in a short-time network state under the condition that the internet of things terminal is low in network speed and unstable, the transmission success rate of each upgrade sub-packet is improved, and the transmission success rate of the whole target upgrade firmware is further improved; meanwhile, the internet of things terminal processor has smaller memory storage space and lower processing performance, and can only process data with the size of one upgrade sub-packet each time, so that the sub-packet processing can effectively adapt to the data storage space and processing performance requirements of the terminal processor.
Fig. 2 is a flowchart of an implementation of the sharing upgrade method for the internet of things terminal provided by the present invention. In fig. 2, the internet of things terminal downloads the upgrade sub-package of the firmware to be upgraded by interacting with the server. As shown in fig. 2, the sharing upgrade method for the internet of things terminal includes:
in step S201, when the first internet of things terminal wakes up, a communication connection is established with a server.
Here, after the terminal of the internet of things wakes up from sleep or is turned on, for example, when detecting that the voltage of the main board changes or detecting vibration, the terminal of the internet of things is connected to the server through the network to establish communication connection with the server.
In step S202, after the communication connection is established, the first internet of things terminal sends synchronization information to the server.
The synchronization information includes, but is not limited to, a firmware version number and a firmware download state local to the first internet of things terminal. The firmware downloading state is used for representing a sub-package identifier of an upgrading sub-package of the downloaded target upgrading firmware of the first internet of things terminal, and the sub-package identifier comprises a firmware upgrading mark and a downloaded sub-package identifier. After the communication connection with the server is established, the first internet of things terminal sends the local firmware version number and the firmware downloading state as synchronous information to the server.
In step S203, the server obtains upgrade information according to the synchronization information, and sends the upgrade information to the first internet of things terminal.
The server compares the firmware version number in the synchronous information with the version number of the target upgrading firmware after receiving the synchronous information, if the firmware version number is inconsistent with the version number of the target upgrading firmware, whether a firmware upgrading mark exists in the firmware downloading state is continuously judged, if the firmware upgrading mark does not exist, the first Internet of things terminal does not start downloading the firmware to be upgraded, and the server packages the target upgrading version number of the firmware to be upgraded and the size, the sub-package size, the MD5 check value and the upgrading address of the target upgrading firmware to generate upgrading information and sends the upgrading information to the first Internet of things terminal so that the first Internet of things terminal can upgrade the firmware.
And if the firmware version number is consistent with the version number of the target upgrading firmware, the firmware in the first internet of things terminal is represented as the latest version, and the firmware upgrading is not needed. Or, if the firmware version number is not consistent with the version number of the target upgrade firmware and a firmware upgrade flag exists in the firmware downloading state, it indicates that the first internet of things terminal has started downloading the firmware to be upgraded but has not downloaded all the upgrade sub-packages, and at this time, the server does not return upgrade information but waits for the first internet of things terminal to download the upgrade sub-packages.
In step S204, the first internet of things terminal receives the upgrade information returned by the server according to the synchronization information.
As mentioned above, the upgrade information includes the target upgrade version number of the firmware to be upgraded, the size of the target upgrade firmware, the packet size, the MD5 check value, and the upgrade address. And if the first Internet of things terminal receives the upgrading information, performing sub-packet preprocessing according to the upgrading information.
In step S205, the first internet of things terminal calculates a packet number according to the size of the target upgrade firmware and the packet size, and creates a packet file locally according to the packet number.
In the sub-package preprocessing process, the first internet of things terminal firstly calculates the sub-package number of the target upgrading firmware according to the size of the target upgrading firmware and the sub-package size, wherein the sub-package number refers to the total number of upgrading sub-packages of the target upgrading firmware. And then according to the sub-package number, creating sub-package files with a corresponding number locally by using a file system, and uniformly identifying each sub-package file. The sub-package files are used for storing upgrade sub-packages downloaded from a server or shared by terminals of the internet of things, one sub-package file correspondingly stores one upgrade sub-package, and the sub-package files and the identifiers of the upgrade sub-packages are corresponding.
In step S206, the server encrypts the upgrade packet of the target upgrade firmware to obtain upgrade data.
In the embodiment of the invention, an encryption transmission mode is adopted between the terminal of the internet of things and the server. Optionally, as a preferred example of the present invention, the server may generate a key by using an AES symmetric algorithm, and encrypt the upgrade sub-package of the target upgrade firmware by using the key to obtain the upgrade data.
In step S207, the first internet of things terminal downloads the upgrade data of the firmware to be upgraded from the server according to the upgrade address.
Here, the first internet of things terminal accesses the server through the upgrade address and downloads upgrade data of the firmware to be upgraded from the server.
In step S208, the first internet of things terminal decrypts the upgrade data to obtain an upgrade sub-package in the upgrade data, and stores the upgrade sub-package in a corresponding sub-package file.
Optionally, as a preferred example of the present invention, after the AES symmetric algorithm is used to generate the key and complete the upgrade packetization encryption, the embodiment of the present invention further encrypts the key. The method comprises the steps that a first Internet of things terminal generates a public key and a private key by adopting an SM2 national secret asymmetric algorithm, the private key is reserved, the public key is shared to a server, and after the server generates a secret key by adopting an AES symmetric algorithm and completes upgrading subpackage encryption, the public key is used for encrypting the secret key generated by the AES symmetric algorithm to obtain a third secret key ciphertext. And the server further transmits the third key ciphertext to the first Internet of things terminal, so that key exchange between the server and the first Internet of things terminal is completed.
Here, as a preferred example of the present invention, the server may encrypt the upgrade packages of the firmware to be upgraded by using a uniform key, so as to obtain corresponding upgrade data respectively. At this time, the server sends the third key ciphertext to the first internet of things terminal before transmitting the first upgrade data of the firmware to be upgraded, and subsequently does not send the third key ciphertext any more. As another preferred example of the present invention, the server may also generate corresponding different keys for each upgrade package, and then encrypt the corresponding upgrade packages using the keys to obtain the upgrade data. At this time, the server sends the third key ciphertext to the first internet of things terminal before transmitting each piece of upgrade data.
And the first Internet of things terminal decrypts the third key ciphertext according to the reserved private key to obtain a key for decrypting the upgrade sub-package. And then, decrypting the upgrading data according to the secret key to obtain an upgrading sub-package in the upgrading data, storing the upgrading sub-package into a sub-package file created in sub-package preprocessing, and updating the identification of the upgrading sub-package of the currently downloaded firmware to be upgraded in the firmware downloading state.
The steps S201 to S208 are processes of downloading the upgrade package of the firmware to be upgraded from the server by the first internet of things terminal. In this embodiment, when the first internet of things terminal wakes up, in addition to establishing connection communication with the server, connection communication may also be synchronously established with at least one second internet of things terminal, so as to perform firmware sharing with the second internet of things terminal. It should be understood that the first and second terminals are only used for distinguishing different internet of things terminals. Fig. 3 is another implementation flowchart of the sharing upgrade method for the internet of things terminal provided by the present invention. In fig. 3, the terminals of the internet of things interactively share the firmware to be upgraded. As shown in fig. 3, the sharing upgrade method for the internet of things terminal includes:
in step S301, when the first internet of things terminal wakes up, a communication connection is established with the second internet of things terminal.
Here, after the terminal of the internet of things is awakened from sleep or turned on, the terminal of the internet of things can be connected to a nearby terminal of a second internet of things through short-distance connection modes such as bluetooth and WIFI, and communication connection is established between the terminal of the internet of things and the terminal of the second internet of things.
In step S302, after the communication connection is established, the first internet of things terminal sends first sharing request information to the second internet of things terminal.
The first sharing request information comprises a target upgrading version number of the firmware to be upgraded and a sub-package identification of an upgrading sub-package downloaded by the first internet-of-things terminal. In this embodiment, the first internet of things terminal and the second internet of things terminal which establish communication connection exchange local current upgrade information with each other, so that the other party knows the target upgrade version number, the undelivered or downloaded upgrade sub-package and the upgrade identifier of the current firmware to be upgraded of the own party, and only the undelivered upgrade sub-package is transmitted between the internet of things terminals.
In step S303, the second internet-of-things terminal receives first sharing request information, and generates first sharing data according to the first sharing request information, where the first sharing data includes an upgrade package that the second internet-of-things terminal has downloaded and the first internet-of-things terminal has not downloaded.
Here, the second internet-of-things terminal compares the target upgrade version number of the firmware to be upgraded currently of the first internet-of-things terminal with the target upgrade version number of the firmware to be upgraded locally, and if the target upgrade version number of the firmware to be upgraded currently of the first internet-of-things terminal is the same as the target upgrade version number of the firmware to be upgraded locally, the upgrade sub-package downloaded by the second internet-of-things terminal and the upgrade sub-package downloaded by the first internet-of-things terminal are obtained according to the sub-package identifier of the upgrade sub-package downloaded locally and the sub-package identifier of the upgrade sub-package downloaded by the first internet-of-things terminal.
In step S304, the second internet-of-things terminal sends the first shared data to the first internet-of-things terminal.
In step S305, the first internet of things terminal receives first shared data sent by the second internet of things terminal according to the first sharing request information, and stores the first shared data locally.
After receiving the first shared data, the first internet of things terminal stores the upgrade sub-package in the first shared data into a corresponding sub-package file.
Optionally, in the embodiment of the present invention, data transmission is performed between terminals of the internet of things in an encrypted manner. As a preferred example of the present invention, the first internet of things terminal first generates a public key and a private key according to an SM2 cryptographic asymmetric algorithm, reserves the private key, and shares the public key to the second internet of things terminal. The second networking terminal generates a first secret key by adopting an AES (advanced encryption standard) symmetric algorithm, and the first secret key is used for encrypting the upgrade sub-package which is downloaded by the second networking terminal and is not downloaded by the first networking terminal to obtain first shared data; and then, encrypting the first key generated by the AES symmetric algorithm by using the public key shared by the first Internet of things terminal to obtain a first key ciphertext, and sending the first key ciphertext to the first Internet of things terminal to realize key exchange among the Internet of things terminals. As shown in fig. 4, step S305 further includes:
in step S401, the first internet of things terminal receives the first shared data and the first key ciphertext sent by the second internet of things terminal according to the first sharing request message.
Here, as a preferred example of the present invention, the second internet-of-things terminal may encrypt the upgrade package that has been downloaded by the second internet-of-things terminal and is not downloaded by the first internet-of-things terminal by using a uniform first key, so as to obtain corresponding first shared data respectively. At this time, the second internet-of-things terminal sends the first key ciphertext to the first internet-of-things terminal before starting to transmit the first shared data, and then does not send the first key ciphertext any more. As another preferred example of the present invention, the second networked terminal may also generate corresponding mutually different first keys for each sub-package, and then encrypt the corresponding upgrade sub-package using the first keys to obtain the first shared data. At this time, the server sends a first key ciphertext to the first internet of things terminal once before transmitting the first shared data each time.
In step S402, the first internet of things terminal obtains a first key according to the first key ciphertext, decrypts the first shared data using the first key, obtains an upgrade package in the first shared data, and stores the obtained upgrade package in a corresponding package file.
Here, the first internet of things terminal decrypts the first key ciphertext by using a reserved private key, so as to obtain a first key for decrypting the first shared data. And then decrypting the first shared data according to the first key to obtain an upgrade sub-package downloaded by the second internet-of-things terminal and not downloaded by the first internet-of-things terminal, storing the upgrade sub-package into a sub-package file created in sub-package preprocessing, and updating a sub-package identifier of the upgrade sub-package downloaded currently in the firmware downloading state.
The steps S302 to S305 are processes of requesting, by the first internet of things terminal, the upgrade subpackage of the firmware to be upgraded from the second internet of things terminal. In this embodiment, when the first internet of things terminal wakes up, the upgrade subpackage can be synchronously sent to the second internet of things terminal in addition to the request of the second internet of things terminal for the upgrade subpackage. As shown in fig. 3, the method further comprises:
in step S306, the second internet-of-things terminal sends second sharing request information to the first internet-of-things terminal.
And the second sharing request information comprises a sub-package identifier of the upgrade sub-package of the firmware to be upgraded downloaded by the second networking terminal. In this embodiment, the first internet of things terminal and the second internet of things terminal which establish communication connection exchange local current upgrade information with each other, so that the other party knows the target upgrade version number, the undelivered or downloaded upgrade sub-package and the upgrade identifier of the current firmware to be upgraded of the own party, and only the undelivered upgrade sub-package is transmitted between the internet of things terminals.
In step S307, the first internet of things terminal receives the second sharing request information sent by the second internet of things terminal.
In step S308, the first internet of things terminal generates second shared data according to the second sharing request information, where the second shared data includes an upgrade package that the first internet of things terminal has downloaded and the second internet of things terminal has not downloaded.
Here, the first internet of things terminal obtains the upgrade sub-package downloaded by the first internet of things terminal and not downloaded by the second internet of things terminal according to the target upgrade version number, the sub-package identifier of the upgrade sub-package downloaded by the first internet of things terminal, and the sub-package identifier of the upgrade sub-package from which the firmware to be upgraded is downloaded by the second internet of things terminal.
In step S309, the first internet of things terminal sends the second shared data to the second internet of things terminal.
Optionally, in the embodiment of the present invention, data transmission is performed between terminals of the internet of things in an encrypted manner. As a preferred example of the present invention, the second internet-of-things terminal first generates a public key and a private key according to an SM2 cryptographic asymmetric algorithm, reserves the private key, and shares the public key with the first internet-of-things terminal. The first Internet of things terminal generates a second secret key by adopting an AES symmetric algorithm, and the second secret key is used for encrypting the upgrade sub-package which is downloaded by the first Internet of things terminal and not downloaded by the second Internet of things terminal to obtain second shared data; and then, encrypting a second key generated by the AES symmetric algorithm by using a public key shared by the second networking terminal to obtain a second key ciphertext, and sending the second key ciphertext to the second networking terminal to realize key exchange between the networking terminals.
In step S310, the second internet of things terminal receives the second shared data sent by the first internet of things terminal, and stores the second shared data locally.
Here, after receiving the second shared data, the second networked terminal saves the upgrade sub-package in the second shared data to a corresponding sub-package file.
As described above, in the embodiment of the present invention, data transmission is performed between terminals of the internet of things in an encrypted manner. The second internet of things terminal receives second sharing data and a second key ciphertext which are sent by the first internet of things terminal according to the second sharing request message; and obtaining a second key according to a second key ciphertext, decrypting the second shared data by using the second key to obtain an upgrade sub-package in the second shared data, and storing the upgrade sub-package into a corresponding sub-package file. Specifically, the second networked terminal decrypts the second key ciphertext by using the reserved private key, so as to obtain a second key for decrypting the second shared data. And then decrypting the second shared data according to the second key to obtain an upgrade sub-package downloaded by the first internet of things terminal and not downloaded by the second internet of things terminal, storing the upgrade sub-package into a sub-package file created in sub-package preprocessing, and updating a sub-package identifier of the upgrade sub-package downloaded currently in the firmware downloading state.
For convenience of understanding, a specific example of the present invention is given below, and it is assumed that an upgrade sub-package of a firmware to be upgraded includes an upgrade sub-package 1, an upgrade sub-package 2, an upgrade sub-package 3, and an upgrade sub-package 4, where the upgrade sub-package 1 and the upgrade sub-package 2 downloaded by a first internet-of-things terminal a and the upgrade sub-package 3 and the upgrade sub-package 4 downloaded by a second internet-of-things terminal B are, according to the sharing upgrade method provided by the present invention, the first internet-of-things terminal a transmits the upgrade sub-package 1 and the upgrade sub-package 2 to the second internet-of-things terminal B, and the second internet-of-things terminal B transmits the upgrade sub-package 3 and the upgrade sub-package 4 to the first internet-of-things terminal a, and finally both the first internet-things terminal a and the second internet-things terminal B have the upgrade sub-package 1, the upgrade sub-package 2, the upgrade sub-package 3, and the upgrade sub-package 4, thereby completing downloading of the entire target upgrade firmware.
In step S311, after downloading all the upgrade sub-packages of the firmware to be upgraded, the first internet of things terminal combines all the upgrade sub-packages to obtain a target upgrade firmware of the firmware to be upgraded, and upgrades the firmware to be upgraded according to the target upgrade firmware.
When the firmware is upgraded, the embodiment of the present invention further determines whether the downloaded target upgrade firmware in the first internet of things terminal is correct through the MD5 check value, as shown in fig. 5, step S311 further includes:
in step S501, after downloading all the upgrade subcontracts of the firmware to be upgraded, all the downloaded upgrade subcontracts are sorted to obtain the target upgrade firmware.
Here, the first internet of things terminal sorts and combines all downloaded upgrade sub-packages according to the size order of the identifiers to obtain the downloaded target upgrade firmware.
In step S502, an MD5 check value of the target upgrade firmware is calculated.
In step S503, the calculated MD5 check value is compared with the MD5 check value issued by the server.
And the first Internet of things terminal adopts an MD5 information abstract algorithm to calculate the corresponding MD5 check value of the downloaded target upgrading firmware, and then compares the MD5 check value obtained by calculation with the MD5 check value issued by the server. If the two are the same, the target upgrade firmware is successfully downloaded, and step S604 is executed, otherwise, the target upgrade firmware has an error and the downloading fails.
In step S504, if the two are consistent, the firmware to be upgraded is backed up, and the firmware to be upgraded is upgraded according to the target upgrade firmware.
And after the target upgrading firmware is downloaded successfully, the first Internet of things terminal backs up the currently running firmware and then updates the firmware according to the target upgrading firmware through an upgrading bootstrap program so as to finish firmware upgrading.
The firmware to be upgraded is backed up before the firmware is upgraded, so that the target upgraded firmware can return to the previous firmware version when the target upgraded firmware cannot be used, for example, when the target upgraded firmware is mistakenly copied or manually uploaded due to electromagnetic interference, the target upgraded firmware is unavailable, and the backed-up firmware to be upgraded is used to restore to the state before downloading, so that the normal operation of the terminal of the internet of things is ensured.
In step S312, after downloading all the upgrade subcontracts of the firmware to be upgraded, the second internet-of-things terminal combines all the upgrade subcontracts to obtain a target upgrade firmware of the firmware to be upgraded, and upgrades the firmware to be upgraded according to the target upgrade firmware.
The firmware upgrade performed by the second internet-of-things terminal according to the target upgrade firmware is consistent with the firmware upgrade process of the first internet-of-things terminal, for details, refer to the description of the above embodiment, and details are not repeated here.
The embodiment of the invention improves the upgrading subpackage mode of downloading the firmware to be upgraded by the existing Internet of things terminal, expands the upgrading subpackage mode of downloading the firmware to be upgraded by the Internet of things terminal, realizes the upgrading of shared firmware among the Internet of things terminals, is beneficial to improving the success rate of upgrading the Internet of things terminal, and solves the problems of untimely upgrading and upgrading failure existing in the prior art when the firmware of the Internet of things terminal is upgraded. Meanwhile, due to multipoint connection, the Internet of things terminal can download different upgrading sub-packages of the same target upgrading firmware from the server and other Internet of things terminals at the same time, and the total downloading bandwidth is increased actually, so that the upgrading speed is greatly improved.
It should be understood that, the sequence numbers of the steps in the foregoing embodiments do not imply an execution sequence, and the execution sequence of each process should be determined by its function and inherent logic, and should not constitute any limitation to the implementation process of the embodiments of the present invention.
In an embodiment, a shared upgrading device of an internet of things terminal is provided, and the shared upgrading device of the internet of things terminal is used for functions of the internet of things terminal in the shared upgrading method of the internet of things terminal in the above embodiment. As shown in fig. 6, the sharing upgrade apparatus of the internet of things terminal includes a request sending module 61, a data receiving module 62, a request receiving module 63, and a data sharing module 64. The functional modules are explained in detail as follows:
a request sending module 61, configured to send first sharing request information to a second internet-of-things terminal, where the first sharing request information includes a target upgrade version number of a firmware to be upgraded and a sub-package identifier of an upgrade sub-package downloaded by the first internet-of-things terminal;
a data receiving module 62, configured to receive first shared data sent by the second internet-of-things terminal according to the first sharing request information, and store the first shared data to the local, where the first shared data includes an upgrade sub-package that has been downloaded by the second internet-of-things terminal and is not downloaded by the first internet-of-things terminal;
a request receiving module 63, configured to receive second sharing request information sent by the second internet-of-things terminal, where the second sharing request information includes a sub-package identifier of an upgrade sub-package in which the firmware to be upgraded has been downloaded by the second internet-of-things terminal;
and the data sharing module 64 is configured to generate second shared data according to the second sharing request information, where the second shared data includes an upgrade sub-package downloaded by the first internet of things terminal and not downloaded by the second internet of things terminal, and send the second shared data to the second internet of things terminal, so that the second internet of things terminal stores the second shared data locally.
Optionally, the data receiving module 62 includes:
the data receiving unit is used for receiving first shared data and a first key ciphertext which are sent by the second networking terminal according to the first shared request information;
and the decryption unit is used for obtaining a first key according to the first key ciphertext, decrypting the first shared data by using the first key to obtain an upgrade sub-package in the first shared data, and storing the obtained upgrade sub-package into a corresponding sub-package file.
Optionally, the data sharing module 64 includes:
and the obtaining unit is used for obtaining the upgrade sub-package downloaded by the first internet of things terminal and not downloaded by the second internet of things terminal according to the target upgrade version number, the sub-package identifier of the upgrade sub-package downloaded by the first internet of things terminal and the sub-package identifier of the upgrade sub-package of the firmware to be upgraded downloaded by the second internet of things terminal.
The data sharing module 64 further includes:
the first encryption unit is used for encrypting the upgrade sub-package downloaded by the first internet of things terminal and not downloaded by the second internet of things terminal by using a second secret key to obtain second shared data;
the second encryption unit is used for encrypting the second key to obtain a second key ciphertext;
and the sending unit is used for sending the second shared data and the second key ciphertext to the second networking terminal.
Optionally, the apparatus further comprises:
and the upgrading module is used for combining all the upgrading sub-packages after all the upgrading sub-packages of the firmware to be upgraded are obtained through downloading, so that the target upgrading firmware of the firmware to be upgraded is obtained, and upgrading is carried out on the firmware to be upgraded according to the target upgrading firmware.
Optionally, the apparatus further comprises:
the communication connection module is used for establishing communication connection with the server when awakening;
the synchronous request module is used for sending synchronous information to the server after communication connection is established;
the synchronous module is used for receiving upgrade information returned by the server according to the synchronous information, wherein the upgrade information comprises a target upgrade version number of the firmware to be upgraded, the size of the target upgrade firmware and the packet size;
and the preprocessing module is used for calculating the packet number according to the size of the target upgrading firmware and the packet size and creating a packet file locally according to the packet number.
Optionally, the upgrade information further includes an upgrade address of the target upgrade firmware, and the apparatus further includes:
the download module is used for downloading the upgrading data of the firmware to be upgraded from the server according to the upgrading address;
and the decryption module is used for decrypting the upgrade data to obtain the upgrade sub-package in the upgrade data and storing the upgrade sub-package into a corresponding sub-package file.
Optionally, the upgrade information includes an MD5 value of a target upgrade firmware, and the upgrade module includes:
the sequencing unit is used for sequencing all downloaded upgrade sub-packages to obtain target upgrade firmware after all upgrade sub-packages of the firmware to be upgraded are obtained through downloading;
the calculation unit is used for calculating an MD5 check value of the target upgrading firmware;
the comparison unit is used for comparing the MD5 check value obtained by calculation with the MD5 check value issued by the server;
and the upgrading unit is used for backing up the firmware to be upgraded if the firmware to be upgraded is consistent with the target upgrading firmware and upgrading the firmware to be upgraded according to the target upgrading firmware.
For specific limitations of the sharing and upgrading device of the internet of things terminal, reference may be made to the limitations of the first internet of things terminal and the second internet of things terminal in the sharing and upgrading method of the internet of things terminal, and details are not repeated here. All modules in the sharing and upgrading device of the internet of things terminal can be completely or partially realized through software, hardware and a combination of the software and the hardware. The modules can be embedded in a hardware form or independent from a processor in the computer device, and can also be stored in a memory in the computer device in a software form, so that the processor can call and execute operations corresponding to the modules.
In one embodiment, an internet of things terminal is provided, and the internet of things terminal may be a vehicle-mounted terminal, a logistics terminal, or a remote monitoring terminal of various sensors, and an internal structure diagram of the internet of things terminal may be as shown in fig. 7. The terminal of the Internet of things comprises a processor, a memory, a network interface and a database which are connected through a system bus. The processor of the terminal of the Internet of things is used for providing computing and control capability. The memory of the terminal of the Internet of things comprises a nonvolatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, a computer program, and a database. The internal memory provides an environment for the operation of an operating system and computer programs in the non-volatile storage medium. The network interface of the terminal of the internet of things is used for being connected and communicated with an external terminal through a network. The computer program is executed by the processor to realize a sharing and upgrading method of the terminal of the Internet of things.
In one embodiment, there is provided an internet of things terminal, including a memory, a processor, and a computer program stored on the memory and executable on the processor, the processor implementing the following steps when executing the computer program:
sending first sharing request information to a second internet-of-things terminal, wherein the first sharing request information comprises a target upgrade version number of firmware to be upgraded and a sub-package identifier of an upgrade sub-package downloaded by the first internet-of-things terminal;
receiving first shared data sent by the second networking terminal according to the first shared request information, and storing the first shared data to the local, wherein the first shared data comprises upgrade sub-packets which are downloaded by the second networking terminal and are not downloaded by the first networking terminal;
receiving second sharing request information sent by the second networking terminal, wherein the second sharing request information comprises a sub-package identifier of an upgrade sub-package of the firmware to be upgraded downloaded by the second networking terminal;
and generating second shared data according to the second sharing request information, wherein the second shared data comprises the upgrade sub-package which is downloaded by the first internet of things terminal and not downloaded by the second internet of things terminal, and sending the second shared data to the second internet of things terminal so that the second internet of things terminal stores the second shared data to the local.
It will be understood by those skilled in the art that all or part of the processes of the methods of the embodiments described above can be implemented by hardware instructions of a computer program, which can be stored in a non-volatile computer-readable storage medium, and when executed, can include the processes of the embodiments of the methods described above. Any reference to memory, storage, databases, or other media used in embodiments provided herein may include non-volatile and/or volatile memory. Non-volatile memory can include read-only memory (ROM), programmable ROM (PROM), electrically Programmable ROM (EPROM), electrically Erasable Programmable ROM (EEPROM), or flash memory. Volatile memory can include Random Access Memory (RAM) or external cache memory. By way of illustration and not limitation, RAM is available in a variety of forms such as Static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double Data Rate SDRAM (DDRSDRAM), enhanced SDRAM (ESDRAM), synchronous Link DRAM (SLDRAM), rambus (Rambus) direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM).
It will be apparent to those skilled in the art that, for convenience and brevity of description, only the above-mentioned division of the functional units and modules is illustrated, and in practical applications, the above-mentioned function distribution may be performed by different functional units and modules according to needs, that is, the internal structure of the apparatus is divided into different functional units or modules to perform all or part of the above-mentioned functions.
The above-mentioned embodiments are only used for illustrating the technical solutions of the present invention, and not for limiting the same; although the present invention has been described in detail with reference to the foregoing embodiments, it will be understood by those of ordinary skill in the art that: the technical solutions described in the foregoing embodiments may still be modified, or some technical features may be equivalently replaced; such modifications and substitutions do not substantially depart from the spirit and scope of the embodiments of the present invention, and are intended to be included within the scope of the present invention.

Claims (10)

1. A sharing upgrading method of an Internet of things terminal is applied to a first Internet of things terminal, and is characterized by comprising the following steps:
when the first Internet of things terminal is awakened, establishing communication connection with a server;
after the communication connection is established, the first Internet of things terminal sends synchronization information to the server;
after receiving the synchronous information, the server compares the firmware version number in the synchronous information with the version number of the target upgrading firmware, and judges whether a firmware upgrading mark exists in the firmware downloading state or not if the firmware version number is inconsistent with the version number of the target upgrading firmware;
if the target upgrading firmware does not exist, the server conducts sub-packet processing on the target upgrading firmware according to the size, the network state, the storage space and the processor performance of the target upgrading firmware, and the target upgrading firmware is evenly divided into a plurality of upgrading sub-packets with preset sizes;
packaging the target upgrade version number of the firmware to be upgraded, the size of the target upgrade firmware and the sub-package size to generate upgrade information, and sending the upgrade information to the first internet of things terminal so as to upgrade the firmware of the first internet of things terminal;
the first Internet of things terminal receives the updating information returned by the server according to the synchronous information, calculates the packet number according to the size of the target updating firmware and the sub-packet size, and creates a sub-packet file locally according to the packet number;
sending first sharing request information to a second networking terminal, wherein the first sharing request information comprises a target upgrade version number of a firmware to be upgraded and a sub-package identifier of an upgrade sub-package downloaded by the first networking terminal;
receiving first shared data sent by the second networking terminal according to the first shared request information, and storing the first shared data to the local, wherein the first shared data comprises upgrade sub-packets which are downloaded by the second networking terminal and are not downloaded by the first networking terminal;
receiving second sharing request information sent by the second networking terminal, wherein the second sharing request information comprises a sub-package identifier of an upgrade sub-package of the firmware to be upgraded downloaded by the second networking terminal;
and generating second shared data according to the second sharing request information, wherein the second shared data comprises the upgrade sub-package which is downloaded by the first internet of things terminal and not downloaded by the second internet of things terminal, and sending the second shared data to the second internet of things terminal so that the second internet of things terminal stores the second shared data to the local.
2. The method for upgrading sharing of internet of things terminal according to claim 1, wherein the receiving the first shared data sent by the second internet of things terminal according to the first sharing request information, and the saving the first shared data to local includes:
receiving first shared data and a first key ciphertext which are sent by the second networking terminal according to the first shared request information;
and obtaining a first key according to the first key ciphertext, decrypting the first shared data by using the first key to obtain an upgrade sub-package in the first shared data, and storing the obtained upgrade sub-package into a corresponding sub-package file.
3. The method for upgrading sharing of the internet of things terminal according to claim 1, wherein the generating of the second shared data according to the second sharing request information, the second shared data including the upgrade sub-package that the first internet of things terminal has downloaded and the second internet of things terminal has not downloaded includes:
and obtaining the upgrade sub-package downloaded by the first internet of things terminal and not downloaded by the second internet of things terminal according to the target upgrade version number, the sub-package identifier of the upgrade sub-package downloaded by the first internet of things terminal and the sub-package identifier of the upgrade sub-package downloaded by the second internet of things terminal of the firmware to be upgraded.
4. The method for sharing upgrade of internet of things terminals according to claim 3, wherein after obtaining the upgrade package that the first internet of things terminal has downloaded and the second internet of things terminal has not downloaded, the method further comprises:
encrypting the upgrade sub-package downloaded by the first internet of things terminal and not downloaded by the second internet of things terminal by using a second secret key to obtain second shared data;
encrypting the second key to obtain a second key ciphertext;
and sending the second shared data and the second key ciphertext to the second networking terminal.
5. The sharing and upgrading method for the terminals of the internet of things according to any one of claims 1 to 4, wherein after the first shared data is saved locally, the method further comprises:
and after all the upgrading sub-packets of the firmware to be upgraded are obtained by downloading, combining all the upgrading sub-packets to obtain the target upgrading firmware of the firmware to be upgraded, and upgrading the firmware to be upgraded according to the target upgrading firmware.
6. The method for sharing and upgrading the internet of things terminal according to claim 5, wherein the upgrading information further includes an upgrading address of a target upgrading firmware, and after a subcontracting file is locally created according to the subcontracting number, the method further includes:
downloading the upgrading data of the firmware to be upgraded from a server according to the upgrading address;
and decrypting the upgrading data to obtain an upgrading sub-package in the upgrading data, and storing the upgrading sub-package into a corresponding sub-package file.
7. The shared upgrading method for the internet of things terminal as claimed in claim 6, wherein the upgrading information includes an MD5 value of a target upgrading firmware, the upgrading information combines all upgrading sub-packets after downloading all upgrading sub-packets of the firmware to be upgraded to obtain the target upgrading firmware of the firmware to be upgraded, and upgrading the firmware to be upgraded according to the target upgrading firmware includes:
after all the upgrade sub-packages of the firmware to be upgraded are obtained through downloading, sequencing all the downloaded upgrade sub-packages to obtain target upgrade firmware;
calculating an MD5 check value of the target upgrading firmware;
comparing the MD5 check value obtained by calculation with an MD5 check value issued by a server;
if the firmware and the target upgrading firmware are consistent, the firmware to be upgraded is backed up, and the firmware to be upgraded is upgraded according to the target upgrading firmware.
8. The utility model provides a sharing upgrading device at thing networking terminal which characterized in that, the device includes:
the communication connection module is used for establishing communication connection with the server when the first Internet of things terminal is awakened;
the information synchronization module is used for sending synchronization information to the server by the first Internet of things terminal after communication connection is established;
the firmware comparison module is used for comparing the firmware version number in the synchronization information with the version number of the target upgrading firmware after the server receives the synchronization information, and judging whether a firmware upgrading mark exists in the firmware downloading state or not if the firmware version number is inconsistent with the version number of the target upgrading firmware;
the sub-packet processing module is used for sub-packet processing of the target upgrading firmware according to the size, the network state, the storage space and the performance of the processor of the target upgrading firmware if the target upgrading firmware does not exist, and uniformly dividing the target upgrading firmware into a plurality of upgrading sub-packets with preset sizes;
the upgrading information generation module is used for packaging the target upgrading version number of the firmware to be upgraded, the size of the target upgrading firmware and the sub-package size, generating upgrading information and sending the upgrading information to the first Internet of things terminal so as to upgrade the firmware of the first Internet of things terminal;
the sub-packet file creating module is used for receiving the updating information returned by the server according to the synchronous information by the first Internet of things terminal, calculating the number of sub-packets according to the size of the target updating firmware and the size of the sub-packets, and creating the sub-packet file locally according to the number of the sub-packets;
the request sending module is used for sending first sharing request information to a second networking terminal, wherein the first sharing request information comprises a target upgrade version number of the firmware to be upgraded and a sub-package identifier of an upgrade sub-package downloaded by the first networking terminal;
the data receiving module is used for receiving first shared data sent by the second networking terminal according to the first sharing request information and storing the first shared data to the local, wherein the first shared data comprises upgrade sub-packets which are downloaded by the second networking terminal and are not downloaded by the first networking terminal;
the request receiving module is used for receiving second sharing request information sent by the second networked terminal, wherein the second sharing request information comprises a sub-package identifier of an upgrading sub-package of the firmware to be upgraded downloaded by the second networked terminal;
and the data sharing module is used for generating second shared data according to the second sharing request information, wherein the second shared data comprises the upgrade sub-package downloaded by the first internet of things terminal and not downloaded by the second internet of things terminal, and sending the second shared data to the second internet of things terminal so that the second internet of things terminal can store the second shared data to the local.
9. An internet of things terminal comprising a memory, a processor and a computer program stored in the memory and executable on the processor, wherein the processor implements the sharing upgrade method of the internet of things terminal according to any one of claims 1 to 7 when executing the computer program.
10. A computer-readable storage medium storing a computer program, wherein the computer program, when executed by a processor, implements the method for upgrading sharing of internet of things terminals according to any one of claims 1 to 7.
CN202011423314.4A 2020-12-08 2020-12-08 Sharing upgrading method and device for Internet of things terminal, internet of things terminal and medium Active CN112653729B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011423314.4A CN112653729B (en) 2020-12-08 2020-12-08 Sharing upgrading method and device for Internet of things terminal, internet of things terminal and medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011423314.4A CN112653729B (en) 2020-12-08 2020-12-08 Sharing upgrading method and device for Internet of things terminal, internet of things terminal and medium

Publications (2)

Publication Number Publication Date
CN112653729A CN112653729A (en) 2021-04-13
CN112653729B true CN112653729B (en) 2022-12-02

Family

ID=75350400

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011423314.4A Active CN112653729B (en) 2020-12-08 2020-12-08 Sharing upgrading method and device for Internet of things terminal, internet of things terminal and medium

Country Status (1)

Country Link
CN (1) CN112653729B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113031978A (en) * 2021-04-14 2021-06-25 宝能(广州)汽车研究院有限公司 Vehicle-mounted system installation package downloading method, electronic equipment and storage medium
CN114143198B (en) * 2021-11-30 2023-06-13 四川启睿克科技有限公司 Firmware upgrading method

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107835501A (en) * 2017-10-31 2018-03-23 广州小鹏汽车科技有限公司 A kind of automobile method for upgrading software, apparatus and system
CN108241517A (en) * 2018-02-23 2018-07-03 武汉斗鱼网络科技有限公司 A kind of method for upgrading software, client and electronic equipment
CN108566381A (en) * 2018-03-19 2018-09-21 百度在线网络技术(北京)有限公司 A kind of security upgrading method, device, server, equipment and medium
CN109413009A (en) * 2017-08-18 2019-03-01 厦门雅迅网络股份有限公司 The method and computer readable storage medium of vehicle Firmware Over upgrading
CN110008757A (en) * 2019-04-09 2019-07-12 江南大学 Data guard method and system in a kind of internet-of-things terminal firmware update
CN110225124A (en) * 2019-06-13 2019-09-10 广州小鹏汽车科技有限公司 Vehicle data shares processing method, device, vehicle and medium
CN111104142A (en) * 2019-12-26 2020-05-05 珠海格力电器股份有限公司 Software upgrading method and device, electronic equipment and storage medium
CN111381858A (en) * 2018-12-29 2020-07-07 深圳Tcl新技术有限公司 Application program upgrading method, server and terminal equipment

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109413009A (en) * 2017-08-18 2019-03-01 厦门雅迅网络股份有限公司 The method and computer readable storage medium of vehicle Firmware Over upgrading
CN107835501A (en) * 2017-10-31 2018-03-23 广州小鹏汽车科技有限公司 A kind of automobile method for upgrading software, apparatus and system
CN108241517A (en) * 2018-02-23 2018-07-03 武汉斗鱼网络科技有限公司 A kind of method for upgrading software, client and electronic equipment
CN108566381A (en) * 2018-03-19 2018-09-21 百度在线网络技术(北京)有限公司 A kind of security upgrading method, device, server, equipment and medium
CN111381858A (en) * 2018-12-29 2020-07-07 深圳Tcl新技术有限公司 Application program upgrading method, server and terminal equipment
CN110008757A (en) * 2019-04-09 2019-07-12 江南大学 Data guard method and system in a kind of internet-of-things terminal firmware update
CN110225124A (en) * 2019-06-13 2019-09-10 广州小鹏汽车科技有限公司 Vehicle data shares processing method, device, vehicle and medium
CN111104142A (en) * 2019-12-26 2020-05-05 珠海格力电器股份有限公司 Software upgrading method and device, electronic equipment and storage medium

Also Published As

Publication number Publication date
CN112653729A (en) 2021-04-13

Similar Documents

Publication Publication Date Title
US11662991B2 (en) Vehicle-mounted device upgrade method and related device
US20220276855A1 (en) Method and apparatus for processing upgrade package of vehicle
CN107294729B (en) Communication method and device between different nodes in block chain
CN110929262A (en) Online upgrading method and system
CN112653729B (en) Sharing upgrading method and device for Internet of things terminal, internet of things terminal and medium
CN109862099B (en) Upgrade checking method, device, terminal and system
CN110621014A (en) Vehicle-mounted equipment, program upgrading method thereof and server
CN111699706A (en) Master-slave system for communication over bluetooth low energy connections
CN111953716B (en) Message communication method, system, computer device and storage medium
CN113885907A (en) Firmware upgrading system and method
CN111194033B (en) In-vehicle secure communication method, system and computer storage medium
CN116419217B (en) OTA data upgrading method, system, equipment and storage medium
CN115242413A (en) Internet of things equipment firmware safety upgrading method and device, electronic equipment and medium
CN114268614A (en) Equipment firmware upgrading method, device and system
JP2023519059A (en) Methods and systems for exchanging data over networks to enhance network security measures and vehicles including such systems
CN114286318B (en) OTA upgrade package transmission method based on one-machine-one-password
CN113452519B (en) Key synchronization method and device, computer equipment and storage medium
CN110830243B (en) Symmetric key distribution method, device, vehicle and storage medium
CN110881176B (en) Method for improving utilization rate of vehicle-to-X communication device and vehicle-to-X communication device
EP3200388B1 (en) User permission check system
CN114143198B (en) Firmware upgrading method
US20240119763A1 (en) In-vehicle communication system, data structure of reprogramming policy metadata, and data structure of download metadata
Wang et al. An OTA-oriented Protocol for Security Protection
CN115150145B (en) Crowd-sourced device communication method, device, computer device and storage medium
CN112287348B (en) Self-refreshing method and system of vehicle-mounted module

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant