2017-01-12 21:26:58 +01:00
|
|
|
package eu.siacs.conversations.crypto.sasl;
|
|
|
|
|
2020-12-30 15:57:42 +01:00
|
|
|
import org.bouncycastle.crypto.Digest;
|
2017-01-12 21:26:58 +01:00
|
|
|
import org.bouncycastle.crypto.digests.SHA256Digest;
|
|
|
|
import org.bouncycastle.crypto.macs.HMac;
|
|
|
|
|
|
|
|
import java.security.SecureRandom;
|
|
|
|
|
|
|
|
import eu.siacs.conversations.entities.Account;
|
|
|
|
import eu.siacs.conversations.xml.TagWriter;
|
|
|
|
|
|
|
|
public class ScramSha256 extends ScramMechanism {
|
2020-12-30 15:57:42 +01:00
|
|
|
|
2020-12-31 09:32:05 +01:00
|
|
|
public static final String MECHANISM = "SCRAM-SHA-256";
|
|
|
|
|
|
|
|
@Override
|
|
|
|
protected HMac getHMAC() {
|
|
|
|
return new HMac(new SHA256Digest());
|
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
|
|
protected Digest getDigest() {
|
|
|
|
return new SHA256Digest();
|
|
|
|
}
|
|
|
|
|
|
|
|
public ScramSha256(final TagWriter tagWriter, final Account account, final SecureRandom rng) {
|
|
|
|
super(tagWriter, account, rng);
|
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
|
|
public int getPriority() {
|
|
|
|
return 25;
|
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
|
|
public String getMechanism() {
|
|
|
|
return MECHANISM;
|
|
|
|
}
|
2017-01-12 21:26:58 +01:00
|
|
|
}
|