首页> 中国专利> 固件更新的方法及其固件更新系统

固件更新的方法及其固件更新系统

摘要

一种固件更新的方法及其固件更新系统,包括以下步骤:执行设定流程,包括:将第一识别码写入至记忆模块内;以及于固件提供端设定固件更新文件,使固件更新文件包括第二固件映像文件及第二识别码;以及执行一判断流程,包括:接收固件更新文件;根据第一识别码确认固件更新文件是否符合自定义结构;若不符合该自定义结构,则禁止固件更新文件更新计算机系统;以及若符合自定义结构,将第二固件映像文件取代第一固件映像文件,并与第二识别码一并写入计算机系统的记忆模块内。

著录项

  • 公开/公告号CN113127018A

    专利类型发明专利

  • 公开/公告日2021-07-16

    原文格式PDF

  • 申请/专利权人 聚众联合科技股份有限公司;

    申请/专利号CN201911397957.3

  • 申请日2019-12-30

  • 分类号G06F8/65(20180101);

  • 代理机构11006 北京律诚同业知识产权代理有限公司;

  • 代理人王玉双;张燕华

  • 地址 中国台湾新竹县芎林乡文山路753号

  • 入库时间 2023-06-19 11:52:33

说明书

技术领域

本发明涉及一种固件更新的方法及其固件更新系统,特别涉及一种可以判断固件是否合法的固件更新的方法及其固件更新系统。

背景技术

固件是一种嵌入在硬件装置中的软件,于现有计算机系统中已经具有可以让使用者更新固件的功能。然而对于现有计算机系统中的程序无从判断使用者欲自行更新的固件,是否属于该产品所能搭配固件版本。当使用者误用错误或不安全的固件更新后,往往造成计算机系统不能正常工作,或者超出所能预期的行为。这样的状况产生不必要的成本支出。

于现有技术中,研发人员可以在编译固件程序码后,依据产品的类别、版本等命名规则重新定义固件映像文件的名称。再另外将更新所使用的工具增加文件名称的判别,藉此筛选产品的固件版本,避免更新错误的固件版本。但现有技术中的机制只能做简单的防范措施。对于知悉命名规则的使用者来说,可以利用修改文件名称的方式来轻易的将不明的固件映像文件写入计算机系统。如此一来原有的文件名称判别机制将失去效用。

因此,有必要发明一种新的固件更新的方法及其固件更新系统,以解决现有技术的缺失。

发明内容

本发明的主要目的在于提供一种固件更新的方法,可以有效判断固件是否合法。

本发明的另一主要目的在于提供一种用于上述方法的固件更新系统。

为达成上述的目的,本发明的固件更新的方法,用于固件更新系统,使固件提供端得以对计算机系统进行更新,计算机系统具有记忆模块,且写入第一固件映像文件。方法包括以下步骤:执行设定流程,包括:将第一识别码写入至记忆模块内;以及于固件提供端设定固件更新文件,使固件更新文件包括第二固件映像文件及第二识别码;以及执行一判断流程,包括:接收固件更新文件;根据第一识别码确认固件更新文件是否符合自定义结构;若不符合该自定义结构,则禁止固件更新文件更新计算机系统;以及若符合自定义结构,将第二固件映像文件取代第一固件映像文件,并与第二识别码一并写入计算机系统的记忆模块内。

本发明的固件更新系统包括第一设定模块、第二设定模块、比对模块及更新模块。第一设定模块用以将第一识别码写入至记忆模块内。第二设定模块用以于固件提供端设定固件更新文件,使固件更新文件包括第二固件映像文件及第二识别码。比对模块于该计算机系统接收固件更新文件后,藉以根据第一识别码确认固件更新文件是否符合自定义结构。更新模块电性连接比对模块,其中若不符合自定义结构,更新模块禁止固件更新文件更新计算机系统;若符合自定义结构,更新模块再将第二固件映像文件取代第一固件映像文件,并与第二识别码一并写入计算机系统的记忆模块内。

以下结合附图和具体实施例对本发明进行详细描述,但不作为对本发明的限定。

