2012-05-08 8 views
2

私はIMに関することをやっています。それはXMPPを伴う。 Androidでアプリを開発していますので、私はaSmackを使いました。 私はSmackのSASLとSASL PLAINの違いは何ですか?

https://developers.google.com/talk/open_communications

(下記にリンク)ここでは、Googleの話でログインしたい、とすると、GoogleトークのみSASL PLAINをサポートして言います。 私はインターネットで検索したとき、多くの人がGoogleの話は非常にこのコードが必要とされているSASL をサポートしていないと言う:

connectionConfig.setSASLAuthenticationEnabled(false); 

私は混乱しています。誰が正しいのか、SASLとSASL PLAINの違いを教えてくれますか?

答えて

6

SASL is a framework and protocol for authenticationこれは、ライブラリを再利用できるように他のプロトコルに埋め込まれることを意味します。

SASL PLAIN is a specific authentication mechanism SASLで使用できます。

other SASL mechanismsの束は、プロトコル、サーバー、およびクライアント全体でさまざまな程度のサポートが定義されています。 XMPPで使用されている主なものは、PLAIN、DIGEST-MD5(で必須)、SCRAM-SHA-1mandatorythe new XMPP RFC)です。

とにかく、あなたの質問に答えるために:あなたはSASLを無効にした場合

を、その後、スマックはおそらくlegacy authenticationと呼ばれるものを使用します。多くのサーバーがPLAINを暗号化されていない接続に許可しないため、TLSによる接続を暗号化しないと、これは問題を解決するように見えるかもしれません。

+0

あなたの助けてくれてありがとう、それは私にたくさん役立ちます。TLSモードが必要な場合、私は無効SASLコードを必要としないのかどうかをあなたは言うでしょうか? –

+0

標準のXMPPストリームは、まずTLSを使用して暗号化し、次にSASLを使用して認証します。 – MattJ

関連する問題