CN109889589A - 一种基于区块链实现嵌入式硬件ota升级***及方法 - Google Patents

一种基于区块链实现嵌入式硬件ota升级***及方法 Download PDF

Info

Publication number
CN109889589A
CN109889589A CN201910119485.9A CN201910119485A CN109889589A CN 109889589 A CN109889589 A CN 109889589A CN 201910119485 A CN201910119485 A CN 201910119485A CN 109889589 A CN109889589 A CN 109889589A
Authority
CN
China
Prior art keywords
firmware
node
service node
block chain
intelligent terminal
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.)
Granted
Application number
CN201910119485.9A
Other languages
English (en)
Other versions
CN109889589B (zh
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.)
IGRS ENGINEERING LAB Ltd
Original Assignee
IGRS ENGINEERING LAB Ltd
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 IGRS ENGINEERING LAB Ltd filed Critical IGRS ENGINEERING LAB Ltd
Priority to CN201910119485.9A priority Critical patent/CN109889589B/zh
Publication of CN109889589A publication Critical patent/CN109889589A/zh
Application granted granted Critical
Publication of CN109889589B publication Critical patent/CN109889589B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Transfer Between Computers (AREA)
  • Storage Device Security (AREA)

Abstract

本发明公开了一种基于区块链实现嵌入式硬件OTA升级***及方法,该方法:构建一个包括多个固件下载的服务节点的P2P网络拓扑结构;以一个服务节点作为第一区块节点,通过区块链共识验证机制逐个将P2P网络中的其他服务节点转化为区块链上的一个区块节点;在服务节点上存储最新固件软件,并利用哈希算法对节点内容进行计算得到该服务节点的hash值;其中,节点内容包括服务节点和其上存储的固件软件的特征信息;智能终端从P2P网络的服务节点下载相应的hash值,根据该hash值进行固件版本安全校验,并下载、保存通过校验的固件软件,并利用该固件软件进行升级。本发明使用区块链技术建立安全可信的P2P网络拓扑结构,提高智能终端OTA升级可靠性及安全性。

Description

