论文部分内容阅读
身份认证是保证网络安全的一种有效机制,基于密码学的身份认证系统对安全性及可用性有较高的要求。由于网络的开放性,新的和未知的攻击不断涌现,人们很难检测和防御所有这些攻击;由于系统的复杂性,目前操作系统要完全避免安全漏洞很显然也是不可能的,因此要有效地解决这些安全问题需要寻找新的途径。入侵容忍就是在这样的背景下提出的,其目的是使系统即使在遭受攻击且部分组件已被入侵者控制的情况下继续提供可接受的服务,且仍然能够保证服务的可用性和数据的秘密性、完整性。入侵容忍技术的出现,为有效地解决身份认证系统所面临的安全性及可用性问题指明了方向。
本文首先介绍了常用的身份认证方法和入侵容忍的原理,以及入侵容忍与传统安全技术之间的区别,然后分析和探讨了目前身份认证系统所面临的安全性及可用性问题。针对传统身份认证技术的不足,本文结合入侵容忍的冗余、多样性、间接法和秘密共享算法,提出了一种具有分层特征的入侵容忍身份认证体系架构,并针对该体系架构提出了一种从冗余服务器返回一致结果的选举算法和一种基于秘密共享算法的分布式身份认证方案,同时分析了该架构各组件的完整性、机密性和可用性。最后给出了该架构关键组件的实现以及选举算法和认证系统性能和可用性的测试结果。
本文工作的研究成果如下:
(1)作为经典的入侵容忍体系架构,SITAR技术上过于复杂,实际上难以真正实现。本文提出了一种改进的入侵容忍体系架构,其包含客户端程序、代理服务器、选举系统、冗余服务器、监视器及管理服务器等六个组件。这些组件采用冗余和多样性技术设计,可以有效地提高系统的安全性,满足入侵容忍技术中关于无关联故障的假设。本文提出了一种分层设计的思想,将系统逻辑与层进行有效封装,简化了系统架构,便于系统实现,同时又满足了系统对安全性和可用性的要求,可以更好地适应身份认证、Web服务这类应用的需要。
(2)本文讨论了入侵容忍系统对于攻击和入侵的自适应响应策略,给出了入侵容忍系统的状态转移模型。本文提出了一个基于主代理的代理服务器群方案,简化了代理的设计,同时保留了入侵容忍代理层的高安全性和可用性特点。本文第一次提出了一个选举主代理的算法,可以很好地适应代理间的协调机制,达到持续提供消息转发服务的要求。
(3)在分布式系统中,复制和投票选举是实现容错的常用方法。本文提出了一个基于选举代理的分布式选举算法,显著地减少了选举过程交换的消息量,降低了比较操作的复杂度。该算法采用椭圆曲线签名体制保护消息,且在少数投票人失效或遭到入侵的情况下仍能向客户提交正确的结果,因而增强了提交结果的机密性和完整性。相比其他的分布式选举算法,该算法避免了TB—DBA算法等待计时器超时所引起的不确定时延,也克服了Castro和Liskov方案需要客户端有计算能力的缺陷。
(4)基于用户名/密码的认证系统将用户密码认证数据存储在认证服务器中,虽然采用了哈希运算来保护密码,但仍然可能遭到入侵者的离线字典式攻击。本文提出了一个基于(t,n)门限模式的分布式身份认证方案和认证主体产生会话密钥的机制,只要有t个认证服务器正常工作就可以完成身份认证,并为通讯双方分配会话密钥,且在认证的过程中不需要对用户密码进行重构,从而有效地防止了攻击者的欺骗行为,避免了重构点的单点故障。增强了系统的安全性和可用性。