CN112822199A - 一种基于协议转换的ota升级方法及*** - Google Patents

一种基于协议转换的ota升级方法及*** Download PDF

Info

Publication number
CN112822199A
CN112822199A CN202110063138.6A CN202110063138A CN112822199A CN 112822199 A CN112822199 A CN 112822199A CN 202110063138 A CN202110063138 A CN 202110063138A CN 112822199 A CN112822199 A CN 112822199A
Authority
CN
China
Prior art keywords
equipment
file
protocol
ota
hash value
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
CN202110063138.6A
Other languages
English (en)
Other versions
CN112822199B (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.)
Wuzheng Intelligent Technology Beijing Co ltd
Original Assignee
Wuzheng Intelligent Technology Beijing 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 Wuzheng Intelligent Technology Beijing Co ltd filed Critical Wuzheng Intelligent Technology Beijing Co ltd
Priority to CN202110063138.6A priority Critical patent/CN112822199B/zh
Publication of CN112822199A publication Critical patent/CN112822199A/zh
Application granted granted Critical
Publication of CN112822199B publication Critical patent/CN112822199B/zh
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
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/08Protocols for interworking; Protocol conversion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/658Incremental updates; Differential updates
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/26Special purpose or proprietary protocols or architectures

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)
  • Stored Programmes (AREA)
  • Communication Control (AREA)

Abstract

本发明公开一种基于协议转换的OTA升级方法及***,所述方法包括:获取厂家私有协议并解析,建立标准化协议,建立厂家私有协议与标准化协议之间的映射关系表;根据映射关系表自动生成对应设备的映射文件,并上传至云平台;根据映射文件,生成对应设备的升级代码,打包OTA文件;云平台向设备发送升级通知,并对设备进行身份校验;采用差分算法根据OTA文件和原始固件信息制作差分文件,重启设备,下发差分文件进行OTA升级。本发明可实现不同厂家设备协议适配和远程自动升级,提升设备升级安全性和便捷性。

Description

