一种升级POS机模块固件的方法和装置与流程

文档序号:12739484阅读:721来源:国知局
一种升级POS机模块固件的方法和装置与流程

本发明属于支付终端领域,尤其涉及一种升级POS机模块固件的方法和装置。



背景技术:

一台支付终端(Point Of Sale,POS)机包括多个模块,例如磁条卡、接触式IC卡读卡器、非接触式IC卡读卡器、Wifi、蓝牙、2G、3G、4G、摄像头、打印机和条码扫描头等。这些模块中,有的模块,例如接触式IC卡读卡器、非接触式IC卡读卡器等自身并没有固件(Firmware),是由(Operating System,OS)驱动运行,这类固件升级均通过OS的升级进行,而有的模块,例如2G、3G、4G模块等自身具有固件,也有自己用于存放固件的Flash,这些模块通过串口、USB等方式与POS机相连,其固件需要单独下载。

目前市场上的POS机在处理模块的固件升级时,一般方法是将POS机连接至电脑,运行模块厂商提供的工具,下载模块的固件到对应模块中。由于固件是单独下载,不会对其签名验证,因此,对于上述固件升级方式,如果模块厂商的升级协议被泄漏,升级工具可以被伪造,模块的固件有可能被非法升级,导致通讯数据泄漏,存在安全风险。



技术实现要素:

本发明的目的在于提供一种升级POS机模块固件的方法和装置,以提高POS机模块固件升级时的安全性。

本发明第一方面提供一种升级POS机模块固件的方法,所述方法包括:

下载模块固件升级包FWP;

对所述FWP的签名进行校验;

若对所述FWP的签名进行的校验通过,则解压所述FWP以进行后续的模块固件升级,否则,返回校验失败信息。

本发明第二方面提供一种升级POS机模块固件的装置,所述装置包括:

下载模块,用于下载模块固件升级包FWP;

第一校验模块,用于对所述FWP的签名进行校验;

解压模块,用于若所述第一校验模块对所述FWP的签名进行的校验通过,则解压所述FWP以进行后续的模块固件升级,否则,返回校验失败信息。

从上述本发明技术方案可知,由于对模块固件升级包FWP进行了签名校验,校验通过之后才解压模块固件升级包,因此,一方面,FWP设计与OS具有低耦合性,无论是由于模块固件升级还是下载协议改变,OS都不需要因此而进行升级,降低了模块固件升级所需的成本;另一方面,提高了升级的安全性,可以有效防止升级工具被伪造给POS机用户造成的损失。

附图说明

图1是本发明实施例一提供的升级POS机模块固件的方法的实现流程示意图;

图2是本发明实施例二提供的升级POS机模块固件的装置的结构示意图;

图3是本发明实施例三提供的升级POS机模块固件的装置的结构示意图;

图4是本发明实施例四提供的升级POS机模块固件的装置的结构示意图;

图5-a是本发明实施例五提供的升级POS机模块固件的装置的结构示意图;

图5-b是本发明实施例六提供的升级POS机模块固件的装置的结构示意图;

图5-c是本发明实施例七提供的升级POS机模块固件的装置的结构示意图。

具体实施方式

为了使本发明的目的、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

本发明实施例提供一种升级POS机模块固件的方法,所述方法包括:下载模块固件升级包FWP;对所述FWP的签名进行校验;若对所述FWP的签名进行的校验通过,则解压所述FWP以进行后续的模块固件升级,否则,返回校验失败信息。本发明实施例还提供相应的一种升级POS机模块固件的装置。以下分别进行详细说明。

请参阅附图1,是本发明实施例一提供的升级POS机模块固件的方法的实现流程示意图,主要包括以下步骤S101至步骤S103,详细说明如下:

S101,下载模块固件升级包FWP。

在本发明实施例中,模块固件升级包(FirmWare upgrade Package,FWP)采用linux下常用的.tar或.gz格式压缩,压缩为一个整包,并采用与OS固件签名相同的密钥对其进行签名,保证了FWP只能是被POS厂商发行,且不会被篡改。FWP包括了三个成员,分别为模块固件、升级程序(upgrade)和FWP信息文件(fwpinfo信息文件),其中,模块固件是模块厂商提供的POS机的模块的固件;升级程序(upgrade)起到执行模块固件下载的作用,其主要包括了由模块厂商提供的下载协议,而不同的模块对应不同的下载协议,每一个FWP的升级程序也不同;FWP信息文件记录了模块标识、待升级模块固件的版本号和描述信息等三个字段,其中,模块标识字段可以是模块代号也可以是模块的真实名称,需要与该模块在POS机的名称保持一致,待升级模块固件的版本号字段表示升级模块固件的版本,在模块升级该固件后,需要与从POS机中读取的模块的版本号一致,描述信息字段简要说明了模块的基本信息,包括实际名字、支持机型等,可以让用户很直观地了解到该FWP的基本信息。

作为本发明一个实施例,下载模块固件升级包FWP可以是通过本地下载FWP或通过远程下载FWP,其中,通过远程下载FWP可以是通过无线方式或有线方式连接至服务器下载FWP,例如,通过WiFi、2G、3G或4G等无线方式连接至互联网的服务器下载FWP,或者,通过以太网或USB连接至电脑终端,从互联网的服务器下载FWP。

在本发明实施例中,由于可通过远程下载FWP,进行模块固件的升级,从而无需安排POS机维修人员前往升级,大大节省了人力成本。

