问题标签 [sslengine]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
50 浏览

java - 无法使 Oracle SSLEngineSimpleDemo.java 正常工作

我采用了以下示例并移动了代码,以便更好地模拟实际的客户端和实际的服务器

  • 服务器只能访问信任库文件
  • 客户端只能访问客户端密钥库文件

至少在 TLS1v2 中,它是这样工作的。在我重新编写代码后,有两个 SSL 上下文(一个服务器端和一个客户端),它爆炸并且不起作用

我重新编写的代码现在是这样的

我有这样的代码可以在 TLS1v2 上运行,所以我不确定为什么在 TLS1v3 中,这不再工作了。

  • 我在这里有什么问题?
  • 我的假设是否正确,因为 trustStoreFile 是我的私有服务器密钥?
  • 我的假设是否正确,因为 clientStoreFile 是我的公钥?
  • 我的假设是否正确,因为服务器只需要私钥?
  • 我的假设是否正确,因为客户端只需要公钥?

Java版本:/Library/Java/JavaVirtualMachines/jdk-11.0.5.jdk

0 投票
0 回答
22 浏览

java - 由于开发人员无法再跟踪故障,因此断开的堆栈跟踪是否是错误?(见示例)

我以为我遇到了一个不可能的堆栈跟踪(下),其中第一部分甚至没有调用第二部分的代码。事实上,从堆栈跟踪中,我们知道 doHandshakeWork 失败了,但我们不知道哪一行,因为通常的“caused by”被另一个线程上的异常换出。我终于在 SSLEngineImpl.java 中发现他们用 Runnable 中的 Exception 交换了堆栈,但恕我直言,他们应该总是抛出一个新的异常,以便我最终可以看到它是 sslEngine.wrap 由于可运行失败而失败

此运行的 AsyncSSLEngine3Impl 代码在 github 上

https://github.com/deanhiller/webpieces/blob/41b2cb93615479e957a0c302c6bbe48b0beee418/core/core-ssl/src/main/java/org/webpieces/ssl/impl/AsyncSSLEngine3Impl.java

我的主要问题:这是我应该报告的错误吗?

等等,我以为堆栈跟踪在被抛出时被填充了!!这个堆栈(SSLHandshakeException)在构造时被填充 - 很奇怪。

0 投票
0 回答
54 浏览

android - 使用 SSLEngine 在 android 中的 TLS 1.3 连接失败

我的应用程序使用 TLS1.2 运行良好。当服务器升级到 TLS1.3 时,应用程序在写入套接字通道时会出现此异常。

SSLEngine 是使用创建的

它给出了以下与 TLS1.3 的异常

Exception TException(E_TRANSPORT_INTERNAL_ERROR, javax.net.ssl.SSLHandshakeException: SSL_write)

使用 TLS1.2 所有通信都可以正常工作。只有 TLS1.3 的问题。我必须为 TLS1.3 做任何额外的配置吗?