欢迎您访问郑州兴邦电子股份有限公司官方网站!
阿里巴巴诚信通企业
全国咨询热线:40000-63966
兴邦电子,中国水控机第一品牌

联系兴邦电子

全国咨询热线:40000-63966

售后:0371-55132951/55132952

工厂:河南省 郑州市 高新区莲花街电子电器产业园

基于智能卡的X.509身份认证

文章出处:http://www.singbon.com 作者: 人气: 发表时间:2012年02月19日

[文章内容简介]:本文提出了一种基于智能卡的X.509身份认证方案,设计了一套基于X.509的身份认证协议,将智能卡作为存储身份信息的载体,密码运算都在智能卡内部进行,认证过程安全性好。

    摘 要:身份认证中的关键技术是身份信息的安全存储、处理和传递,本文提出了一种基于智能卡的 X.509身份认证方案,设计了一套基于 X.509的身份认证协议,将智能卡作为存储身份信息的载体,密码运算都在智能卡内部进行,认证过程安全性好。在开放的网络环境中,此方案可较好地防止中间人攻击,验证用户身份。 
    主题词:身份认证;智能卡;X.509协议

    1引言

    计算机网络是一把“双刃剑”,既可大大方便人们的工作、生活,又使不法分子非法窃取、篡改网络信息成为可能。如何确保特定的资源被合法用户访问,成为保证网络和信息安全的首要条件。网络身份认证成为解决此问题的关键技术,它通过双方交换一些可信物,证实身份的正确性。许多专家和学者都提出了一些有效的身份认证方法。

    口令机制通过核对用户名和口令验证用户身份,但口令易被猜测和截取。基于生物特征的认证机制利用用户独有生物特征鉴别身份,但基于此方案的设备造价高。基于智能卡的认证机制是一种双因子身份认证方式,内部提供硬件保护措施和加密算法,可安全存贮用户身份信息,进行密码运算,整体安全性好,且易携带,实现一卡多用,应用较普遍。基于密码技术的身份认证方法,主要是在认证过程中提供安全的认证协议,保证信息传递的安全性。基于X.509认证协议使用较广泛。

    2基于X.509协议的认证机制分析

    X.509协议是一种强身份认证协议,它利用公钥密码技术,借助可信第三方权威机构――证书中心CA颁发的证书,辨别双方的身份,实现身份认证。

    2.1X.509身份认证原理

    X.509认证协议中,密码由互不相同的公钥和私钥构成,私钥由用户秘密保存,公钥与用户身份通过证书绑定,是公开的。证书是符合X.509规范,包括用户的身份、公钥、颁发证书的CA的身份和CA对证书的签名等。若通信双方都拥有自己的证书和私钥,当一方要让对方确认自己的身份时,可用自己的私钥签名认证消息,发送给对方。对方收到消息后,只需用发方的公钥验证签名,如果能正确解开消息,则可认为发方具有合法身份。CA对证书的签名可确保证书的可信性,当一方收到证书后,可通过验证证书上的签名,区别真伪,防止网络上身份假冒。在实际应用中,还要采用一些防重放、防中间人攻击等手段。

    2.2X.509身份认证方式

    X.509规定了单向、双向和三向三种认证方式,提供不同层次的安全认证[1]。系统中用到的符号及认证过程的具体描述如下:

    (1) A、B:主体A、B的身份信息。 
    (2) PA()、PB():主体A和主体B公钥加密的信息。 
    (3) SA()、SB():主体A和主体B私钥签名的信息。 
    (4) tA、tB:主体A、B产生的时间戳,为双方检查消息延迟的参数。
    (5) rA、rB:主体A、B发送的一次性随机数,作为双方检查消息重放攻击的参数。

    X.509认证交换协议框图如图1。

    假定认证双方都知道对方的公钥。单向认证仅为①步。在双向认证中包括①和②两步。三向认证将双向认证的两次的时间戳置为零或不送,而接收检查时不检查时间戳。第三步传递的数据为③。

    单向认证通过A到B的单向通信,确认数据是A发送的。双向认证增加了来自B的应答,A可识别B已收到自己发送的消息。这两种认证方式加入了时间标记,可防止攻击者重放攻击,但要求双方系统时间同步,技术上难以达到。三向认证协议中,双方可以通过验证返回的随机数防止重放攻击,技术上容易实现。三向认证协议安全性最好。基于X.509协议的认证技术,利用公钥加密算法和数字证书对认证过程中传递的信息进行验证和保护,私钥不会在网络上传输,不必在网上传递口令或指纹等敏感信息。攻击者双方交换的信息,可有效地保证通信双方身份的真实性和不可抵赖性。

    3基于智能卡的X.509身份认证方案

    3.1智能卡的特点及功能

    智能卡包括卡内操作系统 COS和算法库两个模块。COS负责对所传送的信息进行安全性检查和处理,防止卡与终端之间通信数据被非法窃取或篡改,保证数据正确传输;管理芯片内存储的各种数据;检查接收到的命令的各项参数是否正确,执行相应操作。 [2][3]

    智能卡可根据不同需要扩展密码算法库,实现下列密码算法:

    1) 对称加密算法——DES算法、3DES算法、RC4、RC5算法; 
    2) 摘要(散列值)算法——SHA-1算法、MD5算法;
    3) 非对称加密算法——RSA算法、DSA算法、ECC算法。 

    本方案中COS可根据需要运行上面密码算法,进行卡上的密钥生成和信息加密、签名、验证运算。 

    3.2 智能卡安全机制分析

    智能卡芯片内的文件分为MF、DF和EF三种。MF(主文件)是所有文件的根文件;DF文件是目录文件;EF是基本文件,用来存储具体的数据和记录,也是COS命令所要操作的具体对象。

    每个DF或MF下有且只有一个KEY文件,在任何情况下密钥均无法读出。在KEY文件中可存放多个密钥,在满足KEY文件的增加、使用、修改权限时,才可增加、使用和修改密钥。每种密钥具有其独立性,用于一种特定功能的密钥不可作为它用。因此可通过KEY文件,控制智能卡中存储数据的安全性。

    本设计中,EF分为密钥、证书及识别用户身份的 PIN码;支持以下几种密钥:个人密码(PIN)、外部认证密钥、内部认证密钥、Crypt密钥、PIN解锁密钥、PIN重装密钥、应用维护密钥等。整个系统,密码运算、口令校验均在智能卡内部完成,并且进出智能卡的信息进行安全性的检查和处理。 [5]

    3.3 基于智能卡的X.509身份认证系统

    3.3.1基于智能卡的X.509身份认证系统体系结构

    基于智能卡的X.509身份认证系统由认证客户端、认证服务器、目录服务器、密码提供器、证书机构组成,如图2所示。 [4] [5]

 基于智能卡的X.509身份认证系统体系结构

图2 基于智能卡的X.509身份认证系统体系结构

    证书机构(CA)管理用户公钥证书。从智能卡中导出公钥,结合用户提供的身份信息,生成公钥证书,然后将公钥证书写入智能卡,发布至目录服务器。管理证书撤销列表。

第1页第2页

本文关键词:身份认证,X.509,智能卡,X.509协议
回到顶部