我在哪里可以得到sunrsasign.jar的官方副本?

问题描述:

我试图链接到第三方库,它正在寻找/jdk**/jre/lib/sunrsasign.jar并找不到它。我在网上发现了很多线索,说他们从其他地方复制它并让它起作用,但是我能找到的唯一可复制的地方是第三方可疑问题组织。考虑到这是一个加密库,我无法想象使用他们的版本是一个好主意。我在哪里可以得到sunrsasign.jar的官方副本?

我的问题是双重的。首先是“为什么这个文件不存在于标准的Java发行版中?”第二个是“我可以从哪里得到它?”

显然它确实存在于标准的Java分发版中,但不存在于当前版本中。

sunrsasign.jar是SunRsaSign Provider的解释here。它说:

本文档描述作为Sun的Java环境的一部分出货 提供商的技术细节。

的SunRsaSign提供商

的SunRsaSign提供商在JDK 1.3引入作为增强 替换在SunJSSE提供商的RSA签名。

在我的64位Oracle JDK 1.7.0_09的sunrsasign.jar文件不存在,并做了网页搜索,我们可以看到the class SunRsaSign is contained within rt.jar。使用jarfinder我们可以看到,对于JDK 1.4.2,jar确实作为单独的文件存在。从google cache我们可以看到它曾经在jre/lib/ext/jre/lib

此外,sunprovider docs

在较早的JDK版本中,没有RSA签名提供商在JDK提供 ,因此SunJSSE必须提供,以便使用常用的基于RSA自己的RSA 实施 证书。 JDK 5引入了SunRsaSign提供者,该提供者提供了 SunJSSE提供者的所有功能(以及更多)。针对JDK 5.0和更高版本的应用程序 应改为请求SunRsaSign提供程序的实例 。

这似乎有点令人困惑,因为上一节提到它是在JDK 1.3中引入的。课程javadoc also says "since 1.5",所以我认为我们可以认为它不是一个错字。

我把它放在一个由你提到的sun提供的单独的jar中,并且从JDK 5开始它已经集成到JDK中,而不是作为单独的jar。

+0

谢谢。我想正确的路径是要求第三方库的制造商更新他们的版本,或者尝试将它与旧版本的Java相关联。 – 2013-06-03 16:59:36

+0

@RobertRapplean在这方面有什么遗漏,因为它还在等待接受? – eis 2017-09-12 14:58:18