package com.bitmonlab.osiris.imports.map.utils; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; public class Cryptography { private static final String HEXES = "0123456789ABCDEF"; private static final String ALGORITHM = "SHA-512"; public static final String calculateCheckSum(final String strData) throws NoSuchAlgorithmException{ MessageDigest messageDigest; messageDigest = MessageDigest.getInstance(ALGORITHM); messageDigest.reset(); messageDigest.update(strData.getBytes(), 0, strData.length()); return codHex(messageDigest.digest()); } private static String codHex(final byte[] bDigest) { if ( bDigest == null ) { return null; } final StringBuffer hex = new StringBuffer( 2 * bDigest.length ); for (int i=0; i<bDigest.length; i++){ hex.append(HEXES.charAt((bDigest[i] & 0xF0) >> 4)) .append(HEXES.charAt((bDigest[i] & 0x0F))); } return hex.toString(); } }