一种基于区块链实现嵌入式硬件OTA升级***及方法
技术领域
本发明涉及智能终端远程升级技术领域,具体涉及一种基于区块链实现嵌入式硬件OTA升级***及方法。
背景技术
随着当前物联网智能终端的快速发展,市场上出现了各种类型的智能终端,如智能家电、智能家居、智能音箱等等,且大部分的智能终端都支持无线(WiFi)功能,以方便这些设备联网。由于后期产品功能的升级或***安全问题的修复等原因,因此,智能终端软件需要在联网状态下远程升级(OTA:Over-the-Air)其固件,以方便用户以及降低智能终端生产厂商的运营维护成本;目前有以下几种常用技术方案:
(1)智能终端生产厂商提供一个固定的网络服务地址,直接上传更新固件,并不定期向已联网的智能终端推送OTA升级消息;智能终端在收到该消息后对比版本号后自动启动固件升级程序;
(2)用户可通过智能终端生产厂商提供的固定的网络服务地址搜索到需升级的最新固件软件,并将其下载至本地,再通过智能终端本身的外置接口(如USB或串口等)触发其内置的固件升级程序;
(3)用户通过与智能终端配套的移动端应用APP,直接连接固件后台服务器,发现并下载或推送相应的智能终端固件,再使用无线或本地下载,然后以导入的方式推送需升级的固件,完成OTA升级。
虽然现有的技术能让用户远程升级其智能终端固件,但却存在以下缺点:一旦生产厂商决定不再维护该智能终端固件或生产厂商破产倒闭,用户不仅可能失去将其智能终端固件升级至最新版本的最后机会,使未升级的联网智能终端面临着各种功能性或安全性的潜在风险,更重要的是,一些恶意的第三方公司或个人,很容易通过建立其仿制的OTA固件升级服务继续为已联网的智能终端进行OTA升级,如果智能终端OTA固件升级程序缺乏一定的安全验证机制,可能使得设备在自动升级第三方固件后出现被恶意控制并造成个人隐私泄露等重大安全问题。
有鉴于此,急需对现有的智能终端OTA升级方案进行改进,提高智能终端OTA升级的可靠性和安全性,防止OTA固件被第三方恶意篡改。
发明内容
本发明所要解决的技术问题是现有的智能终端OTA升级方案,容易被第三方恶意篡改,且无法保证OTA固件长期续存,可靠性和安全性差的问题。
为了解决上述技术问题,本发明所采用的技术方案是提供一种基于区块链实现嵌入式硬件OTA升级方法,包括以下步骤:
步骤S10、构建一个包括多个固件下载的服务节点的去中心化的P2P网络拓扑结构,每个服务节点用于智能终端硬件OTA升级服务;
步骤S20、以一个服务节点作为第一区块节点,通过区块链共识验证机制逐个将P2P网络拓扑结构中的其他服务节点转化为区块链上的一个区块节点;
步骤S30、在服务节点上存储最新固件软件,并利用哈希算法对节点内容进行计算得到该服务节点的hash值,构建固件版本安全校验机制;其中,节点内容包括服务节点和其上存储的固件软件的特征信息;
步骤S40、智能终端从P2P网络拓扑结构的服务节点下载相应的hash值,根据该hash值进行固件版本安全校验,并下载、保存通过校验的固件软件,并利用该固件软件进行升级。
在上述方法中,当固件软件在第一次上传至固件下载的服务节点时,将固件软件拆分成多个部分,分别存储在多固件下载服务节点上,并生成相应的索引文件;
智能终端连接一个服务节点,下载部分固件软件;根据下载的部分固件软件的组份标识,从P2P网络拓扑结构中依次查找存有其他部分固件软件的服务节点,并依次下载所有固件软件的组份;根据索引文件拼装成完整固件软件。
在上述方法中,节点内容包括:存储固件软件的服务节点的节点ID、设备类型、设备型号;该服务节点上存储的固件软件的固件版本号、固件大小byte值、固件本地下载地址hash值、固件存储时间戳;该服务节点下载固件软件的上一服务节点的hash值;
如果没有上一个服务节点的hash值,此部分取值为0。
在上述方法中,智能终端保存通过校验的固件软件后,利用哈希算法生成固件本地下载地址hash值;
再利用哈希算法对该智能终端的节点内容进行计算,得到该智能终端的hash值,并通过区块链共识验证机制将该智能终端转化为区块链上的一个区块节点,成为P2P网络拓扑结构中一个固件下载的服务节点。
在上述方法中,步骤S40具体包括以下步骤:
步骤S41、用户打开智能终端,并在联网后,按照相应的P2P协议宣告及发现P2P网络拓扑结构中的服务节点;
步骤S42、智能终端与发现的任意一个服务节点建立连接,并从该服务节点上下载该服务节点的hash值,解析该hash值得到相应的节点内容;
步骤S43、根据节点内容中的固件本地下载地址获取服务节点上存储的固件软件的特征信息;
步骤S44、判断获取的固件软件的特征信息与解析得到的节点内容是否一致,如果一致,执行步骤S45;否则,执行步骤S48;
步骤S45、下载、并保存固件软件,并利用哈希算法生成智能终端的固件本地下载地址hash值;
步骤S46、利用哈希算法对该智能终端的节点内容进行计算,得到该智能终端的hash值,并通过区块链共识验证机制将该智能终端转化为区块链上的一个区块节点;
步骤S47、利用下载的固件软件进行智能终端升级,然后执行步骤S49;
步骤S48、根据P2P协议和区块链共识验证机制将该服务节点移出P2P网络和区块链;
步骤S49、结束本次升级。
在上述方法中,在对节点内容进行hash值的计算前,使用公私钥对对全部节点内容或者仅对约定的部分节点内容进行加密。
在上述方法中,哈希算法包括AES、SHA、RSA、ECC。
在上述方法中,区块链共识验证机制包括工作量证明、权益证明、权益授权证明。
本发明还提供了一种基于区块链实现嵌入式硬件OTA升级***,包括多个用于为智能终端硬件OTA升级提供固件下载服务的服务节点,多个所述服务节点之间构成一个去中心化的P2P网络拓扑结构;
所述P2P网络拓扑结构中每个服务节点设有共识验证算法模块和安全加密验证算法及下载发布模块;
所述共识验证算法模块通过P2P网络拓扑结构的区块链共识验证机制,认证加入P2P网络的服务节点为区块链的一个区块节点;
所述安全加密验证算法及下载发布模块利用哈希算法对节点内容进行计算得到该服务节点的hash值,并对hash值进行发布;在该服务节点上存储的固件软件被其他智能终端下载时,利用hash值对当前固件软件进行固件版本安全校验,并将校验结果发给该智能终端;其中,节点内容包括服务节点和其上存储的固件软件的特征信息。
与现有技术相比,本发明使用区块链技术建立安全可信的固件下载服务节点的P2P网络拓扑结构,并通过一定的区块链共识验证机制添加更多的分布式可信固件下载服务节点,从而本发明具有以下优点:
(1)整个智能终端硬件OTA升级流程无需依赖某特定中心服务器,即使P2P网络拓扑结构中有固件下载服务节点故障、不在线或者其上的固件软件被篡改,仍不影响智能终端OTA升级,只要存在相应的智能终端固件OTA升级的固件下载服务节点,区块链就可以实现永久稳定安全的升级机制,提高智能终端OTA升级可靠性;
(2)所有固件下载服务节点采用区块链的安全验证机制(区块链共识验证及固件软件安全验证机制)存储固件软件,具有不可篡改,防止恶意的固件升级程序导致设备安全漏洞,提高智能终端OTA升级的安全性
(3)方案要求较低,因此每个长期联网的智能终端都有可能成为智能硬件固件OTA升级服务区块链上的一个区块节点,提高固件OTA升级服务的可执行性和实现性。
附图说明
图1为本发明提供的一种基于区块链实现嵌入式硬件OTA升级***的结构框图;
图2为本发明中固件下载的服务节点的结构框图;
图3为本发明提供的一种基于区块链实现嵌入式硬件OTA升级方法的流程图;
图4为本发明中步骤S40的具体流程图;
图5为智能终端采用本发明进行固件OTA升级的流程图。
具体实施方式
区块链是一种按照时间顺序将数据区块以顺序相连的方式组合成的一种链式数据结构,并使用密码学。方法关联数据区块的分布式数据;区块链技术利用块链式数据结构来验证与存储数据、利用分布式节点共识算法来生成和更新数据、利用密码学的方式保证数据传输和访问的安全、利用由自动化脚本代码组成的智能合约来编程和操作数据的一种全新的分布式基础架构与计算范式,具有不可篡改性、去中心化性、匿名性、可追溯性等特征,目前已被广泛应用于金融行业,并在众多领域都表现出广阔的应用前景
本发明提供了一种基于区块链实现嵌入式硬件OTA升级方法,利用区块链技术先建立一个去中心化的P2P(Peer-to-peer,点对点或对等)网络拓扑结构,再通过一定的区块链共识机制识别后将各个P2P节点逐个转化成相应的固件OTA升级服务区块节点,再利用哈希(Hash)算法,例如AES-128(Advanced Encryption Standard 128)、SHA-256(SecureHash Algorithm 256)等形成固件版本安全认证校验机制;需要做固件OTA升级的智能终端,只需与区块链的区块节点建立连接,再通过安全校验以及版本确认即可进行固件OTA升级操作。整个固件OTA升级过程并不依赖于某个中心服务器,即使P2P固件下载服务节点中有多个故障或下线节点,只要有正常的在线区块节点,就不会影响智能终端进行升级,不仅使OTA升级机制更可靠,而且由于基于区块链技术,具有不可篡改特性,安全性更好。下面结合说明书附图和具体实施方式对本发明做出详细说明。
如图1所示,本发明提供的一种基于区块链实现嵌入式硬件OTA升级***,包括多个用于为智能终端硬件OTA升级提供固件下载服务的服务节点10,多个固件下载的服务节点10之间构成一个去中心化的P2P网络拓扑结构;
P2P网络拓扑结构中每个固件下载的服务节点10设有共识验证算法模块11和安全加密验证算法及下载发布模块12;
共识验证算法模块11通过P2P网络拓扑结构的区块链共识验证机制认证加入P2P网络的服务节点为区块链的一个区块节点,使P2P网络拓扑结构所有服务节点构成一个区块链;
安全加密验证算法及下载发布模块12利用哈希算法对节点内容进行计算得到该服务节点的hash值,并对hash值进行发布;在该服务节点10上存储的固件软件被其他智能终端下载时,利用hash值对当前固件软件进行固件版本安全校验,并将校验结果发给该智能终端;其中,节点内容包括服务节点和其上存储的固件软件的特征信息。
可见,如图2所示,如果要保证本发明能够实现,每个固件下载的服务节点至少需要包括:
主控模块(CPU或MCU)13,该模块是基于区块链技术的服务节点的核心处理模块,可处理该节点上所有的***运算、数据存储及网络服务功能;
内存14,支持该节点上全部运算、数据存储读写、网络连接及数据交互等基础处理功能;
存储模块15,主要用于记录保存相关智能终端的固件软件及相应的区块链分布式存储服务节点的hash值;同时支持外部可插拔设备上文件的访问,可以是USB设备,读卡器设备等;
网络服务模块16(包括HTTP、TCP、UDP、FTP等),是建立P2P网络的基础结构,主要对为部设备或服务节点提供可连接的网络地址及服务端口,并根据相应协议提供网络服务、设备识别、发布、连接及数据下载和交互等功能;
共识验证算法模块11,该模块支持使用区块链技术创建和确认新的固件下载服务节点,在服务节点加入P2P网络时,通过一定的共识算法机制(consensus)对加入的服务节点进行认证。在区块链技术中,常用的共识机制包括工作量证明(POW Proof of Work)、权益证明(POS Proof of Stake)、权益授权证明(DPOS Delegated Proof of Stake)等等;
安全加密验证算法及下载发布模块12,支持密钥生成算法及一定的Hash加密算法机制;利用哈希算法(可以使用多种常用的对称或非对称加密算法,例如AES、SHA、RSA、ECC等等)对节点内容进行计算得到该服务节点的hash值,并对hash值进行发布;在该服务节点上存储的固件软件被其他智能终端下载时,利用hash值对当前固件软件进行固件版本安全校验,并将校验结果发给该智能终端,使该***具有一定固件安全防篡改机制(例如至少需比较固件版本信息、固件大小、上一个可信区块的信息比较等方法),即使用相应的哈希算法对hash值进行解密,如果解密的到的节点内容与当前存储的固件软件特征信息和服务节点特征信息一致,证明该固件软件没有被篡改,智能终端下载固件软件,否则,该服务节点移出P2P网络和区块链;其中,节点内容包括服务节点和其上存储的固件软件的特征信息,具体包括:存储固件软件的服务节点的节点ID、设备类型、设备型号;该服务节点上存储的固件软件的固件版本号、固件大小byte值、固件本地下载地址hash值、固件存储时间戳timestamp;该服务节点下载固件软件的上一服务节点的hash值,这里使用固件下载地址hash值是不希望用明文直接获取固件软件的互联网下载地址;如果没有上一个服务节点的hash值,此部分取值为0。
如图3所示,本发明提供的一种基于区块链实现嵌入式硬件OTA升级方法,包括以下步骤:
步骤S10、构建一个包括多个固件下载的服务节点的去中心化的P2P网络拓扑结构,每个服务节点用于智能终端硬件OTA升级服务;
步骤S20、以一个服务节点作为第一区块节点,通过区块链共识验证机制逐个将P2P网络拓扑结构中的其他服务节点转化为区块链上的一个区块节点;
步骤S30、在服务节点上存储最新固件软件,并利用哈希算法对节点内容进行计算得到该服务节点的hash值,构建固件版本安全校验机制;其中,节点内容包括服务节点和其上存储的固件软件的特征信息;
步骤S40、智能终端从P2P网络拓扑结构的服务节点下载相应的hash值,根据该hash值进行固件版本安全校验,并下载、保存通过校验的固件软件,并利用该固件软件进行升级。
本发明使用区块链技术建立安全可信的固件下载服务节点的P2P网络拓扑结构,并通过一定的共识机制确定更多的分布式可信服务节点加入,以保障P2P网络拓扑结构的鲁棒性;同时,通过固件下载的服务节点本身的安全加密验证机制来维护固件软件的安全可信防篡改特性。
在本发明中,如智能终端本身具有如图2所示的所有能力,当智能终端保存通过校验的固件软件后,利用哈希算法生成固件本地下载地址hash值;再利用哈希算法对该智能终端的节点内容进行计算,得到该智能终端的hash值,并通过区块链共识验证机制将该智能终端转化为区块链上的一个可信任区块节点,成为P2P网络拓扑结构中一个固件下载的服务节点,为其他智能终端提供固件OTA升级服务。
在本发明中,为提升网络传输效率,相关固件软件在第一次上传至固件下载服务节点时,将固件软件拆分成多个部分,分别存储在多固件下载服务节点上,并生成相应的索引(Index)文件;
智能终端连接一个服务节点,下载部分固件软件;根据下载的部分固件软件的组份标识,从P2P网络拓扑结构中依次查找存有其他部分固件软件的服务节点(在下载各个部分时,分别对每部分进行固件版本安全校验),并依次下载所有固件软件的组份;根据索引文件拼装成完整固件软件。如果该智能终端具有如图2所示的所有能力,则在拼装完成、并保存后,利用哈希算法对节点内容进行计算,得到hash值,通过区块链共识验证机制将该智能终端转化为区块链上的一个区块节点,成为P2P网络拓扑结构中一个固件下载的服务节点。
如图4所示,步骤S40具体包括以下步骤:
步骤S41、用户打开智能终端,并在联网后,按照相应的P2P协议宣告及发现P2P网络拓扑结构中的服务节点;
步骤S42、智能终端与发现的任意一个服务节点建立连接,并从该服务节点上下载该服务节点的hash值,解析该hash值得到相应的节点内容;
步骤S43、根据节点内容中的固件本地下载地址获取服务节点上存储的固件软件的特征信息;
步骤S44、判断获取的固件软件的特征信息与解析得到的节点内容是否一致,如果一致,执行步骤S45;否则,执行步骤S48;
步骤S45、下载、并保存固件软件,并利用哈希算法生成智能终端的固件本地下载地址hash值;
步骤S46、利用哈希算法对该智能终端的节点内容进行计算,得到该智能终端的hash值,并通过区块链共识验证机制将该智能终端转化为区块链上的一个区块节点;
步骤S47、利用下载的固件软件进行智能终端升级,然后执行步骤S49;
步骤S48、根据P2P协议和区块链共识验证机制将该服务节点移出P2P网络和区块链;
步骤S49、结束本次升级。
在本发明中,在对节点内容进行hash值的计算前,可先对节点内容使用公私钥对的方法进行全部加密或仅对约定的部分节点内容进行加密,以提升固件的防篡改性。
如图5所示,采用本发明时智能终端的固件OTA升级流程如下:
001:用户打开智能终端,智能终端在已完成配网的状态下自动联网;
002:智能终端联网后,按照相应的P2P协议宣告及发现P2P网络中其他的固件下载服务节点;
003:智能终端发现任意一个固件下载服务节点后,与该固件下载服务节点建立连接(可基于TCP、UDP、HTTP、FTP等协议);
004:从固件下载服务节点下载该固件下载服务节点的hash值,解析节点内容获取固件软件下载地址以及相应的固件软件的特征信息(存储该固件软件的固件下载服务节点ID以及其设备类型、设备型号、固件版本号、固件大小byte值、时间戳time stamp等),然后根据固件软件下载地址下载固件软件,并与解析的固件软件特征信息进行比对,如果一致,表示下载的固件软件为被篡改,智能终端保存该固件软件,并调用哈希算法生成智能终端的节点内容,再利用区块链共识验证算法进行加入P2P网络拓扑结构的认证,加入相应的区块链成为可信区块节点;如果不一致,根据P2P协议和区块链共识验证机制将该固件下载服务节点移出P2P网络和区块链;
005:存储固件软件至升级空间,开始一般性升级流程,先解析固件软件相关信息内容;
006:启动比较新固件软件安全验证流程以确保新固件安全可靠未被篡改;(主要进行如下检查:检查固件设备类型、设备型号、固件版本号,固件大小等与实际下载的固件是都一致);
007:如果接收到的固件软件是部分软件,直接从P2P网络中依次查找存有其他部分固件软件的固件下载服务节点,并需回到步骤003,与每个固件下载服务节点连接下载各个部分固件软件,在获取全部文件后再根据索引文件进行拼装并确认通过最终固件版本安全验证;
008:启动设备固件升级程序;
009:升级完成成功后则重启设备;如失败则需回滚至原版本。
本发明并不局限于上述最佳实施方式,任何人应该得知在本发明的启示下做出的结构变化,凡是与本发明具有相同或相近的技术方案,均落入本发明的保护范围之内。

