一种智能卡固件更新方法及系统的制作方法

文档序号:10654230阅读:217来源:国知局
一种智能卡固件更新方法及系统的制作方法
【专利摘要】本发明公开了一种智能卡固件更新方法及系统,包括:云端服务器接收终端发送的第一固件更新请求,第一固件更新请求用于指示云端服务器生成第一固件,第一固件用于在与终端绑定的智能卡中执行第一表计的读写操作;第一固件更新请求中包括第一表计的标识和智能卡的标识;云端服务器根据第一表计的标识,确定第一表计的动态链接库文件,根据智能卡的标识,确定智能卡的原始固件;根据第一表计的动态链接库文件和智能卡的原始固件,生成第一固件;并将生成的第一固件发送给终端,以使终端将接收到的第一固件下载在智能卡中,使智能卡的当前固件更新为第一固件,可实现快速地针对不用应用场景为智能卡快速匹配用于执行智能卡芯片读写操作的固件。
【专利说明】
一种智能卡固件更新方法及系统
技术领域
[0001]本发明实施例涉及通信技术领域,尤其涉及一种智能卡固件更新方法及系统。
【背景技术】
[0002]智能卡与移动终端进行通讯,可实现新的功能。例如,带有蓝牙功能的智能卡可以通过蓝牙模块与手机进行通讯,可实现用户通过手机进行智能卡的充值,使用户不必前去营业厅充值,为用户提供方便的同时,也能够降低发卡方的运营维护成本。
[0003]带有蓝牙功能的智能卡是不能单独存在的,必须配合表计厂商(如燃气表供应商)和数据后台(燃气公司数据后台)来使用。不同的表计厂商对智能卡的数据读写操作不同,智能卡与不同表计厂商的通讯保密方式不同(密钥不同),若要智能卡实现一卡多用的功能,要求智能卡要适配不同表计厂商的数据存储结构和数据通讯保密方法,然而大多数表计厂商的不愿意开放自己使用的IC卡的数据存储结构和数据通讯加密权限,所以,不同表计厂商与同一智能卡存在数据交互方式不统一的问题,成为了智能卡实现一卡多用的瓶颈。虽然进行程序开发能够使得智能卡适配不同表计厂商的数据存储结构和数据通讯保密方法,但会浪费大量的开发时间,影响智能卡的推广进度。
[0004]综上,现有技术中存在着因不同表计厂商与同一智能卡存在数据交互方式不统一的问题,导致智能卡不能实现一卡多用。

【发明内容】

