我正在研究一些关于我的东西。它涉及到xmpp。
我在android上开发了一个应用程序,所以我使用了asmack。
我想登录google talk,这里(链接如下)
https://developers.google.com/talk/open_communications
说google talk只支持sasl-plain。
但是当我在互联网上搜索时,很多人说google talk不支持sasl
所以需要这个代码:

    connectionConfig.setSASLAuthenticationEnabled(false);

我很困惑,谁能告诉我哪一个是正确的,或者sasl和sasl平原的区别呢?

最佳答案

SASL is a framework and protocol for authentication这意味着要嵌入到其他协议中,以便可以重用库。
SASL PLAIN is a specific authentication mechanism你可以用在sasl上面。
在协议、服务器和客户机中定义了许多不同程度的支持。xmpp中使用的主要是普通的digest-md5(在other SASL mechanisms中是必需的)和the old XMPP RFCSCRAM-SHA-1mandatory中是the new XMPP RFC)。
无论如何,回答你的问题:
如果禁用sasl,smack可能会使用legacy authentication。如果您不使用TLS加密连接,这可能会解决问题,因为许多服务器不允许纯覆盖未加密连接。

关于android - Smack中的SASL和SASL PLAIN有什么区别?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10494872/

10-13 01:46