使用 SHA-1 算法进行加密签名
使用 SHA-1 算法进行加密的 Java 代码示例。
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
public class Sha1Example {
public static void main(String[] args) {
String input = "签名内容"; //
String sha1Hash = sha1(input);
System.out.println("SHA-1 Hash: " + sha1Hash);
}
public static String sha1(String input) {
try {
// 创建 SHA-1 消息摘要实例
MessageDigest digest = MessageDigest.getInstance("SHA-1");
// 更新摘要
digest.update(input.getBytes());
// 获取字节数组
byte[] hashBytes = digest.digest();
// 转换为十六进制字符串
StringBuilder hexString = new StringBuilder();
for (byte b : hashBytes) {
String hex = Integer.toHexString(0xff & b);
if (hex.length() == 1) {
hexString.append('0'); // 确保每个字节转换为两位数
}
hexString.append(hex);
}
return hexString.toString();
} catch (NoSuchAlgorithmException e) {
throw new RuntimeException("无效的SHA-1算法", e);
}
}
}
- MessageDigest:用于生成摘要信息的类。
- update():用于更新摘要与输入数据。
- digest():计算最终的摘要,并返回字节数组。
- 转换为十六进制:将字节数组转换为可读的十六进制字符串。
原文地址:https://blog.csdn.net/hay23455/article/details/143570248
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!