S102,对经步骤S101下载所得FWP的签名进行校验。

如前所述,在本发明实施例中,FWP采用了与OS固件签名相同的密钥进行签名。因此,为了保障模块固件升级的安全性,可以对经步骤S101下载所得FWP的签名进行校验。

S103,若对FWP的签名进行的校验通过,则解压所述FWP以进行后续的模块固件升级,否则,返回校验失败信息。

在本发明实施例中,解压FWP以进行后续的模块固件升级之后,还包括步骤S104至S106,说明如下:

S104,判断当前POS机是否包含模块标识对应的模块。

需要说明的是,在本发明实施例中,POS机有多类外设模块,每一类外设模块也会有多个模块,每一个模块的每一个固件的版本对应一个FWP。理论上,FWP中的升级程序(upgrade)在一个模块的第一个FWP生成时完成,后续由于模块的固件升级,升级程序(upgrade)无需改变,仅仅升级FWP信息文件(fwpinfo信息文件)和模块固件。在现有所支持的外设模块中,OS固件比较大,远大于模块固件,一般情况下OS无需升级,即使由于各种原因导致FWP升级(例如固件升级、协议改变或开发存在Bug等),OS也不会因此而需要同步升级。

S105,对升级程序的签名进行校验。

由于系统会对所有的可执行文件进行签名校验,因此,在本发明实施例中,升级程序也做了签名,并且与整个FWP的签名密钥一致,如此,可对升级程序的签名进行校验,以防被人伪造或篡改。

S106,若当前POS机包含所述模块标识对应的模块以及对升级程序的签名校验通过,则运行升级程序对模块固件进行升级。

若当前POS机包含所述模块标识对应的模块以及对升级程序的签名校验通过,运行升级程序对模块固件进行升级之后,还包括:读取当前POS机中待升级模块固件的版本号,比较当前POS机中待升级模块固件的版本号与FWP信息文件包含的待升级模块固件的版本号;若所述当前POS机中待升级模块固件的版本号与所述FWP信息文件包含的待升级模块固件的版本号一致,则提示模块固件升级成功,否则,提示模块固件升级失败。

若当前POS机不包含所述模块标识对应的模块和/或对升级程序的签名校验没有通过,则退出升级过程,并返回模块不匹配错误和/或签名失败错误等提示信息。

从上述附图1示例的升级POS机模块固件的方法可知,由于对模块固件升级包FWP进行了签名校验,校验通过之后才解压模块固件升级包,因此,一方面,FWP设计与OS具有低耦合性,无论是由于模块固件升级还是下载协议改变,OS都不需要因此而进行升级,降低了模块固件升级所需的成本;另一方面,提高了升级的安全性,可以有效防止升级工具被伪造给POS机用户造成的损失。

请参阅附图2,是本发明实施例二提供的升级POS机模块固件的装置的结构示意图。为了便于说明,附图2仅示出了与本发明实施例相关的部分。附图2示例的升级POS机模块固件的装置可以是附图1示例的升级POS机模块固件的方法的执行主体,其主要包括下载模块201、第一校验模块202和解压模块203,详细说明如下:

下载模块201,用于下载模块固件升级包FWP;

第一校验模块202,用于对FWP的签名进行校验;

解压模块203,用于若第一校验模块202对FWP的签名进行的校验通过,则解压所述FWP以进行后续的模块固件升级,否则,返回校验失败信息。

附图2示例的装置中,FWP包括升级程序和FWP信息文件,FWP信息文件包括模块标识,附图2示例的升级POS机模块固件的装置还包括判断模块301、第二校验模块302和升级模块303,如附图3所示本发明实施例三提供的升级POS机模块固件的装置,其中:

判断模块301,用于解压模块203解压FWP以进行后续的模块固件升级之后,判断当前POS机是否包含模块标识对应的模块;

第二校验模块302,用于对升级程序的签名进行校验;

升级模块303,用于若当前POS机包含模块标识对应的模块以及对升级程序的签名校验通过,则运行升级程序对模块固件进行升级。

附图3示例的装置中,FWP信息文件还包括待升级模块固件的版本号,附图3示例的升级POS机模块固件的装置还包括读取模块401、比较模块402和提示模块403,如附图4所示本发明实施例四提供的升级POS机模块固件的装置,其中:

读取模块401,用于升级模块303运行升级程序对模块固件进行升级之后,读取当前POS机中待升级模块固件的版本号;

比较模块402,用于比较当前POS机中待升级模块固件的版本号与FWP信息文件包含的待升级模块固件的版本号;

提示模块403,用于若当前POS机中待升级模块固件的版本号与FWP信息文件包含的待升级模块固件的版本号一致,则提示模块固件升级成功,否则,提示模块固件升级失败。

附图2至附图4任一示例的下载模块201还包括本地下载单元501或远程下载单元502,如附图5-a至附图5-c所示本发明实施例五至七提供的升级POS机模块固件的装置,其中:

本地下载单元501,用于通过本地下载FWP;

远程下载单元502,用于通过远程下载FWP。

附图5-a至附图5-c示例的升级POS机模块固件的装置中,远程下载单元502具体用于通过无线方式或有线方式连接至服务器下载FWP。

需要说明的是,上述装置各模块/单元之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,其带来的技术效果与本发明方法实施例相同,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。

本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁盘或光盘等。

以上对本发明实施例所提供的一种升级POS机模块固件的方法和装置进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1