java.security.NoSuchAlgorithmException:找不到任何支持PBEWithMD5AndDES的提供程序

时间:2014-07-14 15:39:51

标签: java encryption md5 des

执行代码时出现以下异常。

此处导致此错误的代码段

Cipher c = Cipher.getInstance("PBEWithMD5AndDES");

我使用过javax-crypto.jar。

Caused by: java.security.NoSuchAlgorithmException: Cannot find any provider supporting PBEWithMD5AndDES
    at javax.crypto.Cipher.getInstance(DashoA13*..)

我的运行时间是

C:\Documents and Settings\592635>java -version
java version "1.6.0_22"
Java(TM) SE Runtime Environment (build 1.6.0_22-b04)
Java HotSpot(TM) Client VM (build 17.1-b03, mixed mode, sharing)

可能是什么原因? 请帮忙。

1 个答案:

答案 0 :(得分:0)

您的Oracle JRE已按此方式配置或已损坏。例如,包含所需算法的提供程序可能已从Java JRE中的lib/security/java.security列表中删除。

如果您不在Oracle JRE中,那么您的运行时可能不包含实现该算法的提供程序。请注意,Java RE不需要支持"PBEWithMD5AndDES",至少not at the Java 7 level。在这种情况下,安装Bouncy Castle或Spongy Castle图书馆(根据他们的文档)。