- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
在确定将使用哪个证书发回之前,我想在 java 中获取域名。我怎样才能做到这一点?
我是否需要自己以某种方式分析字节?或者有这个图书馆吗?或者一些 java SSL 库可以做到吗?
相关帖子 Extract Server Name Indication (SNI) from TLS client hello
但我希望只使用 java 库来获取主机名。
最佳答案
非常莫名其妙,这不可能直接用 SSLEngine 来做。
我自己遇到了同样的问题并最终编写了一个库(TLS Channel)。它不仅如此,它实际上是 SSLEngine 的完整抽象,作为 ByteChannel 公开。关于 SNI,可以向服务器 channel 提供一个函数,以根据提供的域名选择 SSLContexts。
关于java - 在使用SSLEngine之前如何获取请求的域名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35306344/
我正在使用 Java NIO 上的 SSLEngine 来解锁服务器套接字来处理连接。我能够成功地与客户端握手并将小记录集传递到服务器。但是,当我尝试将文件传输到服务器 text/binary 时,出
我已经实现了一个辅助模块,可以让我从使用 SSL 的 channel 获取干净数据并将加密数据写入其中:这是相关接口(interface)(我在该类中也有一些非抽象方法,所以没有不要对我说“DataP
我遇到了这个异常发生 SSLEngineResult result = sslEngine.wrap(b, engineToSocketData); if(b.hasRemaining
在 Java 中有没有一种方法可以具有与 SSLEngine 相同的功能,但没有委托(delegate)任务,因为我的程序需要处理大量连接,我用 NIO 编写它的目的是使用更少的 ram,有更多的连接
我正在尝试使用 SSLEngine 实现 SSL 握手,我需要同时作为服务器和客户端来执行此操作,但是我被卡住了,我无法弄清楚原因。 握手正确开始,交换了 Hello,交换了 key ,但随后我进入了
SSLEngine documentation指示如何正确关闭 SSL 连接。更具体地说,它提供了有关如何处理断开的连接的说明: In addition to orderly shutdowns, t
我需要为我正在开发的应用程序使用基于 TLS 的 TCP 套接字。我已经经历了几十个例子,虽然我通过握手没有问题,但我似乎无法通过任何方式读取输入流(尝试了很多,包括 readline(),读取字符数
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。 关闭 2 年前。
我正在尝试在非阻塞模式下将 SSLengine 与 SocketChannels 一起使用。 握手已正确完成,但当我尝试从 channelsocket 读取和解密 http 帖子时,只有标题被解密,正
背景 我正在尝试创建 2 个通过 SSL 在内部网络上相互通信的 Java 应用程序。我通过授予 SSLEngine 访问 keystore 的权限来做到这一点,该 keystore 包含要使用的证书
我在使用 SSLEngine 时遇到了一个小问题 java 。我用它来创建客户端和服务器之间的 SSL 连接。这不是基于 Web 的应用程序。 我正在为我的产品开发人员创建一个框架,以便在客户端和服务
我正在为 Android 手机编写自定义服务器来处理 https 请求。它首先监听特定端口,一旦建立连接,它就会与客户端进行握手。这是代码 fragment : ServerSocket sock =
我使用来自 http://books.google.com/books?id=l6f1jTB_XCYC&lpg=PA185&vq=scalable%20secure&pg=PA185#v=onepag
我在 Java 中使用带有 NIO 的 SSL 和一个简单的客户端/服务器概念验证应用程序。我已经启动并运行良好的握手,但之后尝试加密和解密应用程序数据让我抓狂。我想知道我是否遗漏了预期用途方面的内容
当为 ssl/https 连接配置 apache2 虚拟主机时,在添加配置并使用此命令“a2ensite pm.university.com.conf”启用配置后,我收到此错误“无效命令‘SSLEng
我有一个 Java 服务器应用程序(加载了它自己的服务器证书)试图安全地连接到另一个服务器(Microsoft - 有它的服务器证书)。 他们每个人都加载了受信任的 ROOT-CA 证书,我可以在两台
我将 SSLEngine 与 NIO 一起使用,为我的应用程序提供非阻塞 SSL 连接。在握手期间的某个时刻(可能是在收到 ServerHelloDone 之后),SSLEngine 要求我处理委托(
我有下一个案例:客户端在其信任库中只有根证书。在 TLS 握手期间,服务器将自己的证书发送给客户端,该证书使用中间证书 签名。 客户端的 SLLEngine 是否会下载中间证书来验证服务器证书,直到引
我需要通过我的代理(我相信是隧道)建立一个使用 JSSE 建立的 SSL 连接。是否已经有任何库/属性/方法,或者我必须在低级别实现它? 请注意,只需为我的程序的一个子集定义此代理。我程序中的其他 H
来自 SSLEngine 文档:“通过将 SSL/TLS 抽象与 I/O 传输机制分离,SSLEngine 可用于各种 I/O 类型,例如非阻塞 I/O(轮询) ,可选择的非阻塞 I/O,Socket
我是一名优秀的程序员,十分优秀!