电子钱包有效性认证方法和装置
技术领域
本发明涉及安全认证技术,尤其涉及一种电子钱包有效性认证的方法和装置。
背景技术
电子钱包,是一个用来储存电子货币并进行货币支付的硬件设备,通常以智能卡、嵌入式安全模块等形式存在,例如各地的公交一卡通。
目前使用电子钱包时,主要是与各个终端刷卡设备(POS)进行信息交互,完成交易。在进行交易前,各个终端设备需要对电子钱包的有效性进行验证,以保证对电子钱包的合法性操作,验证方法的主要原理是利用密钥体系进行相互的身份认证:通过内嵌于终端刷卡设备中的PSAM(Purchase Secure AccessModule消费安全存取模块)中的相关应用密钥,以及电子钱包设备中的对应密钥,对数据进行加密或解密运算,依据运算结果判断电子钱包的有效性。
目前,在这种电子钱包有效性验证过程中,各个电子钱包设备需要与终端设备进行多次的加密解密信息的响应应答,增加了网络中数据通信的流量,在一些窄带系统中会占用很大的带宽,无法保证通信的顺畅,尤其不适合于需要统一对很多电子钱包进行通信的情况,只能一对一的逐个进行管理,对实现批量的管理多个电子钱包设备时,带来很大的不便。
发明内容
本发明提供了一种电子钱包有效性认证的方法,能够实现对一个或多个电子钱包的统一管理。
本发明提供的电子钱包有效性认证的方法,包括如下步骤:
按约定报文格式接收电子钱包信令;
解析所述电子钱包信令,得到信令中的电子钱包标识;
根据信令中的电子钱包标识的有效性设定标识对所有电子钱包有效、对部分电子钱包有效、或对一个电子钱包有效,读取出电子钱包自身标识;
将所述电子钱包自身标识与所述信令中的电子钱包标识进行比对;
如果比对正确,则有效性认证成功;如果比对错误,则有效性认证失败,丢弃所述电子钱包信令。
所述根据信令中的电子钱包标识的有效性设定标识对所有电子钱包有效、对部分电子钱包有效、或对一个电子钱包有效,读取电子钱包自身标识步骤为:
如果信令中的电子钱包标识的有效性设定标识对所有电子钱包有效,则读取出电子钱包自身标识的零个字节;
如果信令中的电子钱包标识的有效性设定标识对部分电子钱包有效,则读取出电子钱包自身标识的部分字节;
如果信令中的电子钱包标识的有效性设定标识对一个电子钱包有效,则读取出电子钱包自身标识的所有字节。
将所述电子钱包自身标识与所述信令中的电子钱包标识进行比对的具体步骤为:
如果读取出电子钱包自身标识的零个字节,则所述电子钱包比对正确;
如果读取出电子钱包自身标识的部分字节,则与所述信令中电子钱包标识中对应的字节进行比对;
如果读取出电子钱包自身标识的所有字节,则与所述信令中电子钱包标识的所有字节进行比对。
本发明的电子钱包有效性认证方法的一个实施例:所述电子钱包自身标识由8字节数据构成,具体构成如下:
第1和第2字节为范围代码,取值范围为0x0001至0xxx xx;
第3字节为类型代码,取值范围为0x01至0xxx;
第4字节为保留代码,取固定值为0x00;
第5至第8字节为个性代码,取值范围为0x00000001至0xxx xx xx xx。
该实施例中所述根据信令中的电子钱包标识的有效性设定标识对所有电子钱包有效、对部分电子钱包有效、或对一个电子钱包有效,读取电子钱包自身标识具体步骤为:
如果信令中的电子钱包标识的有效性设定标识对所有电子钱包有效,即信令中的电子钱包标识的8字节全为零(0x 0000000000000000),则读取 出电子钱包自身标识的零个字节;
如果信令中的电子钱包标识的有效性设定标识对部分电子钱包有效,即信令中的电子钱包标识的个性代码全为零,则读取出电子钱包自身标识中第1至第3位的字节;
如果信令中的电子钱包标识的有效性设定标识对一个电子钱包有效,即信令中的电子钱包标识的个性代码不为4字节全零,则读取出电子钱包自身标识的8位字节。
该实施例中将所述电子钱包自身标识与所述信令中的电子钱包标识进行比对的具体步骤为:
如果读取出电子钱包自身标识的零个字节,则所述电子钱包比对正确;
如果读取出电子钱包自身标识中第1至第3位的字节,则与所述信令中电子钱包标识中第1至第3位的字节进行比对;
如果读取出电子钱包自身标识的8位字节,则与所述信令中电子钱包标识的8位字节进行比对。
本发明所述的电子钱包有效性认证的方法,按约定格式接收并解析电子钱包信令,根据解析得到的信令中的电子钱包标识的有效性设定标识(对所有电子钱包有效、对部分电子钱包有效、对一个电子钱包有效),对电子钱包自身标识进行相应读取,通过将所述电子钱包自身标识,与所述信令中的电子钱包标识进行比对,根据比对的结果可实现电子钱包信令对一个或多个电子钱包的管理。
本发明提供的电子钱包有效性认证的装置,包括:
接收模块,按约定格式接收电子钱包信令;
解析模块,用于解析所述电子钱包信令,得到信令中的电子钱包标识;
读取模块,根据信令中的电子钱包标识的有效性设定标识对所有电子钱包有效、对部分电子钱包有效、或对一个电子钱包有效,读取出电子钱包自身标识;
比对模块,将所述电子钱包自身标识与所述信令中的电子钱包标识进行比对;
认证模块,如果比对正确,则有效性认证成功;如果比对错误,则有效性认证失败,丢弃所述电子钱包信令。
所述读取模块具体操作为:
如果信令中的电子钱包标识的有效性设定标识对所有电子钱包有效,则读取出电子钱包自身标识的零个字节;
如果信令中的电子钱包标识的有效性设定标识对部分电子钱包有效,则读取出电子钱包自身标识的部分字节;
如果信令中的电子钱包标识的有效性设定标识对一个电子钱包有效,则读取出电子钱包自身标识的所有字节。
所述比对模块的具体操作为:
如果读取出电子钱包自身标识的零个字节,则所述电子钱包比对正确;
如果读取出电子钱包自身标识的部分字节,则与所述信令中电子钱包标识中对应的字节进行比对;
如果读取出电子钱包自身标识的所有字节,则与所述信令中电子钱包标识的所有字节进行比对。
所述的电子钱包有效性认证的装置可以为:智能卡或SD卡或嵌入式安全模块或MMC卡或USB安全设备。
本发明所述的电子钱包有效性认证的装置,由接收模块按约定格式接收电子钱包信令,由解析模块解析所述电子钱包信令,得到信令中的电子钱包标识;根据解析得到的信令中的电子钱包标识的有效性设定标识(对所有电子钱包有效、对部分电子钱包有效、对一个电子钱包有效),由读取模块对电子钱包自身标识进行相应的读取,通过比对模块将所述电子钱包自身标识,与所述信令中的电子钱包标识进行比对,根据认证模块的比对结果从而可实现电子钱包信令对一个或多个电子钱包的管理。
附图说明
图1是本发明电子钱包有效性认证方法的流程图;
图2是本发明电子钱包有效性认证方法的一个具体实施例流程图;
图3是本发明电子钱包有效性认证装置的结构图。
具体实施方式
下面结合附图对本发明做进一步的详细说明。
为了实现对一个或多个电子钱包的统一管理,本发明提出了一种电子钱包有效性认证的方法。如图1所示,本发明电子钱包有效性认证方法包括以下步骤:
步骤101,按约定格式接收电子钱包信令;
步骤102,解析所述电子钱包信令,得到信令中的电子钱包标识;
步骤103,根据信令中的电子钱包标识,读取出电子钱包自身标识;
步骤104,将所述电子钱包自身标识与所述信令中的电子钱包标识进行比对;
步骤105,如果比对正确,则有效性认证成功;如果比对错误,则有效性认证失败,丢弃所述电子钱包信令。
在按约定报文格式接收电子钱包信令步骤之前,可预先定义电子钱包信令的报文格式,这可以利用电子钱包服务系统实现。电子钱包信令报文格式设定后,在电子钱包装置上和电子钱包服务系统中电子钱包信令的报文格式数据都进行相应的设置或修改。通过这种定义可以保证双方通信的有效性,为了更好的保证信息的有效性,还可以对报文格式数据进行加密,电子钱包设备接收报文后进行相应的解密。通过此步骤,提高了电子钱包有效性认证的安全性。
现以一个具体实施例对本发明电子钱包有效性认证方法进行说明,如图2所示:
步骤201,按事先约定的报文格式,接收电子钱包信令;
电子钱包信令由报文头、电子钱包标识、操作类型及数据构成。约定的电子钱包标识具体规定如下:电子钱包标识由8字节数据构成,第1和第2字节为地区代码,当取值为0x00 00表明对所有地区适用;第3字节为类型代码, 当取值为0x00表明对所有类型适用;第4字节为预留代码,初始值取值0x00,第5至第8字节为个性代码,当取值为0x00 00 00 00表明对地区代码和类型代码匹配的所有电子钱包适用。
步骤202,解析电子钱包信令,得到信令中的电子钱包标识的8字节;
当信令中的电子钱包标识为8字节全0(0x00 00 00 00 00 00 00 00)时,表示信令对所有电子钱包有效;当信令中的电子钱包标识个性代码为4字节全0(0x00 00 00 00)时,表示信令对部分电子钱包有效,地区代码和类型代码匹配的电子钱包执行信令中指定的操作类型和数据;当信令中的电子钱包标识个性代码不为4字节全0时,表示信令对某一个电子钱包有效,地区代码、类型代码和个性代码都匹配的电子钱包执行信令中指定的操作类型和数据。
步骤203,根据信令中的电子钱包标识,读取电子钱包自身标识;
若信令中的电子钱包标识8字节为全0,则读取出电子钱包自身标识的零个字节;
若信令中的电子钱包标识8字节中第5至第8位字节全为0,即个性代码为全0,则读出电子钱包自身标识的第1至第3位字节,即地区代码和类型代码;
若信令中的电子钱包标识8字节中第5至第8位字节不全为0,即个性代码为不全0,则读取电子钱包自身标识的8位字节。
步骤204,将所述电子钱包自身标识与所述信令中的电子钱包标识进行比对;
如果读取出电子钱包自身标识的零个字节,则所述电子钱包比对正确;如果读取出电子钱包自身标识中第1至第3位的字节,则只与所述信令中电子钱包标识中非零字节的对应字节进行比对;
如果读取出电子钱包自身标识的8位字节,则与所述信令中电子钱包标识的8位字节进行比对。
步骤205,如果比对正确,则有效性认证成功;如果比对错误,则有效性认证失败,丢弃所述电子钱包信令。
当然,以上仅是本发明电子钱包有效性认证的一个具体实施例,电子钱包标识的约定规则并不限于此,例如,可约定电子钱包标识的命名规则如:电子钱包标识由9字节数据构成,第1字节为学校代码,当取值0x00表明对所有学校适用;第2字节为院系代码,当取值0x00表明对所有院系适用;第3字节为年级代码,当取值0x00表明对所有年级适用;第4和第5字节为预留代码,取固定值0x00 00;第6至第9字节为个性代码,当取值0x00 00 00 00表明对所有学校代码、院系代码及年级代码匹配的所有电子钱包适用。其他能够正确实现电子钱包信令读取和解析的报文格式均可应用在本发明中。
此外,本发明还提供了一种电子钱包有效性认证的装置。
如图3所示,本发明的电子钱包有效性认证的装置包括:
接收模块,按约定报文格式接收电子钱包信令;
解析模块,用于解析所述电子钱包信令,得到信令中的电子钱包标识;
读取模块,根据信令中的电子钱包标识的有效性设定标识,读取出电子钱包自身标识;
比对模块,将所述电子钱包自身标识与所述信令中的电子钱包标识行比对;
认证模块,如果比对正确,则有效性认证成功;如果比对错误,则有效性认证失败,丢弃所述电子钱包信令。
所述读取模块具体操作为:
如果信令中的电子钱包标识的有效性设定标识对所有电子钱包有效,则读取出电子钱包自身标识的零个字节;
如果信令中的电子钱包标识的有效性设定标识对部分电子钱包有效,则读取出电子钱包自身标识的部分字节;
如果信令中的电子钱包标识的有效性设定标识对一个电子钱包有效,则读取出电子钱包自身标识的所有字节。
所述比对模块的具体操作为:
如果读取出电子钱包自身标识的零个字节,则所有电子钱包比对正确;
如果读取出电子钱包自身标识的部分字节,则与所述信令中电子钱包标识 中对应的字节进行比对;
如果读取出电子钱包自身标识的所有字节,则与所述信令中电子钱包标识的所有字节进行比对。
因此,在需要对所有电子钱包执行相同的操作时,电子钱包信令中的电子钱包标识设定为全部有效的类型,对电子钱包自身标识进行零个字节读取,所有电子钱包比对正确,统一执行信令中指定的操作类型和数据;在需要对部分电子执行相同的操作时,电子钱包信令中的电子钱包标识设定为部分有效的类型,只对电子钱包自身标识进行部分字节读取,与信令中电子钱包标识的对应字节进行比对,比对正确的电子钱包,统一执行信令中指定的操作类型和数据;通过本发明的有效性认证方法可实现对多个电子钱包的统一管理,提高了电子钱包有效性认证的效率。
对于本发明所述的电子钱包有效性认证的方法和装置不仅可应用在数字电视、广播服务、电话费收取等收费业务,任何需要完成有效性认证的业务,包括基于互联网的网上支付,双向视频点播、移动电子商务等等,以及任何具体的像博彩、在线游戏、远程教育、远程医疗、远程咨询、网上购物、远程付费等,本发明都可以适用。另外,本发明中的应用也不应局限于电子钱包,任何需要进行有效性认证的装置例如智能卡,SD卡、嵌入式安全模块、MMC卡、USB安全设备等都可以适用本发明,实现对一个或多个装置的统一管理。
当然,本发明还可有其他多种实施例,在不背离本发明精神及其实质的情况下,本领域技术人员当可根据本发明做出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。