当前位置:  开发笔记 > 后端 > 正文

SSL和Kerberos身份验证之间的区别?

如何解决《SSL和Kerberos身份验证之间的区别?》经验,为你挑选了3个好方法。

我试图了解SSL和Kerberos身份验证之间的实际区别是什么,以及为什么有时我同时拥有SSL流量和Kerberos.或者Kerberos以任何方式使用SSL?

有人可以帮忙吗?谢谢!



1> KovBal..:

虽然Kerberos和SSL都是协议,但Kerberos是一种身份验证协议,但SSL是一种加密协议.Kerberos使用UDP,SSL使用(大多数时候)TCP.SSL身份验证通常通过检查服务器和客户端的RSA或ECDSA密钥完成,这些密钥嵌入在称为X.509证书的内容中.您已通过证书和相应密钥进行身份验证.使用Kerberos,您可以通过密码或其他方式进行身份验证.例如,Windows在域中使用时使用Kerberos.

相关说明:最新版本的SSL称为传输层安全性的TLS.


首先,SSL不需要*TCP.它可以在任何传输上运行,只要传输保证传输,并且DTLS是对在UDP上运行的TLS的轻微修改.接下来,SSL不仅允许使用证书,还使用密码,openpgp密钥等进行身份验证.

2> Chris..:

SSL使用公钥加密:

    您(或您的浏览器)有一个公钥/私钥对

    服务器也有公钥/私钥

    您生成对称会话密钥

    您使用服务器的公钥进行加密,并将此加密的会话密钥发送到服务器.

    服务器使用其私钥解密加密的会话密钥.

    您和服务器开始使用对称会话密钥进行通信(主要是因为对称密钥更快).

Kerberos不使用公钥加密.它使用受信任的第三方.这是一个草图:

    您(服务器和客户端)都向受信任的第三方证明您的身份(通过秘密).

    如果要使用服务器,请检查并确定服务器是否值得信任.同时,服务器检查您是否值得信赖.现在,相互保证彼此的身份.您可以与服务器通信.2


Kerberos可以使用公钥加密作为其会话密钥.该标准从2006年的共享密钥机制扩展到http://www.ietf.org/rfc/rfc4556.txt了解更多详情

3> Yang Zhao..:

简而言之,Kerberos是一种协议,用于通过受信任的第三方为客户端和服务器建立相互身份信任或身份验证,而SSL仅确保服务器的身份验证,并且只有在其公钥已经建立的情况下通过另一个渠道值得信赖.两者都提供服务器和客户端之间的安全通信.

更正式的(但不进入数学证明),给予客户Ç,服务器小号,和第三方ŧ这两个Ç小号信任:

在Kerbeos身份验证之后,确定:

C认为S是它打算联系的人

S认为C是它声称的人

C认为它与S有安全连接

C认为S认为它与C有安全联系

S认为它与C有安全连接

S认为C认为它与S有安全联系

另一方面,SSL只确定:

C认为S是它打算联系的人

C认为它与S有安全的连接

S认为它与C有安全连接

显然,Kerberos建立了更强大,更完整的信任关系.

此外,为了通过SSL 建立S的身份,C需要有关S的先验知识,或者需要外部方式来确认此信任.对于大多数人的日常使用,这将以根证书的形式出现,并在将来缓存S证书以进行交叉引用.

如果没有这个先验知识,SSL是容易受到中间人攻击,其中第三方能够冒充小号ç通过中继他们使用2个独立的安全通道之间的通信Ç小号.为了破坏Kerberos身份验证,窃听者必须将T伪装成SC两者.但是请注意,根据Kerberos的目标,信任集仍然是不间断的,因为根据前提条件" CS信任T " ,结束状态仍然是正确的.

最后,正如评论中指出的那样,Kerberos可以并且已经扩展为使用类似SSL的机制来建立CT之间的初始安全连接.


SSL完全能够使用客户端证书建立客户端的身份.
推荐阅读
郑谊099_448
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有