至于为什么不一样?
问题出在你的toMad5方法“在实现或调用上一定不正确”。
====================
import java.security.MessageDigest;
public class Test{
public static void main(String[] args) {
try{
System.out.println(
toMD5(( toMD5( ("4451711").getBytes("GBK") )+"09519f" ).getBytes("GBK"))
);
}catch(Exception e){
e.printStackTrace();
}
}
public static String toMD5(byte[] source) {
try{
MessageDigest md = MessageDigest.getInstance("MD5");
md.update( source );
StringBuffer buf=new StringBuffer();
for(byte b:md.digest())
buf.append(String.format("%02x", b&0xff) );
return buf.toString();
}catch( Exception e ){
e.printStackTrace(); return null;
}
}
}
=============
输出
4c3dac55f41d67aeea814d09d5865aa9
和之前php的输出一致
4c3dac55f41d67aeea814d09d5865aa9
给出toMd5源码,可以找出问题给你。