一种基于协议转换的OTA升级方法及***
技术领域
本发明涉及智能家居领域,具体涉及一种基于协议转换的OTA升级方法及***。
背景技术
目前在智能家居领域,各个厂家种类不断增多,每个厂家都有自己的一套协议和云平台,使得各个厂家相互独立,资源和产品不能共享。例如,厂家A的app只能控制自己开发的产品,如果需要对接其他厂家B的设备需要重新适配其他设备,对开发的人员要求比较高,往往会导致项目不断延期,不断调试,需要频繁的修改设备和测试,开发时间周期长。目前各家协议都不相同,对互联的物联网设备已经成为阻碍,对于智能产品和智能设备来言,每个设备的驱动都已经实现好了,只是通信接口不同或者通信协议不同。如果在设备端自动对接,可以大大减少开发量。
因此,对不同厂家的进行协议的解析和适配、对产品的改造和自动升级是当下亟待解决的问题,同时升级过程中数据的安全性、有效性也是设备成功升级的重要因素。
发明内容
有鉴于此,本发明提出了一种基于协议转换的OTA(Over The Air)升级方法及***,用于进行设备远程自动适配与升级,保障升级过程中数据的安全性、有效性。
本发明第一方面,公开一种基于协议转换的OTA升级方法,所述方法包括:
获取厂家私有协议并解析,建立标准化协议,建立厂家私有协议与标准化协议之间的映射关系表;
根据映射关系表自动生成对应设备的映射文件,并上传至云平台;
根据映射文件,生成对应设备的升级代码,打包OTA文件;
云平台向设备发送升级通知,并对设备进行身份校验;
采用差分算法根据OTA文件和原始固件信息制作差分文件,重启设备,下发差分文件,进行OTA升级。
优选的,所述建立厂家私有协议与标准化协议之间的映射关系表具体为:
读取厂家私有协议,效验厂家私有协议数据的完整性、可靠性;
基于二进制流进行协议解析,提取有效数据,对数据进行格式解析和转化分析、序列和反序列化分析,找到与标准化协议对应的数据点,根据所述数据点建立映射关系表。
优选的,所述提取有效数据,对数据进行格式解析和转化分析、序列和反序列化分析具体包括:
对空格、字符串、16进制、特定字符、效验码、协议ID、协议命令分析和截断对应的数据,
数据修正,采用相除、相乘、相加、相减、扩大和缩小相对应的数值,获取数据真实值。
优选的,所述云平台向设备发送升级通知,并对设备进行身份校验具体包括:
云平台向设备发送升级通知,获取设备回传的第一哈希值,所述第一哈希值为设备在对自身的原始固件包进行哈希运算得到;
云平台利用第一预设秘钥对所述第一哈希值进行加密运算得到哈希密文;向设备发送所述哈希密文,获取设备回传的第二哈希值,所述第二哈希值为设备利用第二预设密钥对所述哈希密文进行解密运算得到;
所述第一哈希值与所述第二哈希值致时,所述设备的身份校验成功。
优选的,所述下发差分文件进行OTA升级具体包括:
将所述差分文件分块,得到多个子块,对每个子块进行哈希运算得到对应的哈希值,将所述哈希值按照预设顺序拼接,组成第三哈希值;
根据所述差分文件的分块结果将差分文件分块传输至设备,同时将第三哈希值发送至设备;
接收设备端回传的第四哈希值,所述第四哈希值为设备根据接收到的分块差分文件进行哈希运算并拼接得到;
若第三哈希值与第四哈希值相同,则进行OTA升级,否则云平台重新下发差分文件。
本发明第二方面,公开基于协议转换的OTA升级***,其特征在于,所述***包括:
解析模块:获取厂家私有协议并解析,建立标准化协议,建立厂家私有协议与标准化协议之间的映射关系表;
映射模块:根据映射关系表自动生成对应设备的映射文件,并上传至云平台;
打包模块:根据映射文件,生成对应设备的升级代码,打包OTA文件;
升级模块:云平台向设备发送升级通知,并对设备进行身份校验;采用差分算法根据OTA文件和原始固件信息制作差分文件,重启设备,下发差分文件,进行OTA升级。
本发明相对于现有技术具有以下有益效果:
1)本发明可以对厂家或者第三方设备协议进行解析组装,自动解析数据并上报云平台,基于所述云平台进行OTA升级。本发明可以对接各家协议,通过差分算法进行OTA升级,设备自动适配厂家的协议无需编程和干预,赋予客户产品联网能力,简化升级流程,提高设备升级便捷性。
2)在设备升级前进行设备身份校验、对差分文件进行完整性校验,多次验证保证数据安全和升级过程的有效性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明基于协议转换的OTA升级方法流程示意图;
图2为本发明协议转换流程示例;
图3本发明为映射关系表示例。
具体实施方式
下面将结合本发明实施方式,对本发明实施方式中的技术方案进行清楚、完整地描述,显然,所描述的实施方式仅仅是本发明一部分实施方式,而不是全部的实施方式。基于本发明中的实施方式,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施方式,都属于本发明保护的范围。
如图1所示,本发明提出一种基于协议转换的OTA升级方法,所述方法包括:
S1、获取厂家私有协议并解析,建立标准化协议,建立厂家私有协议与标准化协议之间的映射关系表;具体流程可参阅图2,具体包括:
读取厂家私有协议,效验厂家私有协议数据的完整性、可靠性;
基于二进制流进行协议解析,拆分有效数据,对数据进行格式解析和转化分析、序列和反序列化分析,比如对空格、字符串、16进制、特定字符、效验码、协议ID、协议命令分析和截断对应的数据,找到与标准化协议对应的数据点,根据所述数据点建立映射关系表。获取到厂家私有协议之后,需要对数据加工处理,才能展示出真实的数据,通常客户的协议为了传输方便,把小数数据扩大成整数进行数据传输,方便在传输的时候缩小传输长度。因此需要对数据进行修正,包括对数据的进行相除、相乘、相加、相减、扩大,和缩小相对应的数值,获取数据真实值。其中还包括对数据类型的转化,16进制转文本字符,文本字符串转16进制等。映射关系示例请参阅图3。
S2、根据映射关系表自动生成对应设备的映射文件,并上传至云平台;
具体可构建可视化编辑器,进行对不同协议的映射,从而零代码协议信息转换。比如对应的数据点名称、数据类型、数据修正等,一般数据类型分为只读类型、只写类型、可读写类型,根据的用户的需求填写用户的数据点是什么类型,如:温湿度数据点是只读类型,控制灯泡开关的类型是读写类型。
S3、根据映射文件,生成对应设备的升级代码,打包OTA文件;
S4、云平台向设备发送升级通知,并对设备进行身份校验;
设备通过蜂窝网络(包括:3G,4G,5G,NB-IoT通信技术)和云平台通过socket通信,如果设备固件不支持本客户的协议,可以根据可视化编辑器进行编辑,实现协议转换。
云平台先向设备发送升级通知,获取设备回传的第一哈希值,所述第一哈希值为设备在对自身的原始固件包进行哈希运算得到;
云平台利用第一预设秘钥对所述第一哈希值进行加密运算得到哈希密文;向设备发送所述哈希密文,获取设备回传的第二哈希值,所述第二哈希值为设备利用第二预设密钥对所述哈希密文进行解密运算得到;
所述第一哈希值与所述第二哈希值致时,所述设备的身份校验成功。
S5、采用差分算法根据OTA文件和原始固件信息制作差分文件,重启设备,下发差分文件,进行有效性校验和OTA升级。
OTA升级文件通常很大,会占用很多网络资源和硬件资源,通过差分算法,实现对固件的体积减少,减少带宽。
具体的,将所述差分文件分块,得到多个子块,对每个子块进行哈希运算得到对应的哈希值,将所述哈希值按照预设顺序拼接,组成第三哈希值;
根据所述差分文件的分块结果将差分文件分块传输至设备,同时将第三哈希值发送至设备;
接收设备端回传的第四哈希值,所述第四哈希值为设备根据接收到的分块差分文件进行哈希运算并拼接得到;
若第三哈希值与第四哈希值相同,则进行OTA升级,否则判定差分文件无效,云平台重新下发差分文件。
当第三哈希值与第四哈希值不同时,可能是因为差分文件在传输过程中出现了丢包,导致数据不完整,不完整的升级包在升级过程中多半会导致升级失败,甚至带来不可预计的问题,影响设备运行。因此在差分文件传输完成后有必要进行有效性校验,以提升设备升级效率。
本发明第二方面,公开基于协议转换的OTA升级***,其特征在于,所述***包括:
解析模块:获取厂家私有协议并解析,建立标准化协议,建立厂家私有协议与标准化协议之间的映射关系表;
映射模块:根据映射关系表自动生成对应设备的映射文件,并上传至云平台;
打包模块:根据映射文件,生成对应设备的升级代码,打包OTA文件;
升级模块:云平台向设备发送升级通知,并对设备进行身份校验;采用差分算法根据OTA文件和原始固件信息制作差分文件,重启设备,下发差分文件,进行OTA升级。
上述方法实施例和***实施例是一一对应的,***实施例简述之处请参阅方法实施例即可。
以上所述仅为本发明的较佳实施方式而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (6)

