private String makePasswordHash(String password, String salt) {
try {
String saltedAndHashed = password + "," + salt;
MessageDigest digest = MessageDigest.getInstance("MD5");
digest.update(saltedAndHashed.getBytes());
BASE64Encoder encoder = new BASE64Encoder();
byte hashedBytes[] = (new String(digest.digest(), "UTF-8")).getBytes();
return encoder.encode(hashedBytes) + "," + salt;
} catch (NoSuchAlgorithmException e) {
throw new RuntimeException("MD5 is not available", e);
} catch (UnsupportedEncodingException e) {
throw new RuntimeException("UTF-8 unavailable? Not a chance", e);
}