Claims (9)

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协议宣告及发现P2P网络拓扑结构中的服务节点;
步骤S42、智能终端与发现的任意一个服务节点建立连接,并从该服务节点上下载该服务节点的hash值,解析该hash值得到相应的节点内容;
步骤S43、根据节点内容中的固件本地下载地址获取服务节点上存储的固件软件的特征信息;
步骤S44、判断获取的固件软件的特征信息与解析得到的节点内容是否一致,如果一致,执行步骤S45;否则,执行步骤S48;
步骤S45、下载、并保存固件软件,并利用哈希算法生成智能终端的固件本地下载地址hash值;
步骤S46、利用哈希算法对该智能终端的节点内容进行计算,得到该智能终端的hash值,并通过区块链共识验证机制将该智能终端转化为区块链上的一个区块节点;
步骤S47、利用下载的固件软件进行智能终端升级,然后执行步骤S49;
步骤S48、根据P2P协议和区块链共识验证机制将该服务节点移出P2P网络和区块链;
步骤S49、结束本次升级。
6.根据权利要求1所述的方法,其特征在于,在对节点内容进行hash值的计算前,使用公私钥对对全部节点内容或者仅对约定的部分节点内容进行加密。
7.根据权利要求1所述的方法,其特征在于,哈希算法包括AES、SHA、RSA、ECC。
8.根据权利要求1所述的方法,其特征在于,区块链共识验证机制包括工作量证明、权益证明、权益授权证明。
9.一种基于区块链实现嵌入式硬件OTA升级***,其特征在于,包括多个用于为智能终端硬件OTA升级提供固件下载服务的服务节点,多个所述服务节点之间构成一个去中心化的P2P网络拓扑结构;
所述P2P网络拓扑结构中每个服务节点设有共识验证算法模块和安全加密验证算法及下载发布模块;
所述共识验证算法模块通过P2P网络拓扑结构的区块链共识验证机制,认证加入P2P网络的服务节点为区块链的一个区块节点;
所述安全加密验证算法及下载发布模块利用哈希算法对节点内容进行计算得到该服务节点的hash值,并对hash值进行发布;在该服务节点上存储的固件软件被其他智能终端下载时,利用hash值对当前固件软件进行固件版本安全校验,并将校验结果发给该智能终端;其中,节点内容包括服务节点和其上存储的固件软件的特征信息。
CN201910119485.9A 2019-02-18 2019-02-18 一种基于区块链实现嵌入式硬件ota升级***及方法 Active CN109889589B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910119485.9A CN109889589B (zh) 2019-02-18 2019-02-18 一种基于区块链实现嵌入式硬件ota升级***及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910119485.9A CN109889589B (zh) 2019-02-18 2019-02-18 一种基于区块链实现嵌入式硬件ota升级***及方法