附图说明

图1本发明的固件更新系统的系统架构图;

图2本发明的固件更新系统与计算机系统之间的关系示意图;

图3本发明的固件更新的方法的步骤流程图。

其中,附图标记

固件更新系统1

计算机系统2

记忆模块2a

固件提供端3

第一设定模块11

第二设定模块12

比对模块20

更新模块30

第一识别码41

第二识别码42

第一固件映像文件51

第二固件映像文件52

固件更新文件60

具体实施方式

为能更了解本发明的技术内容,特举较佳具体实施例说明如下。

请先参考图1本发明的固件更新系统的系统架构图及图2本发明的固件更新系统与计算机系统之间的关系示意图。

本发明的固件更新系统1的目的是用以对计算机系统2内具有的固件进行更新。计算机系统2可以为一般具有运算处理功能的台式计算机、笔记型计算机、智能型手机或是平板计算机等,只要可以支援固件更新功能的系统都在本发明的保护范围内。本发明的固件更新系统1也不限定要对计算机系统2的何种装置进行固件更新,也不限定进行固件更新的数量,故可以适用于计算机系统2内的单一装置,也可以用于多个装置。该计算机系统2具有一记忆模块2a,用以写入计算机系统2所需的第一固件映像文件51。而要进行更新的固件由固件提供端3得来,固件提供端3可为一般的硬件厂商,但本发明并不限于此。

于本发明的一实施例中,固件更新系统1包括第一设定模块11、第二设定模块12、比对模块20及更新模块30。第一设定模块11可以用于计算机系统2用以将第一识别码41写入至该记忆模块2a。第二设定模块12则用于固件提供端3,以设定固件提供端3要提供的固件更新文件60,使该固件更新文件60包括第二固件映像文件52及第二识别码42。第二固件映像文件52为实际用来更新计算机系统2的固件文件。第二设定模块12可以将该第二识别码42加入于该第二固件映像文件52的最前端或最末端,以成为该固件更新文件60。于本发明的一实施方式中,第一设定模块11及第二设定模块12可以根据一软件开发套件(Software Development Kit,SDK)识别码、一产品名称或一产品序号等以生成该第一识别码41及该第二识别码42,但发明并不限于此。且为了避免识别码内容被恶意更改,第一设定模块11及第二设定模块12利用校验码(Checksum)演算机制以生成该第一识别码41及该第二识别码42。

在第二设定模块12生成第二识别码42后,固件提供端3提供包括第二识别码42的固件更新文件60给计算机系统2。在计算机系统2接收固件更新文件60后,比对模块20用以根据储存于计算机系统2的记忆模块2a的该第一识别码41确认该固件更新文件60是否符合一自定义结构。自定义结构可以包括定义影像文件的内容、长度或版本等。比对模块20可以藉由更新计算机系统2的简单文件传输协定(Trivial File Transfer Protocol,TFTP)、空中下载技术(Over-the-Air Technology,OTA)、超文本传输协定(HyperText TransferProtocol,HTTP),来得到可以比对固件映像文件的技术。但本发明并不限于使用上述的技术。故比对模块20可以比对第二识别码42的内容是否符合该第一识别码41的内容,或是比对固件更新文件60的长度,包括第二固件映像文件52或第二识别码42,是否符合一设定长度。比对模块20也可以比对第二识别码42代表的版本是否具有较新的版本编号。但本发明并不限于上述的方式。

更新模块30电性连接该比对模块20。当比对模块20比对后得知固件更新文件60及所包括第二识别码42的不符合该自定义结构,该更新模块30会禁止该固件更新文件60更新该计算机系统2。当比对模块20比对后得知符合该自定义结构,可以确定固件更新文件60是合法安全的固件文件。更新模块30将该固件更新文件60中的第二固件映像文件52取代计算机系统2的第一固件映像文件51,例如将第二识别码42移除后得到第二固件映像文件52,再将该第二固件映像文件52写入该计算机系统2的该记忆模块2a内正确的位置来取代第一固件映像文件51,并同时将第二识别码42也一并写入记忆模块2a内,藉此即可完成计算机系统2的更新。

