blob: c2f1e8dca3ed915df0be0e27cd64f2d8273f7795 [file] [log] [blame]
package aQute.libg.cryptography;
import java.io.*;
import java.security.*;
public class SHA1 extends Digest {
public final static String ALGORITHM = "SHA1";
public static Digester<SHA1> getDigester(OutputStream... out) throws NoSuchAlgorithmException {
MessageDigest md = MessageDigest.getInstance(ALGORITHM);
return new Digester<SHA1>(md, out) {
@Override
public SHA1 digest() throws Exception {
return new SHA1(md.digest());
}
@Override
public SHA1 digest(byte[] bytes) {
return new SHA1(bytes);
}
@Override
public String getAlgorithm() {
return ALGORITHM;
}
};
}
public SHA1(byte[] b) {
super(b, 20);
}
@Override
public String getAlgorithm() {
return ALGORITHM;
}
public static SHA1 digest(byte [] data) throws Exception {
return getDigester().from(data);
}
public static SHA1 digest(File f) throws NoSuchAlgorithmException, Exception {
return getDigester().from(f);
}
public static SHA1 digest(InputStream f) throws NoSuchAlgorithmException, Exception {
return getDigester().from(f);
}
}