使用国密SM2算法报错

时间:2025-03-23 08:00:30

1. 错误:

1.1 异常信息

: IOException: Unknown named curve: 1.2.156.10197.1.301

1.2 异常原因:

没有添加Bouncy Castle算法提供者

1.3 解决方案:

导入bc库

<!-- Bouncy Castle -->
<dependency>
    <groupId></groupId>
    <artifactId>bcpkix-jdk15on</artifactId>
    <version>1.68</version>
</dependency>

添加Bouncy Castle算法提供者

Security.insertProviderAt(new BouncyCastleProvider(), 1);

不能使用如下方式添加:

Security.addProvider(new BouncyCastleProvider());

否则会报错:

encoded key spec not recognized: Invalid point coordinates