java实现sha-1加密算法
时间: 2023-08-09 17:05:17 浏览: 62
下面是Java实现SHA-1加密算法的示例代码:
```java
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
public class SHA1Encrypt {
public static void main(String[] args) {
String plaintext = "Hello, world!";
String sha1 = sha1(plaintext);
System.out.println("SHA-1 of \"" + plaintext + "\" is: " + sha1);
}
public static String sha1(String plaintext) {
try {
MessageDigest md = MessageDigest.getInstance("SHA-1");
byte[] bytes = md.digest(plaintext.getBytes());
StringBuilder sb = new StringBuilder();
for (byte b : bytes) {
sb.append(String.format("%02x", b));
}
return sb.toString();
} catch (NoSuchAlgorithmException e) {
e.printStackTrace();
}
return null;
}
}
```
以上代码使用了Java内置的`MessageDigest`类来计算SHA-1哈希值。`MessageDigest.getInstance("SHA-1")`返回一个SHA-1算法的实例,`md.digest(plaintext.getBytes())`计算给定数据的SHA-1哈希值,返回一个字节数组。最后,将字节数组转换为十六进制表示的字符串即可得到SHA-1值。