一种安全读写数据的方法技术

技术编号:11731604 阅读:149 留言:0更新日期:2015-07-15 03:44
本发明专利技术提供了一种安全读写数据的方法,该方法包括:控制器将读卡器和智能卡各自的标识符在密钥服务器进行注册;将经过哈希计算之后的用户口令码提供给智能卡;控制器生成身份认证的公钥和私钥并分别进行密钥分发;进行读卡器与智能卡的相互身份认证,并生成通信密钥;对读卡器与智能卡之间的通信数据进行加密。本发明专利技术的方法用较低的资源开销实现了智能卡与读卡器之间的认证和数据传输处理,能够抵抗常见的攻击,具备可扩展性。

【技术实现步骤摘要】

本专利技术涉及智能卡安全,特别涉及一种安全读写数据的方法
技术介绍
随着计算机技术不断发展,智能卡作为一种快捷、安全的手段被人们普遍使用。在目前发展物联网技术过程中,作为识别终端物体的主要技术,成为物联网的重要组成部分。智能卡能够迅速地发展的一个重要的原因就在于它能够通过加密体系的安全体系给用户提供—个较高的安全性保证。而对智能卡进行身份验证,则能够获得智能卡的安全状态,获得一定的使用权限,从而进行一些与安全有关的操作。在非接触式智能卡系统中,读写设备与智能卡之间的数据交换由于其依赖于可被监听的射频信号进行通信,因而被认为存在遭受攻击的风险。为保证系统的通信安全性,对于读写设备与智能卡间的数据交换,需要通过相应的认证加密机制对其进行保护。从已有的认证加密机制分析来看,目前普遍存在如下几方面缺陷:认证或加密算法安全性能与硬件成本无法兼顾;没有采用协商机制处理认证密钥,容易遭受重放攻击;生成的通信密钥多为静态,难以抵御安全通信过程中的DoS攻击。因此,针对相关技术中所存在的上述问题,目前尚未提出有效的解决方案。
技术实现思路
为解决上述现有技术所存在的问题,本专利技术提出了一种安全读写数据的方法,包括:控制器将读卡器和智能卡各自的标识符在密钥服务器进行注册;将经过哈希计算之后的用户口令码提供给智能卡;控制器生成身份认证的公钥和私钥并分别进行密钥分发;进行读卡器与智能卡的相互身份认证,并生成通信密钥;对读卡器与智能卡之间的通信数据进行加密。优选地,所述将经过哈希计算之后的口令码提供给智能卡,进一步包括:1)在发卡分配密钥时,读取智能卡上唯一的ID号以及用户的口令码PW,并计算SHA1(PW);2)用控制器保密的函数DES进行加密计算得到DES(ID,SHA1(PW));3)把DES(ID,SHA1(PW))作为要分配给智能卡的密钥S=DES(ID,SHA1(PW)),通过对ID号与口令码的单向哈希结合加密存储到智能卡中。优选地,所述进行读卡器与智能卡的相互身份认证,进一步包括:1)读卡器读取用户输入的口令码PW和用户智能卡的ID号,并用单向哈希函数SHA1对口令码进行计算得到SHA1(PW);2)读卡器通过加密函数DES对SHA1(PW)以及ID号进行计算得到DES(ID,SHA1(PW));3)智能卡产生一个随机数RA,并把此随机数传送到读卡器端;4)读卡器产生一个随机数RB,使用加密算法DES计算得到DES(RA,RB),并把计算结果传送到智能卡中;5)智能卡使用密钥DES(ID,SHA1(PW))通过加密算法DES计算得到DES(RA,RB),比较计算得到的RA与自己产生的RA是否一致,如果一致,判断此读卡器用户为合法,并将计算得到的RB传送的读卡器端;如果不一致,判断此读卡器用户为非法,然后终止此次读写;6)读卡器比较得到的RB与自己产生的RB的一致性,如果两者一致,则判断此智能卡为合法智能卡,继续进行读写;如果两者不一致,则判断此智能卡为非法,从而终止连接。本专利技术相比现有技术,具有以下优点:本专利技术的方法用较低的资源开销实现了智能卡与读卡器之间的认证和数据传输处理,能够抵抗常见的攻击,具备可扩展性。附图说明图1是根据本专利技术实施例的一种安全读写数据的方法的流程图。具体实施方式下文与图示本专利技术原理的附图一起提供对本专利技术一个或者多个实施例的详细描述。结合这样的实施例描述本专利技术,但是本专利技术不限于任何实施例。本发明的范围仅由权利要求书限定,并且本专利技术涵盖诸多替代、修改和等同物。在下文描述中阐述诸多具体细节以便提供对本专利技术的透彻理解。出于示例的目的而提供这些细节,并且无这些具体细节中的一些或者所有细节也可以根据权利要求书实现本专利技术。本专利技术的一方面提供了一种安全读写数据的方法。图1是根据本专利技术实施例的一种安全读写数据的方法流程图。本专利技术的一种安全读写数据的方法首先交换密钥,并使用数字签名算法对通信双方身份进行认证,最终通过加密算法使用交换后生成的密钥对读写的数据进行加密,其整个过程由五个阶段构成,即:预处理阶段、密钥分发阶段、身份认证阶段、交换密钥阶段、消息加密及恢复阶段。1.预处理阶段该阶段目的是产生ElGamal参数D:D=(E,p,Gx,Gy)其中:E为以素数为模的整数域GF(p)上的ElGamal曲线,p为一个预定长度的大素数。根据最小密钥长度要求,p值长度不应小于160位。Gx,Gy为ElGamal曲线E上基础点G的x,y坐标。ElGamal参数D由单个访问的控制器生成。对于每一个访问区域A(该组包含复数个读卡器Rn,每个读卡器管理包含复数个智能卡的ID集合Gtn,并按照使用需求所归并),有A={R1,R2,…,Rn,Gt1,Gt2,…,Gtn本文档来自技高网...
一种安全读写数据的方法

【技术保护点】
一种安全读写数据的方法,其特征在于,包括:控制器将读卡器和智能卡各自的标识符在密钥服务器进行注册;将经过哈希计算之后的用户口令码提供给智能卡;控制器生成身份认证的公钥和私钥并分别进行密钥分发;进行读卡器与智能卡的相互身份认证,并生成通信密钥;对读卡器与智能卡之间的通信数据进行加密。

【技术特征摘要】
1.一种安全读写数据的方法,其特征在于,包括:
控制器将读卡器和智能卡各自的标识符在密钥服务器进行注册;
将经过哈希计算之后的用户口令码提供给智能卡;
控制器生成身份认证的公钥和私钥并分别进行密钥分发;
进行读卡器与智能卡的相互身份认证,并生成通信密钥;
对读卡器与智能卡之间的通信数据进行加密。
2.根据权利要求1所述的方法,其特征在于,所述将经过哈希计算之后的口
令码提供给智能卡,进一步包括:
1)在发卡分配密钥时,读取智能卡上唯一的ID号以及用户的口令码PW,
并计算SHA1(PW);
2)用控制器保密的函数DES进行加密计算得到DES(ID,SHA1(PW));
3)把DES(ID,SHA1(PW))作为要分配给智能卡的密钥S=DES(ID,SHA1
(PW)),通过对ID号与口令码的单向哈希结合加密存储到智能卡中。
3.根据权利要求2所述的方法,其特征在于,所述进行读卡器与智能卡的相
互身份认证,进一步包括:
1)...

【专利技术属性】
技术研发人员:周鑫
申请(专利权)人:四川量迅科技有限公司
类型:发明
国别省市:四川;51

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1