CN104579692A - 一种基于智能卡的信息处理方法 - Google Patents
一种基于智能卡的信息处理方法 Download PDFInfo
- Publication number
- CN104579692A CN104579692A CN201510064684.6A CN201510064684A CN104579692A CN 104579692 A CN104579692 A CN 104579692A CN 201510064684 A CN201510064684 A CN 201510064684A CN 104579692 A CN104579692 A CN 104579692A
- Authority
- CN
- China
- Prior art keywords
- authentication
- card
- card reader
- key
- byte
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Storage Device Security (AREA)
Abstract
本发明提供了一种基于智能卡的信息处理方法,该方法包括:生成随机数进行有效性验证,判断密钥剩余尝试次数是否为0,若不为0则立即将身份验证对应的密钥尝试次数减1;接收用户所选择的密码体系,采用所选择的密码体系对随机数进行加密;将加密得到的身份验证结果与接收到的身份验证结果进行比较,判断身份验证是否成功。发明提供了一种以配置IC卡加密体系的身份验证方法,有效减少非法用户的攻击尝试次数,从而提高非法用户破解的难度。
Description
技术领域
本发明涉及芯片卡技术,特别涉及一种智能卡的信息处理方法。
背景技术
随着计算机技术不断发展,非接触式IC卡作为一种快捷、安全的手段被人们普遍使用。在目前发展物联网技术过程中,作为识别终端物体的主要技术,成为物联网的重要组成部分。IC卡能够迅速地发展的一个重要的原因就在于它能够通过加密体系的安全体系给用户提供—个较高的安全性保证。而对IC卡进行身份验证,则能够获得IC卡的安全状态,获得一定的使用权限,从而进行一些与安全有关的操作。
传统的IC卡身份验证是通过IC卡和读写设备双方同时对相同的随机数进行某种相同的加密运算,然后判断双方运算结果的一致性来对IC卡的合法性进行验证,即判定了一张IC卡是不是伪造卡。随着密码技术的发展,目前常用的身份验证算法容易被破解,芯片的安全性受到了威胁。如果有非法用户进行恶意的攻击,安全问题就难以保证另外,传统身份验证方法不能适应电流、功耗等物理攻击手段。
因此,针对相关技术中所存在的上述问题,目前尚未提出有效的解决方案。
发明内容
为解决上述现有技术所存在的问题,本发明提出了一种基于智能卡的信息处理方法,用于对IC卡和读卡器进行身份验证,包括:
首先生成随机数进行有效性验证,如果通过验证,判断密钥剩余尝试次数是否为0,若不为0,则立即将身份验证对应的密钥尝试次数减1;接收用户所选择的密码体系,采用所选择的密码体系对随机数进行加密,得到身份验证结果;将加密得到的身份验证结果与接收到的身份验证结果进行比较,基于比较结果判断身份验证是否成功。
优选地,所述接收用户选择的密码体系,进一步包括:
提供多种密码体系供用户进行选择,所述多种密码体系包括8字节分组长度算法、16字节分组长度算法;所述身份验证包括卡片身份验证与读卡器身份验证,验证双方采用自行配置的命令所指定的密码体系。
优选地,所述对IC卡身份验证进一步包括以下步骤:
步骤1:IC卡产生一个随机数,该随机数与IC卡本身所具有的识别码、密钥以及读卡器产生的随机数进行比较运算;在验证通过后,依据用户的指定,按照8字节分组长度算法或16字节分组长度算法进行加密,从而获得加密流;
步骤2:当采用基于16字节分组长度算法进行卡片身份验证而输入的身份验证数据是8字节时,则将输入增加为16字节,将8字节身份验证数据加上8字节身份验证数据的取反值后得到的8字节一起构成16字节进行加密,加密后的密文长度为16字节;并且将得到的16字节的结果中的前8个字节与后8个字节进行异或运算,得到最终的8个字节的验证数据,然后再进行传送;
步骤3:当采用基于16字节分组长度算法进行读卡器身份验证时,由IC卡先将卡内的8字节随机数+8字节随机数的取反值利用读卡器身份验证密钥加密后,前、后8字节异或,然后与输入的8字节读卡器身份验证数据比较,如果相同,则判定外部读写设备合法;否则,认为外部读写设备非法,拒绝后续流程;
其中,在进行读卡器身份验证时,设定一个限制读卡器身份验证密钥的使用次数计数器,在使用指定的读卡器身份验证密钥进行加密时,先判断指定的读卡器身份验证密钥可使用次数是否大于0,如果大于0,说明此密钥还可以用来做读卡器身份验证;否则,此密钥已经锁定,禁止进行读卡器身份验证;如果密钥的使用次数大于0,将指定的读卡器身份验证密钥的可使用次数减1;如果最终读卡器身份验证成功,则将指定读卡器身份验证密钥的使用次数恢复成预设最大值,以便后续身份验证继续使用.
本发明相比现有技术,具有以下优点:
本发明提供了一种以配置IC卡加密体系的身份验证方法,有效减少非法用户的攻击尝试次数,从而提高非法用户破解的难度。
附图说明
图1是根据本发明实施例的基于智能卡的信息处理方法的流程图。
具体实施方式
下文与图示本发明原理的附图一起提供对本发明一个或者多个实施例的详细描述。结合这样的实施例描述本发明,但是本发明不限于任何实施例。本发明的范围仅由权利要求书限定,并且本发明涵盖诸多替代、修改和等同物。在下文描述中阐述诸多具体细节以便提供对本发明的透彻理解。出于示例的目的而提供这些细节,并且无这些具体细节中的一些或者所有细节也可以根据权利要求书实现本发明。
针对现有技术的问题,本发明提出了一个可以配置加密体系的防攻击身份验证方法。该方法允许用户根据自己的应用要求设置加密体系,当加密体系变化时,身份验证采用的密码体系也是可变的。因此本发明提供了一种防攻击的手段,能够有效减少非法用户的攻击尝试次数,从而提高非法用户破解的难度。图1是根据本发明实施例的基于智能卡的信息处理方法流程图。
传统方法先进行随机数的有效性验证,如果通过验证,则采用AES算法对随机数进行加密,得到身份验证结果。将加密得到的身份验证结果与接收到的身份验证结果进行比较,如果一致,则身份验证成功;如果不一致,则身份验证失败,此时需要将身份验证对应的密钥尝试次数减1。也就是说进行身份验证结果的比较,再递减密钥的可尝试次数。但是,当攻击对象使用的身份验证结果与实际的身份验证结果不一致时,自动将智能卡进行断电操作,这时身份验证流程无法正常继续,那么相应身份验证密钥的可尝试计数器也就不会减1,这样攻击对象可以无限次地重复发送身份验证数据,直到尝试到正确的密钥。
本发明的身份验证方法属于一种防攻击身份验证方法。一是将尝试计数器减1操作提前到随机数验证之后;二是提供了一种配置加密体系的加密方法,允许用户选择密码体系,从而提供多种身份验证算法,包括即8字节分组长度算法(如AES算法)、16字节分组长度算法。其中,AES算法是目前流行的算法,16字节分组长度算法可以是任何算法,只要其分组长度为16字节即可。具体采用哪种算法进行身份验证,由应用者根据自己的需求决定。这就增加了应用的随机性和不确定性,提高了攻击的难度。
本发明对现有的身份验证方法,包括卡片身份验证和读卡器身份验证分别进行了改进,可以身份验证MF、DDF、ADF等目录下的密钥,或者是主控MK密钥,从而达到一定的权限。
身份验证双方采用自行配置的命令所指定的密码体系进行认证。身份验证分为卡片身份验证与读卡器身份验证两部分。在卡片身份验证中,命令包括P1字节,P2字节,验证数据长度字节Lc,加密验证数据长度Le,验证数据内容data,其中P1字节表示用户采用配置的何种加密体系,比如:‘00’代表SM1算法,‘01’代表MD5算法,‘02’代表AES算法。P2的b1-b7为卡片身份验证密钥的密钥标识。不管采用的身份验证算法分组长度是8或者16,其后跟随的身份验证数据长度Lc都是8。不管采用的身份验证算法分组长度是8或者16,其返回的加密身份验证数据长度Le都是8。
在读卡器身份验证过程中,P1表示用户采用何种配置的加密体系,比如:‘00’代表SM1算法,‘01’代表MD5算法,‘02’代表AES算法。P2的b1-b7为读卡器身份验证密钥的密钥标识。不管采用的身份验证算法分组长度是8或者16,其后跟随的身份验证数据长度Lc都是8。
本发明改进的基于用户配置加密体系的防攻击IC卡身份验证方法包括以下步骤:
步骤1:IC卡产生一个随机数,随机数与IC卡本身所具有的识别码、密钥以及读卡器产生的随机数进行比较运算;在验证通过后,依据用户的指定,按照AES算法或基于16字节分组长度算法进行加密,从而获得加密流。
步骤2当采用基于16字节分组长度算法进行卡片身份验证时,由于算法的分组长度为16字节,而输入的身份验证数据却只是8字节,需要将输入增加为16字节,则将8字节身份验证数据加上8字节身份验证数据的取反值后得到的8字节一起构成16字节进行加密,加密后的密文长度为16字节;由于传输的卡片身份验证命令的输出身份验证数据长度为8字节,也需要将得到的16字节的结果中的前8个字节与后8个字节进行异或运算,得到最终的8个字节的验证数据,然后再进行传送。
步骤3当采用基于16字节分组长度算法进行读卡器身份验证时,所接收的数据格式同上述卡片身份验证,需要IC卡先将卡内的“8字节随机数+8字节随机数的取反值”用读卡器身份验证密钥加密后,前、后8字节异或,然后与输入的8字节读卡器身份验证数据比较,如果相同,则判定外部读写设备合法;否则,认为外部读写设备非法,拒绝后续流程。
进行读卡器身份验证的时候,为了防止用户的恶意攻击,设定一个限制读卡器身份验证密钥的使用次数计数器,在使用指定的读卡器身份验证密钥进行加密的时候,先判断指定的读卡器身份验证密钥可使用次数是否大于0,如果大于0,说明此密钥还可以用来做读卡器身份验证;否则,说明此密钥已经锁定,不能再用来做读卡器身份验证;如果密钥的使用次数大于0,将指定的读卡器身份验证密钥的可使用次数减1;如果最终读卡器身份验证成功,则将指定读卡器身份验证密钥的使用次数恢复成预设最大值,以便后续身份验证继续使用。
综上所述,本发明提供了一种以配置IC卡加密体系的身份验证方法,有效减少非法用户的攻击尝试次数,从而提高非法用户破解的难度。
显然,本领域的技术人员应该理解,上述的本发明的各模块或各步骤可以用通用的计算系统来实现,它们可以集中在单个的计算系统上,或者分布在多个计算系统所组成的网络上,可选地,它们可以用计算系统可执行的程序代码来实现,从而,可以将它们存储在存储系统中由计算系统来执行。这样,本发明不限制于任何特定的硬件和软件结合。
应当理解的是,本发明的上述具体实施方式仅仅用于示例性说明或解释本发明的原理,而不构成对本发明的限制。因此,在不偏离本发明的精神和范围的情况下所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。此外,本发明所附权利要求旨在涵盖落入所附权利要求范围和边界、或者这种范围和边界的等同形式内的全部变化和修改例。
Claims (3)
1.一种基于智能卡的信息处理方法,用于对IC卡和读卡器进行身份验证,其特征在于,包括:
首先生成随机数进行有效性验证,如果通过验证,判断密钥剩余尝试次数是否为0,若不为0,则立即将身份验证对应的密钥尝试次数减1;接收用户所选择的密码体系,采用所选择的密码体系对随机数进行加密,得到身份验证结果;将加密得到的身份验证结果与接收到的身份验证结果进行比较,基于比较结果判断身份验证是否成功。
2.根据权利要求1所述的方法,其特征在于,所述接收用户选择的密码体系,进一步包括:
提供多种密码体系供用户进行选择,所述多种密码体系包括8字节分组长度算法、16字节分组长度算法;所述身份验证包括卡片身份验证与读卡器身份验证,验证双方采用自行配置的命令所指定的密码体系。
3.根据权利要求2所述的方法,其特征在于,所述对IC卡身份验证进一步包括以下步骤:
步骤1:IC卡产生一个随机数,该随机数与IC卡本身所具有的识别码、密钥以及读卡器产生的随机数进行比较运算;在验证通过后,依据用户的指定,按照8字节分组长度算法或16字节分组长度算法进行加密,从而获得加密流;
步骤2:当采用基于16字节分组长度算法进行卡片身份验证而输入的身份验证数据是8字节时,则将输入增加为16字节,将8字节身份验证数据加上8字节身份验证数据的取反值后得到的8字节一起构成16字节进行加密,加密后的密文长度为16字节;并且将得到的16字节的结果中的前8个字节与后8个字节进行异或运算,得到最终的8个字节的验证数据,然后再进行传送;
步骤3:当采用基于16字节分组长度算法进行读卡器身份验证时,由IC卡先将卡内的8字节随机数+8字节随机数的取反值利用读卡器身份验证密钥加密后,前、后8字节异或,然后与输入的8字节读卡器身份验证数据比较,如果相同,则判定外部读写设备合法;否则,认为外部读写设备非法,拒绝后续流程;
其中,在进行读卡器身份验证时,设定一个限制读卡器身份验证密钥的使用次数计数器,在使用指定的读卡器身份验证密钥进行加密时,先判断指定的读卡器身份验证密钥可使用次数是否大于0,如果大于0,说明此密钥还可以用来做读卡器身份验证;否则,此密钥已经锁定,禁止进行读卡器身份验证;如果密钥的使用次数大于0,将指定的读卡器身份验证密钥的可使用次数减1;如果最终读卡器身份验证成功,则将指定读卡器身份验证密钥的使用次数恢复成预设最大值,以便后续身份验证继续使用。2 -->
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510064684.6A CN104579692A (zh) | 2015-02-09 | 2015-02-09 | 一种基于智能卡的信息处理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510064684.6A CN104579692A (zh) | 2015-02-09 | 2015-02-09 | 一种基于智能卡的信息处理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104579692A true CN104579692A (zh) | 2015-04-29 |
Family
ID=53094971
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510064684.6A Pending CN104579692A (zh) | 2015-02-09 | 2015-02-09 | 一种基于智能卡的信息处理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104579692A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105701412A (zh) * | 2016-02-18 | 2016-06-22 | 深圳市文鼎创数据科技有限公司 | 外部认证密钥验证方法及装置 |
CN111769905A (zh) * | 2020-06-29 | 2020-10-13 | 上海通联金融服务有限公司 | 一种防止通过时序攻击法破解ic卡脱机pin的方法 |
CN114745126A (zh) * | 2022-03-18 | 2022-07-12 | 中国建设银行股份有限公司 | 一种身份验证方法、装置及智能卡 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1489330A (zh) * | 2003-09-03 | 2004-04-14 | 郑建德 | 一种用于ic卡身份识别的非对称密码算法 |
CN102255727A (zh) * | 2011-06-23 | 2011-11-23 | 中国电力科学研究院 | 改进的基于用户自定义算法环境的防攻击智能卡认证方法 |
CN103580872A (zh) * | 2013-11-11 | 2014-02-12 | 北京华大智宝电子系统有限公司 | 一种用于密钥生成与管理的系统及方法 |
-
2015
- 2015-02-09 CN CN201510064684.6A patent/CN104579692A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1489330A (zh) * | 2003-09-03 | 2004-04-14 | 郑建德 | 一种用于ic卡身份识别的非对称密码算法 |
CN102255727A (zh) * | 2011-06-23 | 2011-11-23 | 中国电力科学研究院 | 改进的基于用户自定义算法环境的防攻击智能卡认证方法 |
CN103580872A (zh) * | 2013-11-11 | 2014-02-12 | 北京华大智宝电子系统有限公司 | 一种用于密钥生成与管理的系统及方法 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105701412A (zh) * | 2016-02-18 | 2016-06-22 | 深圳市文鼎创数据科技有限公司 | 外部认证密钥验证方法及装置 |
CN105701412B (zh) * | 2016-02-18 | 2019-02-01 | 深圳市文鼎创数据科技有限公司 | 外部认证密钥验证方法及装置 |
CN111769905A (zh) * | 2020-06-29 | 2020-10-13 | 上海通联金融服务有限公司 | 一种防止通过时序攻击法破解ic卡脱机pin的方法 |
CN114745126A (zh) * | 2022-03-18 | 2022-07-12 | 中国建设银行股份有限公司 | 一种身份验证方法、装置及智能卡 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11757662B2 (en) | Confidential authentication and provisioning | |
CN103124269B (zh) | 云环境下基于动态口令与生物特征的双向身份认证方法 | |
CN106130716B (zh) | 基于认证信息的密钥交换系统及方法 | |
US11063941B2 (en) | Authentication system, authentication method, and program | |
CN110969431B (zh) | 区块链数字币私钥的安全托管方法、设备和系统 | |
CN110519046B (zh) | 基于一次性非对称密钥对和qkd的量子通信服务站密钥协商方法和系统 | |
WO2020065633A1 (en) | Method, user device, management device, storage medium and computer program product for key management | |
CN106789024B (zh) | 一种远程解锁方法、装置和系统 | |
CN111526007B (zh) | 一种随机数生成方法及系统 | |
CN110020524A (zh) | 一种基于智能卡的双向认证方法 | |
CN110380859B (zh) | 基于非对称密钥池对和dh协议的量子通信服务站身份认证方法和系统 | |
CN110505055A (zh) | 基于非对称密钥池对和密钥卡的外网接入身份认证方法和系统 | |
CN105612728A (zh) | 隐含共享密钥的安全数据通道鉴权 | |
CN111416712B (zh) | 基于多个移动设备的量子保密通信身份认证系统及方法 | |
CN110519222B (zh) | 基于一次性非对称密钥对和密钥卡的外网接入身份认证方法和系统 | |
CN116388995A (zh) | 一种基于puf的轻量级智能电网认证方法 | |
CN110098925B (zh) | 基于非对称密钥池对和随机数的量子通信服务站密钥协商方法和系统 | |
CN103873257A (zh) | 密钥更新、数字签名及签名验证的方法及装置 | |
CN104579692A (zh) | 一种基于智能卡的信息处理方法 | |
CN111355588B (zh) | 一种基于puf与指纹特征的可穿戴设备双因子认证方法及系统 | |
CN104820807B (zh) | 一种智能卡数据处理方法 | |
CN110768792B (zh) | 主密钥生成方法、装置及敏感安全参数的加解密方法 | |
CN110113152B (zh) | 基于非对称密钥池对和数字签名的量子通信服务站密钥协商方法和系统 | |
CN104780049B (zh) | 一种安全读写数据的方法 | |
CN110086627B (zh) | 基于非对称密钥池对和时间戳的量子通信服务站密钥协商方法和系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20150429 |
|
RJ01 | Rejection of invention patent application after publication |