一种智能卡密码保存及提取的方法及系统与流程

文档序号:12720875阅读:412来源:国知局
一种智能卡密码保存及提取的方法及系统与流程

本发明涉及个人终端储值卡的密码存储及提取技术领域,特别涉及一种智能卡密码保存及提取的方法及系统。



背景技术:

随着个人终端设备技术的发展,目前个人终端储值卡开始出现,用户可以通过自身的个人终端之间与储值卡(智能卡)进行通信,以便通过个人终端直接查询储值卡内的余额以及历史交易记录。

例如,随着建立了针对PBOC1.0规范、PBOC2.0、中石化IC卡规范、中石油IC卡规范、公共交通卡规范等智能卡的协议规范,智能卡开始流行。但现有的个人终端设备读取储值IC卡,查询卡内余额和历史交易记录时,每次都需要输入卡PIN码(密码),验证通过后方可查询到结果,多次查询时,较为不便。另外,对于用户来说,在使用个人终端设备查询储值IC卡内余额或者历史交易记录,这些操作相对来说安全级别不是太高的,重复操作过程容易造成密码泄露。如何使用户的体验更人性化、更方便并提高用户通过个人终端读取储值卡的余额及历史数据的安全性,是本领域亟待解决的问题。



技术实现要素:

本发明的目的在于提供一种智能卡密码保存及提取的方法及系统,以解决现有的个人终端查询储值卡内余额和历史交易记录时,每次都需要正确输入卡PIN码(密码)后,才能查询到结果,所存在的用户的体验差、不方便及安全性较差的问题。

本发明的第二目的在于提供一种智能卡密码保存及提取的方法及系统,使得用户只要正确输入一次卡PIN码(密码)后,以后不需要再次输入卡PIN码(密码),方便使用。

为实现上述目的,本发明提供了一种智能卡密码保存及提取的方法,包括以下内容:

个人终端在首次与智能卡通信时,按以下步骤存储密码:

S11:接收到验证操作的密码后,将所述密码进行加密处理,得到加密密文;

S12:个人终端将所述加密密文分布式地存储到个人终端的存储空间中;

则个人终端在非首次与智能卡通信时,首先按以下步骤提取密码:

S21:提取分布在个人终端的存储空间中的加密密文;

S22:将所述加密密文进行解密处理,得到用于验证操作的密码。

较佳地,个人终端在首次与智能卡通信时,同时对智能卡的卡号进行加密,并将加密的卡号分布式地存储到个人终端的存储空间中;

则个人终端在非首次与智能卡通信时,首先对智能卡的卡号进行加密后得到加密的卡号,然后在存储空间中搜索是否有相同的加密的卡号,如有,则提取对应卡号的密码。

较佳地,所述步骤S11中的加密处理包括:

A.通过预设加密算法对所述密码进行初始加密,得到初始加密密文;

B.在所述初始加密密文中加入与智能卡相关的唯一识别码,得到加密密文;

则,所述步骤S22中的解密处理包括:

a.根据所述唯一识别码对所述加密密文进行初始解密,得到初始加密密文;

b.对所述初始加密密文以预设加密算法对应的解密算法进行解密,得到所述密码。

较佳地,所述预设加密算法包括若干组预设的加密密钥及解密密钥,个人终端在首次接收到验证操作的密码时,随机选取其中一组加密密钥及解密密钥,并以选取的加密密钥对所述密码进行初始加密,解密时,以对应的解密密钥进行初始解密。

较佳地,所述唯一识别码为智能卡的卡号或智能卡的芯片ID。

较佳地,所述步骤S12进一步包括:

1)将所述加密密文按预设规律拆分成为若干个密文数据块;

2)将所述密文数据块分布式地存储到不同地址的存储空间中,并单独记录存储了密文数据块的存储空间地址;

3)不同地址的存储空间之间若存在空闲空间,则加入随机填充数据至空闲空间;

则所述S21中,依据所述存储空间地址提取分布在个人终端的存储空间中的加密密文。

较佳地,所述存储空间地址以文件的形式独立地存储于个人终端的存储空间中,所述个人终端通过调用该文件获取文件中的存储空间地址。

本发明还提供了一种智能卡密码保存及提取的系统,包括:设置于个人移动终端上的存储器、处理器及智能卡识别单元,其中,所述智能卡识别单元用于识别智能卡并接收验证操作的密码;

