SM4 运行提示:No such algorithm: SM4/ECB/PKCS5Padding和java.lang.SecurityException: JCE cannot authenticate the Provider BC
问题处理方法记录
问题描述以及处理过程
处理第一个问题的时候,想到替换各种jar包,然后替换了各个类型的jar包,其中包括bcprov-jdk14,bcprov-jdk15on,bcprov-jdk15to18,最后发现替换bcprov-jdk15on这个jar包之后,就没有报出第一个错误了,但是又报出第二个错误,然后替换了好几个版本,
今天在处理这个错误的时候,换了各种版本的jar包,其中包括bcprov-jdk14,bcprov-jdk15on,bcprov-jdk15to18,好几个版本的jar包,使用bcprov-jdk15on-1.65,又提示许可证的错误,然后就想着替换其他版本的jar包,最后还是换了一个低版本的jar包,bcprov-jdk15on-1.5.4版本,发现可以正常加解密了。
附上各个版本对应关系图
jdk版本 | jar包版本 |
---|---|
jdk1.6.0_24 | bcprov-jdk14-140.jar |
jdk-7u45 | bcprov-jdk15on-1.54.jar 或者jce-jdk13-119.jar |
jdk1.8.0_144 | bcprov-jdk15on-1.56.jar |