X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=server%2Ftesi%2Fsrc%2Fcom%2Fcompany%2FMD5.java;fp=server%2Ftesi%2Fsrc%2Fcom%2Fcompany%2FMD5.java;h=623f11f280bf954de286e7ca233bfc332935bdaa;hb=edfa62efb21b128dce6de134a3fb0d85f77bd2b8;hp=0000000000000000000000000000000000000000;hpb=a02dc65816998ec35975339dbad1627c2e5fb444;p=logicplayer.git diff --git a/server/tesi/src/com/company/MD5.java b/server/tesi/src/com/company/MD5.java new file mode 100644 index 0000000..623f11f --- /dev/null +++ b/server/tesi/src/com/company/MD5.java @@ -0,0 +1,46 @@ +package com.company; + +import java.io.FileInputStream; +import java.io.IOException; +import java.io.InputStream; +import java.security.MessageDigest; +import java.security.NoSuchAlgorithmException; + + +public class MD5 { + + MD5(){} + public static String digest(String filePath) { + InputStream inputStream = null; + try { + inputStream = new FileInputStream(global.locationEsercizi+filePath); + byte[] buffer = new byte[1024]; + MessageDigest digest = MessageDigest.getInstance("MD5"); + int numRead = 0; + while (numRead != -1) { + numRead = inputStream.read(buffer); + if (numRead > 0) + digest.update(buffer, 0, numRead); + } + byte [] md5Bytes = digest.digest(); + System.out.println(convertHashToString(md5Bytes)); + return convertHashToString(md5Bytes); + } catch (Exception e) { + return null; + } finally { + if (inputStream != null) { + try { + inputStream.close(); + } catch (Exception e) { } + } + } + } + + private static String convertHashToString(byte[] md5Bytes) { + String returnVal = ""; + for (int i = 0; i < md5Bytes.length; i++) { + returnVal += Integer.toString(( md5Bytes[i] & 0xff ) + 0x100, 16).substring(1); + } + return returnVal; + } +}