所述处理器用于对所述密码进行加密及解密,以及控制进行密文的分布式存储及读取;

所述存储器包含若干个独立的存储空间,用于分布式地存储所述密文。

较佳地,所述处理器包括:

唯一识别码获取单元,用于通过所述智能卡识别单元获取所述智能卡的唯一识别码;

初始加密/解密单元,用于通过预设加密算法对所述密码进行初始加密,得到初始加密密文,以及根据所述唯一识别码对所述加密密文进行初始解密,得到初始加密密文;

智能卡加密/解密单元,用于在所述初始加密密文中加入与智能卡相关的唯一识别码,得到加密密文,以及对所述初始加密密文以预设加密算法对应的解密算法进行解密,得到所述密码;

存储控制单元,用于将所述加密密文分布式地存储到个人终端的存储空间中,以及在个人终端在非首次与智能卡通信时提取分布在个人终端的存储空间中的加密密文。

较佳地,所述存储控制单元包括:

密文数据块分割模块,用于将所述加密密文按预设规律拆分成为若干个密文数据块;

分布式存储控制模块,用于将所述密文数据块分布式地存储到不同地址的存储空间中;

随机数据填充模块,用于在不同地址的存储空间之间的空闲空间中加入随机填充数据;

较佳地,所述存储器还包括一文件区域,用于单独存储记录了密文数据块的存储空间地址的文件。

较佳地,所述智能卡识别单元包括:

密码接收单元,用于接收验证操作的密码,并转发给所述处理器;

智能卡读取器,用于读取与个人终端通信的智能卡的卡片信息并转发给所述处理器,以便所述处理器判断该智能卡是否首次与个人终端通信。

较佳地,所述处理器还包括:卡号加密单元,用于对智能卡的卡号进行加密,得到加密的卡号;在个人终端在首次与智能卡通信时,由存储控制单元将加密的卡号分布式地存储到个人终端的存储空间中。

本发明方案具有以下有益效果:

1)通过在用户首次验证PIN码(密码)通过后,自动保存PIN码(密码)在终端设备内的方式;使得下次再次查询卡内余额和历史交易记录时不再需要输入PIN码(密码),终端会自动提取PIN码(密码)验证,查询到结果,使用方便,避免多次输入密码造成密码泄露,安全性较高;

2)通过传统的AES、RSA、DES等加密算法对用户输入的正确PIN码(密码)进行加密,该些加密算法技术成熟,不易破解,安全性较好;

3)通过加入其他元素参与到加密中,比如卡号、芯片唯一ID等,较好地保证了密文的唯一性,使得个人终端设备可以同时存储多个卡片的密码,便于区分不同的智能卡;

4)将每个智能卡的加密密文分布式存储在个人终端设备中,提高加密密文数据的安全性,又进一步通过在空闲的存储空间中加入随机填充数据,更好地保证了个人终端设备中加密密文的安全性,使得智能卡的密码不易被恶意盗取及破解。

附图说明

图1A为本发明优选实施例的智能卡密码保存方法流程图;

图1B为本发明优选实施例的智能卡密码提取方法流程图;

图2A为优选实施例的智能卡密码加密方法流程图;

图2B为优选实施例的智能卡密码解密方法流程图;

图3为优选实施例的密文存储方法流程图;

图4为优选实施例的智能卡密码保存及提取的系统组成图;

图5为优选实施例的处理器的组成图;

图6为具体实例的加密密文存储示意图。

具体实施方式

为更好地说明本发明,兹以一优选实施例,并配合附图对本发明作详细说明,具体如下:

本实施例提供了一种智能卡密码保存及提取的方法,包括以下内容:

个人终端在首次与智能卡通信时,如图1A所示,按以下步骤存储密码:

S11:接收到验证操作的密码后,将所述密码进行加密处理,得到加密密文;

S12:个人终端将所述加密密文分布式地存储到个人终端的存储空间中;

则个人终端在非首次与智能卡通信时,如图1B所示,首先按以下步骤提取密码:

S21:提取分布在个人终端的存储空间中的加密密文;

S22:将所述加密密文进行解密处理,得到用于验证操作的密码。

其中,在一优选实施例中,如图2A所示,步骤S11中的加密处理包括:

A.通过预设加密算法对所述密码进行初始加密,得到初始加密密文;

B.在所述初始加密密文中加入与智能卡相关的唯一识别码,得到加密密文;

则如图2B所示,上述步骤S22中的解密处理包括:

