Kerberos

2019-04-08  本文已影响0人  建康_木子

使用密码作为认证方式的弊端

 1.人为问题:设置的密码容易破解
 2.技术问题:网络中明文传输密码不安全

Kerberos解决了这两个问题

 1:整个网络使用一个kerberos密码
 2:incorporates encryption and message integrity

Kerberos特色:

 security:使用票据证明用户ID,既不在网络中明文传输密码,也不在本地磁盘存储密码
 single-sign-on:只需登陆一次就可以访问所有支持Kerberos的网络服务
 trusted third-party:KDC
 mutual authentication:双向认证

kerberos目标:安全和方便

 每一个KDC都有一个数据库,保存用户和服务的名字及密码
 authentication:证明你是你
  what he knows:密码
  what he has:不常用(SecurID)
  what he is:生物识别
一个安全系统通常包含一个或多个,比如RAS SecurID包含了密码和SecurID,kerberos没有具体实现没有指定需要包含哪种,但是最长用的还是密码的形式.
1.kerberos认证过程:
 C:客户端   S:服务端
 第一步:C向KDC请求session-key
 第二步:KDC向C发送经过C的master key加密的session key和经过S的master key加密的数据包(包含C的一些信息)
 第三步:C用自己的master key解密KDC发过来的session key,然后将自己的信息用session key加密组成Authentication(验证器),最后将验证器和KDC发送过来的数据包一起发送给S
 第四步:S用自己的master key解密接受到的数据包获取session key和C的信息,然后用session key解密Authentication获取C的信息。然后对比Authentication中C的信息和数据包中C的信息是否一致
2.keytab:stores long-term keys(即是master key)
 key分为两种:long-term key和short-term key
  long-term key:相当于长期不变的密码,Kerberos不允许在网络中传输这种密码,客户端和服务端的master key即是long-term key。
  short-term key:短期不变的密码,生命周期通常是一个会话的时间,session key即是这种密码。
上一篇下一篇

猜你喜欢

热点阅读