CN114362981A - 物联网终端设备的升级方法及相关设备 - Google Patents

物联网终端设备的升级方法及相关设备 Download PDF

Info

Publication number
CN114362981A
CN114362981A CN202011060564.6A CN202011060564A CN114362981A CN 114362981 A CN114362981 A CN 114362981A CN 202011060564 A CN202011060564 A CN 202011060564A CN 114362981 A CN114362981 A CN 114362981A
Authority
CN
China
Prior art keywords
information
server
equipment
upgrading
terminal equipment
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.)
Pending
Application number
CN202011060564.6A
Other languages
English (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.)
BOE Technology Group Co Ltd
Original Assignee
BOE Technology Group Co 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 BOE Technology Group Co Ltd filed Critical BOE Technology Group Co Ltd
Priority to CN202011060564.6A priority Critical patent/CN114362981A/zh
Priority to US17/488,155 priority patent/US20220100493A1/en
Publication of CN114362981A publication Critical patent/CN114362981A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/03Protecting confidentiality, e.g. by encryption
    • 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/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0869Network architectures or network communication protocols for network security for authentication of entities for achieving mutual authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint

Abstract

本公开提供一种物联网终端设备的升级方法及相关设备,包括:确定监督设备并与所述监督设备之间进行双向验证;响应于双向验证通过,则向所述监督设备或终端设备发送第一升级指令,所述第一升级指令包括被加密处理的升级文件、服务器身份证明信息和第一校验值。

Description

