private String getChecksumWithPrefix(String prefix) { MessageDigest md; try { md = MessageDigest.getInstance("SHA-1"); } catch(NoSuchAlgorithmException e) { throw new RuntimeException("Could not find SHA-1 algorithm"); } md.update(prefix.getBytes()); for(int i = 0; i < 6; i++) md.update((byte)(barrel_values[i] + 48)); byte b[] = md.digest(); StringBuffer hexString = new StringBuffer(); for(int i = 0; i < b.length; i++) { String o = Integer.toHexString(0xff & b[i]); if(o.length() < 2) o = "0" + o; hexString.append(o); } String h = hexString.toString(); return hexString.toString(); }