TW202147099A - A device for internet of things, a server, and a software updating method - Google Patents
A device for internet of things, a server, and a software updating method Download PDFInfo
- Publication number
- TW202147099A TW202147099A TW109118518A TW109118518A TW202147099A TW 202147099 A TW202147099 A TW 202147099A TW 109118518 A TW109118518 A TW 109118518A TW 109118518 A TW109118518 A TW 109118518A TW 202147099 A TW202147099 A TW 202147099A
- Authority
- TW
- Taiwan
- Prior art keywords
- information
- software update
- server
- software
- neighboring
- Prior art date
Links
Images
Landscapes
- Information Transfer Between Computers (AREA)
- Stored Programmes (AREA)
Abstract
Description
本發明涉及通訊技術領域,尤其涉及一種物聯網設備、伺服器及軟體更新方法。The invention relates to the field of communication technologies, and in particular, to an Internet of Things device, a server and a software update method.
現有技術中,物聯網設備進行集中式軟體更新需要數量眾多的伺服器提供更新服務,然而構建如此多的伺服器增加了設置成本。另外,為了實現低耗能低成本,物聯網設備常常以mesh/tree形式進行物聯網設備間的連接,且物聯網設備並不是總與伺服器連接,因而物聯網設備與伺服器連線的能力與時間都受到限制,造成物聯網設備從伺服器中進行軟體更新的不便。In the prior art, centralized software updates for IoT devices require a large number of servers to provide update services, but building such a large number of servers increases setup costs. In addition, in order to achieve low energy consumption and low cost, IoT devices are often connected between IoT devices in the form of mesh/tree, and IoT devices are not always connected to servers, so the ability of IoT devices to connect to servers Both time and time are limited, which makes it inconvenient for IoT devices to update software from the server.
鑒於以上內容,有必要提供一種物聯網設備、伺服器及軟體更新方法,以提高物聯網設備進行軟體更新的便利性,減少伺服器的負載,以及提高軟體更新的安全性。In view of the above, it is necessary to provide an IoT device, a server and a software update method, so as to improve the convenience of software update for the IoT device, reduce the load of the server, and improve the security of software update.
本發明第一方面提供一種物聯網設備,包括處理單元,所述處理單元用於:A first aspect of the present invention provides an Internet of Things device, comprising a processing unit configured to:
藉由廣播搜尋所述物聯網設備周邊的鄰近設備的設備資訊;Searching for device information of neighboring devices around the IoT device by broadcasting;
獲取所述物聯網設備的設備資訊,並根據所述物聯網設備的設備資訊及所述鄰近設備的設備資訊藉由第一加密方式進行加密,並將加密後的所述物聯網設備的設備資訊及所述鄰近設備的設備資訊發送給伺服器;Obtain the device information of the IoT device, encrypt the device information of the IoT device by a first encryption method according to the device information of the IoT device and the device information of the neighboring device, and encrypt the encrypted device information of the IoT device and the device information of said neighboring device to the server;
解密所述伺服器發送的控制資訊,並判斷解密出的控制資訊是所述鄰近設備的公開金鑰及軟體更新資訊,還是所述伺服器中存放軟體的位址資訊及軟體更新資訊;Decrypt the control information sent by the server, and determine whether the decrypted control information is the public key and software update information of the adjacent device, or the address information and software update information of the software stored in the server;
當解密出的控制資訊是所述鄰近設備的公開金鑰及軟體更新資訊時,將所述軟體更新資訊以所述鄰近設備的公開金鑰進行加密後發送給所述鄰近設備,並從所述鄰近設備中下載與所述軟體更新資訊對應的軟體;及When the decrypted control information is the public key of the adjacent device and the software update information, encrypt the software update information with the public key of the adjacent device and send it to the adjacent device, and send the software update information from the adjacent device to the adjacent device. download the software corresponding to the software update information in the adjacent device; and
當解密出的控制資訊是所述伺服器中存放軟體的位址資訊及軟體更新資訊時,根據所述位址資訊及軟體更新資訊從所述伺服器中下載與所述軟體更新資訊對應的軟體。When the decrypted control information is the address information and software update information of the software stored in the server, download the software corresponding to the software update information from the server according to the address information and software update information .
本發明第二方面提供一種伺服器,包括處理單元,所述處理單元用於:A second aspect of the present invention provides a server, comprising a processing unit configured to:
接收物聯網設備發送的所述物聯網設備的設備資訊及鄰近設備的設備資訊,根據所述鄰近設備的設備資訊判斷所述鄰近設備是否為合法設備;Receive the device information of the IoT device and the device information of the neighboring device sent by the IoT device, and determine whether the neighboring device is a legitimate device according to the device information of the neighboring device;
當所述鄰近設備為合法設備時,根據所述鄰近設備的軟體版本及服務狀態判斷所述鄰近設備是否具有提供軟體更新功能的能力;When the neighboring device is a legitimate device, determine whether the neighboring device has the ability to provide a software update function according to the software version and service status of the neighboring device;
當確定所述鄰近設備具有提供軟體更新功能的能力時將所述鄰近設備的公開金鑰及所述軟體更新資訊藉由第二加密方式發送給所述物聯網設備;When it is determined that the adjacent device has the ability to provide a software update function, the public key of the adjacent device and the software update information are sent to the Internet of Things device by a second encryption method;
當確定所述鄰近設備為非法設備時或當確定所述鄰近設備不具有提供軟體更新功能的能力時,將所述伺服器中存放軟體的位址資訊及軟體更新資訊藉由第二加密方式發送給所述物聯網設備。When it is determined that the adjacent device is an illegal device or when it is determined that the adjacent device does not have the ability to provide a software update function, send the address information of the software stored in the server and the software update information by a second encryption method to the IoT device.
本發明協力廠商面提供一種軟體更新方法,應用在物聯網設備中,所述方法包括:The third party aspect of the present invention provides a software update method, which is applied in an Internet of Things device, and the method includes:
藉由廣播搜尋所述物聯網設備周邊的鄰近設備的設備資訊;Searching for device information of neighboring devices around the IoT device by broadcasting;
獲取所述物聯網設備的設備資訊,並根據所述物聯網設備的設備資訊及所述鄰近設備的設備資訊藉由第一加密方式進行加密,並將加密後的所述物聯網設備的設備資訊及所述鄰近設備的設備資訊發送給伺服器;Obtain the device information of the IoT device, encrypt the device information of the IoT device by a first encryption method according to the device information of the IoT device and the device information of the neighboring device, and encrypt the encrypted device information of the IoT device and the device information of said neighboring device to the server;
解密所述伺服器發送的控制資訊,並判斷解密出的控制資訊是所述鄰近設備的公開金鑰及軟體更新資訊,還是所述伺服器中存放軟體的位址資訊及軟體更新資訊;Decrypt the control information sent by the server, and determine whether the decrypted control information is the public key and software update information of the adjacent device, or the address information and software update information of the software stored in the server;
當解密出的控制資訊是所述鄰近設備的公開金鑰及軟體更新資訊時,將所述軟體更新資訊以所述鄰近設備的公開金鑰進行加密後發送給所述鄰近設備,並從所述鄰近設備中下載與所述軟體更新資訊對應的軟體;及When the decrypted control information is the public key of the adjacent device and the software update information, encrypt the software update information with the public key of the adjacent device and send it to the adjacent device, and send the software update information from the adjacent device to the adjacent device. download the software corresponding to the software update information in the adjacent device; and
當解密出的控制資訊是所述伺服器中存放軟體的位址資訊及軟體更新資訊時,根據所述位址資訊及軟體更新資訊從所述伺服器中下載與所述軟體更新資訊對應的軟體。When the decrypted control information is the address information and software update information of the software stored in the server, download the software corresponding to the software update information from the server according to the address information and software update information .
本發明第四方面提供一種軟體更新方法,應用在伺服器中,其特徵在於,所述方法包括:A fourth aspect of the present invention provides a software update method, which is applied in a server, wherein the method includes:
接收物聯網設備發送的所述物聯網設備的設備資訊及鄰近設備的設備資訊,根據所述鄰近設備的設備資訊判斷所述鄰近設備是否為合法設備;Receive the device information of the IoT device and the device information of the neighboring device sent by the IoT device, and determine whether the neighboring device is a legitimate device according to the device information of the neighboring device;
當所述鄰近設備為合法設備時,根據所述鄰近設備的軟體版本及服務狀態判斷所述鄰近設備是否具有提供軟體更新功能的能力;When the neighboring device is a legitimate device, determine whether the neighboring device has the ability to provide a software update function according to the software version and service status of the neighboring device;
當確定所述鄰近設備具有提供軟體更新功能的能力時將所述鄰近設備的公開金鑰及所述軟體更新資訊藉由第二加密方式發送給所述物聯網設備;When it is determined that the adjacent device has the ability to provide a software update function, the public key of the adjacent device and the software update information are sent to the Internet of Things device by a second encryption method;
當確定所述鄰近設備為非法設備時或當確定所述鄰近設備不具有提供軟體更新功能的能力時,將所述伺服器中存放軟體的位址資訊及軟體更新資訊藉由第二加密方式發送給所述物聯網設備。When it is determined that the adjacent device is an illegal device or when it is determined that the adjacent device does not have the ability to provide a software update function, send the address information of the software stored in the server and the software update information by a second encryption method to the IoT device.
本發明第五方面提供一種軟體更新方法,應用在鄰近設備中,所述方法包括:A fifth aspect of the present invention provides a software update method, which is applied in a neighboring device, and the method includes:
接收物聯網設備發送的藉由鄰近設備的公開金鑰進行加密的軟體更新資訊,並藉由所述鄰近設備的私密金鑰解密得到所述軟體更新資訊;Receive the software update information encrypted by the public key of the adjacent device sent by the Internet of Things device, and decrypt the software update information by the private key of the adjacent device to obtain the software update information;
判斷所述軟體更新資訊是否正確;Determine whether the software update information is correct;
當所述軟體更新資訊正確時將與所述軟體更新資訊對應的軟體發送給所述物聯網設備。When the software update information is correct, the software corresponding to the software update information is sent to the Internet of Things device.
相較於現有技術,所述物聯網設備、伺服器及軟體更新方法,可提高物聯網設備進行軟體更新的便利性,減少伺服器的負載,以及提高軟體更新的安全性。Compared with the prior art, the IoT device, the server and the software update method can improve the convenience of the IoT device to update the software, reduce the load of the server, and improve the security of the software update.
為了能夠更清楚地理解本發明的上述目的、特徵和優點,下面結合附圖和具體實施例對本發明進行詳細描述。需要說明的是,在不衝突的情況下,本發明的實施例及實施例中的特徵可以相互組合。In order to more clearly understand the above objects, features and advantages of the present invention, the present invention will be described in detail below with reference to the accompanying drawings and specific embodiments. It should be noted that the embodiments of the present invention and the features in the embodiments may be combined with each other under the condition of no conflict.
在下面的描述中闡述了很多具體細節以便於充分理解本發明,所描述的實施例僅僅是本發明一部分實施例,而不是全部的實施例。基於本發明中的實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其他實施例,都屬於本發明保護的範圍。In the following description, many specific details are set forth in order to facilitate a full understanding of the present invention, and the described embodiments are only some, but not all, embodiments of the present invention. Based on the embodiments of the present invention, all other embodiments obtained by those of ordinary skill in the art without creative efforts shall fall within the protection scope of the present invention.
除非另有定義,本文所使用的所有的技術和科學術語與屬於本發明的技術領域的技術人員通常理解的含義相同。本文中在本發明的說明書中所使用的術語只是為了描述具體的實施例的目的,不是旨在於限制本發明。Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. The terms used herein in the description of the present invention are for the purpose of describing specific embodiments only, and are not intended to limit the present invention.
參閱圖1所示,為本發明較佳實施例提供的物聯網設備軟體更新系統的架構圖。Referring to FIG. 1 , it is a structural diagram of a software updating system for an Internet of Things device provided by a preferred embodiment of the present invention.
本實施例中,物聯網設備軟體更新系統110包括作為軟體更新請求方的物聯網設備1、作為軟體更新控制方的伺服器2,以及作為軟體更新提供方的鄰近設備3。本實施例中,作為軟體更新控制方的伺服器2用於控制作為軟體更新請求方的物聯網設備1從所述物聯網設備1周邊相鄰的鄰近設備3下載軟體進行更新。In this embodiment, the IoT device
本實施例中,所述物聯網設備1、鄰近設備3可以為個人電腦、手機、平板電腦、家用電話、家用電視、家用冰箱等終端設備。需要說明的是,所述鄰近設備3是指與物聯網設備1藉由實體傳輸介質連接成同一個廣播區域的設備。本實施例中,所述伺服器2可以是單一的伺服器,伺服器集群或雲端伺服器。In this embodiment, the IoT
本實施例中,所述物聯網設備1包括互相之間電氣連接的第一記憶體11、至少一個第一處理器12、一個第一通訊單元13。所述鄰近設備3包括互相之間電氣連接的第二記憶體31、至少一個第二處理器32、一個第二通訊單元33。所述物聯網設備1與所述鄰近設備3藉由所述第一通訊單元13、第三通訊單元33通訊連接。本實施例中,所述第一通訊單元13、第三通訊單元33可以為有線通訊模組,例如電纜等。在其他實施例中,所述第一通訊單元13、第三通訊單元33可以為無線通訊模組,例如WiFi通訊模組,4G\5G通訊模組等。本實施例中,所述伺服器2包括互相之間電氣連接的第三記憶體31、至少一個第三處理器22。本實施例中,所述物聯網設備1與所述伺服器2藉由網路4通訊連接。本實施例中,用於支援物聯網設備1與伺服器2進行通訊的網路4可以是有線網路,也可以是無線網路,例如無線電、無線保真(Wireless Fidelity, WIFI)、蜂窩、衛星、廣播等。In this embodiment, the
本領域技術人員應該瞭解,圖1示出的物聯網設備1、伺服器2、鄰近設備3的結構並不構成本發明實施例的限定,所述物聯網設備1、伺服器2、鄰近設備3可以包括比圖1更多或更少的其他硬體或者軟體,或者不同的部件佈置。Those skilled in the art should understand that the structures of the
需要說明的是,所述物聯網設備1、伺服器2和鄰近設備3僅為舉例,其他現有的或今後可能出現的物聯網設備1、伺服器2和鄰近設備3如可適應於本發明,也應包含在本發明的保護範圍以內,並以引用方式包含於此。It should be noted that the
在一些實施例中,所述第一記憶體11、第二記憶體31和第三記憶體21可以用於存儲電腦程式的程式碼和各種資料。例如,所述第一記憶體11可以用於存儲安裝在所述物聯網設備1中的物聯網設備軟體更新系統110,並在物聯網設備1的運行過程中實現高速、自動地完成程式或資料的存取。所述第三記憶體21可以用於存儲安裝在所述伺服器2中的軟體更新控制系統210,並在所述伺服器2的運行過程中實現高速、自動地完成程式或資料的存取。所述第二記憶體31可以用於存儲安裝在所述鄰近設備3中的軟體更新回應系統310,並在所述鄰近設備3的運行過程中實現高速、自動地完成程式或資料的存取。需要說明的是,所述物聯網設備軟體更新系統110、軟體更新控制系統210和軟體更新回應系統310也可以整合為一個系統。In some embodiments, the
本實施例中,所述第一記憶體11、第二記憶體31、第三記憶體21可以分別是包括唯讀記憶體(Read-Only Memory,ROM)、可程式設計唯讀記憶體(Programmable Read-Only Memory,PROM)、可擦除可程式設計唯讀記憶體(Erasable Programmable Read-Only Memory,EPROM)、一次可程式設計唯讀記憶體(One-time Programmable Read-Only Memory,OTPROM)、電子擦除式可複寫唯讀記憶體(Electrically-Erasable Programmable Read-Only Memory,EEPROM)、唯讀光碟(Compact Disc Read-Only Memory,CD-ROM)或其他光碟記憶體、磁碟記憶體、磁帶記憶體、或者任何其他能夠用於攜帶或存儲資料的非易失性的電腦可讀的存儲介質。In this embodiment, the
在一些實施例中,所述第一處理器12、第二處理器32和第三處理器22可以分別由積體電路組成。例如,可以分別由單個封裝的積體電路所組成,也可以是分別由複數相同功能或不同功能封裝的積體電路所組成,包括一個或者複數中央處理器(Central Processing unit,CPU)、微處理器、數文書處理晶片、圖形處理器及各種控制晶片的組合等。In some embodiments, the
所述第一處理器12是所述物聯網設備1的控制核心(Control Unit),利用各種介面和線路連接整個物聯網設備1的各個部件,藉由執行存儲在所述第一記憶體11內的程式或者模組或者指令,以及調用存儲在所述第一記憶體11內的資料,以執行物聯網設備1的各種功能和處理資料,例如,執行軟體更新的功能。The
所述第三處理器22是所述伺服器2的控制核心(Control Unit),利用各種介面和線路連接整個伺服器2的各個部件,藉由執行存儲在所述第三記憶體21內的程式或者模組或者指令,以及調用存儲在所述第三記憶體21內的資料,以執行伺服器2的各種功能和處理資料,例如,執行軟體更新控制的功能的部分。The
所述第二處理器32是所述鄰近設備3的控制核心(Control Unit),利用各種介面和線路連接整個鄰近設備3的各個部件,藉由執行存儲在所述第二記憶體31內的程式或者模組或者指令,以及調用存儲在所述第二記憶體31內的資料,以執行鄰近設備3的各種功能和處理資料,例如,執行軟體更新回應的功能的部分。The
在本實施例中,物聯網設備軟體更新系統110可以包括一個或複數模組,所述一個或複數模組存儲在所述第一記憶體11中,並由至少一個或複數處理器(本實施例為第一處理器12)執行,以實現軟體更新的功能的部分。在本實施例中,所述物聯網設備軟體更新系統110根據其所執行的功能,可以被劃分為複數模組。參閱圖2所示,所述物聯網設備軟體更新系統110包括搜尋模組1101、請求模組1102、解密模組1103、軟體更新模組1104。本發明所稱的模組是指一種能夠被至少一個處理器(例如第一處理器12)所執行並且能夠完成固定功能的一系列電腦可讀的指令段,其存儲在記憶體(例如第一記憶體11)中。In this embodiment, the IoT device
本實施例中,以軟體功能模組的形式實現的集成的單元,可以存儲在一個非易失性可讀取存儲介質中。上述軟體功能模組包括一個或複數電腦可讀指令,所述第一處理器12藉由執行所述一個或複數電腦可讀指令實現本發明各個實施例的方法的部分。在進一步的實施例中,所述第一記憶體11中存儲有電腦程式的程式碼,且所述至少一個第一處理器12可調用所述第一記憶體11中存儲的程式碼以執行相關的功能。例如,圖2中所述物聯網設備軟體更新系統110的各個模組是存儲在所述第一記憶體11中的程式碼,並由所述至少一個第一處理器12所執行,從而實現所述各個模組的功能以達到軟體更新的目的。In this embodiment, the integrated unit implemented in the form of a software function module may be stored in a non-volatile readable storage medium. The above-mentioned software function module includes one or more computer-readable instructions, and the
本實施例中,所述搜尋模組1101藉由廣播搜尋所述物聯網設備1周邊的鄰近設備3的設備資訊。In this embodiment, the
本實施例中,所述鄰近設備3的設備資訊至少包括鄰近設備3的識別碼、軟體版本及服務狀態,其中所述服務狀態是指是否提供軟體更新功能的狀態,所述服務狀態包括提供軟體更新功能的狀態和不提供軟體更新功能的狀態。In this embodiment, the device information of the
所述請求模組1102獲取所述物聯網設備1的設備資訊,並根據所述物聯網設備1的設備資訊及所述鄰近設備3的設備資訊藉由第一加密方式進行加密,並將加密後的所述物聯網設備1的設備資訊及所述鄰近設備3的設備資訊發送給伺服器2。本實施例中,所述物聯網設備1的設備資訊至少包括物聯網設備1的識別碼。The requesting
本實施例中,所述請求模組1102根據所述伺服器2的公開金鑰對所述物聯網設備1的設備資訊及所述鄰近設備3的設備資訊進行加密,並將加密後的所述物聯網設備1的設備資訊及所述鄰近設備3的設備資訊發送給伺服器2。所述伺服器2根據所述鄰近設備3的設備資訊判斷所述鄰近設備3是否具有可以提供軟體更新功能的能力,並根據所述判斷結果生成控制資訊給所述物聯網設備1。本實施例中,當所述伺服器2判斷所述鄰近設備3具有提供軟體更新功能的能力時生成包含鄰近設備3的公開金鑰及軟體更新資訊的控制資訊,並將所述控制資訊發送給所述物聯網設備1。當所述伺服器2判斷所述鄰近設備3不具有提供軟體更新功能的能力時生成包含所述伺服器2中存放軟體的位址資訊及軟體更新資訊的控制資訊,並將所述控制資訊發送給所述物聯網設備1。In this embodiment, the
所述解密模組1103解密所述伺服器2發送的控制資訊,並判斷解密出的控制資訊是所述鄰近設備3的公開金鑰及軟體更新資訊,還是所述伺服器2中存放軟體的位址資訊及軟體更新資訊。本實施例中,所述解密模組1103根據所述伺服器2的私密金鑰解密所述伺服器2發送的控制資訊。The
當解密出的控制資訊是所述鄰近設備3的公開金鑰及軟體更新資訊時,所述軟體更新模組1104將所述軟體更新資訊以所述鄰近設備3的公開金鑰進行加密後發送給所述鄰近設備3,並從所述鄰近設備3中下載與所述軟體更新資訊對應的軟體。When the decrypted control information is the public key of the
當解密出的控制資訊是所述伺服器2中存放軟體的位址資訊及軟體更新資訊時,所述軟體更新模組1104根據所述位址資訊及軟體更新資訊從所述伺服器2中下載與所述軟體更新資訊對應的軟體。When the decrypted control information is the address information and software update information of the software stored in the
在本實施例中,軟體更新控制系統210可以包括一個或複數模組,所述一個或複數模組存儲在所述第二記憶體31中,並由至少一個或複數處理器(本實施例為第二處理器32)執行,以實現軟體更新控制的功能。In this embodiment, the software
在本實施例中,所述軟體更新控制系統210根據其所執行的功能,可以被劃分為複數模組。參閱圖3所示,所述軟體更新控制系統210包括第一接收模組2101、控制模組2102。本發明所稱的模組是指一種能夠被伺服器2的第三處理器22所執行並且能夠完成固定功能的一系列電腦可讀的指令段,其存儲在伺服器2的第三記憶體21中。In this embodiment, the software
在本實施例中,所述軟體更新控制系統210根據其所執行的功能,可以被劃分為複數模組。參閱圖3所示,所述軟體更新控制系統210包括第一接收模組2101、控制模組2102。本發明所稱的模組是指一種能夠被伺服器2的第三處理器22所執行並且能夠完成固定功能的一系列電腦可讀的指令段,其存儲在伺服器2的第三記憶體21中。In this embodiment, the software
在本實施例中,所述第一接收模組2101接收所述物聯網設備1發送的所述物聯網設備1的設備資訊及所述鄰近設備3的設備資訊,根據所述鄰近設備3的設備資訊判斷所述鄰近設備3是否為合法設備。In this embodiment, the
本實施方式中,所述第一接收模組2101根據所述鄰近設備3的設備資訊判斷所述鄰近設備3是否在伺服器2中登記過,當所述鄰近設備3在所述伺服器2中登記過則確定所述鄰近設備3為合法設備,當所述鄰近設備3沒有在所述伺服器2中登記過則確定所述鄰近設備3為非法設備。In this embodiment, the
當所述鄰近設備3為合法設備時,所述控制模組2102根據所述鄰近設備3的軟體版本及服務狀態判斷所述鄰近設備3是否具有提供軟體更新功能的能力,並當確定所述鄰近設備3具有提供軟體更新功能的能力時將所述鄰近設備3的公開金鑰及軟體更新資訊藉由第二加密方式發送給所述物聯網設備1。在具體實施例中,所述控制模組2102當確定所述鄰近設備3具有提供軟體更新功能的能力時將所述鄰近設備3的公開金鑰及軟體更新資訊藉由伺服器2的公開金鑰進行加密後發送給所述物聯網設備1。When the
當確定所述鄰近設備3為非法設備時或當確定所述鄰近設備3不具有提供軟體更新功能的能力時,所述控制模組2102將所述伺服器2中存放軟體的位址資訊及軟體更新資訊藉由第二加密方式發送給所述物聯網設備1。When it is determined that the
在本實施例中,所述軟體更新回應系統310根據其所執行的功能,可以被劃分為複數模組。參閱圖4所示,所述軟體更新回應系統310包括第二接收模組3101、判斷模組3102、回應模組3103。本發明所稱的模組是指一種能夠被鄰近設備3的第二處理器32所執行並且能夠完成固定功能的一系列電腦可讀的指令段,其存儲在鄰近設備3的的第二記憶體31中。In this embodiment, the software
本實施方式中,所述第二接收模組3101接收物聯網設備1發送的藉由鄰近設備3的公開金鑰進行加密的軟體更新資訊,並藉由鄰近設備3的私密金鑰解密得到所述軟體更新資訊。In this embodiment, the
所述判斷模組3102判斷所述軟體更新資訊是否正確。The determining
所述回應模組3103用於在所述軟體更新資訊正確時將與軟體更新資訊對應的軟體發送給所述物聯網設備1。The
圖5是本發明一實施例提供的軟體更新方法的流程圖。所述方法應用在物聯網設備1中。如圖5所示,所述軟體更新方法具體包括以下步驟,根據不同的需求,該流程圖中步驟的順序可以改變,某些步驟可以省略。FIG. 5 is a flowchart of a software update method provided by an embodiment of the present invention. The method is applied in the
步驟S501、藉由廣播搜尋物聯網設備1周邊的鄰近設備3的設備資訊。Step S501 , searching for device information of
本實施例中,所述鄰近設備3的設備資訊至少包括鄰近設備3的識別碼、軟體版本及服務狀態,其中所述服務狀態是指是否提供軟體更新功能的狀態,所述服務狀態包括提供軟體更新功能的狀態和不提供軟體更新功能的狀態。In this embodiment, the device information of the
步驟S502、獲取所述物聯網設備1的設備資訊,並根據所述物聯網設備1的設備資訊及所述鄰近設備3的設備資訊藉由第一加密方式進行加密,並將加密後的所述物聯網設備1的設備資訊及所述鄰近設備3的設備資訊發送給伺服器2。Step S502: Acquire the device information of the Internet of
本實施例中,所述物聯網設備1的設備資訊至少包括物聯網設備1的識別碼。本實施例中,所述物聯網設備1根據所述伺服器2的公開金鑰對所述物聯網設備1的設備資訊及所述鄰近設備3的設備資訊進行加密,並將加密後的所述物聯網設備1的設備資訊及所述鄰近設備3的設備資訊發送給伺服器2。所述伺服器2根據所述鄰近設備3的設備資訊判斷所述鄰近設備3是否具有可以提供軟體更新功能的能力,並根據所述判斷結果生成控制資訊給所述物聯網設備1。本實施例中,當所述伺服器2判斷所述鄰近設備3具有提供軟體更新功能的能力時生成包含鄰近設備3的公開金鑰及軟體更新資訊的控制資訊,並將所述控制資訊發送給所述物聯網設備1。當所述伺服器2判斷所述鄰近設備3不具有提供軟體更新功能的能力時生成包含所述伺服器2中存放軟體的位址資訊及軟體更新資訊的控制資訊,並將所述控制資訊發送給所述物聯網設備1。In this embodiment, the device information of the
步驟S503、解密伺服器2發送的控制資訊,並判斷解密出的控制資訊是所述鄰近設備3的公開金鑰及軟體更新資訊,還是所述伺服器2中存放軟體的位址資訊及軟體更新資訊。Step S503, decrypt the control information sent by the
步驟S504、當解密出的控制資訊是所述鄰近設備3的公開金鑰及軟體更新資訊時,將所述軟體更新資訊以所述鄰近設備3的公開金鑰進行加密後發送給所述鄰近設備3,並從所述鄰近設備3中下載與所述軟體更新資訊對應的軟體。Step S504, when the decrypted control information is the public key and software update information of the
步驟S505、當解密出的控制資訊是所述伺服器2中存放軟體的位址資訊及軟體更新資訊時,根據所述位址資訊及軟體更新資訊從所述伺服器2中下載與所述軟體更新資訊對應的軟體。Step S505, when the decrypted control information is the address information and software update information of the software stored in the
圖6是本發明一實施例提供的軟體更新方法的流程圖。所述方法應用在伺服器2中。如圖6所示,所述軟體更新方法具體包括以下步驟,根據不同的需求,該流程圖中步驟的順序可以改變,某些步驟可以省略。FIG. 6 is a flowchart of a software update method provided by an embodiment of the present invention. The method is applied in the
步驟S601、接收物聯網設備1發送的所述物聯網設備1的設備資訊及鄰近設備3的設備資訊,根據所述鄰近設備3的設備資訊判斷所述鄰近設備3是否為合法設備。Step S601 , receiving the device information of the
本實施方式中,所述伺服器2根據所述鄰近設備3的設備資訊判斷所述鄰近設備3是否在伺服器2中登記過,當所述鄰近設備3在所述伺服器2中登記過則確定所述鄰近設備3為合法設備,當所述鄰近設備3沒有在所述伺服器2中登記過則確定所述鄰近設備3為非法設備。In this embodiment, the
步驟S602、當所述鄰近設備3為合法設備時,根據所述鄰近設備3的軟體版本及服務狀態判斷所述鄰近設備3是否具有提供軟體更新功能的能力。Step S602 , when the neighboring
步驟S603、當確定所述鄰近設備3具有提供軟體更新功能的能力時將所述鄰近設備3的公開金鑰及軟體更新資訊藉由第二加密方式發送給所述物聯網設備1。Step S603 , when it is determined that the neighboring
在具體實施例中,所述伺服器2當確定所述鄰近設備3具有提供軟體更新功能的能力時將所述鄰近設備3的公開金鑰及軟體更新資訊藉由伺服器2的公開金鑰進行加密後發送給所述物聯網設備1。In a specific embodiment, when the
步驟S604、當確定所述鄰近設備3為非法設備時或當確定所述鄰近設備3不具有提供軟體更新功能的能力時,將所述伺服器2中存放軟體的位址資訊及軟體更新資訊藉由第二加密方式發送給所述物聯網設備1。Step S604, when it is determined that the
圖7是本發明一實施例提供的軟體更新方法的流程圖。所述方法應用在鄰近設備3中。如圖7所示,所述軟體更新方法具體包括以下步驟,根據不同的需求,該流程圖中步驟的順序可以改變,某些步驟可以省略。FIG. 7 is a flowchart of a software update method provided by an embodiment of the present invention. The method is applied in the
步驟S701、鄰近設備3接收物聯網設備1發送的藉由鄰近設備3的公開金鑰進行加密的軟體更新資訊,並藉由鄰近設備3的私密金鑰解密得到所述軟體更新資訊。Step S701 , the neighboring
步驟S702、判斷所述軟體更新資訊是否正確。Step S702, judging whether the software update information is correct.
步驟S703、當所述軟體更新資訊正確時將與軟體更新資訊對應的軟體發送給所述物聯網設備1。Step S703 , when the software update information is correct, send the software corresponding to the software update information to the Internet of
在本發明所提供的幾個實施例中,應該理解到,所揭露的裝置和方法,可以藉由其它的方式實現。例如,以上所描述的裝置實施例僅僅是示意性的,例如,所述模組的劃分,僅僅為一種邏輯功能劃分,實際實現時可以有另外的劃分方式。In the several embodiments provided by the present invention, it should be understood that the disclosed apparatus and method may be implemented in other manners. For example, the device embodiments described above are only illustrative. For example, the division of the modules is only a logical function division, and other division methods may be used in actual implementation.
所述作為分離部件說明的模組可以是或者也可以不是物理上分開的,作為模組顯示的部件可以是或者也可以不是物理單元,即可以位於一個地方,或者也可以分佈到複數網路單元上。可以根據實際的需要選擇其中的部分或者全部模組來實現本實施例方案的目的。The modules described as separate components may or may not be physically separated, and the components displayed as modules may or may not be physical units, that is, they may be located in one place, or may be distributed to multiple network units. superior. Some or all of the modules may be selected according to actual needs to achieve the purpose of the solution in this embodiment.
另外,在本發明各個實施例中的各功能模組可以集成在一個處理單元中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個單元中。上述集成的單元既可以採用硬體的形式實現,也可以採用硬體加軟體功能模組的形式實現。In addition, each functional module in each embodiment of the present invention may be integrated into one processing unit, or each unit may exist physically alone, or two or more units may be integrated into one unit. The above-mentioned integrated units can be implemented in the form of hardware, or can be implemented in the form of hardware plus software function modules.
對於本領域技術人員而言,顯然本發明不限於上述示範性實施例的細節,而且在不背離本發明的精神或基本特徵的情況下,能夠以其他的具體形式實現本發明。因此,無論從哪一點來看,均應將實施例看作是示範性的,而且是非限制性的,本發明的範圍由所附權利要求而不是上述說明限定,因此旨在將落在權利要求的等同要件的含義和範圍內的所有變化涵括在本發明內。不應將權利要求中的任何附圖標記視為限制所涉及的權利要求。此外,顯然“包括”一詞不排除其他單元或,單數不排除複數。裝置權利要求中陳述的複數單元或裝置也可以由一個單元或裝置藉由軟體或者硬體來實現。第一,第二等詞語用來表示名稱,而並不表示任何特定的順序。It will be apparent to those skilled in the art that the present invention is not limited to the details of the above-described exemplary embodiments, but that the present invention may be embodied in other specific forms without departing from the spirit or essential characteristics of the invention. Therefore, the embodiments are to be regarded in all respects as illustrative and not restrictive, and the scope of the invention is to be defined by the appended claims rather than the foregoing description, which are therefore intended to fall within the scope of the claims. All changes within the meaning and range of the equivalents of , are included in the present invention. Any reference signs in the claims shall not be construed as limiting the involved claim. Furthermore, it is clear that the word "comprising" does not exclude other units or, and the singular does not exclude the plural. The plural units or means recited in the device claims can also be realized by one unit or means by means of software or hardware. The terms first, second, etc. are used to denote names and do not denote any particular order.
綜上所述,本發明符合發明專利要件,爰依法提出專利申請。惟,以上所述僅為本發明之較佳實施方式,舉凡熟悉本案技藝之人士,在援依本案創作精神所作之等效修飾或變化,皆應包含於以下之申請專利範圍內。To sum up, the present invention complies with the requirements of an invention patent, and a patent application can be filed in accordance with the law. However, the above descriptions are only the preferred embodiments of the present invention, and for those who are familiar with the techniques of this case, equivalent modifications or changes made in accordance with the creative spirit of this case shall be included in the scope of the following patent application.
110:物聯網設備軟體更新系統 1:物聯網設備 2:伺服器 3:鄰近設備 11:第一記憶體 12:第一處理器 13:第一通訊單元 31:第二記憶體 32:第二處理器 33:第二通訊單元 21:第三記憶體 22:第三處理器 4:網路 210:軟體更新控制系統 310:軟體更新回應系統 1101:搜尋模組 1102:請求模組 1103:解密模組 1104:軟體更新模組 2101:第一接收模組 2102:控制模組 3101:第二接收模組 3102:判斷模組 3103:回應模組 S501~S505:步驟 S601~S604:步驟 S701~S703:步驟110: IoT device software update system 1: IoT Devices 2: Server 3: Nearby devices 11: The first memory 12: The first processor 13: The first communication unit 31: Second memory 32: Second processor 33: Second communication unit 21: Third memory 22: Third processor 4: Internet 210: Software Update Control System 310: Software Update Response System 1101: Search Module 1102: Request Module 1103: Decryption module 1104: Software Update Module 2101: The first receiving module 2102: Control Module 3101: Second receiving module 3102: Judgment Module 3103: Response module S501~S505: Steps S601~S604: Steps S701~S703: Steps
圖1是本發明較佳實施例的物聯網設備軟體更新系統的架構圖。 圖2是本發明較佳實施例的物聯網設備軟體更新系統的功能模組圖。 圖3是本發明較佳實施例的軟體更新控制系統的功能模組圖。 圖4是本發明較佳實施例的軟體更新回應系統的功能模組圖。 圖5是本發明一實施例的軟體更新方法的流程圖。 圖6是本發明另一實施例的軟體更新方法的流程圖。 圖7是本發明另一實施例的軟體更新方法的流程圖。FIG. 1 is a structural diagram of a software updating system for an Internet of Things device according to a preferred embodiment of the present invention. FIG. 2 is a functional module diagram of an IoT device software update system according to a preferred embodiment of the present invention. FIG. 3 is a functional module diagram of a software update control system according to a preferred embodiment of the present invention. FIG. 4 is a functional module diagram of a software update response system according to a preferred embodiment of the present invention. FIG. 5 is a flowchart of a software update method according to an embodiment of the present invention. FIG. 6 is a flowchart of a software update method according to another embodiment of the present invention. FIG. 7 is a flowchart of a software update method according to another embodiment of the present invention.
S501~S505:步驟S501~S505: Steps
Claims (10)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW109118518A TWI754950B (en) | 2020-06-02 | 2020-06-02 | A device for internet of things, a server, and a software updating method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW109118518A TWI754950B (en) | 2020-06-02 | 2020-06-02 | A device for internet of things, a server, and a software updating method |
Publications (2)
Publication Number | Publication Date |
---|---|
TW202147099A true TW202147099A (en) | 2021-12-16 |
TWI754950B TWI754950B (en) | 2022-02-11 |
Family
ID=80784004
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW109118518A TWI754950B (en) | 2020-06-02 | 2020-06-02 | A device for internet of things, a server, and a software updating method |
Country Status (1)
Country | Link |
---|---|
TW (1) | TWI754950B (en) |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10362011B2 (en) * | 2015-07-12 | 2019-07-23 | Qualcomm Incorporated | Network security architecture |
US10091649B2 (en) * | 2015-07-12 | 2018-10-02 | Qualcomm Incorporated | Network architecture and security with encrypted client device contexts |
US10764333B2 (en) * | 2015-11-30 | 2020-09-01 | Yeshong, Llc | Hardware agnostic platform for transparent access control of Internet of Everything (IoE) destinations via correlation, classification, and/or tagging |
US20180048987A1 (en) * | 2016-08-15 | 2018-02-15 | Qualcomm Incorporated | Updating firmware and/or performing a diagnostic check on an internet of things device while providing wireless power via a magnetic coupling and supporting a two-way wireless power exchange capability at a device |
CN108810884B (en) * | 2017-05-06 | 2020-05-08 | 华为技术有限公司 | Key configuration method, device and system |
CN109936547A (en) * | 2017-12-18 | 2019-06-25 | 阿里巴巴集团控股有限公司 | Identity identifying method, system and calculating equipment |
CN110099427A (en) * | 2018-01-31 | 2019-08-06 | 阿里巴巴集团控股有限公司 | A kind of method and system to distribution net equipment access network hotspot equipment |
CA3098344A1 (en) * | 2018-04-24 | 2019-10-31 | Spectrum Brands, Inc. | Certificate provisioning for electronic lock authentication to a server |
TWI673622B (en) * | 2018-05-09 | 2019-10-01 | 中華電信股份有限公司 | System and method of pairing and authentication |
-
2020
- 2020-06-02 TW TW109118518A patent/TWI754950B/en active
Also Published As
Publication number | Publication date |
---|---|
TWI754950B (en) | 2022-02-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8898735B2 (en) | Network apparatus based on content name, method of generating and authenticating content name | |
US9210138B2 (en) | Efficient key generator for distribution of sensitive material from multiple application service providers to a secure element such as a universal integrated circuit card (UICC) | |
CN111263352B (en) | OTA upgrading method and system of vehicle-mounted equipment, storage medium and vehicle-mounted equipment | |
US20190149325A1 (en) | Blockchain transaction privacy enhancement through broadcast encryption | |
EP3846522A1 (en) | Mec platform deployment method and device | |
CN109496414B (en) | Identifying a network node to which data is to be copied | |
CN109450620B (en) | Method for sharing security application in mobile terminal and mobile terminal | |
US11178122B2 (en) | Data encryption and decryption method and system | |
EP3479540A1 (en) | Multi-hop secure content routing based on cryptographic partial blind signatures and embedded terms | |
EP3289749B1 (en) | Method and apparatus for enabling sharing of an asset | |
US20200274718A1 (en) | Device and method for authenticating application in execution environment in trust zone | |
WO2024032289A1 (en) | Video playback method and system, video security platform, and communication device | |
CN113765950B (en) | Internet of things equipment, server and software updating method | |
US11303439B2 (en) | Method of and device for performing authentication using hardware security module in oneM2M environment | |
US10212598B2 (en) | Access point information for wireless access | |
US20230135920A1 (en) | Network device authentication | |
TWI754950B (en) | A device for internet of things, a server, and a software updating method | |
US20220377550A1 (en) | Secure and trusted peer-to-peer offline communication systems and methods | |
US8595360B2 (en) | Method, system and apparatus for distributing digital information including digital rights management information to a plurality of devices | |
CN112699392A (en) | Target data processing method and device, storage medium and electronic device | |
KR20170008514A (en) | Method and system for reproducing contents by secure acquiring decryption key for encrypted contents | |
US20240303084A1 (en) | Executable command security | |
CN114513526B (en) | Method, system and first blockchain for accessing data across chains | |
CN109525940B (en) | Positioning method and device based on antenna and electronic equipment | |
CN118018947A (en) | Bluetooth positioning method, system and Bluetooth equipment |