物联网终端设备的升级方法及相关设备
技术领域
本公开涉及物联网技术领域,尤其涉及一种物联网终端设备的升级方法及相关设备。
背景技术
对于物联网设备而言,硬件在出厂之后就无法变更,为了扩展其能力和弥补漏洞,应用和固件的升级是十分必要的。传统的升级方式要求物联网设备在硬件上留出物理接口,升级时在现场通过线缆连接设备进行应用和固件的升级。传统方式费时费力,随着物联网规模的扩大,这种方式已不具有良好的可行性,因此越来越多的物联网设备选择空中下载技术(Over-The-Air,简称OTA)升级方式。
OTA升级方式在物联网设备端仅保留了无线通信接口来升级程序,服务端将新的应用/固件通过无线通信下发到物联网终端设备,终端设备用新的应用/固件代码代替旧的代码,完成升级。
在OTA升级过程中,由于数据在空气中无线传播,任何人都可以接收数据进行分析,任何人都可以在相同频段试图发送自己的数据来干扰或模仿OTA升级,意味着潜在攻击者可以试图破解下发的应用/固件代码或者向终端设备注入非法的应用/固件,所以OTA升级中的安全性尤为重要。
在一些情况下,为了提升OTA升级的安全性,要求服务器与终端设备一对一建立双向连接,导致升级过程缓慢、低效。
发明内容
有鉴于此,本公开提出了一种物联网终端设备的升级方法及相关设备。
本公开的第一方面,提供了一种物联网终端设备的升级方法,应用于服务器,包括:
确定监督设备并与所述监督设备之间进行双向验证;
响应于双向验证通过,则向所述监督设备或终端设备发送第一升级指令,所述第一升级指令包括被加密处理的升级文件、服务器身份证明信息和第一校验值。
可选地,若所述监督设备为物联网系统中的网关设备,则与所述监督设备之间进行双向验证包括:
向所述监督设备发送第二升级指令,所述第二升级指令包括被加密处理的服务器身份证明信息;
接收所述监督设备返回的第一确认信息,所述第一确认信息包括被加密处理的监督设备身份证明信息;
对所述第一确认信息进行解密处理并核对所述监督设备身份证明信息。
可选地,所述物联网终端设备的升级方法,还包括:
接收所述监督设备返回的第二确认信息,所述第二确认信息包括被加密处理的监督设备身份证明信息以及各终端设备返回的终端设备身份证明信息及第二校验值;
比对所述第一校验值和所述第二校验值;
若所述第一校验值和所述第二校验值核对一致,则向所述监督设备发送第一升级完成确认信息;
若所述第一校验值和所述第二校验值核对不一致,则记录核对不一致的终端设备的终端设备身份证明信息,并输出第一警告信息。
可选地,若所述监督设备为物联网系统中的终端设备,则确定监督设备并与所述监督设备之间进行双向验证包括:
向至少一个局域网内的至少两个终端设备发送第三升级指令和竞选指令,所述第三升级指令包括被加密处理的服务器身份证明信息,所述竞选指令用以使所述至少一个局域网内的至少两个终端设备竞选出监督设备;
接收竞选成为监督设备的终端设备返回的第三确认信息以及所述至少一个局域网内的非监督设备中至少一个终端设备的第四确认信息,所述第三确认信息包括被加密处理的所述竞选成为监督设备的终端设备的终端设备身份证明信息,所述第四确认信息包括被加密处理的所述非监督设备中至少一个终端设备接收到的所述竞选成为监督设备的终端设备的终端设备身份证明信息;
对所述第三确认信息和第四确认信息进行解密处理并比对所述第三确认信息和第四确认信息中的终端设备身份证明信息;
响应于所述终端设备身份证明信息核对通过,则将所述竞选成为监督设备的终端设备确定为所述监督设备。
可选地,向所述监督设备发送第二升级指令,包括:
采用空中下载技术,以组播形式向双向验证通过的监督设备发送所述第二升级指令。
本公开的第二方面,提供了一种物联网终端设备的升级方法,应用于监督设备,包括:
与服务器之间进行双向验证;
响应于双向验证通过,接收所述服务器发送的第一升级指令,所述第二升级指令包括被加密处理的升级文件、服务器身份证明信息和第一校验值;
对所述第一升级指令进行解密处理并核对所述服务器身份证明信息;
若所述服务器身份证明信息核对通过且所述监督设备为物联网系统中的网关设备,则向所述监督设备所属局域网内的终端设备发送第四升级指令,所述第四升级指令包括被加密处理的所述升级文件、所述服务器身份证明信息、所述监督设备身份证明信息和所述第一校验值。
可选地,若所述监督设备为物联网系统中的网关设备,则与服务器之间进行双向验证包括:
接收服务器发起的第二升级指令,所述第二升级指令包括被加密处理的服务器身份证明信息;
对所述第二升级指令进行解密处理并核对所述服务器身份证明信息;
若所述服务器身份证明信息核对通过,则向所述服务器返回第一确认信息,所述第一确认信息包括被加密处理的监督设备身份证明信息。
可选地,所述物联网终端设备的升级方法,还包括:
接收所述监督设备所属局域网内各终端设备返回的第五确认信息,所述第五确认信息包括被加密处理的终端设备身份证明信息和第二校验值;
对所述第五确认信息进行解密处理并核对所述终端设备身份证明信息;
若所述终端设备身份证明信息核对通过,则向所述服务器返回第二确认信息,所述第二确认信息包括被加密处理的所述监督设备身份证明信息以及所述监督设备所属局域网内各终端设备返回的终端设备身份证明信息及第二校验值。
可选地,所述终端设备身份证明信息核对通过之后,还包括:
比对所述第一校验值和所述第二校验值;
若所述第一校验值和所述第二校验值核对一致,则向所述服务器返回第二确认信息;
若所述第一校验值和所述第二校验值核对不一致,则向记录核对不一致的终端设备的终端设备身份证明信息,并向所述服务器返回第二警告信息。
可选地,所述第二确认信息还包括被加密处理的所述监督设备接收到的所述第一校验值,以供所述服务器进行核对。
可选地,所述物联网终端设备的升级方法,还包括:
接收所述服务器发送的第一升级完成确认信息;
根据所述第一升级完成确认信息,向相应的所述终端设备发送第二升级完成确认信息。
本公开的第三方面,提供了一种物联网终端设备的升级方法,应用于终端设备,包括:
接收服务器发送的第一升级指令或监督设备发送的第四升级指令,所述第一升级指令包括被加密处理的升级文件、服务器身份证明信息和第一校验值,所述第四升级指令包括被加密处理的升级文件、服务器身份证明信息、监督设备身份证明信息和第一校验值;
对所述第一升级指令进行解密处理并核对所述服务器身份证明信息,或者,对第四升级指令进行解密处理并核对所述服务器身份证明信息和所述监督设备身份证明信息;
响应于身份证明信息核对通过,则计算第二校验值并比对所述第一校验值和第二校验值;
响应于所述第一校验值和第二校验值核对一致,则根据所述升级文件进行升级。
可选地,所述物联网终端设备的升级方法,还包括:
向所述监督设备返回第五确认信息,所述第五确认信息包括被加密处理的终端设备身份证明信息和所述第二校验值。
可选地,所述第一校验值和第二校验值核对一致之后,还包括:
确定是否接收到所述监督设备发送的第二升级完成确认信息;
若接收到所述第二升级完成确认信息,则根据所述升级文件进行升级;
若未接收到所述第二升级完成确认信息,则不进行升级。
可选地,所述物联网终端设备的升级方法,还包括:
接收服务器发送的第三升级指令和竞选指令,所述第三升级指令包括被加密处理的服务器身份证明信息;
向所属局域网内其他终端设备广播第一竞选信息,并接收所属局域网内其他终端设备广播的第二竞选信息;
比对所述第一竞选信息和第二竞选信息;
若所述第一竞选信息大于所述第二竞选信息,则向所述服务器发送竞选成为监督设备的第三确认信息,所述第三确认信息包括被加密处理的终端设备身份证明信息;
若所述第一竞选信息小于所述第二竞选信息,则向所述服务器发送其他终端设备竞选成为监督设备的第四确认信息,所述第四确认信息包括被加密处理的接收到的竞选成为监督设备的终端设备的终端设备身份证明信息;
若所述第一竞选信息等于所述第二竞选信息,则随机增加或减小所述第一竞选信息并再次广播增加或减小后的所述第一竞选信息。
本公开的第四方面,提供了一种服务器,包括:
通信单元,用于与监督设备进行通信;
存储器,用于存储一组指令;以及
至少一个处理器,配置为执行该组指令以进行第一方面所述的方法。
本公开的第五方面,提供了一种监督设备,包括:
通信单元,用于与服务器和终端设备进行通信;
存储器,用于存储一组指令;以及
至少一个处理器,配置为执行该组指令以进行第二方面所述的方法。
本公开的第六方面,提供了一种终端设备,包括:
通信单元,用于与监督设备进行通信;
存储器,用于存储一组指令;以及
至少一个处理器,配置为执行该组指令以进行第三方面所述的方法。
本公开的第七方面,提供了一种物联网系统,包括:
第四方面所述的服务器;
至少一个第五方面所述的监督设备;以及
至少一个第六方面所述的终端设备;
其中,所述服务器与所述终端设备通过所述监督设备完成通信。
附图说明
为了更清楚地说明本公开或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本公开提供的物联网系统的一个示例性结构示意图;
图2为本公开提供的物联网终端设备的升级方法的一个示例性流程示意图;
图3为本公开提供的物联网终端设备的升级方法的另一个示例性流程示意图;
图4为本公开提供的物联网终端设备的升级方法的又一个示例性流程示意图;
图5本公开提供的物联网终端设备的升级方法的再一个示例性流程示意图;
图6为本公开提供的物联网终端设备的升级方法的一个示例性流程示意图;
图7为本公开提供的物联网终端设备的升级方法的另一个示例性流程示意图;
图8为本实施例所提供的一种更为具体的服务器的电子设备硬件结构示意图;
图9为本实施例所提供的一种更为具体的监督设备的电子设备硬件结构示意图;
图10为本实施例所提供的一种更为具体的终端设备的电子设备硬件结构示意图。
具体实施方式
为使本公开的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本公开进一步详细说明。
需要说明的是,除非另外定义,本公开使用的技术术语或者科学术语应当为本公开所属领域内具有一般技能的人士所理解的通常意义。本公开中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。
图1示出了本公开提供的物联网系统的一个示例性结构示意图。如图1所示,所述物联网系统100包括服务器102、监督设备104和终端设备106。
所述服务器102是发起OTA升级的设备,使用者将需要更新升级的代码文件(升级文件)发布到服务器102上,执行更新操作,服务器102将执行具体的升级发布工作。可选地,服务器102可以是单独的服务器或服务器集群。
服务器102可以存储服务器身份证明信息(例如,服务器证书),所述服务器身份证明信息可以是固定的或定时更新的,也可以是每次更新升级时由发布者提供的。
服务器102可以存储加密密钥,若采用非对称加密方式,服务器102可以存储服务器私钥,该服务器私钥是服务器102的非对称加密的密钥对中的一个,该服务器私钥可以是一个固定的私钥,也可以针对每个监督设备104而分别设置的一系列私钥(各监督设备104对应的私钥是不同的),还可以是按照事先约定好的方式而更新变化的。服务器102还可以存储各监督设备104的监督设备公钥,用于对监督设备104发送的加密信息进行解密。
监督设备104负责双向校验的中间环节。可选地,监督设备104可以是专用网关,也可以是某个选定的终端设备106。
监督设备104可以存储不可更改的、唯一的监督设备身份证明信息(例如,监督设备证书),这个监督设备身份证明信息可以是事先烧录到监督设备中的,也可以是由监督设备104中的不可复制功能(Physical Unclonable Function,简称PUF)器件提供的。
监督设备104可以存储加密密钥,若采用非对称加密方式,服务器102可以存储监督设备私钥,该监督设备私钥是非对称加密的密钥对中的一个,每个监督设备104的监督设备私钥是不同的。该监督设备私钥可以是固定的,也可以是按照约定好的方式而更新变化的。监督设备104还可以存储服务器102的服务器公钥,用于对服务器102发送的加密信息进行解密。监督设备104还可以存储各终端设备106的终端设备公钥,用于对各终端设备106发送的加密信息进行解密。
终端设备106是底层的物联网设备节点。
终端设备106可以存储不可更改的、唯一的终端设备身份证明信息(例如,终端设备证书),这个终端设备身份证明信息可以是事先烧录到终端设备中的,也可以是由终端设备106中的PUF器件提供的。
终端设备106可以存储加密密钥,若采用非对称加密方式,终端设备106可以存储终端设备私钥,该终端设备私钥是非对称加密的密钥对中的一个,每个终端设备106的终端设备私钥是不同的。该私钥可以是固定的,也可以是按照约定好的方式变化的。终端设备106还可以存储监督设备104的监督设备公钥,用于对监督设备104发送的加密信息进行解密。终端设备106还可以存储服务器102的服务器公钥,用于对由监督设备104转发的被服务器102加密的信息进行解密。对于同一局域网中的不同终端设备106,可以使用相同或不同的终端设备私钥。
监督设备104和服务器102通过网络连接。终端设备106一般通过专用或通用网关和服务器102进行网络连接,连接到同一网关的终端设备106组成一个局域网,一个局域网中可以有一个或多个监督设备104。在一些情况下,优选一个监督设备104以减少服务器102需要与监督设备104建立双向连接数量。在采用通用网关的情形,同一局域网的终端设备106之间可以直接或通过网关进行相互通信,因此,在这种场景下,若选择终端设备106的其中之一作为所述监督设备104,则监督设备104与终端设备106之间可以直接或通过网关进行相互通信。
在一些实施例中,所述物联网系统100中的各设备(例如,服务器102、监督设备104、终端设备106)各自存储相应的敏感信息(例如,身份证明信息、加密密钥),这些敏感信息可以存储在各设备的安全存储区并可以在存储时进行加密处理。一般地,各设备仅存储自己的身份证明信息和自己的私钥,以及其他设备的公钥,不保存其他设备的私钥。在一些实施例中,若从终端设备106中选取一个或多个作为监督设备104时,终端设备106需要预先存储两对密钥,其中,第一密钥对在同一局域网中的各终端设备106是共用的,即,同一局域网中的各终端设备106的第一密钥对是相同的,第二密钥对是各终端设备的独立的唯一的密钥对,用于在该终端设备106竞争成为监督设备104时作为监督设备密钥。
图2示出了本公开提供的物联网终端设备的升级方法的一个示例性流程示意图,示例性地提供了使用专用网关作为监督设备104时的物联网终端设备的升级方法200的工作过程。
一般地,所述服务器102与监督设备104建立的每次连接可以对一个局域网中的全部终端设备106发起升级。
如图2所示,在设备验证阶段202,主要执行以下步骤。
服务器102向监督设备104发送第二升级指令2002,附带服务器身份证明信息(例如服务器证书),全部信息用监督设备公钥加密。
监督设备104用监督设备私钥进行解密,核对服务器身份证明信息后,向服务器102回复第一确认信息2004以确认连接,第一确认信息2004中附带监督设备身份证明信息(例如,监督设备证书),全部信息用服务器公钥加密。
服务器102用服务器私钥进行解密,核对监督设备身份证明信息。
核对通过后,至此,建立了服务器102和监督设备104之间的双向可靠连接,从而保证了服务器与监督设备之间的通信安全。
如图2所示,在升级文件下发阶段204,主要执行以下步骤。
服务器102向监督设备104下发第一升级指令2006,所述第一升级指令2006包括升级文件、第一校验值、服务器身份证明信息,还可以包括分发指令,所有信息用监督设备公钥加密。在一些实施例中,所述第一校验值可以是按照预设的校验值算法计算得到的,具体计算方式可以采用SHA-1、SHA-2、MD5等进行计算,可选地,所述第一校验值可以是根据升级文件的相关信息而计算得到的,当然,在一些实施例中,也可以是根据服务器身份证明信息而计算得到的,还可以是根据所述第一升级指令2006中的所有信息计算得到的,等等,具体的用于计算校验值的数据可以根据需要选择。
监督设备104用监督设备私钥进行解密,核对服务器身份证明信息,在核对通过后,向监督设备104所属局域网内的各个终端设备106发送第四升级指令2008,以将需要分发的升级文件、第一校验值、服务器身份证明信息分发给监督设备104所属局域网内的各个终端设备106,同时附加监督设备身份证明信息,并使用终端设备公钥加密。
至此,完成了升级文件下发过程。
如图2所示,在升级确认阶段206,主要执行以下步骤。
终端设备106用终端设备私钥进行解密,核对服务器身份证明信息、监督设备身份证明信息,并得到升级文件,计算升级文件的第二校验值,与接收到的第一校验值比对。
作为一个可选实施例,在单向验证方案中,如果两个校验值比对一致,到此即可确认升级。
每个终端设备106都向监督设备返回第五确认信息2010,以将计算得到的第二校验值、终端设备身份证明信息发送给监督设备104,并用监督设备公钥加密。
监督设备104核对每个终端设备106的终端设备身份证明信息,比对每个终端设备106回传的第二校验值和监督设备104从服务器102收到的第一校验值。
在一些实施例中,监督设备104在终端设备身份证明信息核对通过且校验值比对一致后,向服务器发送第二确认信息2012,以向将汇总的每个终端设备106的终端设备身份证明信息和第二校验值、监督设备104从服务器102收到的第一校验值、监督设备身份证明信息经加密后回传给服务器102进行确认。
可选地,服务器102和对每个终端设备106的终端设备身份证明信息和第二校验值、监督设备证明信息核对无误,回复第一升级完成确认指令2014给监督设备104;否则记录出现错误的终端设备的身份证明信息,并向监督设备104或指定设备发出第一警告信息,以提醒相关人员系统存在安全问题。
监督设备104根据服务器102的第一升级完成确认指令2014,或者自己对校验值的核对一致的结果,发送第二升级完成确认指令2016给每个终端设备106,否则记录终端设备身份证明信息并向服务器102发送第二警告信息以汇报错误。
至此,完成整个升级过程。
需要说明的是,上述提及的所有加密过程采用的是非对称加密方式,实际上,也可以使用混合加密方式,即用一个随机的对称密钥对信息加密,然后将对称密钥用非对称加密方式加密,传送信息时额外附加经过非对称加密的对称密钥。
还需要说明的是,上述所有非对称加密/解密过程,依赖于设备中存储的公钥和私钥。对于一个非对称加密过程来说,收发双方可以使用事先确定的固定的密钥对,也可以使用按照事先约定规律变化的密钥对,例如在信息中附加时间等指示信息,收到一方根据这些指示信息,使用事先约定的方式确定需要的解密密钥。
此外,上述核对证书信息的过程,可以是比对证书信息/证书校验值与自身所存储的证书/证书校验值白名单(对于终端设备106、监督设备104,需要事先烧录并固定;对于服务器102,需要安装部署终端设备106时人工监督下注册),也可以是在证书信息内自蕴含某种特定规律,还可以是前面两种方式的结合。
还需要说明的是,本实施例中,监督设备104是专用网关,在一些实施例中,部署终端设备106时,在人工监督下,将该专用网关的证书信息加入终端设备106的监督设备证书白名单,将终端设备106的证书信息一一加入监督设备104的终端设备证书白名单。同时,部署终端设备106时,在人工监督下,将终端设备106统一的终端设备公钥存入监督设备104,或将每个终端设备106各自的终端设备私钥对应的终端设备公钥一一存入监督设备104。
从上述实施例可以看出,本公开提供的物联网终端设备的升级方法,采用分级、分布式的双向验证的OTA升级安全性验证机制,通过在一个局域网内选出监督设备并在服务器和监督设备之间进行双向验证确认双方的合法性,同时,下发升级文件后,每个终端设备进行计算校验值和身份核对,并且,每个终端设备向监督设备发送计算出来的校验值,由监督设备自行或向服务器再确认这些校验值,确认无误后才实施升级文件对旧文件的替换,该技术方案同时具有双向验证机制的高安全性,并用分级、分布式的方法提高了OTA升级的速度。
本公开实施例提供的物联网终端设备的升级方法,将普通的双向认证拆分成两级:服务器-监督设备、监督设备-终端设备。服务器和监督设备之间采用双向认证;监督设备作为专用网关,一般计算存储资源较多、电源充足、并且更可信任(得到更好防护),因此将监督设备当成中心,局域网中各终端设备一一上报自己的信息进行双向确认。这样就把双向确认的末梢分布到网关上,提高了整体的速度。
图3示出了本公开提供的物联网终端设备的升级方法的另一个示例性流程示意图,示例性地提供了使用终端设备作为监督设备104时的物联网终端设备的升级方法300的工作过程。
在一些实施例中,属于同一局域网的每个终端设备106存储相同的第一终端设备密钥对,包括第一终端设备私钥和对应的第一终端设备公钥,每个终端设备106还可以具有自己的独立的第二终端设备密钥对,包括第二终端设备私钥和对应的第二终端设备公钥。
每次连接服务器可以对一个局域网中的部分或全部节点发起升级。
如图3所示,在设备选择与验证阶段302,主要执行以下步骤。
服务器102向局域网内待升级的终端设备106发送第三升级指令3002,附带服务器证书;并向所有终端设备106发送竞选指令3004,全部信息用终端设备通用的公钥(第一终端设备公钥)加密。
所有收到竞选指令的终端设备106,依次在局域网内广播自己的用终端设备通用公钥(第一终端设备公钥)加密的第一竞选信息(这样每个终端设备都可用自己保存的第一终端设备私钥进行解密)和用服务器公钥加密的终端设备证书(这样其他终端设备只可记录该密文但不可解密)。
可选地,所述第一竞选信息是用于选出监督设备的信息,该信息可以是终端设备106的与计算能力相关的指标、或终端设备106的电源信息、或终端设备106的可信任指标,等等,例如,所述第一竞选信息可以是终端设备106的电池剩余电量信息。
每个终端设备106都可以比较自己的第一竞选信息和收到的别的终端设备106的第二竞选信息。如果自己的第一竞选信息和收到的某个第二竞选信息相同,随机增加或减少一点自己的第一竞选信息的值再广播出去。这样每个终端设备106都能知道谁的竞选信息的取值最大(包括竞选信息最大的终端设备它自己),以及它对应的用服务器公钥加密的终端设备证书。
竞选信息最大的终端设备106将自己当成监督设备104,其终端设备证书就是监督设备证书。
可选地,竞选信息最大的终端设备106将自己的终端设备独立私钥(第二终端设备私钥)当作监督设备私钥,将自己的终端设备独立公钥(第二终端设备公钥)当作监督设备公钥,然后将监督设备公钥、用服务器公钥加密的监督设备证书信息,用终端设备通用公钥(第二终端设备私钥)加密后广播给局域网内其他终端设备106。
监督设备104向服务器102报告选定的结果(第三确认信息3006),附上自己的监督设备证书信息,用服务器公钥加密。至少一个(可以按事先约定好的方法选出,例如竞选信息第二高的终端设备106)非监督设备的终端设备106也向服务器102报告选定的结果(第四确认信息3008),附上它所认定的监督设备104的用服务器公钥加密的监督设备证书,以及自己的终端设备证书,用服务器公钥加密。
服务器102收到前述至少两条信息后,确认同一终端设备作为监督设备104,则向监督设备104和其他终端设备106发送确认选定结果(第六确认信息3010和第七确认信息3012,其中均包括用服务器公钥加密的监督设备证书),附上服务器证书信息作为验证。前面说到,每个终端设备106都能知道谁的竞选信息最大以及它对应的用服务器公钥加密的终端设备证书,因此这里服务器102可以将收到的至少两条信息中的用服务器公钥加密的监督设备证书信息比对是否一致。
至此,选定了监督设备104并完成了服务器102和监督设备104之间的双向验证。
如图3所示,在升级文件下发阶段304,主要执行以下步骤。
服务器102向所有待升级的终端设备106和监督设备104发送第一升级指令3014,包括升级文件、升级文件的第一校验值、服务器证书,用终端设备通用公钥(第一终端设备公钥)加密。
待升级的终端设备106和监督设备104用终端设备通用私钥(第一终端设备私钥)解密后,计算升级文件的第二校验值,和第一校验值比对。
如图3所示,在升级确认阶段306,主要执行以下步骤。
待升级的终端设备106将第二校验值、自己的用服务器公钥加密的终端设备证书用终端设备通用公钥(第一终端设备公钥)加密后(第五确认信息3016)发送给监督设备104,监督设备104汇总后将第二确认信息3018(如果监督设备104也待升级的话,可以附加上自己计算的第二校验值和监督设备证书信息)发送给服务器102验证。
服务器102验证无误后,向所有待升级的终端设备106和监督设备104发送第一升级完成确认指令3020,附带自己的服务器证书信息。待升级的终端设备106和监督设备104得到确认后可以实施用升级文件代替旧文件的升级行为。
可选地,待升级设备也可以将第二校验值和用服务器公钥加密的终端设备证书信息,经过监督设备公钥加密后发给监督设备104。
可选地,监督设备104也可以将汇总的每个终端设备106的第二校验值和自己收到的第一校验值比对,从而发现错误、立即终止升级并上报给服务器102。
在一些实施例中,任何时候监督设备104、终端设备106发现错误,都应立即将相关信息上报给服务器102;服务器102发现或收到错误信息,都应记录并给出警报。
需要说明的是,上述提及的所有加密过程默认是非对称加密方式,实际上,也可以使用混合加密方式,即用一个随机的对称密钥对信息加密,然后将对称密钥用非对称加密方式加密,传送信息时额外附加经过非对称加密的对称密钥。相关技术属于公知技术。
还需要说明的是,上述所有非对称加密/解密过程,依赖于设备中存储的公钥和私钥。对于一个非对称加密过程来说,收发双方可以使用事先确定的固定的密钥对,也可以使用按照事先约定规律变化的密钥对,例如在信息中附加时间等指示信息,收到一方根据这些指示信息,使用事先约定的方式确定需要的解密密钥。相关技术属于公知技术。
此外,上述核对证书信息的过程,可以是比对证书信息/证书校验值与自身所存储的证书/证书校验值白名单(对于终端设备、监督设备,需要事先烧录并固定;对于服务器,需要安装部署终端设备时人工监督下注册),也可以证书信息内自蕴含某种特定规律,也可以是前面两种方式的结合。相关技术属于公知技术。
从上述实施例可以看出,本公开提供的物联网终端设备的升级方法,采用分级、分布式的双向验证的OTA升级安全性验证机制,通过在一个局域网内选出监督设备并在服务器和监督设备之间进行双向验证确认双方的合法性,同时,下发升级文件后,每个终端设备进行计算校验值和身份核对,并且,每个终端设备向监督设备发送计算出来的校验值,由监督设备自行或向服务器再确认这些校验值,确认无误后才实施升级文件对旧文件的替换,该技术方案同时具有双向验证机制的高安全性,并用分级、分布式的方法提高了OTA升级的速度。
本实施例提供的物联网终端设备的升级方法,没有专用网关可做监督设备,故需选定一个终端设备充当监督设备,利用终端设备充当的监督设备,不应当知晓其他终端设备的证书信息,反过来也一样,所以用经过服务器公钥加密的证书信息作为代替,可以比对和区分,但不能解析;此外,终端设备充当的监督设备不如专用网关可信任,除了汇总其他终端设备发来的信息,其他信息尽量通过服务器直接组播或单播到终端设备,监督设备也只能自行否决升级而不能自行确认升级。
针对一般的OTA升级方案,终端设备仅在本地验证收到的升级文件和服务器证书/签名等身份信息,安全性完全依赖于服务器信息不泄漏;为此,本公开提供的物联网终端设备的升级方法,采用了双向验证,终端设备需要将自身收到的数据向监督设备寻求验证,监督设备向服务器寻求验证。
针对某些双向验证的OTA升级方案,服务器需要和每个待升级的设备一一建立双向连接,升级速度较慢,不适合大量物联网设备的批量升级;为此,本公开提供的物联网终端设备的升级方法,将双向验证分为两级,由监督设备归纳后向服务器寻求验证,升级速度大大提高。
在某些现有方案中,服务器和终端设备之间的无线连接被物理隔断期间容易被攻破,重新连接后难以被发现;为此,本公开提供的物联网终端设备的升级方法,在升级期间通过稳定连接的监督设备监督升级过程,并可以对重新连接的设备进行检验。
由此可见,本公开提供的物联网终端设备的升级方法,获得了相当于双向验证OTA升级方式的安全性,同时,本公开提供的物联网终端设备的升级方法,其验证的过程下放到终端设备和监督设备层面,服务器需要建立的双向连接数从终端设备个数下降到监督设备的局域网个数,服务器可以组播形式发起OTA升级,升级速度明显高于普通双向验证OTA升级方式(服务器与终端设备一对一建立连接的升级方式);此外,采用本公开提供的物联网终端设备的升级方法,还可以及时发现被篡改、攻破的终端设备,即便该终端设备是在离线时被攻击的。
本公开提供的物联网终端设备的升级方法采用双向验证,实施一次非法升级需要破解服务器证书信息、服务器加密密钥、拟攻击的终端设备的证书信息、拟攻击的终端设备的加密密钥,破译源文件至少需要破解终端设备解密密钥。如果想让非法升级不被发现,还需要隔断网关或终端设备与合法服务器之间的数据链路。
本公开提供的物联网终端设备的升级方法,将终端设备与服务器之间的双向验证,拆分为监督设备与服务器之间、终端设备与监督设备之间的双向验证,在安全性上和终端设备与服务器直接双向验证的方案相当,但本方案的分级、分布式方案使得服务器需要管理的双向连接数大大降低,OTA升级依然可以采用组播方式而非一次进行,提高了大量物联网设备OTA升级的速度。
图4示出了本公开提供的物联网终端设备的升级方法的一个示例性流程示意图。
如图4所示,所述物联网终端设备的升级方法400,应用于服务器102且监督设备104为网关设备,所述方法400包括:
步骤402:向监督设备104发送第二升级指令2002,所述第二升级指令2002包括被加密处理的服务器身份证明信息(例如,服务器证书);可选地,加密方式可以是对称加密、非对称加密或混合加密;
步骤404:接收所述监督设备104返回的第一确认信息2004,所述第一确认信息2004包括被加密处理的监督设备身份证明信息(例如,监督设备证书);
步骤406:对所述第一确认信息2004进行解密处理并核对所述监督设备身份证明信息;
步骤408:若所述监督设备身份证明信息核对通过,则向所述监督设备104发送第一升级指令2006,所述第一升级指令2006包括被加密处理的升级文件、所述服务器身份证明信息和第一校验值。可选地,所述校验值可以根据所述升级文件计算得到,计算校验值采用的方法可以是SHA-1、SHA-2、MD5等。
此外,若所述监督设备身份证明信息核对不通过,则可以停止升级。
从上述实施例可以看出,本公开提供的物联网终端设备的升级方法,通过使服务器与监督设备建立双向安全连接,保证了服务器与监督设备之间的安全性;同时,通过让监督设备向终端设备分发升级文件,相较于服务器直接向终端设备下发升级文件,减少了双向连接数量,提升了升级速度。
在一些实施例中,所述物联网终端设备的升级方法400,还包括:
步骤410:接收所述监督设备104返回的第二确认信息2012,所述第二确认信息2012包括被加密处理的监督设备身份证明信息以及各终端设备106返回的终端设备身份证明信息(例如终端设备证书)及第二校验值;可选地,所述第二校验值是终端设备106根据其接收到的升级文件计算得到;
步骤412:比对所述第一校验值和所述第二校验值;
步骤414:若所述第一校验值和所述第二校验值核对一致,则向所述监督设备104发送第一升级完成确认信息2014;
步骤416:若所述第一校验值和所述第二校验值核对不一致,则记录核对不一致的终端设备106的终端设备身份证明信息,并输出第一警告信息。
在本实施例中,除了核对身份证明信息外,对校验值进行比对,当校验值核对不一致时,发出第一警告信息,从而能够快速发现安全问题,进而及时进行相应处理。
可选地,向所述监督设备104发送第一升级指令,包括:
采用空中下载技术(Over-The-Air,简称OTA),以组播形式向监督设备身份证明信息核对通过的监督设备发送所述第一升级指令2006,从而可以提高升级速度。
在一些实施方式中,若所述监督设备104为物联网系统100中的终端设备106,则确定监督设备104并与所述监督设备104之间进行双向验证包括:
向至少一个局域网内的至少两个终端设备106发送第三升级指令3002和竞选指令3004,所述第三升级指令3002包括被加密处理的服务器身份证明信息,所述竞选指令3004用以使所述至少一个局域网内的至少两个终端设备106竞选出监督设备104;
接收竞选成为监督设备104的终端设备返回的第三确认信息3006以及所述至少一个局域网内的非监督设备中至少一个终端设备106的第四确认信息3008,所述第三确认信息3006包括被加密处理的所述竞选成为监督设备的终端设备的终端设备身份证明信息,所述第四确认信息3008包括被加密处理的所述非监督设备中至少一个终端设备接收到的所述竞选成为监督设备的终端设备的终端设备身份证明信息;
对所述第三确认信息3006和第四确认信息3008进行解密处理并比对所述第三确认信息3006和第四确认信息3008中的终端设备身份证明信息;
响应于所述终端设备身份证明信息核对通过,则将所述竞选成为监督设备的终端设备确定为所述监督设备104。
图5示出了本公开提供的物联网终端设备的升级方法的一个示例性流程示意图。
如图5所示,所述物联网终端设备的升级方法500,应用于监督设备104且所述监督设备104为物联网系统100中的网关设备,包括:
步骤502:接收服务器发起的第二升级指令2002,所述第二升级指令2002包括被加密处理的服务器身份证明信息;
步骤504:对所述第二升级指令2002进行解密处理并核对所述服务器身份证明信息;
步骤506:若所述服务器身份证明信息核对通过,则向所述服务器102返回第一确认信息2004,所述第一确认信息2004包括被加密处理的监督设备身份证明信息;
步骤508:接收所述服务器102发送的第一升级指令2006,所述第一升级指令2006包括被加密处理的升级文件、所述服务器身份证明信息和第一校验值;
步骤510:对所述第一升级指令2006进行解密处理并核对所述服务器身份证明信息;
步骤512:若所述服务器身份证明信息核对通过,则向所述监督设备所属局域网内的终端设备106发送第四升级指令2008,所述第四升级指令2008包括被加密处理的所述升级文件、所述服务器身份证明信息、所述监督设备身份证明信息和所述第一校验值。
从上述实施例可以看出,本公开提供的物联网终端设备的升级方法,通过使服务器与监督设备建立双向安全连接,保证了服务器与监督设备之间的安全性;同时,通过让监督设备向终端设备分发升级文件,相较于服务器直接向终端设备下发升级文件,减少了双向连接数量,提升了升级速度。
在一些实施例中,所述物联网终端设备的升级方法500,还包括:
步骤514:接收所述监督设备所属局域网内各终端设备106返回的第五确认信息2010,所述第五确认信息2010包括被加密处理的终端设备身份证明信息和第二校验值;
步骤516:对所述第五确认信息2010进行解密处理并核对所述终端设备身份证明信息;
步骤518:若所述终端设备身份证明信息核对通过,则向所述服务器102返回第二确认信息2012,所述第二确认信息2012包括被加密处理的所述监督设备身份证明信息以及所述监督设备所属局域网内各终端设备106返回的终端设备身份证明信息及第二校验值。
在本实施例中,除了核对身份证明信息外,第二校验值用于对校验值进行比对,当校验值核对不一致时,发出第一警告信息,从而能够快速发现安全问题,进而及时进行相应处理。
在一些实施例中,所述物联网终端设备的升级方法500,还包括:
步骤520:接收所述服务器102发送的第一升级完成确认信息2014;
步骤522:根据所述第一升级完成确认信息2014,向相应的所述终端设备106发送第二升级完成确认信息2016。
在本实施例中,通过向终端设备106反馈第二升级完成确认信息2016,使得终端设备确认安全完成升级。
在一些实施例中,所述终端设备身份证明信息核对通过之后,还可包括以下步骤:
比对所述第一校验值和所述第二校验值;
若所述第一校验值和所述第二校验值核对一致,则向所述服务器102返回第二确认信息2012;
若所述第一校验值和所述第二校验值核对不一致,则向记录核对不一致的终端设备106的终端设备身份证明信息,并向所述服务器102返回第二警告信息。
在本实施例中,除了核对身份证明信息外,对校验值进行比对,当校验值核对不一致时,发出第二警告信息,从而能够快速发现安全问题,进而及时进行相应处理。
可选地,所述第二确认信息2012还可以包括被加密处理的所述监督设备104接收到的所述第一校验值,以供所述服务器102进行核对。
图6示出了本公开提供的物联网终端设备的升级方法的一个示例性流程示意图。
如图6所示,所述物联网终端设备的升级方法600,应用于终端设备106且所述监督设备104为物联网系统100中的网关设备,包括:
步骤602:接收监督设备104发送的第四升级指令2008,所述第四升级指令2008包括被加密处理的升级文件、服务器身份证明信息、监督设备身份证明信息和第一校验值;
步骤604:对所述第四升级指令2008进行解密处理并核对所述服务器身份证明信息和所述监督设备身份证明信息;
步骤606:若所述服务器身份证明信息和所述监督设备身份证明信息均核对通过,则计算第二校验值并比对所述第一校验值和第二校验值;
步骤608:若所述第一校验值和第二校验值核对一致,则根据所述升级文件进行升级。此外,若所述第一校验值和第二校验值核对不一致,则不进行升级。
从上述实施例可以看出,本公开提供的物联网终端设备的升级方法,通过使服务器与监督设备建立双向安全连接,保证了服务器与监督设备之间的安全性;同时,通过让监督设备向终端设备分发升级文件,相较于服务器直接向终端设备下发升级文件,减少了双向连接数量,提升了升级速度;此外,通过校验值比对,保证了升级文件的安全性。
在一些实施例中,所述物联网终端设备的升级方法600,还包括:
步骤610:向所述监督设备104返回第五确认信息210,所述第五确认信息210包括被加密处理的终端设备身份证明信息和所述第二校验值。
在本实施例中,通过提供第二校验值用于对校验值进行比对,当校验值核对不一致时,可以发出警告信息,从而能够快速发现安全问题,进而及时进行相应处理。
在一些实施例中,所述第一校验值和第二校验值核对一致之后,还包括:
确定是否接收到所述监督设备104发送的第二升级完成确认信息2016;
若接收到所述第二升级完成确认信息2016,则根据所述升级文件进行升级;
若未接收到所述第二升级完成确认信息2016,则不进行升级。
本实施例中,仅当接收到第二升级完成确认信息2016才进行升级,进一步保证了升级的安全性。
图7示出了本公开提供的物联网终端设备的升级方法的一个示例性流程示意图。
如图7所示,所述物联网终端设备的升级方法700,应用于终端设备106且所述监督设备104为物联网系统100中的终端设备,包括:
步骤702:接收服务器发送的第一升级指令,所述第一升级指令包括被加密处理的升级文件、服务器身份证明信息和第一校验值;
步骤704:对所述第一升级指令进行解密处理并核对所述服务器身份证明信息;
步骤706:响应于所述服务器身份证明信息核对通过,则计算第二校验值并比对所述第一校验值和第二校验值;
步骤708:响应于所述第一校验值和第二校验值核对一致,则根据所述升级文件进行升级。
从上述实施例可以看出,本公开提供的物联网终端设备的升级方法,通过使服务器与监督设备建立双向安全连接,保证了服务器与监督设备之间的安全性;同时,通过让监督设备汇总终端设备的确认信息,提升了升级速度;此外,通过校验值比对,保证了升级文件的安全性。
在一些实施例中,参考图3,所述方法700还包括:
接收服务器102发送的第三升级指令3002和竞选指令3004,所述第三升级指令3002包括被加密处理的服务器身份证明信息;
向所属局域网内其他终端设备106广播第一竞选信息,并接收所属局域网内其他终端设备106广播的第二竞选信息;
比对所述第一竞选信息和第二竞选信息;
若所述第一竞选信息大于所述第二竞选信息,则向所述服务器102发送竞选成为监督设备的第三确认信息3006,所述第三确认信息3006包括被加密处理的终端设备身份证明信息;
若所述第一竞选信息小于所述第二竞选信息,则向所述服务器102发送其他终端设备竞选成为监督设备的第四确认信息3008,所述第四确认信息3008包括被加密处理的接收到的竞选成为监督设备的终端设备的终端设备身份证明信息;
若所述第一竞选信息等于所述第二竞选信息,则随机增加或减小所述第一竞选信息并再次广播增加或减小后的所述第一竞选信息,直至选出监督设备104。
需要说明的是,本公开的各方法实施例可以由单个设备执行,例如一台计算机或服务器等。本实施例的方法也可以应用于分布式场景下,由多台设备相互配合来完成。在这种分布式场景的情况下,这多台设备中的一台设备可以只执行本公开的方法中的某一个或多个步骤,这多台设备相互之间会进行交互以完成所述的方法。
本公开实施例还提供了一种服务器,所述服务器,包括:通信单元,用于与监督设备进行通信;存储器,用于存储一组指令;以及至少一个处理器,配置为执行该组指令以进行所述方法400。
图8示出了本实施例所提供的一种更为具体的服务器的电子设备硬件结构示意图,该服务器800可以包括:处理器802、存储器804、输入/输出接口806、通信接口808和总线810。其中处理器802、存储器804、输入/输出接口806和通信接口808通过总线810实现彼此之间在设备内部的通信连接。
处理器802可以采用通用的CPU(Central Processing Unit,中央处理器)、微处理器、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本公开实施例所提供的技术方案。
存储器804可以采用ROM(Read Only Memory,只读存储器)、RAM(Random AccessMemory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器804可以存储操作系统和其他应用程序,在通过软件或者固件来实现本公开实施例所提供的技术方案时,相关的程序代码保存在存储器804中,并由处理器802来调用执行。
输入/输出接口806用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。
通信接口808用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信。
总线810包括一通路,在设备的各个组件(例如处理器802、存储器804、输入/输出接口806和通信接口808)之间传输信息。
需要说明的是,尽管上述设备仅示出了处理器802、存储器804、输入/输出接口806、通信接口808以及总线810,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本公开实施例方案所必需的组件,而不必包含图中所示的全部组件。
本公开实施例还提供了一种监督设备,所述监督设备包括:通信单元,用于与服务器和终端设备进行通信;存储器,用于存储一组指令;以及至少一个处理器,配置为执行该组指令以进行所述方法500。
图9示出了本实施例所提供的一种更为具体的监督设备的电子设备硬件结构示意图,该监督设备900可以包括:处理器902、存储器904、输入/输出接口906、通信接口908和总线910。其中处理器902、存储器904、输入/输出接口906和通信接口908通过总线910实现彼此之间在设备内部的通信连接。
处理器902可以采用通用的CPU(Central Processing Unit,中央处理器)、微处理器、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本公开实施例所提供的技术方案。
存储器904可以采用ROM(Read Only Memory,只读存储器)、RAM(Random AccessMemory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器904可以存储操作系统和其他应用程序,在通过软件或者固件来实现本公开实施例所提供的技术方案时,相关的程序代码保存在存储器904中,并由处理器902来调用执行。
输入/输出接口906用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。
通信接口908用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信。
总线910包括一通路,在设备的各个组件(例如处理器902、存储器904、输入/输出接口906和通信接口908)之间传输信息。
需要说明的是,尽管上述设备仅示出了处理器902、存储器904、输入/输出接口906、通信接口908以及总线910,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本公开实施例方案所必需的组件,而不必包含图中所示的全部组件。
本公开实施例还提供了一种终端设备,所述终端设备包括:通信单元,用于与监督设备进行通信;存储器,用于存储一组指令;以及至少一个处理器,配置为执行该组指令以进行所述方法600或方法700。
图10示出了本实施例所提供的一种更为具体的终端设备的电子设备硬件结构示意图,该终端设备1000可以包括:处理器1002、存储器1004、输入/输出接口1006、通信接口1008和总线1010。其中处理器1002、存储器1004、输入/输出接口1006和通信接口1008通过总线1010实现彼此之间在设备内部的通信连接。
处理器1002可以采用通用的CPU(Central Processing Unit,中央处理器)、微处理器、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本公开实施例所提供的技术方案。
存储器1004可以采用ROM(Read Only Memory,只读存储器)、RAM(Random AccessMemory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器1004可以存储操作系统和其他应用程序,在通过软件或者固件来实现本公开实施例所提供的技术方案时,相关的程序代码保存在存储器1004中,并由处理器1002来调用执行。
输入/输出接口1006用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。
通信接口1008用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信。
总线1010包括一通路,在设备的各个组件(例如处理器1002、存储器1004、输入/输出接口1006和通信接口1008)之间传输信息。
需要说明的是,尽管上述设备仅示出了处理器1002、存储器1004、输入/输出接口1006、通信接口1008以及总线1010,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本公开实施例方案所必需的组件,而不必包含图中所示的全部组件。
上述对本公开特定实施例进行了描述。其他实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本公开的范围(包括权利要求)被限于这些例子;在本公开的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本公开的不同方面的许多其它变化,为了简明它们没有在细节中提供。
另外,为简化说明和讨论,并且为了不会使本公开难以理解,在所提供的附图中可以示出或可以不示出与集成电路(IC)芯片和其它部件的公知的电源/接地连接。此外,可以以框图的形式示出装置,以便避免使本公开难以理解,并且这也考虑了以下事实,即关于这些框图装置的实施方式的细节是高度取决于将要实施本公开的平台的(即,这些细节应当完全处于本领域技术人员的理解范围内)。在阐述了具体细节(例如,电路)以描述本公开的示例性实施例的情况下,对本领域技术人员来说显而易见的是,可以在没有这些具体细节的情况下或者这些具体细节有变化的情况下实施本公开。因此,这些描述应被认为是说明性的而不是限制性的。
尽管已经结合了本公开的具体实施例对本公开进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变型对本领域普通技术人员来说将是显而易见的。例如,其它存储器架构(例如,动态RAM(DRAM))可以使用所讨论的实施例。
本公开旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。因此,凡在本公开的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本公开的保护范围之内。

Claims (19)

1.一种物联网终端设备的升级方法,应用于服务器,包括:
确定监督设备并与所述监督设备之间进行双向验证;
响应于双向验证通过,则向所述监督设备或终端设备发送第一升级指令,所述第一升级指令包括被加密处理的升级文件、服务器身份证明信息和第一校验值。
2.根据权利要求1所述的方法,其中,若所述监督设备为物联网系统中的网关设备,则与所述监督设备之间进行双向验证包括:
向所述监督设备发送第二升级指令,所述第二升级指令包括被加密处理的服务器身份证明信息;
接收所述监督设备返回的第一确认信息,所述第一确认信息包括被加密处理的监督设备身份证明信息;
对所述第一确认信息进行解密处理并核对所述监督设备身份证明信息。
3.根据权利要求2所述的方法,其中,所述方法还包括:
接收所述监督设备返回的第二确认信息,所述第二确认信息包括被加密处理的监督设备身份证明信息以及各终端设备返回的终端设备身份证明信息及第二校验值;
比对所述第一校验值和所述第二校验值;
若所述第一校验值和所述第二校验值核对一致,则向所述监督设备发送第一升级完成确认信息;
若所述第一校验值和所述第二校验值核对不一致,则记录核对不一致的终端设备的终端设备身份证明信息,并输出第一警告信息。
4.根据权利要求1所述的方法,其中,若所述监督设备为物联网系统中的终端设备,则确定监督设备并与所述监督设备之间进行双向验证包括:
向至少一个局域网内的至少两个终端设备发送第三升级指令和竞选指令,所述第三升级指令包括被加密处理的服务器身份证明信息,所述竞选指令用以使所述至少一个局域网内的至少两个终端设备竞选出监督设备;
接收竞选成为监督设备的终端设备返回的第三确认信息以及所述至少一个局域网内的非监督设备中至少一个终端设备的第四确认信息,所述第三确认信息包括被加密处理的所述竞选成为监督设备的终端设备的终端设备身份证明信息,所述第四确认信息包括被加密处理的所述非监督设备中至少一个终端设备接收到的所述竞选成为监督设备的终端设备的终端设备身份证明信息;
对所述第三确认信息和第四确认信息进行解密处理并比对所述第三确认信息和第四确认信息中的终端设备身份证明信息;
响应于所述终端设备身份证明信息核对通过,则将所述竞选成为监督设备的终端设备确定为所述监督设备。
5.根据权利要求1-4任一所述的方法,其中,向所述监督设备发送第一升级指令,包括:
采用空中下载技术,以组播形式向双向验证通过的监督设备发送所述第二升级指令。
6.一种物联网终端设备的升级方法,应用于监督设备,包括:
与服务器之间进行双向验证;
响应于双向验证通过,接收所述服务器发送的第一升级指令,所述第一升级指令包括被加密处理的升级文件、服务器身份证明信息和第一校验值;
对所述第一升级指令进行解密处理并核对所述服务器身份证明信息;
若所述服务器身份证明信息核对通过且所述监督设备为物联网系统中的网关设备,则向所述监督设备所属局域网内的终端设备发送第四升级指令,所述第四升级指令包括被加密处理的所述升级文件、所述服务器身份证明信息、所述监督设备身份证明信息和所述第一校验值。
7.根据权利要求6所述的方法,其中,若所述监督设备为物联网系统中的网关设备,则与服务器之间进行双向验证包括:
接收服务器发起的第二升级指令,所述第二升级指令包括被加密处理的服务器身份证明信息;
对所述第二升级指令进行解密处理并核对所述服务器身份证明信息;
若所述服务器身份证明信息核对通过,则向所述服务器返回第一确认信息,所述第一确认信息包括被加密处理的监督设备身份证明信息。
8.根据权利要求6所述的方法,其中,所述方法还包括:
接收所述监督设备所属局域网内各终端设备返回的第五确认信息,所述第五确认信息包括被加密处理的终端设备身份证明信息和第二校验值;
对所述第五确认信息进行解密处理并核对所述终端设备身份证明信息;
若所述终端设备身份证明信息核对通过,则向所述服务器返回第二确认信息,所述第二确认信息包括被加密处理的所述监督设备身份证明信息以及所述监督设备所属局域网内各终端设备返回的终端设备身份证明信息及第二校验值。
9.根据权利要求8所述的方法,其中,所述终端设备身份证明信息核对通过之后,还包括:
比对所述第一校验值和所述第二校验值;
若所述第一校验值和所述第二校验值核对一致,则向所述服务器返回第二确认信息;
若所述第一校验值和所述第二校验值核对不一致,则向记录核对不一致的终端设备的终端设备身份证明信息,并向所述服务器返回第二警告信息。
10.根据权利要求8所述的方法,其中,所述第二确认信息还包括被加密处理的所述监督设备接收到的所述第一校验值,以供所述服务器进行核对。
11.根据权利要求8所述的方法,其中,所述方法还包括:
接收所述服务器发送的第一升级完成确认信息;
根据所述第一升级完成确认信息,向相应的所述终端设备发送第二升级完成确认信息。
12.一种物联网终端设备的升级方法,应用于终端设备,包括:
接收服务器发送的第一升级指令或监督设备发送的第四升级指令,所述第一升级指令包括被加密处理的升级文件、服务器身份证明信息和第一校验值,所述第四升级指令包括被加密处理的升级文件、服务器身份证明信息、监督设备身份证明信息和第一校验值;
对所述第一升级指令进行解密处理并核对所述服务器身份证明信息,或者,对第四升级指令进行解密处理并核对所述服务器身份证明信息和所述监督设备身份证明信息;
响应于身份证明信息核对通过,则计算第二校验值并比对所述第一校验值和第二校验值;
响应于所述第一校验值和第二校验值核对一致,则根据所述升级文件进行升级。
13.根据权利要求12所述的方法,其中,所述方法还包括:
向所述监督设备返回第五确认信息,所述第五确认信息包括被加密处理的终端设备身份证明信息和所述第二校验值。
14.根据权利要求13所述的方法,其中,所述第一校验值和第二校验值核对一致之后,还包括:
确定是否接收到所述监督设备发送的第二升级完成确认信息;
若接收到所述第二升级完成确认信息,则根据所述升级文件进行升级;
若未接收到所述第二升级完成确认信息,则不进行升级。
15.根据权利要求12所述的方法,其中,所述方法还包括:
接收服务器发送的第三升级指令和竞选指令,所述第三升级指令包括被加密处理的服务器身份证明信息;
向所属局域网内其他终端设备广播第一竞选信息,并接收所属局域网内其他终端设备广播的第二竞选信息;
比对所述第一竞选信息和第二竞选信息;
若所述第一竞选信息大于所述第二竞选信息,则向所述服务器发送竞选成为监督设备的第三确认信息,所述第三确认信息包括被加密处理的终端设备身份证明信息;
若所述第一竞选信息小于所述第二竞选信息,则向所述服务器发送其他终端设备竞选成为监督设备的第四确认信息,所述第四确认信息包括被加密处理的接收到的竞选成为监督设备的终端设备的终端设备身份证明信息;
若所述第一竞选信息等于所述第二竞选信息,则随机增加或减小所述第一竞选信息并再次广播增加或减小后的所述第一竞选信息。
16.一种服务器,包括:
通信单元,用于与监督设备进行通信;
存储器,用于存储一组指令;以及
至少一个处理器,配置为执行该组指令以进行如权利要求1至5任意一项所述的方法。
17.一种监督设备,包括:
通信单元,用于与服务器和终端设备进行通信;
存储器,用于存储一组指令;以及
至少一个处理器,配置为执行该组指令以进行如权利要求6至11任意一项所述的方法。
18.一种终端设备,包括:
通信单元,用于与监督设备进行通信;
存储器,用于存储一组指令;以及
至少一个处理器,配置为执行该组指令以进行如权利要求12至15任意一项所述的方法。
19.一种物联网系统,包括:
如权利要求16所述的服务器;
至少一个如权利要求17所述的监督设备;以及
至少一个如权利要求18所述的终端设备;
其中,所述服务器与所述终端设备通过所述监督设备完成通信。
CN202011060564.6A 2020-09-30 2020-09-30 物联网终端设备的升级方法及相关设备 Pending CN114362981A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202011060564.6A CN114362981A (zh) 2020-09-30 2020-09-30 物联网终端设备的升级方法及相关设备
US17/488,155 US20220100493A1 (en) 2020-09-30 2021-09-28 METHOD FOR UPGRADING IoT TERMINAL DEVICE AND ELECTRONIC DEVICE THEREOF

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011060564.6A CN114362981A (zh) 2020-09-30 2020-09-30 物联网终端设备的升级方法及相关设备

Publications (1)

Publication Number Publication Date
CN114362981A true CN114362981A (zh) 2022-04-15

Family

ID=80822521

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011060564.6A Pending CN114362981A (zh) 2020-09-30 2020-09-30 物联网终端设备的升级方法及相关设备

Country Status (2)

Country Link
US (1) US20220100493A1 (zh)
CN (1) CN114362981A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115374488A (zh) * 2022-10-25 2022-11-22 广州万协通信息技术有限公司 车载终端程序校验方法及装置

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114928602A (zh) * 2022-04-18 2022-08-19 成都市卡蛙科技有限公司 加密方法、解密方法及ota升级系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070077525A (ko) * 2006-01-24 2007-07-27 주식회사 렛스비전 임베디드장치의 펌웨어 업그레이드 방법
US20130262858A1 (en) * 2012-04-01 2013-10-03 Authentify, Inc. Secure authentication in a multi-party system
CN105208132A (zh) * 2015-10-14 2015-12-30 成都中科创达软件有限公司 智能终端云管理系统
CN107888577A (zh) * 2017-10-31 2018-04-06 美的智慧家居科技有限公司 门锁固件的升级方法、门锁、服务器、系统及存储介质
CN111212121A (zh) * 2019-12-24 2020-05-29 浙江大学 一种用于物联网设备的空中固件升级方法及系统

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8099764B2 (en) * 2007-12-17 2012-01-17 Microsoft Corporation Secure push and status communication between client and server
KR20180131840A (ko) * 2017-06-01 2018-12-11 한국전자통신연구원 펌웨어 업데이트 지원 장치 및 그 방법
US10819577B2 (en) * 2017-07-31 2020-10-27 Cisco Technology, Inc. Node update in a software-defined network
GB2568873B (en) * 2017-11-23 2021-09-22 Advanced Risc Mach Ltd Distributed management system for internet of things devices and methods thereof
US10776096B2 (en) * 2018-01-12 2020-09-15 Blackberry Limited Method and system for controlling software updates on a network connected device
JP7049900B2 (ja) * 2018-04-18 2022-04-07 株式会社日立製作所 ソフトウェア管理システム、ゲートウェイ装置、保守装置、サーバ装置、及びソフトウェア管理システムの制御方法
US11068600B2 (en) * 2018-05-21 2021-07-20 Kct Holdings, Llc Apparatus and method for secure router with layered encryption
US11372977B2 (en) * 2018-11-12 2022-06-28 Thirdwayv, Inc. Secure over-the-air firmware upgrade

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070077525A (ko) * 2006-01-24 2007-07-27 주식회사 렛스비전 임베디드장치의 펌웨어 업그레이드 방법
US20130262858A1 (en) * 2012-04-01 2013-10-03 Authentify, Inc. Secure authentication in a multi-party system
CN105208132A (zh) * 2015-10-14 2015-12-30 成都中科创达软件有限公司 智能终端云管理系统
CN107888577A (zh) * 2017-10-31 2018-04-06 美的智慧家居科技有限公司 门锁固件的升级方法、门锁、服务器、系统及存储介质
CN111212121A (zh) * 2019-12-24 2020-05-29 浙江大学 一种用于物联网设备的空中固件升级方法及系统

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115374488A (zh) * 2022-10-25 2022-11-22 广州万协通信息技术有限公司 车载终端程序校验方法及装置

Also Published As

Publication number Publication date
US20220100493A1 (en) 2022-03-31

Similar Documents

Publication Publication Date Title
US11595371B2 (en) Device programming with system generation
KR102538435B1 (ko) 차량 내 전자 제어 유닛들 간의 보안 통신
CN108475319B (zh) 装置出生凭证
CN101258505B (zh) 安全的软件更新
US9853973B2 (en) Information distribution system, and server, on-board terminal and communication terminal used therefor
US20070257813A1 (en) Secure network bootstrap of devices in an automatic meter reading network
JP5380583B1 (ja) デバイス認証方法及びシステム
CN112673607B (zh) 匿名设备认证
US11159329B2 (en) Collaborative operating system
CN107925576B (zh) 控制器、通信方法、以及通信系统
US20220100493A1 (en) METHOD FOR UPGRADING IoT TERMINAL DEVICE AND ELECTRONIC DEVICE THEREOF
CN116671062A (zh) 硬件安全模块的远程管理
US20150295721A1 (en) Device authentication system and authentication method
CN110198538B (zh) 一种获得设备标识的方法及装置
CN112512048B (zh) 移动网络接入系统、方法、存储介质及电子设备
CN112564901A (zh) 密钥的生成方法和系统、存储介质及电子装置
KR101416381B1 (ko) 펌웨어 업데이트 시스템 및 방법
CN114501441A (zh) 用户认证方法及设备
CN112487455A (zh) 一种数据处理方法、装置及数据交互系统
EP3113514B1 (en) Hearing device with model control and associated methods
CN114884963B (zh) 数字证书的管理方法和管理装置
KR101737925B1 (ko) 도전-응답 기반의 사용자 인증 방법 및 시스템
JP2016048873A (ja) データ処理システム及び検証装置及び検証方法及びプログラム
CN117834252A (zh) 分布式设备的无感认证方法及系统
CN115361116A (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