需注意的是,固件更新系统1具有的各模块可以为硬件装置、软件程序结合硬件装置、固件结合硬件装置等方式架构而成,例如可以将一计算机程序产品储存于一计算机可读取媒体中读取并执行以达成本发明的各项功能,但本发明并不以上述的方式为限。此外,本实施方式仅例示本发明的较佳实施例,为避免赘述,并未详加记载所有可能的变化组合。然而,本领域的通常知识者应可理解,上述各模块或元件未必皆为必要。且为实施本发明,亦可能包含其他较细节的现有模块或元件。各模块或元件皆可能视需求加以省略或修改,且任两模块间未必不存在其他模块或元件。

接着请参考图3本发明的固件更新的方法的步骤流程图。此处需注意的是,以下虽以上述固件更新系统1为例说明本发明的固件更新的方法,但本发明的固件更新的方法并不以使用在上述相同结构的固件更新系统1为限。

本发明的固件更新的方法首先要进行步骤3a以执行设定流程,即先进行步骤301:将一第一识别码写入至该记忆模块内。

首先第一设定模块11用以将第一识别码41写入至计算机系统2的该记忆模块2a。第一设定模块11可以利用校验码演算机制来根据软件开发套件识别码、产品名称或产品序号等来生成第一识别码41,但本发明的第一识别码41并不限于上述的产生方式。

同时进行步骤302:于该固件提供端设定一固件更新文件。

同时第二设定模块12于固件提供端3设定要提供的固件更新文件60,使该固件更新文件60包括第二固件映像文件52及第二识别码42。第二设定模块12同样可以利用校验码演算机制来根据与第一识别码41相同的软件开发套件识别码、产品名称或产品序号等来生成第二识别码42,再将该第二识别码42加入于该第二固件映像文件52的最前端或最末端,以成为该固件更新文件60。

于上述步骤301及步骤302的设定流程结束后,接着计算机系统2要进行固件更新时,固件更新系统1要进行步骤3b以执行判断流程,即执行步骤303:接收该固件更新文件。

此时固件提供端3提供包括第二识别码42的固件更新文件60给计算机系统2,比对模块20就要先接收判断固件更新文件60是否合法安全。

也就是进行步骤304:根据该第一识别码确认该固件更新文件是否符合一自定义结构。

比对模块20用以根据储存于计算机系统2的记忆模块2a的该第一识别码41确认该固件更新文件60是否符合自定义结构。自定义结构可以包括定义影像文件的内容、长度或版本等,但本发明并不限于此。

若不符合该自定义结构,进行步骤305:禁止该固件更新文件更新该计算机系统。

此时更新模块30会禁止该固件更新文件60更新该计算机系统2。

若符合该自定义结构,进行步骤306:将该第二固件映像文件取代该第一固件映像文件,并与该第二识别码一并写入该计算机系统的该记忆模块内。

此时更新模块30会将该固件更新文件60的第二识别码42移除后得到第二固件映像文件52。再将该第二固件映像文件52写入该计算机系统2的该记忆模块2a内正确的位置以取代原本的第一固件映像文件51,第二识别码42也会一并写入记忆模块2a,藉此即可完成计算机系统2的更新。

此处需注意的是,本发明的固件更新的方法并不以上述的步骤次序为限,只要能达成本发明的目的,上述的步骤次序亦可加以改变。

藉由本案的固件更新的方法及固件更新系统1,即可确保对计算机系统2进行更新的固件是合法且安全的,避免对计算机系统2造成损害。

需注意的是,本实施方式仅例示本发明的较佳实施例,为避免赘述,并未详加记载所有可能的变化组合。然而,本领域的通常知识者应可理解,上述各模块或元件未必皆为必要。且为实施本发明,亦可能包含其他较细节的现有模块或元件。各模块或元件皆可能视需求加以省略或修改,且任两模块间未必不存在其他模块或元件。

当然,本发明还可有其它多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号