2011-03-25 22 views
0

您好我有使用SSL Java小程序的客户端连接到SSL服务器中的问题使用OpenSSL的与Java Applet的

当我将我的项目,以一个标准的Java一个它的工作原理,但是当我使用 源在它没有连接的applet。

我已经尝试签署jar,不同的浏览器,似乎没有任何工作!

有人能告诉我我做错了什么吗?

这个applet需要服务器认证。

+0

“我尝试过签署jar”是否提示*信任*数字签名的代码?一旦applet被信任,它应该能够跨越站点并获得外部服务器愿意提供给Java应用程序的任何资源。 – 2011-03-25 06:47:13

回答

1

如果我正确地理解了你,那么你的应用程序可以作为一个独立的Java应用程序正常工作,但不能作为一个小应用程序。这很可能是由于该applet的安全策略缺少重要权利。

在Java控制台中,您应该看到失败安全检查的例外情况。你有看到吗?

1

你做了什么?你是直接使用OpenSSL(有一些外部库),还是使用内建在Java VM中的SSL函数(带有SSLSocket和类似的)?

  • 使用外部(非Java)库,您需要将您的小程序签署,按说你必须做其他复杂的东西才能够真正加载库。

  • 使用内置SSL功能也可以在Applets中工作(没有任何额外的权限)。苹果在Mac OS上的实现存在一个错误,因此请确保更新Java VM(它已在最新版本中修复)。而Ubuntu的IcedTea插件(OpenJDK)似乎已经复制了Mac OS中的错误(并且尚未修复) - 请使用Sun插件。

  • 当然,如果applet没有被签名并被授予必要的权限,那么从applet只能访问小程序来自的服务器(独立于使用SSL或不使用SSL)。