一种改进的动态口令认证机制的建模研究(2)
2015-05-29 01:16
导读:首先客户必须离线方式到服务商处申请身份认证注册,并向服务商提交用户的相关可信资料CI,服务商核实客户资料后交给用户唯一注册码M和客户唯一标识名
首先客户必须离线方式到服务商处申请身份认证注册,并向服务商提交用户的相关可信资料CI,服务商核实客户资料后交给用户唯一注册码M和客户唯一标识名字CID。注册过程如下:
(1)用户在线向注册服务器注册,提交注册码M和用户相关信息CI,为保密用户的个人资料,将用户资料用密钥M加密传给注册服务器RS。
(2)注册服务器收到CID,KM{CID,CI,S}后解密,得到CID、CI、S的值,然后验证CID、CI、M信息的正确性。用户身份核实正确后,通知客户端下载客户端代理程序。
(3)客户端下载代理程序,安装完代理程序后,由代理程序搜索客户机的硬件信息(如网卡、硬盘)参数,将参数串连后形成HI,用户提交密码Passwd和用户名Username。代理程序将HI和Passwd串联起来,计算TP=Hash(HI||Passwd),并在客户端本地记录UserName与CID之间的对应关系,这样用户就可以取一个简单的名字,随机生成一个数N,防止发生重放攻击。注册服务器收到CID,KM{CID,TP,N,S}后,解密得到TP、N、S,计算PF = F(CID,TP),将CID、PF、S存储在注册服务器端。其中F为单向函数。
(4)注册服务器给客户发送应答消息。
客户端收到后KM{CID,N+1,S},解密,检查N +1的值是否一致,防止RS发生欺骗和重放攻击,注册过程完成。
3.2.2身份认证过程
身份认证过程如下:
(1)客户C向服务器S申请服务。
(2)服务器作出应答,服务器要求验证客户端的身份,激活客户端的代理程序,并与客户端代理程序建立连接,同时为了防止发生重放攻击,生成一个随机数N,捎带发送给客户C。
(3)代理程序实时收集客户机的计算机硬件参数信息HI,用户输入的Passwd和UserName,代理程序计算TP=Hash(Passwd+HI), 由用户名Username找到对应的CID,计算PF=F(CID,TP),PG=G(PF,N) 传送CID、PG给S。其中的F、G 为单向函数,至于计算PF、PG的目的在上文动态口令机制中已经阐明。
(科教论文网 lw.nSeAc.com编辑发布)
(4)服务器S收到CID、PG值之后,传送CID、PG、N给认证服务器AS。认证服务器AS验证客户身份,从口令数据库或文件中取出PF的值,计算PG = G(PF,N),将计算的PG与S传送过来的PG比较,如果一致则确认客户的身份正确,否则客户的身份验证不正确。
(5)AS将验证结果发送给消息给服务器S,身份认证过程完毕。
4.结束语
本文在动态口令机制上做了改进,提出了一个基于计算机硬件信息实现的动态口令认证建模方法,并实现了这种认证的一个原型系统。在此原型系统设计中,对传统口令认证方法作了重要改进,安全性建立在动态口令机制之上,增加了对特定主机的认证,保证了特殊业务只能在特定主机上进行,比原有的动态口令更安全。而且不需要额外增加硬件设备,节约了项目成本。在一定程度上能够有效防止非法用户登陆系统,从而保证系统中重要数据的安全。
参考文献
1 冯登国. 《计算机通信网络安全》[M]
清华大学出版社,2001,3
2 苗高峰 王思昭.动态身份认证系统[J]飞行器测控学报,Vol.21,No.2,Jun.2002
3 Tsuji L Shimizu A.One-time Password Authentication Protocol Against Theft Attacks[J].IEICE Trans.Commun,2004,E87-B(3):523-529