Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/306.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Bouncy Castle在linux机器上不工作_Java_Linux_Windows_Bouncycastle_Fips - Fatal编程技术网

Java Bouncy Castle在linux机器上不工作

Java Bouncy Castle在linux机器上不工作,java,linux,windows,bouncycastle,fips,Java,Linux,Windows,Bouncycastle,Fips,我实现了用于fips投诉签名生成和验证的boucnyCastle,这在windows环境下运行良好,但在linux环境下,代码在密钥对生成时被卡住。以下是我编写的代码: public static KeyPair generateKeyPair() throws GeneralSecurityException { KeyPairGenerator keyPair = KeyPairGenerator.getInstance("RSA", "BCFIPS"); keyPair.i

我实现了用于fips投诉签名生成和验证的boucnyCastle,这在windows环境下运行良好,但在linux环境下,代码在密钥对生成时被卡住。以下是我编写的代码:

public static KeyPair generateKeyPair() throws GeneralSecurityException
{
    KeyPairGenerator keyPair = KeyPairGenerator.getInstance("RSA", "BCFIPS");
    keyPair.initialize(new RSAKeyGenParameterSpec(3072, RSAKeyGenParameterSpec.F4));
    return keyPair.generateKeyPair();
}

首先检查您的系统上是否正在运行rngd.service(硬件RNG熵收集器守护程序)。如果您使用的是虚拟机,那么它将不会运行,要修复它,请使用以下链接:

使用以下命令再次检查您的系统是否具有足够的熵:

cat/proc/sys/kernel/random/entropy\u avail

若你们系统的熵并没有足够的熵,那个么增加它。您可以使用以下链接:

同时在你的系统上安装Haveged来生成人工熵。要安装Haveged,您可以使用 以下链接:


您所说的“不工作”和“卡住”是什么意思?会发生什么?您是否收到错误消息?它不会给出错误,也不会移动到代码的下一行,具体来说,它被固定在“return keyPair.generateKeyPair();”上。您的Linux系统是否具有足够的熵@龙刺客我把熵限制提高到了4000,但之前的问题还是一样的,大约是200。@AbdulAhad看来Bouncy Castle使用了很多熵。为了得到足够的熵,我必须安装Haveged来产生人工熵。