请同时了解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]);
}
[解决办法]
从你书写的代码上看,你是完全有能力自己解决的
$str = "我是abc";$b = unpack("C*", md5($str, 1));print_r($b);