信息安全系统中用户身份认证技术的研究
2018-11-23
(成都信息工程大学 四川 成都 610225)
一、引言
身份认证技术是计算机及网络系统确认操作者身份的过程,主要是解决验证网络通讯双方真实身份的问题。本文所研究的身份认证技术是依据动态口令机制实现身份认证,使用户可以用随机的口令进行登录,能够彻底解决现存的信息安全系统中身份识别与认证方面的问题,继承了动态口令的认证模式,提出其时间同步与否带来的弊端,同时拓展了认证渠道,增加了物理认证匹配因素。
二、信息安全系统基于复合结构身份认证算法分析
动态验证码生成算法分析
1.流行生成随机序列方法
动态口令认证系统的核心技术就在于生成动态口令的算法,而动态口令恰恰是由一组组随机序列组合而成的。可以说,动态口令是否安全取决于随机序列的安全性,而随机序列是否安全则取决于生成该序列的算法的安全性。随机序列的安全性在于该序列的组成是否够“乱”以及周期是否够“长”,让破译者无法找出各数字的前后相关性。
2.动态验证码生成算法
动态码生成算法采用目前较为流行的生成随机序列的方法之一:生成随机种子。其算法可以描述为:随机数是由随机种子(Rand Seed)在系统中参照系统时钟生成的,通常的方法是以当日零点为起点,用randomize( )语句取得种子,然后按照公式 Rand_Number =(Rand Seed *x +y)%z 获得伪随机数,其中x,y,z均为任意指定的自然数。
三、认证系统模型构建
(一)认证系统顶层设计架构
基于WEB的认证系统,其体系结构主要分为4层,界面层是由企业级客户端组成,部署了认证系统的客户端代理软件;传输层由认证协议和防火墙组成,认证协议的设计决定了该系统的认证可靠性,防火墙的配置决定了认证的安全性,将外网与内网有效的隔离;认证层主要由认证服务器、动态码生成服务器以及数据库组成,动态码的生成算法决定了其随机性的概率,其算法限制了认证的新鲜因子的有效性,间接影响认证协议抵抗重放性攻击;应用层由企业级应用服务器构成,它为认证系统提供统一接口,方便认证系统的嵌入。
(二)认证系统协议设计
1.认证协议设计应遵循的原则
认证协议的设计需要一个比较完善的设计理论来进行指导,客观地设计出一个比较安全的认证协议。协议设计时应注意的一些原则:
(1)每个信息说清楚它的意思,对信息的解释完全应该依靠它的内容。每个信息可以用一个完整的、有意义的语句来描述,这个语句是由信息的各个部分组成起来。如:A→B:EKb{Ta,Kab,B,A}
(2)信息在传送时,签名必须在加密之前来完成,这也是保证发送信息的认证主体知道所发送的信息的内容。
(3)如果认证主体的身份对某一个信息的意义来说是必要的,那么认证方案必须谨慎的处理用户的身份信息。
(4)在挑战/响应的认证协议的模式中,可预测的值可以用来保证新鲜性,但是如果这一可预测的值对协议的影响很大,那么就应该对该值进行保护。
2.认证协议设计
依据前面设计协议时应注意的原则,针对基于双因素的系统设计需求,设计出适合本系统的认证协议,用形式化方式表述如下:
M1:A→S:{UserID,MAC}K;
M2:A→S:{Ri,M=H(UserID,K)}K;
M3:A→S:{X=A⊕(B+UserID),Y=H(B)⊕B,Ri+1};
经过对该协议形式化分析,可以知道该协议是一个安全协议,协议中对随机数Ri+1进行了加密保护,减少了认证过程中信息的泄漏;增加了用户MAC硬件因素,增加了认证的复杂度,也就提高了认证的安全性;由于协议执行中有新鲜的随机数Ri+1参与,协议有效地抵抗重放攻击;协议实现了双向认证,有效地避免单向认证造成的安全漏洞。
(三)身份认证系统认证方式
身份认证系统的认证过程大致上来讲,可分为用户与主机间的认证和主机与主机之间的认证。本认证系统模型拟采用双因素认证方式,一是用户所知道的东西:用户UserID、静态口令;二是物理因素:软件生成令牌,即生成动态口令;同时附加硬件识别,即客户端MAC地址(或硬盘ID),有效地提高抵抗非法用户攻击的能力。如图1所示:
图1
四、结论
网络身份认证技术已经走向成熟,随着Internet的日益普及和深入生活,人们会慢慢地体会到对于身份认证系统的迫切需求。本文基于当前身份认证主要方式,分析身份认证协议,构建基于复合架构的身份认证模型。