Java Crypto在Linux下性能低下问题的解决方案

Posted by Elton's Blog on January 15, 2013

在Linux下,如果你使用 java.security 包中的方法(比如SecureKeyFactory.generateSecret()),会发现它出奇的慢,有时候甚至是半僵死在那里。

有两个方法解决这个问题

  1. 编辑${java.home}/jre/lib/security/java.security,找到securerandom.source,把它的值改成(默认值file:/dev/urandom,效果很差)
securerandom.source=file:/dev/./urandom
  1. 安装rng-tools
[[email protected] ~]# yum install rng-tools
[[email protected] ~]# echo 'EXTRAOPTIONS="-i -o /dev/random -r /dev/urandom -t 10 -W 2048"' > /etc/sysconfig/rngd
[[email protected] ~]# chkconfig rngd on
[[email protected] ~]# service rngd restart

参考:http://development.adaptris.com/~lchan/blog/2012/06/15/slow-java-crypto-performance-on-linux/