1.一种基于协议转换的OTA升级方法,其特征在于,所述方法包括:
获取厂家私有协议并解析,建立标准化协议,建立厂家私有协议与标准化协议之间的映射关系表;
根据映射关系表自动生成对应设备的映射文件,并上传至云平台;
根据映射文件,生成对应设备的升级代码,打包OTA文件;
云平台向设备发送升级通知,并对设备进行身份校验;
采用差分算法根据OTA文件和原始固件信息制作差分文件,重启设备,下发差分文件进行OTA升级。
2.根据权利要求1所述基于协议转换的OTA升级方法,其特征在于,所述建立厂家私有协议与标准化协议之间的映射关系表具体为:
读取厂家私有协议,效验厂家私有协议数据的完整性、可靠性;
基于二进制流进行协议解析,提取有效数据,对数据进行格式解析和转化分析、序列和反序列化分析,找到与标准化协议对应的数据点,根据所述数据点建立映射关系表。
3.根据权利要求1所述基于协议转换的OTA升级方法,其特征在于,所述提取有效数据,对数据进行格式解析和转化分析、序列和反序列化分析具体包括:
对空格、字符串、16进制、特定字符、效验码、协议ID、协议命令分析和截断对应的数据,
数据修正,采用相除、相乘、相加、相减、扩大和缩小相对应的数值,获取数据真实值。
4.根据权利要求1所述基于协议转换的OTA升级方法,其特征在于,所述云平台向设备发送升级通知,并对设备进行身份校验具体包括:
云平台向设备发送升级通知,获取设备回传的第一哈希值,所述第一哈希值为设备在对自身的原始固件包进行哈希运算得到;
云平台利用第一预设秘钥对所述第一哈希值进行加密运算得到哈希密文;向设备发送所述哈希密文,获取设备回传的第二哈希值,所述第二哈希值为设备利用第二预设密钥对所述哈希密文进行解密运算得到;
所述第一哈希值与所述第二哈希值致时,所述设备的身份校验成功。
5.根据权利要求3所述基于协议转换的OTA升级方法,其特征在于,所述下发差分文件进行OTA升级具体包括:
将所述差分文件分块,得到多个子块,对每个子块进行哈希运算得到对应的哈希值,将所述哈希值按照预设顺序拼接,组成第三哈希值;
根据所述差分文件的分块结果将差分文件分块传输至设备,同时将第三哈希值发送至设备;
接收设备端回传的第四哈希值,所述第四哈希值为设备根据接收到的分块差分文件进行哈希运算并拼接得到;
若第三哈希值与第四哈希值相同,则进行OTA升级,否则云平台重新下发差分文件。
6.一种基于协议转换的OTA升级***,其特征在于,所述***包括:
解析模块:获取厂家私有协议并解析,建立标准化协议,建立厂家私有协议与标准化协议之间的映射关系表;
映射模块:根据映射关系表自动生成对应设备的映射文件,并上传至云平台;
打包模块:根据映射文件,生成对应设备的升级代码,打包OTA文件;
升级模块:云平台向设备发送升级通知,并对设备进行身份校验;采用差分算法根据OTA文件和原始固件信息制作差分文件,重启设备,下发差分文件,进行OTA升级。
CN202110063138.6A 2021-01-18 2021-01-18 一种基于协议转换的ota升级方法及*** Active CN112822199B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110063138.6A CN112822199B (zh) 2021-01-18 2021-01-18 一种基于协议转换的ota升级方法及***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110063138.6A CN112822199B (zh) 2021-01-18 2021-01-18 一种基于协议转换的ota升级方法及***

