欢迎来到天天文库
浏览记录
ID:39465073
大小:77.00 KB
页数:8页
时间:2019-07-04
《kerberos v4与kerberos v5比较分析》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、Kerberos是一种网络认证协议,其设计目标是通过密钥系统为客户机/服务器应用程序提供强大的认证服务。该认证过程的实现不依赖于主机操作系统的认证,无需基于主机地址的信任,不要求网络上所有主机的物理安全,并假定网络上传送的数据包可以被任意地读取、修改和插入数据。在以上情况下,Kerberos作为一种可信任的第三方认证服务,是通过传统的密码技术(如:共享密钥)执行认证服务的。 Kerberos的组成Kerberos应用程序库:应用程序接口,包括创建和读取认证请求,以及创建safemessage和privatemessage的子程序。 加密/解密库:DES等。 Kerberos数据库:记
2、载了每个Kerberos用户的名字,私有密钥,截止信息(记录的有效时间,通常为几年)等信息。 数据库管理程序:管理Kerberos数据库 KDBM服务器(数据库管理服务器):接受客户端的请求对数据库进行操作。 认证服务器(AS):存放一个Kerberos数据库的只读的副本,用来完成principle的认证,并生成会话密钥. 数据库复制软件:管理数据库从KDBM服务所在的机器,到认证服务器所在的机器的复制工作,为了保持数据库的一致性,每隔一段时间就需要进行复制工作. 用户程序:登录Kerberos,改变Kerberos密码,显示和破坏Kerberos标签(ticket)等工作。 K
3、erberos协议分为两个部分:1.Client向KDC发送自己的身份信息,KDC从TicketGrantingService得到TGT(ticket-grantingticket),并用协议开始前Client与KDC之间的密钥将TGT加密回复给Client。此时只有真正的Client才能利用它与KDC之间的密钥将加密后的TGT解密,从而获得TGT。(此过程避免了Client直接向KDC发送密码,以求通过验证的不安全方式)2.Client利用之前获得的TGT向KDC请求其他Service的Ticket,从而通过其他Service的身份鉴别。Kerberos协议的重点在于第二部分,简介如下:
4、1.Client将之前获得TGT和要请求的服务信息(服务名等)发送给KDC,KDC中的TicketGrantingService将为Client和Service之间生成一个SessionKey用于Service对Client的身份鉴别。然后KDC将这个SessionKey和用户名,用户地址(IP),服务名,有效期,时间戳一起包装成一个Ticket(这些信息最终用于Service对Client的身份鉴别)发送给Service,不过Kerberos协议并没有直接将Ticket发送给Service,而是通过Client转发给Service.所以有了第二步。2.此时KDC将刚才的Ticket转发给
5、Client。由于这个Ticket是要给Service的,不能让Client看到,所以KDC用协议开始前KDC与Service之间的密钥将Ticket加密后再发送给Client。同时为了让Client和Service之间共享那个秘密(KDC在第一步为它们创建的SessionKey),KDC用Client与它之间的密钥将SessionKey加密随加密的Ticket一起返回给Client。3.为了完成Ticket的传递,Client将刚才收到的Ticket转发到Service.由于Client不知道KDC与Service之间的密钥,所以它无法算改Ticket中的信息。同时Client将收到的S
6、essionKey解密出来,然后将自己的用户名,用户地址(IP)打包成Authenticator用SessionKey加密也发送给Service。4.Service收到Ticket后利用它与KDC之间的密钥将Ticket中的信息解密出来,从而获得SessionKey和用户名,用户地址(IP),服务名,有效期。然后再用SessionKey将Authenticator解密从而获得用户名,用户地址(IP)将其与之前Ticket中解密出来的用户名,用户地址(IP)做比较从而验证Client的身份。5.如果Service有返回结果,将其返回给Client。概括起来说Kerberos协议主要做了两件事
7、1.Ticket的安全传递。2.SessionKey的安全发布。再加上时间戳的使用就很大程度上的保证了用户鉴别的安全性。并且利用SessionKey,在通过鉴别之后Client和Service之间传递的消息也可以获得Confidentiality(机密性),Integrity(完整性)的保证。不过由于没有使用非对称密钥自然也就无法具有抗否认性,这也限制了它的应用。不过相对而言它比X.509PKI的身份鉴别方式实施起来要简
此文档下载收益归作者所有