问题标签 [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 投票
0 回答
489 浏览

java - 如何在 SSLEngine 中启用密码 TLS_DHE_RSA_WITH_AES_256_GCM_SHA384

我正在尝试连接到支持密码 TLS_DHE_RSA_WITH_AES_256_GCM_SHA384 的服务器。在客户端,我使用 SSLengine 和 Conscrypt 作为 Java 安全提供程序(JCE)。

我试图在 sslengine 中设置密码,但出现异常:

我看到了 conscrypt文档,但没有在受支持的密码列表中找到我想要启用的密码。

我还尝试使用没有 conscrypt JCE 的基本 sslengine,默认情况下使用 android 打包的 conscrypt 实现并调用NativeCrypto它也会引发与我使用 conscrypt JCE 相同的异常,因为两者都使用相同的实现。

任何人都可以帮助我在 SSLEngine 中设置所需的密码或提供一些指导来实现它吗?

0 投票
1 回答
336 浏览

google-cloud-platform - 如何创建 SSLEngine 以连接到任何 https 网站,特别是谷歌云运行?

由于来自网站的所有证书都由 Root CA 等签名,而且我正在编写一个客户端,而不是服务器,我将如何创建一个可以连接到它们的 SSLEngine?还是我必须下载证书等才能连接?(我希望 jdk 具有与浏览器有关证书的所有相同信息,因此这样做应该很容易,尽管我在查找它时遇到了问题,因为大多数链接都是服务器)。

编辑:为了更清楚起见,我有这样的客户端代码,它可以与自签名证书一起使用。目前,我通过chrome点击锁从我想要的网站下载了证书。然后我将它导入到我的密钥库中,但它仍然无法正常工作......

接下来,我将尝试弄清楚如何打开调试以进行 ssl 交换,看看是否有帮助。目前,我不知道为什么这不起作用。

哎哟,调试日志指向这个

所以有些东西把事情搞砸了,但还不确定是什么。这是jdk8。不知道如何解决这个问题。

谢谢,院长

0 投票
1 回答
45 浏览

android - 为什么 SSLSocket 从 API 级别 16+ 开始支持 TLSv1.2 而从 API 级别 20+ 开始支持 SSLEngine?

我只是想了解 SSLSocket 和 SSLEngine 类之间的区别?我可以在 android 文档 TLSv1.2 中看到可用于 API 级别 16+ 的 SSLSocket 但对于 SSLEngine TLSv1.2 可从 API 级别 20+ https://developer.android.com/reference/javax/net/ssl/SSLSocket.html https://developer.android.com/reference/javax/net/ssl/SSLEngine

我正在尝试使用使用 SSLEngine的https://github.com/TooTallNate/Java-WebSocket创建服务器。我的服务器可以在 API 级别 20+ 上运行的 android 设备上正常工作,但在握手期间运行在 API 级别 17 上的设备会出现 UNSUPPORTED_PROTOCOL 错误。

0 投票
0 回答
180 浏览

java - Artemis 集群的一般 SSLEngine 问题

我已经设置了一个由四个节点(两个主代理,两个从代理)组成的 artemis 集群,并希望使用 ssl 对其进行保护。当我启动主代理 1 时,它没有错误地启动。当我启动从代理 1 时,会出现以下堆栈跟踪:

这是主配置

这是从配置

我在windows 10下安装了证书。谁能解释一下是什么问题以及如何解决?

0 投票
0 回答
110 浏览

android - 如何在 android 中为 ssl socketchannel 使用 Conscrypt 库?

在 conscrypt git 页面上,没有可用于将 conscrypt for ssl socketChannel 与 sslEngine 一起使用的示例用法。谁能提供示例使用示例或指导我如何使用 conscrypt 与服务器(基于 tcp 的 ssl 服务器)制作 NIO socketchannel tcp 套接字。

0 投票
0 回答
61 浏览

android - 使用 sslEngine 在 android 中获取 SSL 协议异常

在握手完成后使用 SSL 引擎时,我在 android 版本 7 中收到此错误。

我使用的 SSL 上下文是 TLSv1.2 我知道没有任何代码很难回答但我不允许编写字符串连接,该应用程序通过纯 Http 文本连接到服务器但由于隐私,我不能写代码。

0 投票
1 回答
3654 浏览

android - ConscryptEngine 数据读取问题:无法解析 TLS 数据包标头

下面是解包从 sslengine 接收到的数据包的代码:

mPeerNetData 缓冲区在展开期间仍有一些数据要读取,因此我扩大了 mPeerAppData 缓冲区以保存在下一次​​迭代中必须从 mPeerNetData 缓冲区读取的更多数据。

我已经调试了流程,可以验证 mPeerAppData 缓冲区是否有足够的空间来保存数据,并且 mPeerNetData 缓冲区有待解包的数据。

但是在展开过程中,我收到以下错误:

请建议我们如何避免这个错误?

0 投票
1 回答
168 浏览

java - 使用 SSLEngine 使用为内部网络位置签名的证书

背景

我正在尝试创建 2 个通过 SSL 在内部网络上相互通信的 Java 应用程序。我通过授予 SSLEngine 对包含要使用的证书的私钥条目的密钥库的访问权限来做到这一点。

这在使用根证书时工作正常(在浏览器中点击 dubrovnik:2762 会抱怨证书不受信任,但其他情况下也可以)。然而; 我想使用由内部 CA 签名的非根证书,仅用于相关域(在本例中称为 dubrovnik)。

当我改为使用根证书签署证书并在主题替代名称中使用 dubrovnik 时,java 拒绝使用证书并产生javax.net.ssl.SSLHandshakeException: No available authentication scheme异常

在此处输入图像描述

我正在使用的密钥库包含以下内容:

我是如何创建证书的

我一直在使用 openssl 和 keytool 创建本地 ca 和签名证书

问题

我需要做什么才能使 SSLEngine 接受内部网络证书(不是根证书)并避免javax.net.ssl.SSLHandshakeException: No available authentication scheme异常

0 投票
1 回答
26 浏览

android - 为什么客户端在握手成功后发送关闭通知?

我正在使用SSLEngine通过 USB 与 SSL 客户端通信

握手正确通过,我开始获取加密数据,但是当我传输特定数据时,它会向我发送“关闭通知”消息(15 03 03 ..),我不知道为什么??!!

具体消息,应该没有问题,我多次确认

我对证书和私钥进行了三次检查,它们是正确的(并且没有被泄露或任何东西)

我想也许客户试图 ReHandshake 但据我了解,ReHandshaking 应该以 a 开头Client Hello而不是Close Notify(正确?)

这是当前设置

另外,我使用下一个链接创建了 pfx 文件。我知道客户端已固定根证书,因此我不需要制作链,但我尝试了两种方式

在此处输入链接描述

制作 pfx 的代码或命令有什么问题吗?否则,什么会导致Close Notify

再次提醒握手已通过并且Notify Close至少 20 条消息已正确加密/解密。

0 投票
0 回答
1662 浏览

spring-boot - javax.net.ssl.SSLException: SSLEngine 已关闭 SSLEngine 已在 webclient (Springboot) 中关闭

我在springboot应用程序中使用webclient来调用一个外部的restful webservice。间歇性地得到这个异常。

在收到此异常之前,我在日志中看到以下警告。

这是完整的堆栈跟踪:

这是 MessageServiceImpl.java

这是 CustomWebClient 组件类

在下面的配置中,我在 SSLContext 中添加了信任库。

下面是应用程序属性文件

我已经尝试通过下面链接中给出的解决方案来解决这个问题,但它没有用。 https://github.com/reactor/reactor-netty/issues/782

以下是版本详细信息:-

Springboot 版本:2.3.3.RELEASE