Publications (2)

Publication Number Publication Date
CN112822199A true CN112822199A (zh) 2021-05-18
CN112822199B CN112822199B (zh) 2023-04-18

Family

ID=75869643

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110063138.6A Active CN112822199B (zh) 2021-01-18 2021-01-18 一种基于协议转换的ota升级方法及***

Country Status (1)

Country Link
CN (1) CN112822199B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113221149A (zh) * 2021-05-27 2021-08-06 深圳市共进电子股份有限公司 固件加密方法、装置、固件解密方法和计算机设备
CN113568636A (zh) * 2021-07-08 2021-10-29 深圳市骁巨智能科技有限公司 一种智能手表ota升级***及方法
CN115314386A (zh) * 2022-08-08 2022-11-08 矩阵时光数字科技有限公司 一种量子安全设备的固件升级***

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101826979A (zh) * 2010-02-26 2010-09-08 中山大学 一种智能家电***
CN102006181A (zh) * 2010-02-26 2011-04-06 中山大学 一种智能家电在线升级的方法
CN102045334A (zh) * 2010-09-27 2011-05-04 北京泰豪智能工程有限公司 协议转换方法和装置
US8555273B1 (en) * 2003-09-17 2013-10-08 Palm. Inc. Network for updating electronic devices
CN105335181A (zh) * 2014-08-06 2016-02-17 中兴通讯股份有限公司 一种实现ota升级的方法和终端
CN106843927A (zh) * 2016-12-21 2017-06-13 北京奇虎科技有限公司 ***升级方法、装置以及刷机方法、装置
US20190391800A1 (en) * 2018-06-20 2019-12-26 Aptiv Technologies Limited Over-the-air (ota) mobility services platform
CN110768817A (zh) * 2018-07-27 2020-02-07 视联动力信息技术股份有限公司 视联网终端的升级方法和装置

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8555273B1 (en) * 2003-09-17 2013-10-08 Palm. Inc. Network for updating electronic devices
CN101826979A (zh) * 2010-02-26 2010-09-08 中山大学 一种智能家电***
CN102006181A (zh) * 2010-02-26 2011-04-06 中山大学 一种智能家电在线升级的方法
CN102045334A (zh) * 2010-09-27 2011-05-04 北京泰豪智能工程有限公司 协议转换方法和装置
CN105335181A (zh) * 2014-08-06 2016-02-17 中兴通讯股份有限公司 一种实现ota升级的方法和终端
CN106843927A (zh) * 2016-12-21 2017-06-13 北京奇虎科技有限公司 ***升级方法、装置以及刷机方法、装置
US20190391800A1 (en) * 2018-06-20 2019-12-26 Aptiv Technologies Limited Over-the-air (ota) mobility services platform
CN110768817A (zh) * 2018-07-27 2020-02-07 视联动力信息技术股份有限公司 视联网终端的升级方法和装置

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113221149A (zh) * 2021-05-27 2021-08-06 深圳市共进电子股份有限公司 固件加密方法、装置、固件解密方法和计算机设备
CN113221149B (zh) * 2021-05-27 2024-02-09 深圳市共进电子股份有限公司 固件加密方法、装置、固件解密方法和计算机设备
CN113568636A (zh) * 2021-07-08 2021-10-29 深圳市骁巨智能科技有限公司 一种智能手表ota升级***及方法
CN115314386A (zh) * 2022-08-08 2022-11-08 矩阵时光数字科技有限公司 一种量子安全设备的固件升级***
CN115314386B (zh) * 2022-08-08 2024-02-20 矩阵时光数字科技有限公司 一种量子安全设备的固件升级***

