ScramSha512.java

 1package eu.siacs.conversations.crypto.sasl;
 2
 3import org.bouncycastle.crypto.Digest;
 4import org.bouncycastle.crypto.digests.SHA512Digest;
 5import org.bouncycastle.crypto.macs.HMac;
 6
 7import java.security.SecureRandom;
 8
 9import eu.siacs.conversations.entities.Account;
10import eu.siacs.conversations.xml.TagWriter;
11
12public class ScramSha512 extends ScramMechanism {
13
14    public static final String MECHANISM = "SCRAM-SHA-512";
15
16    @Override
17    protected HMac getHMAC() {
18        return new HMac(new SHA512Digest());
19    }
20
21    @Override
22    protected Digest getDigest() {
23        return new SHA512Digest();
24    }
25
26    public ScramSha512(final TagWriter tagWriter, final Account account, final SecureRandom rng) {
27        super(tagWriter, account, rng);
28    }
29
30    @Override
31    public int getPriority() {
32        return 30;
33    }
34
35    @Override
36    public String getMechanism() {
37        return MECHANISM;
38    }
39}