我正在使用Java中的以下函数将加密字符串转换为十六进制格式:
public static String toHex(byte [] buf) {
StringBuffer strbuf = new StringBuffer(buf.length * 2);
int i;
for (i = 0; i < buf.length; i++) {
if (((int) buf[i] & 0xff) < 0x10) {
strbuf.append("0");
}
strbuf.append(Long.toString((int) buf[i] & 0xff, 16));
}
return strbuf.toString();
}
现在我想将该十六进制字符串转换回字节数组。我该如何做?
例如,
(1) Plain Text = 123
(2) Encrypted Text = «h>kq*«¬Mí“~èåZ \}?
(3) Encrypted Text in Hex = f263575e7b00a977a8e9a37e08b9c215feb9bfb2f992b2b8f11e
我可以从(2)
走到(3)
,但如何从(3)
回到(2)
?