[0005]本发明实施例提供一种智能卡固件更新方法及系统,用以解决现有技术中存在的因不同表计厂商与同一智能卡存在数据交互方式不统一的问题导致的智能卡不能一卡多用的问题。
[0006]本发明实施例提供一种智能卡固件更新方法,包括:
[0007]云端服务器接收终端发送的第一固件更新请求,所述第一固件更新请求用于指示所述云端服务器生成第一固件,所述第一固件用于在与所述终端绑定的智能卡中执行第一表计的读写操作;所述第一固件更新请求中包括所述第一表计的标识和所述智能卡的标识;
[0008]所述云端服务器根据所述第一表计的标识,确定所述第一表计的动态链接库文件;根据所述智能卡的标识,确定所述智能卡的原始固件;
[0009]所述云端服务器根据所述第一表计的动态链接库文件和所述智能卡的原始固件,生成所述第一固件;
[0010]所述云端服务器将生成的所述第一固件发送给所述终端。
[0011]上述实施例中,云端服务器根据第一固件更新请求,确定第一表计的动态链接库文件和智能卡的原始固件,根据第一表计的动态链接库文件和智能卡的原始固件生成第一固件,使得第一固件用于在与终端绑定的智能卡中执行第一表计的读写操作,进而使得智能卡与第一表计的数据交互,匹配第一表计的厂商的数据交互方式。当第一固件下载到智能卡中,且智能卡的当前固件更新为第一固件后,智能卡的充卡对象切换为第一表计,智能卡的应用场景切换为第一表计进行充值,进而实现智能卡的一卡多用功能。由云端服务器根据第一表计的动态链接库文件和智能卡的原始固件生成第一固件,可以实现快速地针对不用应用场景为智能卡快速匹配执行智能卡芯片读写操作的固件。
[0012]进一步地,在所述云端服务器将生成的所述第一固件发送给所述终端之前,还包括:
[0013]所述云端服务器按照与所述智能卡约定的通信密钥对生成的所述第一固件进行加密处理。云端服务器对生成的第一固件进行加密处理,可保证数据传输的安全性,避免表计厂商商业机密的泄露。
[0014]本发明实施例提供一种智能卡固件更新方法,包括:
[0015]终端向云端服务器发送第一固件更新请求,所述所述第一固件更新请求用于指示所述云端服务器生成第一固件,所述第一固件用于在与所述终端绑定的智能卡中执行第一表计的读写操作;
[0016]所述终端接收所述云端服务器发送的第一固件,所述第一固件是所述云端服务器根据所述第一表计的动态链接库文件和所述智能卡的固件代码生成的;
[0017]所述终端向所述智能卡发送第二固件更新请求,所述第二固件更新请求中包括所述第一固件,以使所述智能卡根据所述第一固件对所述智能卡的当前固件进行更新。
[0018]上述实施例中,与智能卡绑定的终端通过和云端服务器进行交互,实现智能卡新固件的快速生成,通过与智能卡绑定的终端与智能卡的交互,将智能卡旧固件更新为智能卡新固件,使得智能卡与每一个表计厂商之间的数据交互方式匹配,进而实现智能卡的一卡通用。当智能卡的应用场景发生改变时,需要对智能卡的充卡对象进行切换,此时,与智能卡绑定的终端向云端服务器发送第一固件更新请求,指示云端服务器生成第一固件;终端接收云端服务器发送的第一固件以后,向智能卡发送包括第一固件的第二固件更新请求,以使智能卡根据第一固件对智能卡的当前固件进行更新。因第一固件是根据第一表计的动态链接库文件和智能卡的原始固件生成的,智能卡与第一表计厂商之间的数据交互方式是匹配的,当智能卡的当前固件更新为第一固件后,智能卡的充卡对象切换为第一表计,智能卡的应用场景切换为第一表计进行充值。
[0019]本发明实施例提供一种智能卡固件更新方法,包括:
[0020]智能卡接收终端发送的第二固件更新请求;所述第二固件更新请求中包括所述第一固件,所述第一固件用于在所述智能卡中执行第一表计的读写操作;所述第一固件是云端服务器根据所述第一表计的动态链接库文件和所述智能卡的原始固件生成的;
[0021]所述智能卡将所述智能卡的当前固件更新为所述第一固件。
[0022]上述实施例中,因第一固件是云端服务器根据第一表计的动态链接库文件和智能卡的原始固件生成的,智能卡的当前固件更新为第一固件后,智能卡的充卡对象切换为第一表计,智能卡的应用场景切换为第一表计进行充值。进而实现了智能卡的不同应用场景的扩展,使得智能卡仅依靠固件的升级即可实现一卡多用。第一固件在智能卡中运行时,智能卡与第一表计厂商之间的数据交互方式是匹配的,解决了现有技术中存在的技术问题。
[0023]进一步地,若所述第一固件是所述云端服务器按照与所述智能卡约定的通信密钥进行加密处理后的固件;则
[0024]在所述智能卡将所述智能卡的当前固件更新为所述第一固件之前,所述方法还包括:
[0025]所述智能卡按照与所述云端服务器约定的通信密钥对所述第一固件进行解密。通过对第一固件进行加解密,可实现数据传输的安全性。
[0026]进一步地,所述智能卡的当前固件为第二固件或者所述智能卡的原始固件;
[0027]其中,所述第二固件是所述云端服务器根据第二表计的动态链接库文件和所述智能卡的原始固件生成的。
[0028]本发明实施例提供一种云端服务器,包括:
[0029]接收单元,用于接收终端发送的第一固件更新请求,所述第一固件更新请求用于指示所述云端服务器生成第一固件,所述第一固件用于在与所述终端绑定的智能卡中执行第一表计的读写操作;所述第一固件更新请求中包括所述第一表计的标识和所述智能卡的标识;
[0030]确定单元,用于根据所述第一表计的标识,确定所述第一表计的动态链接库文件;根据所述智能卡的标识,确定所述智能卡的原始固件;
[0031 ]生成单元,用于根据所述确定单元确定的所述第一表计的动态链接库文件和所述智能卡的原始固件,生成所述第一固件;
[0032]发送单元,用于将所述生成单元生成的所述第一固件发送给所述终端。
[0033]进一步地,还包括加密单元,
[0034]所述加密单元,用于在所述发送单元将所述第一固件发送给所述终端之前,按照与所述智能卡约定的通信密钥对所述生成单元生成的所述第一固件进行加密处理。
[0035]本发明实施例提供一种终端,包括:
[0036]发送单元,用于向云端服务器发送第一固件更新请求,所述所述第一固件更新请求用于指示所述云端服务器生成第一固件,所述第一固件用于在与所述终端绑定的智能卡中执行第一表计的读写操作;
[0037]接收单元,用于接收所述云端服务器发送的第一固件,所述第一固件是所述云端服务器根据所述第一表计的动态链接库文件和所述智能卡的固件代码生成的;
[0038]所述发送单元,还用于向所述智能卡发送第二固件更新请求,所述第二固件更新请求中包括所述第一固件,以使所述智能卡根据所述第一固件对所述智能卡的当前固件进行更新。
[0039]本发明实施例提供一种智能卡,包括:
[0040]接收单元,用于接收终端发送的第二固件更新请求;所述第二固件更新请求中包括所述第一固件,所述第一固件用于在所述智能卡中执行第一表计的读写操作;所述第一固件是云端服务器根据所述第一表计的动态链接库文件和所述智能卡的原始固件生成的;
[0041]更新单元,用于将所述智能卡的当前固件更新为所述第一固件。
[0042]进一步地,还包括解密单元;
[0043]若所述第一固件是所述云端服务器按照与所述智能卡约定的通信密钥进行加密处理后的固件;则
[0044]所述解密单元,用于在所述更新单元将所述智能卡的当前固件更新为所述第一固件之前,按照与所述云端服务器约定的通信密钥对所述第一固件进行解密。
[0045]进一步地,所述智能卡的当前固件为第二固件或者所述智能卡的原始固件;
[0046]其中,所述第二固件是所述云端服务器根据第二表计的动态链接库文件和所述智能卡的原始固件生成的。
[0047]本发明实施例提供一种智能卡固件更新系统,包括:
[0048]所述云端服务器,用于接收终端发送的第一固件更新请求,所述第一固件更新请求用于指示所述云端服务器生成第一固件,所述第一固件用于在与所述终端绑定的智能卡中执行第一表计的读写操作,所述第一固件更新请求中包括所述第一表计的标识和所述智能卡的标识;根据所述第一表计的标识,确定所述第一表计的动态链接库文件;根据所述智能卡的标识,确定所述智能卡的原始固件;根据所述第一表计的动态链接库文件和所述智能卡的原始固件,生成所述第一固件,并将生成的所述第一固件发送给所述终端;
[0049]所述终端,用于向所述云端服务器发送所述第一固件更新请求,以及接收所述云端服务器发送的所述第一固件;向所述智能卡发送第二固件更新请求,所述第二固件更新请求中包括所述第一固件,以使所述智能卡根据所述第一固件对所述智能卡的当前固件进行更新;
[0050]所述智能卡,用于接收所述终端发送的第二固件更新请求,所述第二固件更新请求中包括所述第一固件,将所述智能卡的当前固件更新为所述第一固件。
[0051 ] 上述实施例中,通过与智能卡绑定的终端和云端服务器之间的交互,实现对智能卡新固件的生成,通过与智能卡绑定的终端与智能卡的交互,将智能卡旧固件更新为智能卡新固件,不仅能够实现不同应用场景下智能卡固件的更新,还会使智能卡与每一个表计厂商之间的数据交互方式匹配,进而实现智能卡的一卡通用。当智能卡的应用场景发生改变时,需要对智能卡的充卡对象进行切换,如智能卡的充卡对象由第二表计切换为第一表计,此时,与智能卡绑定的终端向云端服务器发送第一固件更新请求,指示云端服务器生成第一固件,由云端服务器根据第一表计的动态链接库文件和智能卡的原始固件生成第一固件,第一固件用于在与终端绑定的智能卡中执行第一表计的读写操作,云端服务器将生成的第一固件发送给终端;终端接收云端服务器发送的第一固件以后,向智能卡发送包括第一固件的第二固件更新请求,以使智能卡根据第一固件对智能卡的当前固件进行更新。因第一固件是根据第一表计的动态链接库文件和智能卡的原始固件生成的,智能卡与第一表计厂商之间的数据交互方式是匹配的,当智能卡的当前固件更新为第一固件后,智能卡的充卡对象切换为第一表计,智能卡的应用场景切换为第一表计进行充值。
【附图说明】
[0052]图1至图3为本发明实施例提供的一种智能卡固件更新方法流程示意图;
[0053]图4为本发明实施例提供的一种云端服务器的结构示意图;
[0054]图5为本发明实施例提供的一种终端的结构示意图;
[0055]图6为本发明实施例提供的一种智能卡的结构示意图;
[0056]图7至图8为本发明实施例提供的一种智能卡固件更新系统的结构示意图。
【具体实施方式】
[0057]为了解决现有技术中存在的智能卡不能一卡多用的问题,本发明实施例提供了一种智能卡固件更新方法及系统,可实现不同应用场景下智能卡固件的更新,通过与智能卡绑定的终端和云端服务器之间的交互,实现对智能卡新固件的生成,通过与智能卡绑定的终端与智能卡的交互,将智能卡旧固件更新为智能卡新固件,使得智能卡与每一个表计厂商之间的数据交互方式匹配,进而实现智能卡的一卡通用。当智能卡的应用场景发生改变时,需要对智能卡的充卡对象进行切换,如智能卡的充卡对象由第二表计切换为第一表计,此时,与智能卡绑定的终端向云端服务器发送第一固件更新请求,指示云端服务器生成第一固件,由云端服务器根据第一表计的动态链接库文件和智能卡的原始固件生成第一固件,第一固件用于在与终端绑定的智能卡中执行第一表计的读写操作,云端服务器将生成的第一固件发送给终端;终端接收云端服务器发送的第一固件以后,向智能卡发送包括第一固件的第二固件更新请求,以使智能卡根据第一固件对智能卡的当前固件进行更新。因第一固件是根据第一表计的动态链接库文件和智能卡的原始固件生成的,智能卡与第一表计厂商之间的数据交互方式是匹配的,当智能卡的当前固件更新为第一固件后,智能卡的充卡对象切换为第一表计,智能卡的应用场景切换为第一表计进行充值。
[0058]本发明实施例提供的智能卡固件更新方法涉及终端侧、云端服务器侧以及智能卡,下面对于每一侧进行固件更新的方法流程进行详细说明。
[0059]实施例一
[0060]如图1所示,本发明实施例提供的一种云端服务器侧的智能卡固件更新方法流程包括:
[0061]本发明实施例提供一种智能卡固件更新方法,包括:
[0062]步骤101,云端服务器接收终端发送的第一固件更新请求,第一固件更新请求用于指示云端服务器生成第一固件,第一固件用于在与终端绑定的智能卡中执行第一表计的读写操作;第一固件更新请求中包括第一表计的标识和智能卡的标识;
[0063]步骤102,云端服务器根据第一表计的标识,确定第一表计的动态链接库文件;根据智能卡的标识,确定智能卡的原始固件;
[0064]步骤103,云端服务器根据第一表计的动态链接库文件和智能卡的原始固件,生成第一固件;
[0065]步骤104,云端服务器将生成的第一固件发送给终端。
[0066]步骤101中,终端通过终端上的能够实现智能卡充卡、充表功能的应用程序APP与云端服务器进行数据交互。第一固件更新请求可以是终端在收到终端用户的充卡对象切换指示后向云端服务器发送的。第一固件更新请求指示云端服务器结合智能卡的原始固件和智能卡即将切换的充卡对象(如第一表计)的DLL文件生成新的固件。新的固件使得智能卡与新的充卡对象的提供方(第一表计的厂商)的之间的数据交互方式匹配。
[0067]第一表计可以是终端用户侧的水表,电表,燃气表,门禁卡等,此处不做具体限定。第一表计的标识为第一表计的唯一编号,如水表的编号,第一表计的标识也可以是第一表计的厂商的标识,如***自来水厂的代码。终端用户预先在APP上注册第一表计的相关信息,终端在收到终端用户通过APP触发充卡对象切换指示时,获取终端用户预先注册的第一表计的相关信息,第一表计的相关信息包括第一表计的标识。
[0068]智能卡的标识是指智能卡的卡号或者是智能卡芯片的编号。
[0069]本发明实施例中的智能卡是蓝牙智能卡,可通过内置的蓝牙模块与终端进行无线通信,实现终端将第一固件下载在蓝牙智能卡中。现有技术中的智能卡一般不具备与终端通信的功能。
[0070]步骤101中,第一固件用于在与终端绑定的智能卡中执行第一表计的读写操作,是指云端服务器将要生成的第一固件能够实现智能卡与第一表计的数据交互方式,与第一表计与第一表计的厂商之间的数据交互方式匹配。
[0071 ] 步骤102中,动态链接库文件即DLL(Dynamic Link Library)文件,又称“应用程序拓展”,是软件文件类型。在Windows中,许多应用程序并不是一个完整的可执行文件,它们被分割成一些相对独立的动态链接库,即DLL文件,通常放置于系统中,当执行某一个程序时,动态链接库文件可以被调用。一个应用程序可使用多个DLL文件,一个DLL文件也可能被不同的应用程序调用。第一表计的动态链接库文件预先存储在云端服务器中,云端服务器同时还存储有第一表计的标识与第一表计的动态链接库文件的映射关系。
[0072]云端服务器存储了各个表计厂商的DLL文件,当云端接收到第一固件更新请求之后,根据第一固件更新请求中的表计标识,直接查找标记标识所对应的表计厂商的DLL文件即可。
[0073]步骤102中,云端服务器根据第一表计的标识,确定第一表计的动态链接库文件,还可以采用其他的方式,比如,云端服务器根据第一表计的标识,向第一表计的厂商服务器发送请求,请求获取第一表计的动态链接库文件。
[0074]本发明实施例中,智能卡的原始固件存储在云端服务器中,即智能卡的标识与智能卡的原始固件的映射关系存储在云端服务器中。智能卡的原始固件是指写入芯片中的驱动程序,用于支撑智能卡的各项功能。智能卡固件更新的过程就是在智能卡芯片中写入新的固件,将原有固件替换为新的固件的过程。
[0075]步骤103中,云端服务器将第一表计的动态链接库文件和智能卡的原始固件快速融合成一个可执行文件,即第一固件,第一固件能够在智能卡中运行,且具有执行第一表计的读写操作的功能,即智能卡能够将智能卡芯片中的数据写入到第一表计中,也能读取第一表计充表后的数据,并将第一表计充表后的数据写入到智能卡芯片中,使得智能卡成为第一表计的充表装置。
[0076]步骤104中,云端服务器将生成的第一固件发送给终端,以使终端将接收到的第一固件下载在智能卡中,使智能卡的当前固件更新为第一固件。
[0077]进一步地,为了保证数据传输的安全性,避免表计厂商商业机密的泄露,在云端服务器将生成的第一固件发送给终端之前,上述方法还包括:
[0078]云端服务器按照与智能卡约定的通信密钥对生成的第一固件进行加密处理。
[0079]云端服务器和蓝牙卡都存有加解密的通信密钥,加密和解密都需要密钥的参与才能实现,在双方进行密文传输时,数据发送方需要将要传输的数据进行加密,数据接收方需要对传输的密文数据解密。
[0080]上述实施例中,云端服务器根据第一固件更新请求,确定第一表计的动态链接库文件和智能卡的原始固件,根据第一表计的动态链接库文件和智能卡的原始固件生成第一固件,使得第一固件用于在与终端绑定的智能卡中执行第一表计的读写操作,进而使得智能卡与第一表计的数据交互,匹配第一表计的厂商的数据交互方式。当第一固件下载到智能卡中,且智能卡的当前固件更新为第一固件后,智能卡的充卡对象切换为第一表计,智能卡的应用场景切换为第一表计进行充值,进而实现智能卡的一卡多用功能。由云端服务器根据第一表计的动态链接库文件和智能卡的原始固件生成第一固件,可以实现快速地针对不用应用场景为智能卡快速匹配用于执行智能卡芯片读写操作的固件。
[0081 ] 实施例二
[0082]如图2所示,本发明实施例提供的一种终端侧的智能卡固件更新方法流程包括:
[0083]步骤201,终端向云端服务器发送第一固件更新请求,第一固件更新请求用于指示云端服务器生成第一固件,第一固件用于在与终端绑定的智能卡中执行第一表计的读写操作;
[0084]步骤202,终端接收云端服务器发送的第一固件,第一固件是云端服务器根据第一表计的动态链接库文件和智能卡的固件代码生成的;
[0085]步骤203,终端向智能卡发送第二固件更新请求,第二固件更新请求中包括第一固件,以使智能卡根据第一固件对智能卡的当前固件进行更新。
[0086]上述步骤202中,第一固件更新请求中包括第一表计的标识和智能卡的标识,以使云端服务器接收到第一固件更新请求之后,根据第一表计的标识,确定第一表计的动态链接库文件;以及根据智能卡的标识,确定智能卡的原始固件。
[0087]终端通过终端上的能够实现智能卡充卡、充表功能的应用程序APP分别与云端服务器、智能卡进行信息交互。
[0088]步骤201中,终端通过无线通信模块向云端服务器发送第一固件更新请求。
[0089]步骤203中,终端通过终端上的蓝牙模块向智能卡发送第二固件更新请求。
[0090]上述实施例中,与智能卡绑定的终端通过和云端服务器进行交互,实现智能卡新固件的快速生成,通过与智能卡绑定的终端与智能卡的交互,将智能卡旧固件更新为智能卡新固件,使得智能卡与每一个表计厂商之间的数据交互方式匹配,进而实现智能卡的一卡通用。当智能卡的应用场景发生改变时,需要对智能卡的充卡对象进行切换,此时,与智能卡绑定的终端向云端服务器发送第一固件更新请求,指示云端服务器生成第一固件;终端接收云端服务器发送的第一固件以后,向智能卡发送包括第一固件的第二固件更新请求,以使智能卡根据第一固件对智能卡的当前固件进行更新。因第一固件是根据第一表计的动态链接库文件和智能卡的原始固件生成的,智能卡与第一表计厂商之间的数据交互方式是匹配的,当智能卡的当前固件更新为第一固件后,智能卡的充卡对象切换为第一表计,智能卡的应用场景切换为第一表计进行充值。
[0091 ] 实施例三
[0092]如图3所示,本发明实施例提供一种智能卡侧的智能卡固件更新方法,包括:
[0093]步骤301,智能卡接收终端发送的第二固件更新请求;第二固件更新请求中包括第一固件,第一固件用于在智能卡中执行第一表计的读写操作;第一固件是云端服务器根据第一表计的动态链接库文件和智能卡的原始固件生成的;
[0094]步骤302,智能卡将智能卡的当前固件更新为第一固件。
[0095]上述方法流程中,智能卡为蓝牙智能卡,智能卡的主处理器通过内部的蓝牙模块接收终端发送的第二固件更新请求,获取第二固件更新请求中的第一固件,根据第一固件,进行智能卡当前固件的更新。对于蓝牙智能卡来说,不需要区分智能卡进行切换的充卡对象,只需要根据终端APP发送的第二固件更新请求,执行第一固件的在线更新即可实现智能卡的应用场景的切换,依靠不同固件更新的方式实现智能卡具备不同功能。
[0096]上述实施例中,第一固件替换掉智能卡当前固件后存储在智能卡芯片中。
[0097]具体应用中,为了使智能卡内的固件版本为最新版本,蓝牙智能卡中还可配置固件在线升级分区,接收到的第一固件首先存储在固件在线升级分区中,蓝牙智能卡固件在线升级分区具备0TA(0ver the Air Technology,空中下载技术)在线升级的功能,可以允许蓝牙智能卡接收终端APP的在线升级指令,对蓝牙智能卡固件在线升级分区中的全部固件或者部分固件进行在线升级,在线升级后的固件再存储在智能卡芯片中。
[0098]而一般的智能卡的固件是无法更新和升级的,除非将智能卡的固件重新烧录在智能卡芯片中。
[0099]进一步地,为了提高数据传输的安全性,若第一固件是云端服务器按照与智能卡约定的通信密钥进行加密处理后的固件;则在智能卡将智能卡的当前固件更新为第一固件之前,方法还包括:智能卡按照与云端服务器约定的通信密钥对第一固件进行解密。
[0100]进一步地,智能卡的当前固件为第二固件或者智能卡的原始固件;其中,第二固件是云端服务器根据第二表计的动态链接库文件和智能卡的原始固件生成的。
[0101]上述实施例中,因第一固件是云端服务器根据第一表计的动态链接库文件和智能卡的原始固件生成的,智能卡的当前固件更新为第一固件后,智能卡的充卡对象切换为第一表计,智能卡的应用场景切换为第一表计进行充值。进而实现了智能卡的不同应用场景的扩展,使得智能卡仅依靠固件的升级即可实现一卡多用。第一固件在智能卡中运行时,智能卡与第一表计厂商之间的数据交互方式是匹配的。
[0102]针对上述方法流程,本发明实施例还提供一种云端服务器、终端、智能卡、智能卡固件更新的系统,这些设备和系统的具体内容可以参照上述方法实施,在此不再赘述。
[0103]实施例四
[0104]如图4所示,本发明实施例提供一种云端服务器,包括:
[0105]接收单元401,用于接收终端发送的第一固件更新请求,第一固件更新请求用于指示云端服务器生成第一固件,第一固件用于在与终端绑定的智能卡中执行第一表计的读写操作;第一固件更新请求中包括第一表计的标识和智能卡的标识;
[0106]确定单元402,用于根据第一表计的标识,确定第一表计的动态链接库文件;根据智能卡的标识,确定智能卡的原始固件;
[0?07]生成单元403,用于根据确定单元402确定的第一表计的动态链接库文件和智能卡的原始固件,生成第一固件;
[0108]发送单元404,用于将生成单元403生成的第一固件发送给终端。
[0109]进一步地,还包括加密单元,
[0110]加密单元,用于在发送单元404将第一固件发送给终端之前,按照与智能卡约定的通信密钥对生成单元生成的第一固件进行加密处理。
[0111]上述实施例中,云端服务器根据第一固件更新请求,确定第一表计的动态链接库文件和智能卡的原始固件,根据第一表计的动态链接库文件和智能卡的原始固件生成第一固件,使得第一固件用于在与终端绑定的智能卡中执行第一表计的读写操作,进而使得智能卡与第一表计的数据交互,匹配第一表计的厂商的数据交互方式。当第一固件下载到智能卡中,且智能卡的当前固件更新为第一固件后,智能卡的充卡对象切换为第一表计,智能卡的应用场景切换为第一表计进行充值,进而实现智能卡的一卡多用功能。由云端服务器根据第一表计的动态链接库文件和智能卡的原始固件生成第一固件,可以实现快速地针对不用应用场景为智能卡快速匹配执行智能卡芯片读写操作的固件。
[0112]实施例五
[0113]如图5所示,本发明实施例提供一种终端,包括:
[0114]发送单元501,用于向云端服务器发送第一固件更新请求,第一固件更新请求用于指示云端服务器生成第一固件,第一固件用于在与终端绑定的智能卡中执行第一表计的读写操作;
[0115]接收单元502,用于接收云端服务器发送的第一固件,第一固件是云端服务器根据第一表计的动态链接库文件和智能卡的固件代码生成的;
[0116]发送单元501,还用于向智能卡发送第二固件更新请求,第二固件更新请求中包括第一固件,以使智能卡根据第一固件对智能卡的当前固件进行更新。
[0117]上述实施例中,与智能卡绑定的终端通过和云端服务器进行交互,实现智能卡新固件的快速生成,通过与智能卡绑定的终端与智能卡的交互,将智能卡旧固件更新为智能卡新固件,使得智能卡与每一个表计厂商之间的数据交互方式匹配,进而实现智能卡的一卡通用。当智能卡的应用场景发生改变时,需要对智能卡的充卡对象进行切换,此时,与智能卡绑定的终端向云端服务器发送第一固件更新请求,指示云端服务器生成第一固件;终端接收云端服务器发送的第一固件以后,向智能卡发送包括第一固件的第二固件更新请求,以使智能卡根据第一固件对智能卡的当前固件进行更新。因第一固件是根据第一表计的动态链接库文件和智能卡的原始固件生成的,智能卡与第一表计厂商之间的数据交互方式是匹配的,当智能卡的当前固件更新为第一固件后,智能卡的充卡对象切换为第一表计,智能卡的应用场景切换为第一表计进行充值。
[0118]实施例六
[0119]如图6所示,本发明实施例提供一种智能卡,包括:
[0120]接收单元601,用于接收终端发送的第二固件更新请求;第二固件更新请求中包括第一固件,第一固件用于在智能卡中执行第一表计的读写操作;第一固件是云端服务器根据第一表计的动态链接库文件和智能卡的原始固件生成的;
[0121]更新单元602,用于将智能卡的当前固件更新为第一固件。
[0122]进一步地,还包括解密单元;
[0123]若第一固件是云端服务器按照与智能卡约定的通信密钥进行加密处理后的固件;则
[0124]解密单元,用于在更新单元将智能卡的当前固件更新为第一固件之前,按照与云端服务器约定的通信密钥对第一固件进行解密。
[0125]进一步地,智能卡的当前固件为第二固件或者智能卡的原始固件;
[0126]其中,第二固件是云端服务器根据第二表计的动态链接库文件和智能卡的原始固件生成的。
[0127]上述实施例中,因第一固件是云端服务器根据第一表计的动态链接库文件和智能卡的原始固件生成的,智能卡的当前固件更新为第一固件后,智能卡的充卡对象切换为第一表计,智能卡的应用场景切换为第一表计进行充值。进而实现了智能卡的不同应用场景的扩展,使得智能卡仅依靠固件的升级即可实现一卡多用。第一固件在智能卡中运行时,智能卡与第一表计厂商之间的数据交互方式是匹配的,解决了现有技术中存在的技术问题。
[0128]实施例七
[0129]如图7所示,本发明实施例提供一种智能卡固件更新系统,包括:
[0130]云端服务器701,用于接收终端702发送的第一固件更新请求,第一固件更新请求用于指示云端服务器701生成第一固件,第一固件用于在与终端702绑定的智能卡703中执行第一表计的读写操作,第一固件更新请求中包括第一表计的标识和智能卡的标识;根据第一表计的标识,确定第一表计的动态链接库文件;根据智能卡的标识,确定智能卡的原始固件;根据第一表计的动态链接库文件和智能卡的原始固件,生成第一固件,并将生成的第一固件发送给终端;
[0131]终端702,用于向云端服务器发送第一固件更新请求,以及接收云端服务器发送的第一固件;向智能卡发送第二固件更新请求,第二固件更新请求中包括第一固件,以使智能卡根据第一固件对智能卡的当前固件进行更新;
[0132]智能卡703,用于接收终端发送的第二固件更新请求,第二固件更新请求中包括第一固件,将智能卡的当前固件更新为第一固件。
[0133]上述系统中,云端服务器701存储了各个表计厂商的DLL文件。
[0134]上述系统中的终端702可以是移动终端,如手机、平板电脑等。终端702通过能够实现智能卡充卡、充表功能的应用程序APP分别与云端服务器701、智能卡703进行信息交互,终端702通过无线通信模块向云端服务器发送第一固件更新请求。终端通过蓝牙模块向智能卡发送第二固件更新请求。
[0135]上述系统中的智能卡703为蓝牙智能卡,包括主处理器、蓝牙模块、IC芯片等,蓝牙智能卡中还配置了固件在线升级分区,用于对智能卡固件进行在线升级。
[0136]实施例八
[0137]上述系统还可包括第一表计704,如图8所示,其中,第一表计为电表、水表、燃气表或其它表。
[0138]上述实施例中,通过与智能卡绑定的终端和云端服务器之间的交互,实现对智能卡新固件的生成,通过与智能卡绑定的终端与智能卡的交互,将智能卡旧固件更新为智能卡新固件,不仅能够实现不同应用场景下智能卡固件的更新,还会使智能卡与每一个表计厂商之间的数据交互方式匹配,进而实现智能卡的一卡通用。当智能卡的应用场景发生改变时,需要对智能卡的充卡对象进行切换,如智能卡的充卡对象由第二表计切换为第一表计,此时,与智能卡绑定的终端向云端服务器发送第一固件更新请求,指示云端服务器生成第一固件,由云端服务器根据第一表计的动态链接库文件和智能卡的原始固件生成第一固件,第一固件用于在与终端绑定的智能卡中执行第一表计的读写操作,云端服务器将生成的第一固件发送给终端;终端接收云端服务器发送的第一固件以后,向智能卡发送包括第一固件的第二固件更新请求,以使智能卡根据第一固件对智能卡的当前固件进行更新。因第一固件是根据第一表计的动态链接库文件和智能卡的原始固件生成的,智能卡与第一表计厂商之间的数据交互方式是匹配的,当智能卡的当前固件更新为第一固件后,智能卡的充卡对象切换为第一表计,智能卡的应用场景切换为第一表计进行充值。
[0139]本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0140]这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0141]这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0142]尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
[0143]显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
【主权项】
1.一种智能卡固件更新方法,其特征在于,包括: 云端服务器接收终端发送的第一固件更新请求,所述第一固件更新请求用于指示所述云端服务器生成第一固件,所述第一固件用于在与所述终端绑定的智能卡中执行第一表计的读写操作;所述第一固件更新请求中包括所述第一表计的标识和所述智能卡的标识; 所述云端服务器根据所述第一表计的标识,确定所述第一表计的动态链接库文件;根据所述智能卡的标识,确定所述智能卡的原始固件; 所述云端服务器根据所述第一表计的动态链接库文件和所述智能卡的原始固件,生成所述第一固件; 所述云端服务器将生成的所述第一固件发送给所述终端。2.如权利要求1所述的方法,其特征在于,在所述云端服务器将生成的所述第一固件发送给所述终端之前,还包括: 所述云端服务器按照与所述智能卡约定的通信密钥对生成的所述第一固件进行加密处理。3.一种智能卡固件更新方法,其特征在于,包括: 终端向云端服务器发送第一固件更新请求,所述所述第一固件更新请求用于指示所述云端服务器生成第一固件,所述第一固件用于在与所述终端绑定的智能卡中执行第一表计的读写操作; 所述终端接收所述云端服务器发送的第一固件,所述第一固件是所述云端服务器根据所述第一表计的动态链接库文件和所述智能卡的固件代码生成的; 所述终端向所述智能卡发送第二固件更新请求,所述第二固件更新请求中包括所述第一固件,以使所述智能卡根据所述第一固件对所述智能卡的当前固件进行更新。4.一种智能卡固件更新方法,其特征在于,包括: 智能卡接收终端发送的第二固件更新请求;所述第二固件更新请求中包括所述第一固件,所述第一固件用于在所述智能卡中执行第一表计的读写操作;所述第一固件是云端服务器根据所述第一表计的动态链接库文件和所述智能卡的原始固件生成的; 所述智能卡将所述智能卡的当前固件更新为所述第一固件。5.如权利要求4所述的方法,其特征在于,若所述第一固件是所述云端服务器按照与所述智能卡约定的通信密钥进行加密处理后的固件;则 在所述智能卡将所述智能卡的当前固件更新为所述第一固件之前,所述方法还包括: 所述智能卡按照与所述云端服务器约定的通信密钥对所述第一固件进行解密。6.如权利要求4所述的方法,其特征在于,所述智能卡的当前固件为第二固件或者所述智能卡的原始固件; 其中,所述第二固件是所述云端服务器根据第二表计的动态链接库文件和所述智能卡的原始固件生成的。7.一种云端服务器,其特征在于,包括: 接收单元,用于接收终端发送的第一固件更新请求,所述第一固件更新请求用于指示所述云端服务器生成第一固件,所述第一固件用于在与所述终端绑定的智能卡中执行第一表计的读写操作;所述第一固件更新请求中包括所述第一表计的标识和所述智能卡的标识; 确定单元,用于根据所述第一表计的标识,确定所述第一表计的动态链接库文件;根据所述智能卡的标识,确定所述智能卡的原始固件; 生成单元,用于根据所述确定单元确定的所述第一表计的动态链接库文件和所述智能卡的原始固件,生成所述第一固件; 发送单元,用于将所述生成单元生成的所述第一固件发送给所述终端。8.如权利要求7所述的云端服务器,其特征在于,还包括加密单元, 所述加密单元,用于在所述发送单元将所述第一固件发送给所述终端之前,按照与所述智能卡约定的通信密钥对所述生成单元生成的所述第一固件进行加密处理。9.一种终端,其特征在于,包括: 发送单元,用于向云端服务器发送第一固件更新请求,所述所述第一固件更新请求用于指示所述云端服务器生成第一固件,所述第一固件用于在与所述终端绑定的智能卡中执行第一表计的读写操作; 接收单元,用于接收所述云端服务器发送的第一固件,所述第一固件是所述云端服务器根据所述第一表计的动态链接库文件和所述智能卡的固件代码生成的; 所述发送单元,还用于向所述智能卡发送第二固件更新请求,所述第二固件更新请求中包括所述第一固件,以使所述智能卡根据所述第一固件对所述智能卡的当前固件进行更新。10.一种智能卡,其特征在于,包括: 接收单元,用于接收终端发送的第二固件更新请求;所述第二固件更新请求中包括所述第一固件,所述第一固件用于在所述智能卡中执行第一表计的读写操作;所述第一固件是云端服务器根据所述第一表计的动态链接库文件和所述智能卡的原始固件生成的; 更新单元,用于将所述智能卡的当前固件更新为所述第一固件。11.如权利要求10所述的智能卡,其特征在于,还包括解密单元; 若所述第一固件是所述云端服务器按照与所述智能卡约定的通信密钥进行加密处理后的固件;则 所述解密单元,用于在所述更新单元将所述智能卡的当前固件更新为所述第一固件之前,按照与所述云端服务器约定的通信密钥对所述第一固件进行解密。12.如权利要求10所述的智能卡,其特征在于,所述智能卡的当前固件为第二固件或者所述智能卡的原始固件; 其中,所述第二固件是所述云端服务器根据第二表计的动态链接库文件和所述智能卡的原始固件生成的。13.一种智能卡固件更新系统,其特征在于,包括: 所述云端服务器,用于接收终端发送的第一固件更新请求,所述第一固件更新请求用于指示所述云端服务器生成第一固件,所述第一固件用于在与所述终端绑定的智能卡中执行第一表计的读写操作,所述第一固件更新请求中包括所述第一表计的标识和所述智能卡的标识;根据所述第一表计的标识,确定所述第一表计的动态链接库文件;根据所述智能卡的标识,确定所述智能卡的原始固件;根据所述第一表计的动态链接库文件和所述智能卡的原始固件,生成所述第一固件,并将生成的所述第一固件发送给所述终端; 所述终端,用于向所述云端服务器发送所述第一固件更新请求,以及接收所述云端服务器发送的所述第一固件;向所述智能卡发送第二固件更新请求,所述第二固件更新请求中包括所述第一固件,以使所述智能卡根据所述第一固件对所述智能卡的当前固件进行更新; 所述智能卡,用于接收所述终端发送的第二固件更新请求,所述第二固件更新请求中包括所述第一固件,将所述智能卡的当前固件更新为所述第一固件。
【文档编号】G06F9/445GK106020868SQ201610309625
【公开日】2016年10月12日
【申请日】2016年5月11日
【发明人】刘莹莹, 路子鹏, 董胜龙, 苏金柱, 高京
【申请人】新智数字科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1