Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/security/4.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强加密-独立库-仅源代码_Java_Security_Encryption_Public Key Encryption_Crypt - Fatal编程技术网

Java强加密-独立库-仅源代码

Java强加密-独立库-仅源代码,java,security,encryption,public-key-encryption,crypt,Java,Security,Encryption,Public Key Encryption,Crypt,我正在寻找一个支持强加密的基于Java的加密库 我知道Java加密扩展,但要使用它,我想先访问源代码,修改这些,编译它们并使用我自己的版本(我并不真正关心开源许可证) 或者,我想知道是否有好的、强大的基于Java的加密库不依赖或不使用JDK加密库中的任何东西。在这里,我还对访问源文件以自己编译它们感兴趣 正如你所看到的,我试图避免任何中间人攻击,包括JVM的修改版本,或者修改的第三方库。这只是一种痴迷 谢谢 你试过Cryptix吗?这是一个免费的、源代码可用的、与JCA库兼容的库,因此您可以将其

我正在寻找一个支持强加密的基于Java的加密库

我知道Java加密扩展,但要使用它,我想先访问源代码,修改这些,编译它们并使用我自己的版本(我并不真正关心开源许可证)

或者,我想知道是否有好的、强大的基于Java的加密库不依赖或不使用JDK加密库中的任何东西。在这里,我还对访问源文件以自己编译它们感兴趣

正如你所看到的,我试图避免任何中间人攻击,包括JVM的修改版本,或者修改的第三方库。这只是一种痴迷


谢谢

你试过Cryptix吗?这是一个免费的、源代码可用的、与JCA库兼容的库,因此您可以将其作为唯一的安全提供商安装。

我不确定创建自己的库是否是一个好主意,但如果您真的想要,您应该查看。

请不要创建自己的库!我不确定是否使用Java的libs,但请看一看。@TomCammann为什么不?我不打算自己做,只是重新包装一个现有的,仅此而已:)汤姆是对的。密码非常脆弱。即使是很小的更改也会使其容易受到侧通道攻击。您知道如何编写可以避免计时攻击的代码吗?AES的某些版本易受攻击,而其他版本则不易受攻击。你知道区别吗?@rossum,不知道,但我只是想更改包名,而不是实际的实现。我与JCA兼容吗?这意味着它需要JCA?我试着不去依赖任何人。。。在Cythyx站点的底部:“Cythyx基金会有限公司已经不存在了,它无法获得更新的证书。因此,不会有新版本的Cythyx JCE”,它需要来自Sun/Oracle的证书吗?现在看起来有点过时了..AFAIK Cryptix从05年开始就没有开发,但我不太确定,你说的是什么证书。在'04年,我需要强大的加密技术,而标准Java无法提供这种技术,因此我采用了Cryptix的源代码。你说的“它需要JCA”是什么意思?Cryptix使用它自己的例程,因此您不依赖Oracle/Sun编写的安全算法。(好吧,你可以独立使用)。但是,你可以在JRE中安装它作为唯一的安全提供者,所以JCA只是提供了一种访问东西的标准方式,但一切都是由Cryptix自己完成的。好的,那么你是说通过使用证书,我可以将SUN crypto实现转换为使用此实现,但是为此它需要证书,但是如果我不想,那么我可以将其作为独立的实现使用?有到源代码的链接吗?是哪一个?有几个下载选项。谢谢你,你把我弄糊涂了。。。很难说(对我来说)如果证书过期会发生什么。至于图书馆,这取决于你需要什么。我从cryptix-openpgp-provider.jar开始(它必须在cryptix-openpgp归档文件中),然后遵循依赖关系。最后(另外)我得到了:certpath-api-compat.jar、cryptix-jce-api.jar、cryptix-jce-provider.jar、cryptix-message-api.jar、cryptix-pki-api.jar。另一件事是,您需要将local_policy.jar和US_export_policy.jar更改为USJP版本,并编辑java.security以定义JCA提供者(jre/security)。您还需要将这些jar放在jre/ext目录中。(除非你想独立使用,就像你说的那样)。有几个悬而未决的问题,可能没什么大问题,但仍然是:但我会研究掌握源代码,看看我能做些什么。你知道BouncyCastle和Cryptix在AES或RSA加密方面有多强大吗?对不起,我不知道Cryptix,我无法比较。