package cn7.javasec.blatt8; import java.io.BufferedInputStream; import java.io.ByteArrayInputStream; import java.io.FileInputStream; import java.security.DigestInputStream; import java.security.MessageDigest; public class Aufgabe2b { /** * @param args */ public static void main(String[] args) { String alg = "SHA-512"; //alg = "MD5"; try { MessageDigest md = MessageDigest.getInstance(alg); DigestInputStream dis = new DigestInputStream(new FileInputStream("digest.file"), md); while ((dis.read()) != -1); dis.close(); // out byte[] out = md.digest(); BufferedInputStream br = new BufferedInputStream(new ByteArrayInputStream(out)); int k = 0; String output = ""; while ((k = br.read()) != -1) { k = k & 0xFF; if (k < 16) output += "0"; output += Integer.toString(k, 16).toUpperCase() + " "; } System.out.println("OUT:\n" +output); System.out.println(); } catch (Exception e) { e.printStackTrace(); } } }