Java Bouncy Castle在linux机器上不工作
我实现了用于fips投诉签名生成和验证的boucnyCastle,这在windows环境下运行良好,但在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
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来产生人工熵。