Also Published As

Publication number Publication date
CN112822199B (zh) 2023-04-18

Similar Documents

Publication Publication Date Title
CN112822199B (zh) 一种基于协议转换的ota升级方法及***
WO2017166446A1 (zh) 漏洞修复方法和装置
CN105389177A (zh) 一种软件版本确认方法、装置及***
CN106484453B (zh) 一种实现***升级的方法及装置
CN113259155B (zh) 物联网设备的接入方法、装置、网关、介质、电子设备
KR20080037450A (ko) 소프트웨어 실행모듈의 업데이트 시스템 및 방법
US8819286B2 (en) Methods, systems, and apparatus for processing messaging data sets using structured data sets
CN109391673A (zh) 一种管理更新文件的方法、***及终端设备
CN111683066A (zh) 异构***集成方法、装置、计算机设备和存储介质
CN111159019B (zh) 一种应用程序的测试方法、测试控制终端以及测试终端
CN112596403B (zh) 智能设备控制方法、装置、设备及存储介质
KR20140106857A (ko) 프로토콜 적합성 검증 방법, 이를 실행하는 장치 및 이를 실행하는 시스템
CN113806037A (zh) 服务的调用方法、装置、存储介质及电子设备
CN113726762A (zh) 基于配置文件的物联网设备协议解析方法
WO2024087767A1 (zh) 升级安装方法及其装置、***、电子设备及存储介质
CN112073488A (zh) 处理请求的方法及装置
CN112803950A (zh) 一种数据压缩方法、装置、设备及计算机存储介质
CN105407133B (zh) 一种移动应用自动化发布方法和***
CN108306757B (zh) 可编程数据平面虚拟层构建方法及存储介质
CN115827543A (zh) 一种基于FPGA实现eSPI通信方法、***、设备及介质
CN111610990A (zh) 一种应用程序升级的方法、装置和相关***
CN112953988B (zh) 一种基于ftp的数据对接方法及装置
CN114500508A (zh) 一种燃气表升级方法、装置及电子设备
CN110489815B (zh) 基于i3c总线通信的验证方法及验证***
CN112995305A (zh) 基于iec104规约的远程电力监控方法及其***、装置、介质

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