a.根据所述唯一识别码对所述加密密文进行初始解密,得到初始加密密文;

b.对所述初始加密密文以预设加密算法对应的解密算法进行解密,得到所述密码。

进一步的在优选实施例中,如图3所示,步骤S12中存储加密密文的过程具体包括:

1)将所述加密密文按预设规律拆分成为若干个密文数据块;

2)将所述密文数据块分布式地存储到不同地址的存储空间中,并单独记录存储了密文数据块的存储空间地址;

3)不同地址的存储空间之间若存在空闲空间,则加入随机填充数据至空闲空间;

则所述S21中,依据所述存储空间地址提取分布在个人终端的存储空间中的加密密文。

优选地,上述的存储空间地址以文件的形式独立地存储于个人终端的存储空间中,该个人终端通过调用该文件即可直接获取该文件中的存储空间地址。

进一步地,本实施例中的预设加密算法包括若干组预设的加密密钥及解密密钥,个人终端在首次接收到验证操作的密码时,随机选取其中一组加密密钥及解密密钥,并以选取的加密密钥对所述密码进行初始加密,解密时,以对应的解密密钥进行初始解密。

优选地,本实施例中的唯一识别码可以根据需要设置为智能卡的卡号或智能卡的芯片ID,或者其他的与智能卡唯一相关的数据、字符等。

在本发明的另一个优选实施例中,个人终端在首次与智能卡通信时,同时对智能卡的卡号进行加密,并将加密的卡号分布式地存储到个人终端的存储空间中;则个人终端在非首次与智能卡通信时,首先对智能卡的卡号进行加密后得到加密的卡号,然后在存储空间中搜索是否有相同的加密的卡号,如有,则提取对应卡号的密码。其中,对智能卡的卡号进行加密可以使得存储在智能终端设备中的卡号更安全,从而保证智能卡的用户信息的安全性。

在优选实施例中,卡号和密码是分别加密后以分布式存储在存储空间内的。其中,对于卡号的加密处理方式可以根据需要采取预设加密算法进行加密,该预设加密算法可与对密码进行初始加密的算法相同或不同,本领域技术人员可根据需要自由选择。

如图4所示,本实施例还提供了一种智能卡密码保存及提取的系统,包括:设置于个人移动终端400上的存储器410、处理器420及智能卡识别单元430,其中,智能卡识别单元430用于识别智能卡并接收验证操作的密码;处理器420用于对所述密码进行加密及解密,以及控制进行密文的分布式存储及读取;存储器410包含若干个独立的存储空间,用于分布式地存储所述密文。

优选的,参见图5所示,处理器420包括:

唯一识别码获取单元421,用于通过所述智能卡识别单元获取所述智能卡的唯一识别码;

初始加密/解密单元422,用于通过预设加密算法对所述密码进行初始加密,得到初始加密密文,以及根据所述唯一识别码对所述加密密文进行初始解密,得到初始加密密文;

智能卡加密/解密单元423,用于在所述初始加密密文中加入与智能卡相关的唯一识别码,得到加密密文,以及对所述初始加密密文以预设加密算法对应的解密算法进行解密,得到所述密码;

存储控制单元424,用于将所述加密密文分布式地存储到个人终端的存储空间中,以及在个人终端在非首次与智能卡通信时提取分布在个人终端的存储空间中的加密密文。

优选的,存储控制单元424包括:

密文数据块分割模块,用于将所述加密密文按预设规律拆分成为若干个密文数据块;

分布式存储控制模块,用于将所述密文数据块分布式地存储到不同地址的存储空间中;

随机数据填充模块,用于在不同地址的存储空间之间的空闲空间中加入随机填充数据。

优选的,存储器410包括还一文件区域411,用于单独存储记录了密文数据块的存储空间地址的文件。

优选的,智能卡识别单元430包括:

密码接收单元,用于接收验证操作的密码,并转发给所述处理器;

智能卡读取器,用于读取与个人终端通信的智能卡的卡片信息并转发给所述处理器,以便所述处理器判断该智能卡是否首次与个人终端通信。其中,这里的智能卡读取器可根据需要设置为近距离无线通信NFC芯片,通过该NFC芯片与智能卡芯片进行通信以读取智能卡的卡片信息,如上述的智能卡的卡号或智能卡的芯片ID。

