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