md5加密,同样的代码得到不同的加密结果(已解决)

  开发环境(windows下)调用第三方接口验签通过,发测试环境(linux下)后死活验签通过不了

  原因:

  md5是一项成熟的加密技术,问题应该在代码里,查了查感觉可能是字符编码的问题,导致加签没通过,这样的话只能是环境导致的字符编码出现问题,就我所知的有getBytes()方法是得到一个操作系统默认的编码格式的字节数组,发现公共代码里进行md5加密是要进行转字节的

/** * md5加密 */ public static String MD5Encode(String origin) { String resultString = null; try { resultString = new String(origin); MessageDigest md = MessageDigest.getInstance("MD5"); resultString = byteArrayToHexString(md.digest(resultString .getBytes())); } catch (NoSuchAlgorithmException e) { } return resultString; }

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wsxjpz.html