powered by Jive Software

Doesn't work SASL Authentification, smack-core-4.0.0-rc1

Hello.

In smack-core-4.0.0-rc1 I have problems with the connect to the server.

ConnectionConfiguration config = new ConnectionConfiguration(server, 5222);

config.setDebuggerEnabled(true);
config.setSecurityMode(ConnectionConfiguration.SecurityMode.enabled);

config.setDebuggerEnabled(true);
config.setSecurityMode(ConnectionConfiguration.SecurityMode.enabled);
try {
SSLContext sc = SSLContext.getInstance(“TLS”);
sc.init(null, null, new SecureRandom());
config.setCustomSSLContext(sc);
} catch (NoSuchAlgorithmException | KeyManagementException e) {
throw new IllegalStateException(e);
}

connection = new XMPPTCPConnection(config);
connection.connect();

Here is error’s text:

javax.security.sasl.SaslException: SASL Authentication failed. No known authentication mechanisims.

at org.jivesoftware.smack.SASLAuthentication.authenticate(SASLAuthentication.java: 366)

at org.jivesoftware.smack.XMPPTCPConnection.login(XMPPTCPConnection.java:233)

at org.jivesoftware.smack.XMPPConnection.login(XMPPConnection.java:376)

Debug log:

<stream:stream to=“jabber.hot-chilli.net” xmlns=“jabber:client” xmlns:stream=“http://etherx.jabber.org/streams” version=“1.0”>

<?xml version='1.0'?>SCRAM-SHA-1

Server uses mechanism “SCRAM-SHA-1” but in smack API just 5 mechanisms:

  • DIGEST-MD5

  • GSSAPI

  • PLAIN

  • ANONYMOUS

  • CRAM-MD5

In class SASLAuthentication in the method “authenticate” is can’t find mechanism - “serverMechanisms.contains(mechanism)”, row 311.