我一直在研究在大量文件中使用非对称加密的系统。我目前正在使用带有4096位密钥的RSA为每个文件加密256位随机生成的AES密钥,但性能有点欠缺,因为一个必需的操作是扫描所有文件(系统处于使用量约为10,000),并确定哪些可以使用特定的私钥解密。虽然我不希望这个操作是瞬间的,但它现在需要很长时间(每秒处理大约2个文件)。我曾考虑过缩短密钥长度,但即使降低到2048位也不能提供所需的性能水平。 512位只会削减它,但是现在这样的密钥现在可以被轻易破解,这是不可能的。比RSA更快的非对称密码
任何人都可以指向一个速度更快但密码强度相似的系统吗?它需要通过Java JCA提供者(例如像bouncycastle之类的东西)来实现,以便整齐地插入到我现有的应用程序中。我知道有弹性的城堡支持El Gamal,但我无法找到有关这种算法有多强大的细节,或者它甚至可能比RSA更快。我也听说过椭圆曲线系统只需要相对较短的键(384位等),但不知道在哪里找到其中一个实现。
听起来很理想,并在我的机器上用openssl检查它,结果稍微慢一些,但仍然足够。现在找到一个我可以使用的实现。 :) – user264636 2010-02-02 22:22:40
那么,OpenSSL *是*也是一个库,开源和所有,准备集成到各种应用程序中... – 2010-02-02 22:32:34
不幸的是,似乎没有任何主动维护的Java绑定。最后我使用了bouncycastle,它比openssl慢,但表现得不错。 – user264636 2010-02-25 09:12:21