具体实施方式
下面结合附图,对本说明书提供的方案进行描述。
第一方面,本发明提供一种用于燃气计量表的智能NFC卡,所述智能NFC卡的芯片操作系统中包括第一应用空间和第二应用空间,所述第一应用空间用于存储第一处理程序,所述第二应用空间用于存储第二处理程序;其中,所述第一处理程序用于实现所述智能NFC卡与Android操作系统的移动终端上的Android-APP之间的通信过程,所述第二处理程序用于实现所述智能NFC卡与iOS操作系统的移动终端上的iOS-APP之间的通信过程。
其中,上述芯片操作系统即COS系统。COS是(Chip Operating System)的简称,主要控制智能卡和外界的信息交换,管理智能卡内的存储器并在卡内部完成各种命令的处理。
可理解的是,在芯片操作系统中包括两个应用空间,一个应用空间用来存储第一处理程序,第一处理程序可以与Android手机上的应用程序进行交互。在另一个应用空间中存储有第二处理程序,而第二处理程序可以与iOS操作系统的移动终端上的应用程序进行交互,这样使得智能NFC卡不仅支持Android平台,也支持iOS平台使用,支持全面用户推广。
第二方面,本发明实施例提供一种智能NFC卡的通信处理方法,所述智能NFC卡为第一方面提供的智能NFC卡。
所述方法包括:在将所述智能NFC卡接触一个移动终端后,所述移动终端将对应的操作系统类型发送至所述智能NFC卡,以使所述智能NFC卡根据所述操作系统类型选择对应的应用空间中的处理程序与所述移动终端进行通信。
可理解的是,该方法基于第一方面提供的智能NFC卡实现。
例如,当智能NFC卡接触到一个iOS操作系统的手机之后,手机会将其操作系统的类型发送给智能NFC卡,进而使得智能NFC卡上的第二应用空间中的第二处理程序与这个手机进行通信。
再例如,当智能NFC卡接触到一个Android操作系统的手机之后,手机会将其操作系统的类型发送给智能NFC卡,进而使得智能NFC卡上的第一应用空间中的第一处理程序与这个手机进行通信。
可理解的是,将操作系统的类型发送至智能NFC卡,相当于发送了应用选择指令,然后可以区分选择哪一种操作系统对应的处理程序中的NFC调用端指令序列,继而完成后续的通信操作。
针对不同的操作系统,对应的处理程序和移动终端之间的通信过程稍有差别。在具体实施时,若所述移动终端的所述操作系统类型为iOS操作系统,则所述智能NFC卡和所述移动终端之间的通信过程可以包括:
在所述智能NFC卡、所述移动终端上的iOS-APP和智能卡服务平台之间建立会话通道和分配对应的会话密钥,所述会话通道和所述会话密钥用于所述智能NFC卡、所述iOS-APP和所述智能卡服务平台之间的数据通信;读取所述智能NFC卡中的卡数据;根据所述卡数据进行燃气交易;在燃气交易完成后进行写卡操作。
也就是说,针对iOS操作系统,首先需要建立会话通道和分配会话密钥,然后在之后的交互过程中通过该会话通道和会话密钥进行通信。
进一步的,在具体实施时,所述读取所述智能NFC卡中的卡数据,可以包括如下步骤:所述iOS-APP向所述智能NFC发送读卡指令;所述智能NFC卡在接收到所述读卡指令后,将卡数据加密后发送至所述iOS-APP,所述卡数据中包括卡号和卡内余量;所述iOS-APP在接收到加密后的卡数据后,将加密后的卡数据透传至所述智能卡服务平台;所述智能卡服务平台在接收到加密后的卡数据后,对加密后的卡数据进行解析,得到解析后的卡数据,并将解密后的卡数据发送至所述iOS-APP。
在建立会话通道和分配会话密钥后,iOS-APP会向智能NFC发送读卡指令,即图1中的步骤“读4442卡数据”,然后智能NFC卡会将卡号和卡内余量等数据进行加密,得到加密后的卡数据发送至iOS-APP,iOS-APP将加密后的卡数据发送给智能卡服务平台,智能卡服务平台对卡数据进行解析,得到解析后的卡数据发送给iOS-APP,从而iOS-APP得知当前的一些卡数据,进而根据卡数据进行后续的购气操作。
实际中,智能NFC卡涉及到的数据有多个,例如,卡号(是对智能NFC卡的唯一标识)、表内余量(是燃气表的未使用的燃气余量)、卡内余量(智能NFC卡内燃气的余量)。例如,用户一次购买了100方的燃气,卡内余量为100,然后将智能NFC卡和燃气表进行交互,为燃气表充值,使得这100方燃气的数据全部充值到燃气表中,此时卡内余量为0。经过一段时间的使用后,使用了20方的燃气,剩余80方的燃气,此时表内余量为80。可理解的是,只有当卡内余量为0时,用户才可以继续购买燃气,因此这里比较重要的数据为卡号和卡内余量。
进一步的,在具体实施时,所述根据所述卡数据进行燃气交易,可以包括:所述iOS-APP在接收到解密后的卡数据后,若卡数据中的卡内余量为0,则所述iOS-APP向业务系统进行购气操作,并在购气完成后将交易数据发送至所述智能卡服务平台;所述交易数据包括卡号、购买量和购买次数。
也就是说,iOS-APP在接收到解密后的卡数据后,如果卡内余量为0,此时第二应用程序就会向业务系统进行购气操作,例如,用户想要购买30方的燃气,业务系统就会显示出购买30方的燃气需要支付的金额,然后用户缴费完成后,第二与预设应用程序会将相关的交易数据发送至智能卡服务平台。交易数据包括卡号、购买次数、本次购买燃气的量等数据。这些信息也可以称为写卡信息。之后便会进入写卡操作。
进一步的,在具体实施时,所述在燃气交易完成后进行写卡操作,可以包括:所述智能卡服务平台根据所述交易数据生成对应的写卡数据,并将所述写卡数据发送至所述iOS-APP;所述iOS-APP在接收到所述写卡数据后,向所述智能NFC卡发送写卡请求;所述智能NFC卡在接收到所述写卡请求时,将所述写卡数据写入所述智能NFC卡中,并向所述iOS-APP返回写卡结果。
也就是说,智能卡服务平台将交易数据写入到字符串Data中,得到写卡数据,然后将写卡数据发送至iOS-APP,iOS-APP向智能NFC卡发送携带有写卡数据的写卡请求,智能NFC卡将写卡数据写入到智能NFC卡中,并向iOS-APP返回写卡结果,至此整个过程结束。
在具体实施时,参见图2,若所述移动终端的所述操作系统类型为Android操作系统,则所述智能NFC卡和所述移动终端之间的通信过程可以包括:
对所述Android-APP进行鉴权处理;在鉴权通过后在所述智能NFC卡、所述Android-APP和智能卡服务平台之间建立会话通道和分配对应的会话密钥,所述会话通道和所述会话密钥用于所述智能NFC卡、所述Android-APP和所述智能卡服务平台之间的数据通信;读取所述智能NFC卡中的卡数据;根据所述卡数据进行燃气交易;在燃气交易完成后进行验密操作和进行写卡操作。
可见,Android操作系统对应的通信过程和iOS操作系统对应的通信过程略有差别,首先在建立会话通道之前先进行鉴权处理,其次在写入数据之前先进行验证卡密码。
进一步的,在具体实施时,所述对所述Android-APP进行鉴权处理,可以包括:所述Android-APP向所述智能NFC发送鉴权指令;所述智能NFC卡在接收到所述鉴权指令后,向所述Android-APP发送鉴权随机数;所述Android-APP在接收到所述鉴权随机数后,向所述智能卡服务平台发送携带有所述鉴权随机数的鉴权请求;所述智能卡服务平台在接收到所述鉴权指令后,对所述鉴权随机数进行加密,得到鉴权密文,并将所述鉴权密文发送至所述Android-APP;所述Android-APP在接收到所述鉴权密文后,将所述鉴权密文发送至所述智能NFC卡;所述智能NFC卡在接收到所述鉴权密文中,进行鉴权处理,向所述Android-APP返回鉴权结果;所述Android-APP在接收到所述鉴权结果后,若鉴权结果为鉴权通过,则进行建立会话通道和分配对应的会话密钥的过程。
也就是说,鉴权操作大致包括:Android-APP向智能NFC卡发送鉴权指令,智能NFC卡向Android-APP发送鉴权随机数,然后Android-APP将鉴权随机数发送给智能卡服务平台,智能卡服务平台对鉴权随机数加密,得到鉴权密文发送至Android-APP,Android-APP将鉴权密文发送给智能NFC卡,智能NFC卡根据鉴权密文进行鉴权,并将鉴权结果返回给Android-APP,如果鉴权结果为成功或通过,则进行后续的建立会话通道和会话密钥的过程。
进一步的,在具体实施时,在燃气交易完成后进行验密操作和进行写卡操作,可以包括:
所述智能卡服务平台根据所述交易数据生成对应的写卡数据,并将所述写卡数据发送至所述Android-APP;所述Android-APP在接收到所述写卡数据后,向所述智能NFC卡发送写卡请求;所述智能NFC卡在接收到所述写卡请求时,进行验证卡密码操作,在验证卡密码成功后,将所述写卡数据写入所述智能NFC卡中,并向所述Android-APP返回写卡结果。
也就是说,智能卡服务平台将交易数据写入字符串后得到写卡数据,将写卡数据发送给Android-APP,Android-APP向智能NFC卡发送携带有写卡数据的写卡请求,智能NFC卡先进行卡密码验证,只有卡密码验证通过之后才会将写卡数据写入到智能NFC卡中,最后将写卡结果返回给Android-APP。
可理解的是,针对Android操作系统的其它通信过程和针对iOS操作系统是一样的,不再赘述。
可理解的是,本发明提供的通信处理方法是对智能NFC的非接触处理过程进行的完善,而对于智能NFC的接触处理过程未变更,即燃气表插卡操作不做变更。上述针对iOS操作系统的通信处理过程,适用于ISO14443-3标准的NFC通信协议。
可理解的是,本发明提供的智能NFC卡,具有覆盖场景广泛、用户操作简单、不需要用户到指定地点,用户通过手机就可以操作,作为企业也可以更全面的服务客户、减少企业服务窗口成本。
本发明提供的通信处理方法不仅适用于燃气计量表计的线上解决方案,只要使用IC卡承载交易数据的场景均可应用本方法实现线上化业务提升。在本方法中对于iOS操作系统进行了流程的简化,提升了交互的稳定性和效率,使客户体验更便捷、高效。而且,将智能NFC卡的相关数据的解析在智能卡服务平台完成,实现了终端设备在云端的内存虚拟技术,提高整体性能的同时增强整体的安全性。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的功能可以用硬件、软件、挂件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。