在另一优选实施例中,上述的处理器还包括:卡号加密单元,用于对智能卡的卡号进行加密,得到加密的卡号;在个人终端在首次与智能卡通信时,由存储控制单元将加密的卡号分布式地存储到个人终端的存储空间中。

下面以一具体实例说明本发明的技术方案:

在使用个人终端进行第一次查询储值IC卡的卡内余额及历史交易记录时,查询流程如下:由个人终端提示用户插卡或将卡片靠近个人终端,待用户插卡或将卡片靠近个人终端后,个人终端读取卡片信息,例如读取卡号为“10001137000068017XX”,则先将读取的卡号进行加密,得到加密的卡号,根据加密的卡号的密文数据查找存储空间内是否已保存这张IC卡的信息。如未查找到,则个人终端判断该卡为第一次查询,同时个人终端提示用户输入密码,用户输入密码后,个人终端将卡号及密码分别进行加密处理,得到加密密文并进行分布式存储到个人终端的存储空间中。同时,即可向用户显示卡号、余额及历史交易记录等信息。

其中,加密的过程中,首先采用AES、RSA、DES等加密算法对用户输入的正确PIN码(密码)进行初始加密,加密时随机选取一组加密密钥与解密密钥,采用加密密钥进行初始的按上述算法的加密,同时保存对应的解密密钥。对卡号的加密可以以采用上述的加密算法进行加密,卡号的加密算法与密码的加密算法可相同或不同。对于密码,初始加密后的密文再加入其他元素,比如卡号、芯片唯一ID等,通过加入该些与卡唯一相关的唯一标识符可以保证密码的密文的唯一性。为了进一步保障卡号及密码的密文的安全,本实施例在对上述的加密密文进行分割,按预设规律分割为若干个数据块,如平均分为若干段数据长度相等的数据块,或分割为若干个数据长度不同的数据块等。分割后将该些数据块分布式存储在个人终端的存储空间内,参见图6所示,本实施例根据个人终端设备上抓取的数据包截图,可以看出本实施例中将数据块601及数据块602分别存储在地址为130h(0~7字节)及140h(8~f字节),并记录该些数据块的存储地址。同时为了进一步保障存储的密文的数据安全性,增加恶意读取的读取难度及对其解密过程造成干扰,本实施例还对地址为130h(0~7字节)及140h(8~f字节)间空闲的数据空间进行了随机填充数据,参见地址为130h(8~f字节)及140h(0~7字节)处的数据块603及604,数据块603及604的数据无任何实际含义,仅为随机填充的数据,起到了良好的干扰作用。

在使用个人终端进行第二次或第三次等非首次查询储值IC卡的卡内余额及历史交易记录时,查询流程如下:由个人终端提示用户插卡或将卡片靠近个人终端,待用户插卡或将卡片靠近个人终端后,个人终端读取卡片信息,并在个人终端中寻找该卡片的卡片信息,找到后,根据卡片信息自动在存储空间中提取加密密文并进行解密处理,得到原始的密码。同时该个人终端对该密码进行自动验证,验证通过后即可向用户显示该智能卡的卡号、余额及历史交易记录等信息。

具体地,解密时,由个人终端根据该储值IC卡的卡片信息获取其密码对应的加密密文的存储地址为130h(0~7字节)及140h(8~f字节),然后提取该两个地址的数据后组合得到加密密文,在根据卡片信息(如卡号)解算得到初始加密密文,再采用保存的解密密钥按加密算法对应的解密规则对该密文进行解密,得到原始的密码。

在一优选实施例中,可以设置个人终端设备所存储的卡片信息的上限,如存储10张卡片的信息及密码,当有新的卡片时,自动覆盖掉存储时间最久的卡片的信息及密码,实现了卡片信息的更新,提高了存储空间的可重复利用率。当然,具体存储多少张卡片的信息及密码,本领域技术人员可根据个人终端设备的存储器的容量大小以及处理器的处理能力而适应性设置,这里不具体限制其数量的多少。

应当理解,在上述过程中对于每个智能卡,在与个人终端通信时,个人终端都要首先读取该卡的卡片信息以判断是否为首次读取该卡,也即个人终端内是否存储有该智能卡的密码。

上述实施例中的个人终端可以为个人移动通信设备(如具有与智能卡通信功能的手机、平板等),或个人储值卡读取设备(如POS机或其他特种IC卡对应的识别设备)等。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何本领域的技术人员在本发明揭露的技术范围内,对本发明所做的变形或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述的权利要求的保护范围为准。

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