From 3753c46104303d8c5e36b3068650b1e0d136f447 Mon Sep 17 00:00:00 2001
From: rain <167982779@qq.com>
Date: Fri, 07 Jun 2024 17:29:39 +0800
Subject: [PATCH] SM3加密
---
src/main/java/com/dji/sample/territory/utils/HashUtil.java | 26 ++++++++++++++------------
1 files changed, 14 insertions(+), 12 deletions(-)
diff --git a/src/main/java/com/dji/sample/territory/utils/HashUtil.java b/src/main/java/com/dji/sample/territory/utils/HashUtil.java
index d0d1f0f..153a5bc 100644
--- a/src/main/java/com/dji/sample/territory/utils/HashUtil.java
+++ b/src/main/java/com/dji/sample/territory/utils/HashUtil.java
@@ -10,18 +10,15 @@
public class HashUtil {
public static String SM3Hash(File file) {
String filePath = String.valueOf(file);
- String hashHex = "";
try {
byte[] fileBytes = readFile(filePath);
- byte[] hash = calculateHash(fileBytes);
- hashHex = Hex.toHexString(hash);
+ return calculateHash(fileBytes);
} catch (IOException e) {
e.printStackTrace();
}
- return hashHex;
+ return "";
}
-
- private static byte[] readFile(String filePath) throws IOException {
+ public static byte[] readFile(String filePath) throws IOException {
FileInputStream fis = new FileInputStream(filePath);
byte[] buffer = new byte[1024];
int bytesRead;
@@ -32,12 +29,17 @@
fis.close();
return sb.toString().getBytes();
}
+ public static String calculateHash(byte[] data) {
+ byte[] md = new byte[32];
+ SM3Digest sm3 = new SM3Digest();
+ sm3.update(data, 0, data.length);
+ sm3.doFinal(md, 0);
+ String s = new String(Hex.encode(md));
+ return s.toUpperCase();
+ }
- private static byte[] calculateHash(byte[] input) {
- SM3Digest digest = new SM3Digest();
- digest.update(input, 0, input.length);
- byte[] hash = new byte[digest.getDigestSize()];
- digest.doFinal(hash, 0);
- return hash;
+ public static void main(String[] args) {
+ File file = new File("D:\\drone\\src\\main\\resources\\FJ_1s.jpeg");
+ System.out.println(SM3Hash(file));
}
}
--
Gitblit v1.9.3