论文部分内容阅读
随着信息化进程的推进,计算机网络的开放性与资源共享性程度越来越大。越来越多传统的业务也已经搬上计算网络平台。虽然开放性和资源共享给人们的生活、工作带来了很多便利。但是,网络安全问题也日益暴露出来,网络攻击技术不断的发展。诸如网络窃取、中间人攻击、冒充攻击等安全问题严重的影响计算机网络的发展。身份认证技术是保证网络安全的第一道防线,入侵检测、审计都是建立在身份认证基础上,传统的静态口令身份认证由于诸多的安全漏洞,在网络化时代已经不再适用。目前应用最多的就是一次性口令身份认证和公钥体系认证系统。一次性口令认证系统由于其原理简单、便于实现、安全可靠性高等优点而被广泛的使用。因此本文展开对典型一次性口令认证——S/key的分析研究。虽然S/key认证系统被看作是一种标准的一次性认证系统。但S/key认证系统在实际应用过程中已经暴露出很多安全问题。例如:不能低于冒充攻击、小数攻击、协议破坏攻击等。因此专家学者们纷纷讨论这些安全问题,并提出了许多改进方案。如:SAS、SAS-2、AOTP等。本文通过分析S/key认证系统的安全隐患和相应的改进方案,提出一种基于共享密钥一次性认证方案。并基于Java的开发平台开发一个小型的认证系统。本文主要的研究成果:1.基于Blom多方共享密钥协议,提出一种新型的共享密钥生成方法。通过用户与服务器通过各自初始化共享密钥,彻底杜绝对称加密的密钥在密钥交换过程中被截获的危险。2.设计出一次性共享密钥,保证用户与服务器在每次认证过程都使用不同的共享密钥,防止在不可信的KDC攻击,同时避免协议破坏攻击、中间人攻击等;实现对用户和服务器的双向认证,预防服务器冒充攻击。3.通过异或运算将种子值和序列数转换成密文,保证不以明文的方式在信道中传输。即使攻击者截获数据也不能够通过分析获得种子值和序列值,因此本方案能够避免小数攻击。4.通过SSL协议搭建安全通道,保证KDC与客户端通信的安全性。借助J2EE的开发平台,开发共享密钥一次性身份认证系统。运行实例证明此方案的可行性,并借助理论知识分析此方案的安全性和正确性。