日期:2014-05-17  浏览次数:20476 次

请同时了解java加密和PHP的帅哥,帮我解决哈。
import java.security.MessageDigest;
String s = "我是abc";
byte[] b = s.getBytes("UTF8");
for (int i = 0; i < b.length; i++) {
System.out.println(b[i]);//这里得到的byte数组和php的unpack("c*", $str)一样。
}
System.out.println("-------------");
MessageDigest md = MessageDigest.getInstance("MD5");
md.update(b);
byte tmp[] = md.digest(); // MD5 的计算结果是一个 128 位的长整数
//这里得到的结果就是长度为16的字节数组了,不知道PHP如何得到
for (int i = 0; i < tmp.length; i++) {
System.out.println(tmp[i]);
}

------解决方案--------------------
从你书写的代码上看,你是完全有能力自己解决的
PHP code
$str = "我是abc";
$b = unpack("C*", md5($str, 1));
print_r($b);