Publications (2)

Publication Number Publication Date
CN109889589A true CN109889589A (zh) 2019-06-14
CN109889589B CN109889589B (zh) 2021-11-23

Family

ID=66928374

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910119485.9A Active CN109889589B (zh) 2019-02-18 2019-02-18 一种基于区块链实现嵌入式硬件ota升级***及方法

Country Status (1)

Country Link
CN (1) CN109889589B (zh)

Cited By (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110493345A (zh) * 2019-08-23 2019-11-22 北京智芯微电子科技有限公司 基于区块链的物联网终端软件升级方法及***
CN110704392A (zh) * 2019-08-21 2020-01-17 平安科技(深圳)有限公司 区块链网络的升级方法及装置、存储介质、电子设备
CN110730079A (zh) * 2019-10-16 2020-01-24 北京仁信证科技有限公司 基于可信计算模块的嵌入式***安全启动和可信度量的***
CN111522563A (zh) * 2020-04-20 2020-08-11 中国工商银行股份有限公司 基于区块链的终端升级保护***及方法
WO2020011287A3 (en) * 2019-10-15 2020-08-20 Alipay (Hangzhou) Information Technology Co., Ltd. Indexing and recovering encoded blockchain data
CN111782238A (zh) * 2020-05-27 2020-10-16 华帝股份有限公司 一种智能家电设备的软件升级方法及***
CN111984295A (zh) * 2020-08-22 2020-11-24 暗链科技(深圳)有限公司 一种区块链软件全网更新方法、存储介质及电子设备
CN112148333A (zh) * 2020-10-10 2020-12-29 上海聪链信息科技有限公司 区块链服务器固件更新***
CN112162770A (zh) * 2020-10-20 2021-01-01 深圳技术大学 基于区块链实现完整性验证的固件版本升级方法及装置
CN112256596A (zh) * 2020-10-23 2021-01-22 英业达科技有限公司 一种电子装置固件中讯号中继器的刷新方法
CN112328291A (zh) * 2020-12-11 2021-02-05 上海市民信箱信息服务有限公司 一种app轻应用市场软件版本管控的方法
WO2021036545A1 (zh) * 2019-08-29 2021-03-04 腾讯科技(深圳)有限公司 一种基于智能合约的数据处理方法、设备及存储介质
CN112559005A (zh) * 2020-11-27 2021-03-26 南京南瑞信息通信科技有限公司 基于区块链与分布式存储的物联网设备固件更新方法及***
CN112947967A (zh) * 2021-03-08 2021-06-11 中国联合网络通信集团有限公司 软件更新方法、区块链应用商店及软件上传终端
CN113190252A (zh) * 2021-05-14 2021-07-30 广州国联通信有限公司 一种基于列车广播***的远程在线固件更新方法及装置
CN113434170A (zh) * 2021-06-22 2021-09-24 重庆长安汽车股份有限公司 一种整车ota数据下载部署方法及装置
CN113849213A (zh) * 2021-10-15 2021-12-28 四川启睿克科技有限公司 一种边缘设备的ota升级***及方法
CN114095538A (zh) * 2021-11-18 2022-02-25 四川启睿克科技有限公司 一种基于区块链技术的物联网设备ota升级的双向认证方法
CN114168176A (zh) * 2021-12-15 2022-03-11 四川启睿克科技有限公司 一种基于区块链的跨厂商设备升级***及方法
TWI757934B (zh) * 2020-10-27 2022-03-11 英業達股份有限公司 電子裝置韌體中訊號中繼器的刷新方法
WO2022111214A1 (zh) * 2020-11-30 2022-06-02 青岛海尔电冰箱有限公司 基于区块链的冰箱程序的升级方法及冰箱
CN114637987A (zh) * 2022-05-18 2022-06-17 广州万协通信息技术有限公司 基于平台验证的安全芯片固件下载方法及***
WO2022183371A1 (zh) * 2021-03-02 2022-09-09 深圳大学 一种物联网设备的固件更新方法、装置、***及存储介质
US11645303B2 (en) 2019-07-15 2023-05-09 Tencent Technology (Shenzhen) Company Limited Data synchronization method and apparatus of distributed system, medium, and electronic device

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101247416A (zh) * 2008-03-25 2008-08-20 中兴通讯股份有限公司 基于ota的固件下载方法、预处理方法、完整性验证方法
CN103092657A (zh) * 2013-01-18 2013-05-08 郑州威科姆科技股份有限公司 一种基于p2p的嵌入式设备升级方法
CN104836848A (zh) * 2015-04-14 2015-08-12 闪联信息技术工程中心有限公司 智能家电设备远程升级的方法
CN105653315A (zh) * 2015-12-23 2016-06-08 北京工业大学 一种基于区块链技术的节点化操作***下载方法
US20160261690A1 (en) * 2015-03-02 2016-09-08 Dell Products L.P. Computing device configuration and management using a secure decentralized transaction ledger
CN106789236A (zh) * 2016-12-20 2017-05-31 深圳盈达信息科技有限公司 一种融合WiFiP2P的FOTA远程在线升级的方法
CN107077557A (zh) * 2016-12-29 2017-08-18 深圳前海达闼云端智能科技有限公司 软件应用程序发布和验证的方法及装置
CN108270573A (zh) * 2018-01-12 2018-07-10 西安电子科技大学 无人驾驶汽车的隐私保护方法
CN108270874A (zh) * 2018-02-05 2018-07-10 武汉斗鱼网络科技有限公司 应用程序的更新方法及装置
CN108737498A (zh) * 2018-04-18 2018-11-02 中国地质大学(武汉) 一种基于区块链的p2p安全下载检测方法及***

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101247416A (zh) * 2008-03-25 2008-08-20 中兴通讯股份有限公司 基于ota的固件下载方法、预处理方法、完整性验证方法
CN103092657A (zh) * 2013-01-18 2013-05-08 郑州威科姆科技股份有限公司 一种基于p2p的嵌入式设备升级方法
US20160261690A1 (en) * 2015-03-02 2016-09-08 Dell Products L.P. Computing device configuration and management using a secure decentralized transaction ledger
CN104836848A (zh) * 2015-04-14 2015-08-12 闪联信息技术工程中心有限公司 智能家电设备远程升级的方法
CN105653315A (zh) * 2015-12-23 2016-06-08 北京工业大学 一种基于区块链技术的节点化操作***下载方法
CN106789236A (zh) * 2016-12-20 2017-05-31 深圳盈达信息科技有限公司 一种融合WiFiP2P的FOTA远程在线升级的方法
CN107077557A (zh) * 2016-12-29 2017-08-18 深圳前海达闼云端智能科技有限公司 软件应用程序发布和验证的方法及装置
CN108270573A (zh) * 2018-01-12 2018-07-10 西安电子科技大学 无人驾驶汽车的隐私保护方法
CN108270874A (zh) * 2018-02-05 2018-07-10 武汉斗鱼网络科技有限公司 应用程序的更新方法及装置
CN108737498A (zh) * 2018-04-18 2018-11-02 中国地质大学(武汉) 一种基于区块链的p2p安全下载检测方法及***

Cited By (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11645303B2 (en) 2019-07-15 2023-05-09 Tencent Technology (Shenzhen) Company Limited Data synchronization method and apparatus of distributed system, medium, and electronic device
CN110704392A (zh) * 2019-08-21 2020-01-17 平安科技(深圳)有限公司 区块链网络的升级方法及装置、存储介质、电子设备
CN110704392B (zh) * 2019-08-21 2023-03-31 平安科技(深圳)有限公司 区块链网络的升级方法及装置、存储介质、电子设备
CN110493345A (zh) * 2019-08-23 2019-11-22 北京智芯微电子科技有限公司 基于区块链的物联网终端软件升级方法及***
US11733991B2 (en) 2019-08-29 2023-08-22 Tencent Technology (Shenzhen) Company Limited Data processing method based on intelligent contract, device, and storage medium
JP2022502738A (ja) * 2019-08-29 2022-01-11 ▲騰▼▲訊▼科技(深▲セン▼)有限公司 スマートコントラクトに基づくデータ処理方法、データ処理装置、ノード機器、及びコンピュータプログラム
JP7199775B2 (ja) 2019-08-29 2023-01-06 ▲騰▼▲訊▼科技(深▲セン▼)有限公司 スマートコントラクトに基づくデータ処理方法、データ処理装置、ノード機器、及びコンピュータプログラム
WO2021036545A1 (zh) * 2019-08-29 2021-03-04 腾讯科技(深圳)有限公司 一种基于智能合约的数据处理方法、设备及存储介质
US11307927B2 (en) 2019-10-15 2022-04-19 Alipay (Hangzhou) Information Technology Co., Ltd. Indexing and recovering encoded blockchain data
KR102412024B1 (ko) 2019-10-15 2022-06-22 알리페이 (항저우) 인포메이션 테크놀로지 씨오., 엘티디. 인코딩된 블록체인 데이터의 인덱싱 및 복구
US10977114B2 (en) 2019-10-15 2021-04-13 Alipay (Hangzhou) Information Technology Co., Ltd. Indexing and recovering encoded blockchain data
WO2020011287A3 (en) * 2019-10-15 2020-08-20 Alipay (Hangzhou) Information Technology Co., Ltd. Indexing and recovering encoded blockchain data
KR20210045353A (ko) * 2019-10-15 2021-04-26 알리페이 (항저우) 인포메이션 테크놀로지 씨오., 엘티디. 인코딩된 블록체인 데이터의 인덱싱 및 복구
CN110730079B (zh) * 2019-10-16 2023-06-02 北京信长城科技发展有限公司 基于可信计算模块的嵌入式***安全启动和可信度量的***
CN110730079A (zh) * 2019-10-16 2020-01-24 北京仁信证科技有限公司 基于可信计算模块的嵌入式***安全启动和可信度量的***
CN111522563B (zh) * 2020-04-20 2023-09-19 中国工商银行股份有限公司 基于区块链的终端升级保护***及方法
CN111522563A (zh) * 2020-04-20 2020-08-11 中国工商银行股份有限公司 基于区块链的终端升级保护***及方法
CN111782238A (zh) * 2020-05-27 2020-10-16 华帝股份有限公司 一种智能家电设备的软件升级方法及***
CN111984295B (zh) * 2020-08-22 2021-04-13 暗链科技(深圳)有限公司 一种区块链软件全网更新方法、存储介质及电子设备
CN111984295A (zh) * 2020-08-22 2020-11-24 暗链科技(深圳)有限公司 一种区块链软件全网更新方法、存储介质及电子设备
CN112148333B (zh) * 2020-10-10 2023-11-03 上海聪链信息科技有限公司 区块链服务器固件更新***
CN112148333A (zh) * 2020-10-10 2020-12-29 上海聪链信息科技有限公司 区块链服务器固件更新***
CN112162770B (zh) * 2020-10-20 2023-11-10 深圳技术大学 基于区块链实现完整性验证的固件版本升级方法及装置
CN112162770A (zh) * 2020-10-20 2021-01-01 深圳技术大学 基于区块链实现完整性验证的固件版本升级方法及装置
CN112256596A (zh) * 2020-10-23 2021-01-22 英业达科技有限公司 一种电子装置固件中讯号中继器的刷新方法
CN112256596B (zh) * 2020-10-23 2022-07-05 英业达科技有限公司 一种电子装置固件中讯号中继器的刷新方法
TWI757934B (zh) * 2020-10-27 2022-03-11 英業達股份有限公司 電子裝置韌體中訊號中繼器的刷新方法
CN112559005A (zh) * 2020-11-27 2021-03-26 南京南瑞信息通信科技有限公司 基于区块链与分布式存储的物联网设备固件更新方法及***
WO2022111214A1 (zh) * 2020-11-30 2022-06-02 青岛海尔电冰箱有限公司 基于区块链的冰箱程序的升级方法及冰箱
CN112328291A (zh) * 2020-12-11 2021-02-05 上海市民信箱信息服务有限公司 一种app轻应用市场软件版本管控的方法
WO2022183371A1 (zh) * 2021-03-02 2022-09-09 深圳大学 一种物联网设备的固件更新方法、装置、***及存储介质
CN112947967B (zh) * 2021-03-08 2023-09-26 中国联合网络通信集团有限公司 软件更新方法、区块链应用商店及软件上传终端
CN112947967A (zh) * 2021-03-08 2021-06-11 中国联合网络通信集团有限公司 软件更新方法、区块链应用商店及软件上传终端
CN113190252A (zh) * 2021-05-14 2021-07-30 广州国联通信有限公司 一种基于列车广播***的远程在线固件更新方法及装置
CN113434170B (zh) * 2021-06-22 2023-03-14 重庆长安汽车股份有限公司 一种整车ota数据下载部署方法及装置
CN113434170A (zh) * 2021-06-22 2021-09-24 重庆长安汽车股份有限公司 一种整车ota数据下载部署方法及装置
CN113849213A (zh) * 2021-10-15 2021-12-28 四川启睿克科技有限公司 一种边缘设备的ota升级***及方法
CN113849213B (zh) * 2021-10-15 2024-05-14 四川启睿克科技有限公司 一种边缘设备的ota升级***及方法
CN114095538A (zh) * 2021-11-18 2022-02-25 四川启睿克科技有限公司 一种基于区块链技术的物联网设备ota升级的双向认证方法
CN114095538B (zh) * 2021-11-18 2023-03-07 四川启睿克科技有限公司 一种基于区块链技术的物联网设备ota升级的双向认证方法
CN114168176A (zh) * 2021-12-15 2022-03-11 四川启睿克科技有限公司 一种基于区块链的跨厂商设备升级***及方法
CN114637987A (zh) * 2022-05-18 2022-06-17 广州万协通信息技术有限公司 基于平台验证的安全芯片固件下载方法及***
CN114637987B (zh) * 2022-05-18 2022-08-12 广州万协通信息技术有限公司 基于平台验证的安全芯片固件下载方法及***

Also Published As

Publication number Publication date
CN109889589B (zh) 2021-11-23

Similar Documents

Publication Publication Date Title
CN109889589A (zh) 一种基于区块链实现嵌入式硬件ota升级***及方法
US11943376B1 (en) Template based credential provisioning
CN107770182B (zh) 家庭网关的数据存储方法及家庭网关
CN102271042B (zh) 数字证书认证方法、***、USB Key设备和服务器
US11128647B2 (en) Cryptocurrencies malware based detection
KR101956486B1 (ko) 단말 식별자들을 용이하게 하는 방법 및 시스템
US20200106775A1 (en) Method, device, system for authenticating an accessing terminal by server, server and computer readable storage medium
CN111182525B (zh) 一种存储数据的方法和装置
CN110362990A (zh) 应用安装的安全处理方法、装置及***
CN102982257A (zh) 在re和te间执行平台完整性和drm软件完整性检查的方法
WO2010085781A1 (en) Provisioned firmware updates using object identifiers
CN110601815B (zh) 一种区块链数据处理方法以及设备
CN111815321A (zh) 交易提案的处理方法、装置、***、存储介质和电子装置
CN105099705B (zh) 一种基于usb协议的安全通信方法及其***
CN109829294A (zh) 一种固件验证方法、***、服务器及电子设备
US20160330030A1 (en) User Terminal For Detecting Forgery Of Application Program Based On Hash Value And Method Of Detecting Forgery Of Application Program Using The Same
CN108830113A (zh) 一种Android设备唯一标识的获取方法
US10263980B2 (en) Network node, device and methods for providing an authentication module
WO2018086276A1 (zh) 用于验证应用安全性的方法和设备
WO2017066995A1 (zh) 一种非法访问服务器防止方法以及装置
CN109600451A (zh) 一种基于Websocket长连接的终端设备固件升级方法及***
CN111506327A (zh) 区块链节点热升级方法及相关设备
BR102019005184B1 (pt) Método e sistema para provisionar um terminal seguro
CN111367923A (zh) 数据处理方法、装置、节点设备及存储介质
CN114338054B (zh) 区块链可信数据传输、验证和获取方法及装置

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