private static String H(String data){
  try {
    MessageDigest digest=MessageDigest.getInstance("MD5");
    return toHexString(digest.digest(data.getBytes()));
  }
 catch (  NoSuchAlgorithmException ex) {
    throw new RuntimeException("Failed to instantiate an MD5 algorithm",ex);
  }
}

private static String H ( String data ) { try { MessageDigest digest = MessageDigest . getInstance ( "MD5" ) ; return toHexString ( digest . digest ( data . getBytes ( ) ) ) ; } catch ( NoSuchAlgorithmException ex ) { throw new RuntimeException ( "Failed to instantiate an MD5 algorithm" , ex ) ; } }
defined in rfc 2617 as h ( data ) = md5 ( data ) ;
