问题标签 [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.
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 中设置所需的密码或提供一些指导来实现它吗?
google-cloud-platform - 如何创建 SSLEngine 以连接到任何 https 网站,特别是谷歌云运行?
由于来自网站的所有证书都由 Root CA 等签名,而且我正在编写一个客户端,而不是服务器,我将如何创建一个可以连接到它们的 SSLEngine?还是我必须下载证书等才能连接?(我希望 jdk 具有与浏览器有关证书的所有相同信息,因此这样做应该很容易,尽管我在查找它时遇到了问题,因为大多数链接都是服务器)。
编辑:为了更清楚起见,我有这样的客户端代码,它可以与自签名证书一起使用。目前,我通过chrome点击锁从我想要的网站下载了证书。然后我将它导入到我的密钥库中,但它仍然无法正常工作......
接下来,我将尝试弄清楚如何打开调试以进行 ssl 交换,看看是否有帮助。目前,我不知道为什么这不起作用。
哎哟,调试日志指向这个
所以有些东西把事情搞砸了,但还不确定是什么。这是jdk8。不知道如何解决这个问题。
谢谢,院长
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 错误。
java - Artemis 集群的一般 SSLEngine 问题
我已经设置了一个由四个节点(两个主代理,两个从代理)组成的 artemis 集群,并希望使用 ssl 对其进行保护。当我启动主代理 1 时,它没有错误地启动。当我启动从代理 1 时,会出现以下堆栈跟踪:
这是主配置:
这是从配置:
我在windows 10下安装了证书。谁能解释一下是什么问题以及如何解决?
android - 如何在 android 中为 ssl socketchannel 使用 Conscrypt 库?
在 conscrypt git 页面上,没有可用于将 conscrypt for ssl socketChannel 与 sslEngine 一起使用的示例用法。谁能提供示例使用示例或指导我如何使用 conscrypt 与服务器(基于 tcp 的 ssl 服务器)制作 NIO socketchannel tcp 套接字。
android - 使用 sslEngine 在 android 中获取 SSL 协议异常
在握手完成后使用 SSL 引擎时,我在 android 版本 7 中收到此错误。
我使用的 SSL 上下文是 TLSv1.2 我知道没有任何代码很难回答但我不允许编写字符串连接,该应用程序通过纯 Http 文本连接到服务器但由于隐私,我不能写代码。
android - ConscryptEngine 数据读取问题:无法解析 TLS 数据包标头
下面是解包从 sslengine 接收到的数据包的代码:
mPeerNetData 缓冲区在展开期间仍有一些数据要读取,因此我扩大了 mPeerAppData 缓冲区以保存在下一次迭代中必须从 mPeerNetData 缓冲区读取的更多数据。
我已经调试了流程,可以验证 mPeerAppData 缓冲区是否有足够的空间来保存数据,并且 mPeerNetData 缓冲区有待解包的数据。
但是在展开过程中,我收到以下错误:
请建议我们如何避免这个错误?
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
异常
android - 为什么客户端在握手成功后发送关闭通知?
我正在使用SSLEngine
通过 USB 与 SSL 客户端通信
握手正确通过,我开始获取加密数据,但是当我传输特定数据时,它会向我发送“关闭通知”消息(15 03 03 ..),我不知道为什么??!!
具体消息,应该没有问题,我多次确认
我对证书和私钥进行了三次检查,它们是正确的(并且没有被泄露或任何东西)
我想也许客户试图 ReHandshake 但据我了解,ReHandshaking 应该以 a 开头Client Hello
而不是Close Notify
(正确?)
这是当前设置
另外,我使用下一个链接创建了 pfx 文件。我知道客户端已固定根证书,因此我不需要制作链,但我尝试了两种方式
制作 pfx 的代码或命令有什么问题吗?否则,什么会导致Close Notify
?
再次提醒握手已通过并且Notify Close
至少 20 条消息已正确加密/解密。
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