您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > 计算机网络信息安全理论与实践教程-第6章
第6章认证技术的原理与应用第6章认证技术的原理与应用6.1认证相关概念6.2认证信息类型6.3认证的作用和意义6.4认证方法分类6.5认证实现技术6.6认证技术应用案例6.7本章小结本章思考与练习第6章认证技术的原理与应用6.1认证相关概念认证就是一个实体向另外一个实体证明其所具有的某种特性的过程。在认证过程中,要用到两种基本安全技术,即标识技术(identification)和鉴别技术(authentication)。下面分别叙述。(1)标识。标识用来代表实体的身份,确保实体在系统中的惟一性和可辨认性,一般用名称和标识符(ID)来表示。通过惟一标识符,系统可以识别出访问系统的每个用户。例如,在网络环境中,网络管理员常用IP地址、网卡地址作为计算机用户的标识。第6章认证技术的原理与应用(2)鉴别。鉴别是指对实体身份的真实性进行识别。鉴别的依据是用户所拥有的特殊信息或实物,这些信息是秘密的,其他用户都不能拥有。系统根据识别和鉴别的结果,来决定用户访问资源的能力。例如,通过IP地址的识别,网络管理员可以确定Web访问是内部用户访问还是外部用户访问。第6章认证技术的原理与应用6.2认证信息类型常用的鉴别信息主要有四种:(1)所知道的秘密,如用户口令、PIN(PersonalIdentificationNumber)。(2)所拥有的实物,一般是不可伪造的设备,如智能卡、磁卡等。(3)生物特征信息,如指纹、声音、视网膜等。(4)上下文信息,就是认证实体所处的环境信息、地理位置、时间等,例如IP地址等。第6章认证技术的原理与应用6.3认证的作用和意义认证的主要用途有三方面:(1)验证网络资源访问者的身份,给网络系统访问授权提供支持服务。(2)验证网络信息的发送者和接收者的真实性,防止假冒。(3)验证网络信息的完整性,防止篡改、重放或延迟。第6章认证技术的原理与应用6.4认证方法分类6.4.1单向认证单向认证是指在网络服务认证过程中,服务方对客户方进行单方面的鉴别,而客户方不需要识别服务方的身份。例如,假设一个客户需要访问某台服务器,单向认证只是由客户向服务器发送自己的ID和密码,然后服务器根据收到的密码和ID,进行比对检验,鉴别客户方的身份真实性。单向认证过程如图6-1所示,认证过程由六步构成:第一步,客户方向服务器发出访问请求;第6章认证技术的原理与应用第二步,服务器要求客户方输入ID;第三步,客户方向服务器输入ID;第四步,服务器要求客户方输入密码;第五步,客户方向服务器输入密码;第六步,服务器验证ID和密码,如果匹配则允许客户进入系统访问。第6章认证技术的原理与应用图6-1单向认证过程示意图客户1.访问请求2.提示客户输入ID3.客户输入ID4.提示客户输入密码6.客户进入系统5.客户输入密码服务器第6章认证技术的原理与应用6.4.2双向认证双向认证是指在网络服务认证过程中,不仅服务方对客户方要进行鉴别,而且客户方也要鉴别服务方的身份。双向认证增加了客户方对服务方的认证,这样就可以解决服务器的真假识别安全问题。双向认证过程如图6-2所示,认证过程由九步构成:第一步,客户方向服务器发出访问请求;第二步,服务器要求客户方输入ID;第三步,客户方向服务器输入ID;第6章认证技术的原理与应用第四步,服务器要求客户方输入密码;第五步,客户方向服务器输入密码;第六步,服务器验证ID和密码,如果匹配则允许客户进入系统访问;第七步,客户提示服务器输入密码;第八步,服务器按客户要求输入密码;第九步,客户验证服务器。第6章认证技术的原理与应用图6-2双向认证过程示意图服务器客户1.访问请求2.提示客户输入ID3.客户输入ID4.提示客户输入密码6.客户进入系统5.客户输入密码7.提示服务器输入密码8.服务器输入9.客户验证服务器第6章认证技术的原理与应用在实际的应用问题中,双向认证的代价要比单向认证高。例如,一个拥有50个用户的网络,每个用户都可以和其他任何用户通信,所以每个用户都必须有能力对其他任一用户进行认证。另外,出于保密角度考虑,我们希望每个用户都有自己的个人密码。在这种情况下,每个用户必须存储所有其他用户的密码,也就是说每个工作站需要存储49个密码。如果新添加了一个用户,或者有用户被删除了,于是每个人都要修改自己的密码表。由此可见,双向认证需要的代价高。第6章认证技术的原理与应用6.4.3第三方认证第三方认证是指在网络服务认证过程中,服务方和客户方的身份鉴别通过第三方来实现。第三方不仅负责维护认证信息,而且还负责验证双方的身份。每个用户都把自己的ID和密码发送给可信第三方,由第三方负责认证过程。此方法兼顾了安全性和密码存储的简单易行性。第6章认证技术的原理与应用6.5认证实现技术6.5.1口令认证技术口令认证是根据用户所知道的信息进行的身份鉴别,它不仅应用在网络系统中,而且也广泛应用在日常生活中。口令俗称“密码”,在计算机网络中,当需要访问网络设备、操作系统和网络服务时,系统常常要求用户输入“用户名”和“密码”。口令认证的优点就是简单,易于实现。例如,当使用者以超级管理员身份访问Solaris操作系统时,系统要求用户输入“root”用户名和root的口令信息,如图6-3所示。第6章认证技术的原理与应用图6-3Solaris的口令认证示意图第6章认证技术的原理与应用但是,口令认证的不足之处是容易受到攻击,主要的攻击方式有窃听、重放、中间人攻击、口令猜测等。因此,要实现口令认证的安全,应至少做到以下几点:*口令信息要安全加密存储;*口令信息要安全传输;*口令认证协议要抵抗攻击,符合安全协议设计要求;*口令选择要求做到避免弱口令。第6章认证技术的原理与应用针对口令猜测攻击,一般要求用户选择复杂的口令,即口令的安全选取至少符合下列要求:*口令的长度应至少为8个字符以上;*口令字符应由大小写英文字母、数字、特殊字符组合而成;*口令不能与帐号名称相同;*不能用生日、电话号码、手机号、门牌号等作为口令;*所选口令不能包含在黑客攻击的字典库中。第6章认证技术的原理与应用同时,在口令认证管理上,应采取以下防范措施:(1)限制帐号登录次数,建议为3次。(2)禁止共享帐号和口令。(3)口令文件应加密存放,并只有超级用户才能读取。(4)禁止以明文形式在网络上传递口令。(5)口令应有时效机制,保证经常更改,至少两周更新一次,并且禁止重用口令。(6)对所有的帐号运行口令破解工具,以寻找弱口令或没有口令的帐号。(7)必须更换系统默认口令,避免使用默认口令。第6章认证技术的原理与应用6.5.2智能卡技术智能卡是一种带有存储器和微处理器的集成电路卡,能够安全存储认证信息,并具有一定的计算能力。智能卡认证是根据用户所拥有的实物进行的。智能卡认证技术广泛应用在现今社会的各个方面。图6-4所示是通过智能卡来实现挑战/响应认证的过程。在挑战/响应认证中,用户会提供一张智能卡,智能卡会一直显示一个随时间而变化的数字。假如用户试图登录目标系统,则系统首先将对用户进行认证,步骤如下:(1)用户将自己的ID发送到目标系统。(2)系统提示用户输入数字。(3)用户从智能卡上读取数字。第6章认证技术的原理与应用(4)用户将数字发送给系统。(5)系统用收到的数字对ID进行确认。如果ID有效,系统会生成一个数字并将其显示给用户,这称为挑战。(6)用户将上面的挑战输入智能卡中。(7)智能卡利用这个输入的值并根据一定的算法计算出一个新的数字,然后显示这个结果,该数字称为应答。(8)用户将应答输入系统。(9)系统验证应答是否正确。如果正确的话,用户通过验证并登录进入系统。第6章认证技术的原理与应用图6-4挑战/响应认证示意图智能卡用户目标系统3.读取数字生成挑战检查应答,如果正确则登录成功6.挑战7.应答1.发送ID2.提示输入数字4.发送数字5.发送挑战8.发送应答9.用户登录第6章认证技术的原理与应用6.5.3基于生物特征认证利用口令进行认证的缺陷是口令信息容易泄露,而智能卡又可能丢失或被伪造。在安全性要求高的环境中,这两种技术都难以满足安全需求。基于生物特征认证就是指利用人类的生物特征来进行验证。目前,指纹、视网膜、语音等生物信息都可以被用来进行认证。人的指纹与生俱来,而且一生不变。视网膜认证是根据人眼视网膜中的血管分布模式的不同来进行身份鉴别的。语音认证则是依靠人的声音的频率来判断不同人的身份。第6章认证技术的原理与应用6.5.4KerberosKerberos的基本原理是利用对称密码技术,使用可信的第三方来认证服务器的用户身份,并在用户和服务器之间建立安全信道。例如,Alice和Bob分别都与可信第三方共享密钥,如果用户Alice想要获取Bob提供的服务,那么Alice首先向可信第三方申请一个用于获取Bob服务的票据TGT(TicketGrantingTicket),然后可信第三方给Alice提供一个Bob的服务票据TGS(TicketGrantingServer)及用于Alice和Bob之间安全会话的密钥,最后Alice利用可信第三方提供的服务票据和会话密钥,访问Bob服务并进行安全通信。Kerberos由美国麻省理工学院(MIT)研制实现,已经历了五个版本的发展。Kerberos协议实现的源程序可以从网站下载。Kerberos认证系统可以用来对网络上通信的实体进行相互身份认证,并且能够阻止旁听和重放等攻击。第6章认证技术的原理与应用一个Kerberos系统涉及到四个基本实体:*Kerberos客户机:用户用来访问服务器的设备。*AS(AuthenticationServer):为用户分发TGT(TicketGrantingTicket)的服务器。用户使用TGT(TicketGrantingTicket)向TGS(TicketGrantingServer)证明自己的身份。*TGS(TicketGrantingServer):为用户分发到最终目的票据的服务器,用户使用这个票据向自己要求提供服务的服务器证明自己的身份。*应用服务器(ApplicationServer):为用户提供特定服务。第6章认证技术的原理与应用在Kerberos系统中,票据(Ticket)是用于安全传递用户身份所需要的信息的集合。它不仅包含该用户的身份,而且还包含其他一些相关的信息。一般来说,它主要包括客户方Principal、目的服务方Principal、客户方IP地址、时间戳(分发该Ticket的时间)、Ticket的生存期以及会话密钥等内容。通常将AS和TGS统称为KDC(KeyDistributionCenter)。Kerberos的工作流程主要由六步构成,如图6-5所示。第6章认证技术的原理与应用图6-5Kerberos工作流程示意图应用服务器Kerberos客户6.应用服务器确认请求5.发送会话票据到服务器4.发送应用票据给客户3.发送TGT和应用服务票据申请2.发送TGT给客户1.向AS请求TGT票据KDCTGS服务器AS服务器第6章认证技术的原理与应用第一步,Kerberos客户向认证服务器AS申请票据TGT,如图6-6所示。图6-6Kerberos客户向AS申请票据TGT示意图Kerberos客户认证服务器AS·用户名·客户认证请求(TGT)·当前时间·用户名·用户密码·所有用户及服务名称·所有的密码第6章认证技术的原理与应用第二步,当认证服务器AS收到Kerberos客户发来的消息后,AS在认证数据库检查、确认Kerberos客户,并产生一个会话密钥,同时使用Kerberos客户的秘密密钥对会话密钥进行加密,然后生成一个票据TGT。TGT由Kerberos客户实体名、地址、时间戳、限制时间及会话密钥组成。AS生成TGT后,把TGT发送给Kerberos客户。第二步认证会话过程如图6-7所示。第6章认证技术的原理与应用图6-7认证服务器AS响应Kerberos客户的TGT请求示意图票据TGT(包含TG密钥)使用用户密码加密Kerberos
本文标题:计算机网络信息安全理论与实践教程-第6章
链接地址:https://www.777doc.com/doc-4549523 .html