【问题标题】:Bouncy Castle not working on linux machineBouncy Castle 无法在 Linux 机器上运行
【发布时间】:2017-12-13 14:49:01
【问题描述】:

我为 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();
}

Bouncy Castle

【问题讨论】:

  • “不工作”和“卡住”是什么意思?怎么了?您收到错误消息吗?
  • 它没有给出错误,也没有移动到代码的下一行,具体来说它卡在这个“return keyPair.generateKeyPair();”上
  • 你的Linux系统有足够的熵吗? wiki.archlinux.org/index.php/…
  • @DragonAssassin 我将熵限制提高到 4000,但仍然存在同样的问题,大概是 200 左右。
  • @AbdulAhad 看来 Bouncy Castle 使用了大量的熵。为了获得足够的熵,我不得不安装 Haveged 来生成人工熵。 wiki.archlinux.org/index.php/Haveged

标签: java linux windows bouncycastle fips


【解决方案1】:

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

http://wiki.networksecuritytoolkit.org/index.php/HowTo_Fix_The_rngd.service

第二次检查你的系统是否有足够的熵使用命令:

cat /proc/sys/kernel/random/entropy_avail

如果您的系统的熵没有足够的熵,则增加它。您可以使用以下链接:

https://redhatlinux.guru/index.php/2016/04/03/increase-system-entropy-on-rhel-centos-6-and-7/

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

https://www.digitalocean.com/community/tutorials/how-to-setup-additional-entropy-for-cloud-servers-using-haveged

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-04-08
    • 1970-01-01
    • 2011-07-12
    • 1970-01-01
    • 2016-10-03
    • 1970-01-01
    • 2011-12-29
    相关资源
    最近更新 更多