From 655c9ea558b7abceb8515c7a3be7a4dc91e7c2b7 Mon Sep 17 00:00:00 2001 From: cheney Date: Thu, 14 May 2026 17:29:26 +0800 Subject: [PATCH] =?UTF-8?q?=E8=87=AA=E6=B5=8B=E9=80=9A=E8=BF=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/sunyard/cisd/device/tool/Main.java | 8 +++----- ...rint_public_key.pem => fingerprint_sm2_public_key.pem} | 0 2 files changed, 3 insertions(+), 5 deletions(-) rename device-fingerprint-tool/src/main/resources/{fingerprint_public_key.pem => fingerprint_sm2_public_key.pem} (100%) diff --git a/device-fingerprint-tool/src/main/java/com/sunyard/cisd/device/tool/Main.java b/device-fingerprint-tool/src/main/java/com/sunyard/cisd/device/tool/Main.java index b5e3fbf..db27117 100644 --- a/device-fingerprint-tool/src/main/java/com/sunyard/cisd/device/tool/Main.java +++ b/device-fingerprint-tool/src/main/java/com/sunyard/cisd/device/tool/Main.java @@ -331,7 +331,7 @@ public class Main { SM3Util.writeFile(MAC_PUBLIC_KEY_OUTPUT_FILE, publicKeyPEM); System.out.println("MAC公钥文件已保存: " + MAC_PUBLIC_KEY_OUTPUT_FILE); - String publicKeySm3 = SM3Util.sm3DigestHex(publicKeyPEM.getBytes(StandardCharsets.UTF_8)); + String publicKeySm3 = SM3Util.sm3DigestHex(macPublicKey.getEncoded()); SM3Util.writeFile(MAC_PUBLIC_KEY_SM3_FILE, publicKeySm3); System.out.println("MAC公钥SM3校验值已保存: " + MAC_PUBLIC_KEY_SM3_FILE + " (" + publicKeySm3 + ")"); @@ -342,15 +342,13 @@ public class Main { private static void verifyRootCertMAC() throws Exception { System.out.println("=== 验证根证书MAC签名 ==="); - String savedPublicKeyPEM = SM3Util.readFile(MAC_PUBLIC_KEY_OUTPUT_FILE).trim(); String savedPublicKeySm3 = SM3Util.readFile(MAC_PUBLIC_KEY_SM3_FILE).trim(); - String currentPublicKeySm3 = SM3Util.sm3DigestHex(savedPublicKeyPEM.getBytes(StandardCharsets.UTF_8)); + PublicKey publicKey = SM2Util.loadPublicKey(MAC_PUBLIC_KEY_PATH); + String currentPublicKeySm3 = SM3Util.sm3DigestHex(publicKey.getEncoded()); boolean publicKeyValid = savedPublicKeySm3.equals(currentPublicKeySm3); System.out.println("公钥校验值验证: " + publicKeyValid); - PublicKey publicKey = SM2Util.loadPublicKey(MAC_PUBLIC_KEY_PATH); - InputStream certInputStream = Main.class.getResourceAsStream(ROOT_CERT_FILE); if (certInputStream == null) { throw new IllegalArgumentException("根证书文件未找到: " + ROOT_CERT_FILE); diff --git a/device-fingerprint-tool/src/main/resources/fingerprint_public_key.pem b/device-fingerprint-tool/src/main/resources/fingerprint_sm2_public_key.pem similarity index 100% rename from device-fingerprint-tool/src/main/resources/fingerprint_public_key.pem rename to device-fingerprint-tool/src/main/resources/fingerprint_sm2_public_key.pem