rain
2024-06-11 6c321434d8f0bc78ae86640653eccbf4cfc2c1d3
src/main/java/com/dji/sample/territory/utils/SM2SignUtil.java
@@ -109,32 +109,32 @@
        return hexString.toString().toUpperCase();
    }
    public static void main(String[] args) throws Exception {
        // 示例哈希值(这里只是一个占位符,你应该使用实际的哈希值)
        String sm3 = Sm3Util.calculateSM3Hash("FJHXZ,PSSJ,Longitude,Latitude,PSFYJ,PSJD,PSHGJ,PSRY,ZSDM");
        System.out.println("sm3 in hash: " + sm3);
        byte[] hash = sm3.getBytes(); // 注意:使用SM3或其他哈希算法来计算数据的哈希值
        // 加载私钥
        ECPrivateKeyParameters sm2PrivateKey = getSM2PrivateKey();
        // 使用SM2私钥对哈希值进行签名
        String signatureHex = signWithSM2(hash, sm2PrivateKey);
        System.out.println("Signature in hex (uppercase): " + signatureHex);
//        //验证
//        // 示例数据哈希(SM3哈希值)
//        byte[] dataHash = hash; // 注意:这里仅作为示例,你需要用实际的SM3哈希值
//    public static void main(String[] args) throws Exception {
//        // 示例哈希值(这里只是一个占位符,你应该使用实际的哈希值)
////        String sm3 = Sm3Util.calculateSM3Hash("FJHXZ,PSSJ,Longitude,Latitude,PSFYJ,PSJD,PSHGJ,PSRY,ZSDM");
////        System.out.println("sm3 in hash: " + sm3);
//        byte[] hash = sm3.getBytes(); // 注意:使用SM3或其他哈希算法来计算数据的哈希值
//
//        // 示例签名(字节数组)
//        byte[] signature = signatureHex.getBytes(); // 注意:这里仅作为示例,你需要用实际的签名值
//        // 加载私钥
//        ECPrivateKeyParameters sm2PrivateKey = getSM2PrivateKey();
//
//        // 验证签名
//        boolean isValid = verify(dataHash, signature);
//        // 使用SM2私钥对哈希值进行签名
//        String signatureHex = signWithSM2(hash, sm2PrivateKey);
////        System.out.println("Signature in hex (uppercase): " + signatureHex);
//
//        // 输出验证结果
//        System.out.println("Signature is valid: " + isValid);
    }
////        //验证
////        // 示例数据哈希(SM3哈希值)
////        byte[] dataHash = hash; // 注意:这里仅作为示例,你需要用实际的SM3哈希值
////
////        // 示例签名(字节数组)
////        byte[] signature = signatureHex.getBytes(); // 注意:这里仅作为示例,你需要用实际的签名值
////
////        // 验证签名
////        boolean isValid = verify(dataHash, signature);
////
////        // 输出验证结果
////        System.out.println("Signature is valid: " + isValid);
//
//    }
}