public static String getMac() {
StringBuilder macStr = new StringBuilder();
try {
Enumeration<NetworkInterface> el = NetworkInterface.getNetworkInterfaces();
while (el.hasMoreElements()) {
byte[] mac = el.nextElement().getHardwareAddress();
if (mac == null || mac.length != 6)
continue;
for (int i = 0; i < mac.length; i++) {
macStr.append(String.format("%02X%s", mac[i], (i < mac.length - 1) ? "-" : ""));
}
macStr.append(";");
}
} catch (Exception exception) {
exception.printStackTrace();
}
if (macStr.toString().length() > 0) {
return macStr.toString().substring(0, macStr.toString().length() - 1);
} else {
return null;
}
}
public static String getSHA512(File file){
try {
MessageDigest digest = MessageDigest.getInstance("SHA-512");
byte[] bytes = Files.readAllBytes(file.toPath());
byte[] hash = digest.digest(bytes);
StringBuilder hexString = new StringBuilder();
for (byte b : hash) {
String hex = Integer.toHexString(0xff & b);
if (hex.length() == 1) {
hexString.append('0');
}
hexString.append(hex);
}
return hexString.toString();
} catch (Exception e) {
e.printStackTrace();
return null;
}
}
public static String getSHA512ByHutool(File file){
try {
byte[] bytes = Files.readAllBytes(file.toPath());
return cn.hutool.crypto.digest.DigestUtil.sha512Hex(bytes);
} catch (Exception e) {
e.printStackTrace();
return null;
}
}
Java获取Mac地址、Java获取文件SHA512
于 2024-04-02 16:32:39 首次发布