0

我是 Bouncy Castle 的新手,并已使用以下说明安装它:

http://www.itcsolutions.eu/2011/08/22/how-to-use-bouncy-castle-cryptographic-api-in-netbeans-or-eclipse-for-java-jse-projects/

http://www.developer.com/java/other/article.php/3778011/Unlocking-the-Secrets-of-Java-Cryptography-Extensions-The-Basics.htm

两个链接都描述了
第 1 步的步骤。下载 Bouncy Castle 提供程序
第 2 步。将提供程序 .jar 文件复制到 Java 运行时 (JRE) 扩展子文件夹
第 3 步。将 Bouncy Castle 提供程序添加到 java.security 文件

根据第一组指令,我可以运行此代码,它正确地给了我“可用”响应:

import java.security.Security;
public class Main {
    public static void main(String[] args) {
        //BC is the ID for the Bouncy Castle provider;
        if (Security.getProvider("BC") == null){
            System.out.println("Bouncy Castle provider is NOT available");
        }
        else{
            System.out.println("Bouncy Castle provider is available");
        }
    }
}

问题是,一旦我在代码中添加任何其他内容,例如这一行:

KeyGenerator keygen = KeyGenerator.getInstance("DES/ECB/PKCS5Padding");

甚至这条线

KeyGenerator keygen;

然后它崩溃了。在调试模式下,它给了我一个“找不到源”。“编辑源查找路径...”按钮出错。包含错误消息的选项卡显示“CEStreamExhausted(Throwable).() 第 249 行”。

谁能告诉我我做错了什么?这个问题已经让我发疯了好几天!

4

1 回答 1

0

我不再需要回答这个问题。当我写这篇文章时,我只按照我安装的最新版本的 Java(JRE 和 JDK 7)的说明进行操作。从那时起,我决定也尝试按照我已安装但未使用的 JRE 6 的说明进行操作。我还确保重新启动我的笔记本电脑。现在可以了。有时是简单的事情......叹息

于 2012-10-27T15:38:00.170 回答