java实现SHA1加密
解决方法:
char[] HEX_DIGITS = {'0', '1', '2', '3', '4', '5','6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f'};
String[] arr = new String[]{"参数1", "参数2”,"参数3"};
Arrays.sort(arr);
StringBuilder sb = new StringBuilder();
for (int i = 0; i < arr.length; i++) {
sb.append(arr[i]);
}
MessageDigest messageDigest = MessageDigest.getInstance("SHA1");
messageDigest.update(sb.toString().getBytes());
byte[] bytes = messageDigest.digest();
int len = bytes.length;
StringBuilder buf = new StringBuilder(len * 2);
// 把密文转换成十六进制的字符串形式
for (int j = 0; j < len; j++) {
buf.append(HEX_DIGITS[(bytes[j] >> 4) & 0x0f]);
buf.append(HEX_DIGITS[bytes[j] & 0x0f]);
}
String sign=buf.toString();