一种新的基于智能卡的双向身份认证方案设计

发布者:快乐家庭最新更新时间:2011-03-24 来源: 计算机应用研究关键字:身份认证  智能卡  计数器  随机数 手机看文章 扫描二维码
随时随地手机看文章
  摘 要:计算机网络的普及使更多的资源和应用可以利用网络远程获得,所以身份认证问题成为网络安全研究中的重要课题。当前主要的身份认证方法有以下几种:基于口令的身份认证;基于生物特征的身份认证;基于智能卡的身份认证以及几种方式的混合认证。结合密码学和智能卡技术的身份认证方案也被多次提出,许多专家和学者还提出了多种改进的方案。

  但是,这些方案均会出现一些不可避免的漏洞。针对多种方案的漏洞,该文提出了一种在智能卡中引入公钥密码算法的认证方案,并对其安全性进行了分析,该方案的安全性和优越性也在文中得到体现。

  0 引言

  随着计算机网络的普及和电子商务的发展,越来越多的资源和应用都是利用网络远程获得的。如何确保特定资源只被合法、授权的用户访问,即如何正确地鉴别出用户的身份是确保通信网和数据安全的首要条件。目前,主要的身份认证方法有3 种:基于口令的身份认证;基于生物特征的身份认证和基于智能卡的身份认证。结合密码学技术,很多专家和学者提出了基于智能卡的身份认证的有效方案。

  2000 年,Sun提出了一种基于哈希函数的智能卡有效远程认证方案,但该方案容易遭受密码猜测攻击和内部攻击。2002 年,文献[5]作者也在单向哈希函数基础上提出了一种方案。随后,很多专家和学者提出了各自的方案,这些方案通过引入随机数、计数器、时戳等参数来实现有效地、安全地双向认证。但遗憾的是,这些方案均会出现一些不可避免的漏洞。

  在分析以上方案的基础上,这里提出了一种新的远程用户认证方案。该方案是随着电子技术和芯片技术的发展而产生的设想。文献[6-8]证明了公钥密码算法在智能卡中的应用。该方案在保留了以上文献所采用的部分参数的基础上,在智能卡中引入了公钥密码算法,可靠地实现了通信双方的身份认证,能够抵御多数类型攻击,具有很强的安全性。

  1 术语定义

  下面定义在文中所用到的符号:

  U 表示认证协议中的用户;S 表示认证协议中的认证服务器;ID 为用户的身份标识;PW 为用户登陆口令;Ti 为时戳;h﹙·﹚为单向哈希函数;⊕为异或运算;为安全的通信信道;→为不安全的、普通的通信信道;E 为加密算法;D 为解密算法;Ku 为用户的公钥;ku 为用户的私钥;Ks 为服务器的公钥;ks 为服务器的私钥。

  2 所提出的认证方案

  该方案由注册阶段、登陆阶段、双向验证阶段、密码修改阶段组成。

  2.1 注册阶段

  R1:用户选择自己的标识ID、公钥Ku、私钥ku、口令PW 并计算h﹙PW﹚,通过安全信道提交给认证服务器S,即US:ID,h﹙PW﹚,Ku,ku。

  R2:服务器产生自己的私钥ks 和公钥Ks,并将自己的公钥Ks 发布出去,将ks 保存好,把用户的公钥Ku 存入数据库。同时服务器计算Vi=h﹙ID⊕ks﹚,Ri=h﹙ID⊕ks﹚⊕h﹙PW﹚,然后将信息{Ri,h﹙·﹚,Ks,ku,公钥算法}写入智能卡。

  R3: S 把智能卡通过安全信道交给用户,即S U:Card{Ri,h﹙·﹚,Ks,ku,公钥算法}。

  2.2 登陆阶段

  L1:用户U 把智能卡插入相关终端设备,输入ID、PW,智能卡与终端设备验证ID、PW 的合法性,否则放弃。

  L2:记录系统时戳T1,智能卡计算Vi=Ri⊕h﹙PW﹚,C1= h﹙T1⊕Vi﹚,并使用服务器的公钥Ks 进行加密运算,ET1=E﹙T1,Ks﹚,EC1=E﹙C1,Ks﹚。

  L3:用户U 通过一般信道将登陆信息m1{T1,C1,ET1,EC1}发给服务器S,即:U→S: m1{ T1,C1,ET1,EC1}。

  2.3 双向验证阶段

  V1:服务器S 收到m1{ T1,C1,ET1,EC1}后,首先用自己的私钥ks 进行解密运算:T1*=D﹙T1,ks﹚,C1*=D(C1,ks﹚,然后进行比较判断:T1*与T1 是否相等,C1*与C1 是否相等。若不能满足两者同时相等,则放弃;若两者同时相等,则进行下面的计算。

  V2:计算Vi= h﹙ID⊕ks﹚。

  V3:验证h﹙T1⊕Vi﹚是否与C1 相等,若不相等,则为非法用户;若相等,则为合法用户。

  V4:记录系统时戳T2,计算C2= h﹙T2⊕Vi﹚,并使用存储在数据库中的用户的公钥Ku 进行加密运算:ET2=E(T2,Ku﹚,EC2=E﹙C2,Ku﹚。

  V5:服务器S 通过一般信道将反馈信息m2{ T2,C2,ET2,EC2}发给用户U。即:S→U: m2{ T2,C2,ET2,EC2}。

  V6:用户U 收到信息m2{ T2,C2,ET2,EC2}后,使用自己的私钥ku 进行解密运算:T2*=D﹙T2,ku﹚,C2*=D﹙C2,k u﹚,然后进行比较判断:T2*与T2 是否相等,C2*与C2 是否相等。若不能满足两者同时相等,则放弃;若两者同时相等,则进行下面的计算。

  V7:验证h﹙T2⊕Vi﹚是否与C2 相等,若不相等,则为非法服务器;若相等,则为合法服务器。

  2.4 密码修改阶段

  P1:计算Ri*=Ri⊕h(PW)⊕h(PW*)=h(ID⊕ks)⊕h﹙PW*﹚。

  P2:用Ri*取代Ri,并存放在智能卡中。

  3 安全性分析

  该方案引入了公钥密码体制,在非安全信道传递信息时,均经过加密处理,因此具有很强的安全性,能抵御多种攻击。

  3.1 重放攻击

  假设攻击者截获了L3 阶段的登录信息m1{ T1,C1,ET1,EC1},并且更改了明文形式的时戳T1 为T1’。但是,在登录信息中仍然包含了加密后的时戳ET1,在V1 阶段,由于解密出的T1*≠T1’,攻击者遭到拒绝。

  3.2 拒绝服务攻击

  在很多文献中都是利用T2-T1=ΔT 来作为验证条件,因此当网络发生阻塞或攻击者故意拦截登录信息并延迟一段时间后再重新向S 传递时,S 检测出ΔT 不符合条件,容易发生拒绝服务攻击。文中所提出的方案,不需要用ΔT 来作为验证条件,即使网络阻塞或攻击者故意延迟,由于T1 的值没有改变,T1= T1*,故不会引起拒绝服务攻击。并且系统不需要很严格的同步要求。

  3.3 ReflectiON Attack 攻击

  假设攻击者截获L3 阶段的信息m1{ T1,C1,ET1,EC1}并阻塞该信息的传输,而且假冒S,跳过验证阶段的V1~V4阶段,直接又向用户U 发送m1{ T1,C1,ET1,EC1},企图冒充V5 阶段的信息m2{ T2,C2,ET2,EC2}。但该方案中,ET1、EC1 是用S 的公钥Ks 加密的,只能用S 的私钥ks 来解密,而用户U 没有ks ,因此无法计算出T1*和C1*,故此攻击不可行。

  3.4 Parallel Attack 攻击

  假设攻击者截获V5 阶段的信息m2{ T2,C2,ET2,EC2},并假冒用户U 向S 重新发送m2。但在S 端要进行解密计算却是不可行的,因为ET2、EC2 是用U 的公钥Ku 加密的,而其私钥k u 在U 端才用,S 端不能进行解密运算。

  3.5 智能卡丢失复制攻击

  由于攻击者不知道密码PW,故无法得出Ri=h(ID⊕ks)⊕h(PW)。同样,即使得知了ID、PW,如果没有智能卡,也无法假冒用户U。

  3.6 真正地双向认证

  方案使用了公钥密码算法,U、S 分别使用对方的公钥加密,然后发送信息,使用自己的私钥解密,在计算上是平等的,所以无论攻击者要假冒哪方都是不可行的,从而实现了真正地双向认证。

  4 结语

  从以上分析可以看出,通过引入公钥加密体制,文中提出的方案可抵御重放攻击、拒绝服务攻击、Reflection Attack攻击、Parallel Attack 攻击、智能卡丢失复制攻击,并且实现了通信双方的双向身份认证。虽然该方案由于公钥密码算法的引入占用了部分的计算资源,但却大大提高了系统的安全性,并且随着电子技术和芯片技术的快速发展,智能卡计算能力和存储能力的不断提高,该方案优越性会越来越突出其。该方案具体采用公钥密码算法中的哪种算法如RSA、El-Gamal、椭圆曲线等,不在本文讨论范围。

关键字:身份认证  智能卡  计数器  随机数 引用地址:一种新的基于智能卡的双向身份认证方案设计

上一篇:嵌入式多重识别智能门禁系统的设计与研究
下一篇:福冈市公开智能住宅 可自动交换多种电力

推荐阅读最新更新时间:2024-03-16 10:56

C51/C52的定时器计数器与中断
一、定时器/计数器简介 设置等待时间,到达等待时间之后执行指定的硬件操作。 定时器最基本的功能就是定时,比如说定时发送串口数据,定时采集AD数据,如果将定时器和IO结合起来就可以实现非常丰富的功能,可以测量输入信号的脉冲宽度,可以产生PWM方波,定时器产生PWM控制电机状态是工业控制的普通。 ----------------------------------------------------------------------------------------------------------------------------------------------------------- 二、定时器/计数
[单片机]
C51/C52的定时器<font color='red'>计数器</font>与中断
不需要加门电路的自校正环形计数器
不需要加门电路的自校正环形计数器
[模拟电子]
不需要加门电路的自校正环形<font color='red'>计数器</font>
基于RFID智能卡的高校图书馆自助式门禁系统
图书馆门禁系统是保障图书资源安全,提高图书馆管理效率、管理水平的控制系统。在计算机技术、网络技术、目标识别技术的支撑下,目前已有名目繁多的图书馆门禁系统上市,但这些门禁系统多是根据不同的图书馆信息化条件而定制研发的,由于原有的图书馆管理系统结构各不相同,造成门禁系统与图书馆其他管理系统之间的链接非常不便。并且,多数图书馆门禁系统的功能停留在安全管理、自动借还的层面上。为了实现门禁系统与各种数字图书馆之间的无缝链接,扩展门禁系统的功能,提高图书馆的自助服务水平,我们构建了一套基于RFID智能卡的高校图书馆自助式门禁系统。    1 RFID技术及在图书馆的应用简介   1.1 RFID技术   RFID(射频识别)技术,是一种
[模拟电子]
51单片机入门 - 定时/计数器原理及结构(T0和T1)
定时/计数器结构(T0和T1) 16位 寄存器 T0、T1分别由TH0、TL0和TH1、TL1四个8位计数器组成 定时器的区别: T0可分成2个独立的8位定时器,而定时器1则不能; T1可作为串口的波特率发生器,而定时器0则不能。 工作原理 注:T0或T1都不能同时既做定时器也做计数器 补充: 计数器工作原理: 用作计数器时,对T0或T1引脚的外部脉冲计数,如果前一个机器周期采样值为1,后一个机器周期采样值为0 ,则说明有一个脉冲,计数器加1。 在每个机器周期的S5P2期间采样引脚输入电平。新的计数初值于下一个机器周期的S3P1期间装入计数器。 此种方式需要两个机器周期来检测一个1- 0负跳变信号,因此最高的计
[单片机]
51单片机入门 - 定时/<font color='red'>计数器</font>原理及结构(T0和T1)
STM32F103ZET6 — WWDG
简介 与 STM32 的 IWDG 一样,窗口看门狗的作用也是从不可预知的情况下,进行恢复的一种手段,只不过窗口看门狗的用法和 IWDG 有一定的差异,主要体现在“窗口”二字。那么什么是窗口看门狗呢?顾名思义,窗口看门狗就是在指定的时间窗口进行喂狗,才有效,在窗口外进行喂狗,都视为无效。具体的内容,请看下面分析 时钟 与独立看门狗 IWDG 不同,WWDG 窗口看门狗由 APB1 提供时钟输入: 工作原理 WWDG 的基本组成为: 可编程的自由运行递减计数器。 条件复位 ---- 当递减计数器的值小于0x40,(若看门狗被启动)则产生复位。 ---- 当递减计数器在窗口外被重新装载,(若看门狗
[单片机]
STM32F103ZET6 — WWDG
基于AT90S8515的定时计数器
  AVR单片机的型号不同,定时/计数器的数量也不同。下面以AT90S8515单片机为例,介绍AVR单片机的定时/计数器。      AT90S8515有一个8位定时/计数器TCNTO和一个16位的定时/计数器TCNT1。二者均可对晶振时钟CK、预定比例器时钟源、或外部引脚脉冲进行计数。      AT90S8515的预定比例器将晶振时钟CK进行8、64、256和1024分频,分别为TCNTO、TCNT1提供不同频率的时钟源,包括:CK、CK/8、CK/64、CK/256、CK/1024、外部源EXTO、EXTI和停止。定时/控制寄存器TCCRO控制TCNTO的时钟源,TCCRIA、TCCRIB控制TCNT1的时钟源。定时/计数器
[单片机]
基于AT90S8515的定时<font color='red'>计数器</font>
c51中断计数器
#include reg51.h #define uchar unsigned char #define uint unsigned int #define ulong unsigned long uint tc; static uint i; uchar ledbuff ; uchar ledchar ={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}; void init_en() { EA = 1; ET1=1; ET0=1; TMOD = 0X51; TH0 = 0XFC; TL0 = 0X67; TR0=1; TR1=1; } void cl
[单片机]
c51中断<font color='red'>计数器</font>
可编程定时/计数器提高输出频率准确度方法
摘要: 用可编程定时/计数器作脉冲发生器时,输出脉冲频率等于输入时钟频率除以计数值,但其数值是离散的,期望输出频率只能用这些离散频率点来近似,频率准确度随输出频率升高而下降。提高输入时钟频率,增加输入时钟源数能提高脉冲发生器输出频率准确度。 将单片机内置或专用可编程定时/计数器作脉冲发生器,一般输入脉冲由晶振产生经过整形或分频后形成,有很高的频率准确度和稳定度。设输入脉冲频率为fin,期望输出脉冲频率为f,应置入脉冲发生器的计数值N=fin/f。当f为fin的约数,则N为整数,f与fin的准确度相同;当f不为fin的约数,则N也不为整数,N=n+ δ ,其中n为N的整数部分, δ 为N的纯小数部分。由于计数值只能为整数,实
[模拟电子]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
最新安防电子文章

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 视频监控 智能卡 防盗报警 智能管理 处理器 传感器 其他技术 综合资讯 安防论坛

词云: 1 2 3 4 5 6 7 8 9 10

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved