The invention discloses an embedded hardware OTA upgrade system and method based on block chain. The method includes: constructing a P2P network topology including multiple firmware downloaded service nodes; using a service node as the first block node, transforming other service nodes in the P2P network into one block node in the block chain one by one through the block chain consensus verification mechanism; The latest firmware software is stored on the service node and hash algorithm is used to calculate the hash value of the content of the service node. The content of the node includes the feature information of the service node and the firmware software stored on it. The smart terminal downloads the corresponding hash value from the service node of the P2P network and verifies the security of the firmware version according to the hash value, and downloads, saves and passes through. The firmware software is checked and upgraded by using the firmware software. The invention uses block chain technology to establish a secure and credible P2P network topology structure to improve the reliability and security of OTA upgrade of intelligent terminals.
【技术实现步骤摘要】
一种基于区块链实现嵌入式硬件OTA升级系统及方法
本专利技术涉及智能终端远程升级
,具体涉及一种基于区块链实现嵌入式硬件OTA升级系统及方法。
技术介绍
随着当前物联网智能终端的快速发展,市场上出现了各种类型的智能终端,如智能家电、智能家居、智能音箱等等,且大部分的智能终端都支持无线(WiFi)功能,以方便这些设备联网。由于后期产品功能的升级或系统安全问题的修复等原因,因此,智能终端软件需要在联网状态下远程升级(OTA:Over-the-Air)其固件,以方便用户以及降低智能终端生产厂商的运营维护成本;目前有以下几种常用技术方案:(1)智能终端生产厂商提供一个固定的网络服务地址,直接上传更新固件,并不定期向已联网的智能终端推送OTA升级消息;智能终端在收到该消息后对比版本号后自动启动固件升级程序;(2)用户可通过智能终端生产厂商提供的固定的网络服务地址搜索到需升级的最新固件软件,并将其下载至本地,再通过智能终端本身的外置接口(如USB或串口等)触发其内置的固件升级程序;(3)用户通过与智能终端配套的移动端应用APP,直接连接固件后台服务器,发现并下载或推送相应的智能终端固件,再使用无线或本地下载,然后以导入的方式推送需升级的固件,完成OTA升级。虽然现有的技术能让用户远程升级其智能终端固件,但却存在以下缺点:一旦生产厂商决定不再维护该智能终端固件或生产厂商破产倒闭,用户不仅可能失去将其智能终端固件升级至最新版本的最后机会,使未升级的联网智能终端面临着各种功能性或安全性的潜在风险,更重要的是,一些恶意的第三方公司或个人,很容易通过建立其仿制的OTA固件 ...
【技术保护点】
1.一种基于区块链实现嵌入式硬件OTA升级方法,其特征在于,包括以下步骤:步骤S10、构建一个包括多个固件下载的服务节点的去中心化的P2P网络拓扑结构,每个服务节点用于智能终端硬件OTA升级服务;步骤S20、以一个服务节点作为第一区块节点,通过区块链共识验证机制逐个将P2P网络拓扑结构中的其他服务节点转化为区块链上的一个区块节点;步骤S30、在服务节点上存储最新固件软件,并利用哈希算法对节点内容进行计算得到该服务节点的hash值,构建固件版本安全校验机制;其中,节点内容包括服务节点和其上存储的固件软件的特征信息;步骤S40、智能终端从P2P网络拓扑结构的服务节点下载相应的hash值,根据该hash值进行固件版本安全校验,并下载、保存通过校验的固件软件,并利用该固件软件进行升级。
【技术特征摘要】
1.一种基于区块链实现嵌入式硬件OTA升级方法,其特征在于,包括以下步骤:步骤S10、构建一个包括多个固件下载的服务节点的去中心化的P2P网络拓扑结构,每个服务节点用于智能终端硬件OTA升级服务;步骤S20、以一个服务节点作为第一区块节点,通过区块链共识验证机制逐个将P2P网络拓扑结构中的其他服务节点转化为区块链上的一个区块节点;步骤S30、在服务节点上存储最新固件软件,并利用哈希算法对节点内容进行计算得到该服务节点的hash值,构建固件版本安全校验机制;其中,节点内容包括服务节点和其上存储的固件软件的特征信息;步骤S40、智能终端从P2P网络拓扑结构的服务节点下载相应的hash值,根据该hash值进行固件版本安全校验,并下载、保存通过校验的固件软件,并利用该固件软件进行升级。2.根据权利要求1所述的方法,其特征在于,当固件软件在第一次上传至固件下载的服务节点时,将固件软件拆分成多个部分,分别存储在多固件下载服务节点上,并生成相应的索引文件;智能终端连接一个服务节点,下载部分固件软件;根据下载的部分固件软件的组份标识,从P2P网络拓扑结构中依次查找存有其他部分固件软件的服务节点,并依次下载所有固件软件的组份;根据索引文件拼装成完整固件软件。3.根据权利要求1所述的方法,其特征在于,节点内容包括:存储固件软件的服务节点的节点ID、设备类型、设备型号;该服务节点上存储的固件软件的固件版本号、固件大小byte值、固件本地下载地址hash值、固件存储时间戳;该服务节点下载固件软件的上一服务节点的hash值;如果没有上一个服务节点的hash值,此部分取值为0。4.根据权利要求3所述的方法,其特征在于,智能终端保存通过校验的固件软件后,利用哈希算法生成固件本地下载地址hash值;再利用哈希算法对该智能终端的节点内容进行计算,得到该智能终端的hash值,并通过区块链共识验证机制将该智能终端转化为区块链上的一个区块节点,成为P2P网络拓扑结构中一个固件下载的服务节点。5.根据权利要求4所述的方法,其特征在于,步骤S40具体包括以下步骤:步骤S41、用户打开智能终端,并在联网后,按照相应的P2P协...
【专利技术属性】
技术研发人员:丁路宁,
申请(专利权)人:闪联信息技术工程中心有限公司,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。