SSL 和 SocketChannel

2024-01-09

理想情况下,我只需要一个简单的SSLSocketChannel.

我已经有一个可以通过普通方式读取和写入消息的组件SocketChannel,但对于其中一些连接,我必须通过网络使用 SSL;然而,这些连接上的操作是相同的。

有谁知道免费的SSLSocketChannel实现(使用适当的选择器)或类似的东西?我发现了this http://docs.norther.org/api/tammi/org/norther/tammi/acorn/nio/SSLSocketChannel.html,但选择器不接受它,因为它的供应商不是 SUN。

我通过一个简单的对象将 read_from/writing_to 网络逻辑与网络数据的插入和检索分离,以便使用SSLEngine不用生气,但考虑到我不知道 SSL 协议的内部结构,正确实现这一点确实很棘手......


Jetty 的服务器有一个 NIO SSL 实现:Ssl选择器通道连接器 http://www.mortbay.org/jetty/jetty-6/xref/org/mortbay/jetty/security/SslSelectChannelConnector.html。您可能想查看它以了解其功能的详细信息。

还有一篇旧的(但不错的)文章来自其中解释了有关 NIO + SSL 的详细信息以及示例代码。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

SSL 和 SocketChannel 的相关文章

  • 非常大的 JTable、RowFilter 和额外负载

    我想请求澄清 RowFilter 的使用及其对性能的影响 我通过 include Entry 方法实现了一个过滤器 对于每一行 只需检查模型中其对应值是否设置了布尔标志 如果是 则返回 true 否则返回 false 现在 我拥有的 JTa
  • 当 SwingWorker 在后台工作时,对话框没有响应

    基本上我得到了一个以 main 方法作为入口点的 JFrame 在这个主要方法中 程序必须下载一些图像 为了通知用户程序将随时启动 我想显示一个简单的对话框 如果我将对话框设置为模式 我必须在启动程序后关闭它才能触发下载 如果我将其设置为非
  • 良好的客户端套接字池

    我需要管理从我的 Java 应用程序到外部服务器的长时间运行的 TCP 套接字连接 我正在寻找一个好的套接字池 这样我就可以重复使用套接字 有什么建议吗 你可以看看在上面建立一个套接字池公共池 http commons apache org
  • “访问此资源所需的证书无效”

    XMLHttpRequest Network Error 0x800c0019 Security certificate required to access this resource is invalid 我已经找到解决方案了 首先 我
  • Java:无法从未命名的模块读取包?

    在将项目转移到 Gradle 时 我停止使用 org json 的自定义构建 该构建安装了 module info java 以符合模块系统 现在 我通常通过 Maven 使用它 并且由于 org json 默认情况下不是一个模块 因此它被
  • 如何在 Intellij IDEA 中为 Apache Tomcat 指定自定义 JRE 路径?

    问题是如何指定自定义JRE路径为Apache tomcat in Intellij IDEA 当从以下位置启动应用程序时IDEA 看来 只需配置它的路径 路径jvm dll in Apache Tomcat监视器没有帮助 还有其他想法或方法
  • SSL 和 Tkinter 不存在于 Python 3.5.2、Debian Linux 的源代码构建中

    我刚刚将 Python 3 5 2 下载到我的 Debian 机器上并使用以下命令构建它 configure make make test sudo make install 一切正常 但在make test输出中 它显示安装程序由于未安装
  • 如何将 JTextField 添加到 JFrame 的菜单栏?

    我一直在尝试重载 JMenu 并放入一些自定义代码来支持 JTextField 但进展并不顺利 我在这里的主要目的是在菜单项的右侧添加一个搜索字段 因此 我在左侧有 文件 编辑 帮助 之类的东西 然后在右侧是搜索栏 几乎就像某些浏览器中的谷
  • 将两个表视图绑定在一起,以便它们同步滚动

    我想将两个表视图绑定在一起 以便它们同步滚动 我怎么做 我无法找到如何访问表格视图的滚动条 我做了一个CSS hack来将Tableview与外部滚动条绑定 一个滚动条控制两个表格视图 我的想法的概述 创建两个表视图 制作一个垂直滚动条 在
  • 根据条件更改 JSlider 的最小值和最大值

    我正在 Netbeans 中创建 Swing GUI 此 GUI 的目的是打开一个 缓冲 图像 在 JLabel 中作为图标 并对其应用仿射变换 现在我正在做 4 个转换 如下所示 现在 每个变换都需要两个滑块来更改 X 和 Y 值 但旋转
  • 如何在 JasperReports 中解码 html 实体

    我有一些用 JasperReports 编写的报告 它们按字面意思显示 html 实体 例如 项目符号点 使用 html 实体文本表示显示 8226 你知道有什么办法吗 In the textField设置markup属性为html 这是如
  • 无法加载标签“s:form”的标签处理程序类“org.apache.struts2.views.jsp.ui.FormTag”

    如果我在 NetbeansIDE 中运行代码 它会显示以下错误 org apache jasper JasperException InvestorConfirm jsp 53 12 PWC6032 无法加载标签处理程序类 org apac
  • 无法初始化类 io.confluence.kafka.schemaregistry.client.rest.RestService

    我正在尝试使用 KafkaAvroSerialzer 设置一个卡夫卡生产者以获得价值 当 rit 尝试创建生产者时 我遇到了这个错误 我正在使用 confluence 5 2 1 中提供的所有罐子 java lang NoClassDefF
  • 对 JFace Treeviewer 多列进行排序

    我希望用户能够对TreeViewer只要他想 只要单击列标题即可 但是我不知道正确的方法 我发现我们可以使用ViewerComparator对不同的元素进行排序 但是 我不知道如何设置侦听器以便能够正确进行升序或降序排序 有没有办法让 JF
  • 如何使用正则表达式提取子字符串

    我有一个字符串 其中有两个单引号 特点 单引号之间是我想要的数据 如何编写正则表达式从以下文本中提取 我想要的数据 mydata some string with the data i want inside 假设您想要单引号之间的部分 请
  • 使用 lambda 或 Stream API 合并流以生成交替序列

    我有一些按预期返回 Stream 的代码 但也许可以用某种类型的 lambda 或 stream 操作替换它 而不是耗尽 a 中的迭代器while loop 它只是一种交替流中元素的方法first and second当其中一个元素耗尽时停
  • 在文件中查找一行并将其删除

    我正在寻找一个小代码片段 它将在文件中找到一行并删除该行 不是内容而是行 但找不到 例如 我在以下文件中 我的文件 txt aaa bbb ccc ddd 需要有这样的功能 public void removeLine String lin
  • 如何使用 Maven 创建新的 Eclipse RCP 项目?

    如何使用 Maven 创建新的 Eclipse RCP 项目 最好是m2eclipse http maven apache org eclipse plugin html 我读到有一个关于 Eclipse 的 Maven 插件 Maven
  • onActivityresult 数据为空

    这是我的相机应用程序 我想在其中捕获图像并裁剪它 但它拍照保存在我的 myimage 目录中 但不执行裁剪功能 请我需要帮助 我是这个领域的新人 这是我的相机开源代码 Intent intent new Intent MediaStore
  • MongoDB 和 upsert 问题

    我有两个模型 1 资源假期 Id private String resourceID private List

随机推荐

  • Nuxt Vue 中的 Splidejs

    有没有人尝试过在 Nuxt 中使用 Vue 解决方案作为插件或模块 我在尝试以正确的方式做到这一点时遇到了很多挑战 我正在尝试将 Splide Vue 滑块从 NPM 导入 Nuxt 通过 NPM 安装它后 如何将其导入插件中的 splid
  • “->”(箭头运算符)和“.”有什么区别Objective-C 中的(点运算符)?

    在 Objective C 中 通过使用访问类中的变量有什么区别 gt 箭头运算符 和 点运算符 是 gt 用于直接访问 vs 点 不是直接的吗 gt 是传统的 C 运算符 用于访问指针引用的结构的成员 由于 Objective C 对象
  • 在 Safari 中隐藏文本区域调整大小手柄

    我在应用程序中使用文本区域组件 并动态控制它们的高度 当用户键入时 只要有足够的文本 高度就会增加 这在 IE Firefox 和 Safari 上运行良好 然而 在 Safari 中 右下角有一个 手柄 工具 允许用户通过单击和拖动来调整
  • 如何将 dapper 与 ASP.Net core Identity 结合使用?

    我有一个数据库 我尝试使用 dapper 和 Core Identity 来查询数据库 但我现在陷入困境 我正在使用 IdentityUser 界面中的用户 public class User IdentityUser 使用 dapper
  • 使用 SemanticResultKey 时出现 TargetInitationException

    我想建立我的语法来接受多个数字 当我重复数字 例如说 二十一 时 它有一个错误 所以我不断减少代码来找出问题所在 我为语法生成器编写了以下代码 string numberString one Choices numberChoices ne
  • Orchard 根据过滤的下拉选择创建投影或搜索

    我认为 我有一个简单的功能 我试图将其添加到我的 Orchard 1 6 站点 但我找不到任何有关如何执行此操作的教程或说明 我有一个名为 Office 的自定义类型 每个办公室都有一个名为 State 的自定义字段 指示办公室所在的州 实
  • 当块后代时关注 ListView 中的 EditText (Android)

    我有一个定制的ListView 每行都有一个EditText Buttons TextView 为了使 ListView 项目可点击 我保留了android descendantFocusability blocksDescendants
  • 如果字典键不可用,则返回默认值

    我需要一种方法来获取字典值 如果其键存在 或者简单地返回None 如果没有 然而 Python 提出了一个KeyError如果您搜索不存在的键 则会出现异常 我知道我可以检查密钥 但我正在寻找更明确的内容 有没有办法直接返回None如果密钥
  • 如何在 OSX 上从命令行打开 Visual Studio Code?

    The docs https code visualstudio com docs codebasics launching vscode提到一个名为的可执行文件code 但我不确定在哪里可以找到它 以便我可以将其放在我的路径上 我从 VS
  • div 边框半径问题(在 Firefox 和 Opera 上)

    正如你所看到的 有两张图片 首先 在 chrome 上 右侧有 Be en 和 Yorumlar 按钮 边框看起来非常好 但第二张照片显示 firefox和opera有边框半径的问题 我尝试做边框宽度 薄 边框 1px实心等 但它看起来一样
  • EC.element_to_be_clickable 和 EC.presence_of_element_ located 之间单击()元素的区别

    我在间歇性单击某个元素时遇到 TimeoutExceptions 我尝试过显式等待和 time sleep 它工作了一段时间 我一次又一次地遇到例外 我想了解这是否是由预期条件引起的 WebDriverWait self driver 40
  • 简单饼图:错误百分比未居中?

    我有一个 symfony 项目 我使用 bootstrap 作为样式 并且我想使用 Easy Pie Chart 作为仪表板页面 所以 在 base html twig 中 block stylesheets endblock block
  • 将任意 GUID 编码为可读 ASCII (33-127) 的最有效方法是什么?

    GUID 的标准字符串表示形式大约需要 36 个字符 这非常好 但也非常浪费 我想知道如何使用 33 127 范围内的所有 ASCII 字符以最短的方式对其进行编码 简单的实现会产生 22 个字符 只是因为128 bits 6 bits产量
  • 来自旋转 JSON 的 D3 多系列折线图

    这里有一个很好的多系列折线图示例http bl ocks org mbostock 3884955 http bl ocks org mbostock 3884955如果 tsv 数据被布置出来 我确信它会看起来像这样 date 20111
  • .NET 进程可以分配的最大内存

    垃圾收集器可以为 NET 进程分配的最大内存是多少 当我编译到 x64 时 Process GetCurrentProcess MaxWorkingSet 返回大约 1 4GB 但是当我编译到 AnyCPU x64 时 返回相同的数字 对于
  • 无法通过 shell 在 CentOS 7 上安装 phpMyAdmin

    yum y install phpmyadmin 出现错误 Error Package phpMyAdmin 4 4 15 10 2 el7 noarch epel Requires php zip Available php common
  • 是否可以在 WPF ItemsControl 中模拟边框折叠(ala CSS)?

    我正在 WPF 中设置项目的样式ListBox 并希望在每个项目周围放置边框 和BorderThickness设置为 1 例如 相邻项目之间的上下边框都会被绘制 因此看起来比侧边框 更厚 如下所示 生成这些的项目模板ListBoxItems
  • ZeroMQ:重新绑定套接字时地址使用错误

    将 ZeroMQ 套接字绑定到端点并关闭套接字后 将另一个套接字绑定到同一端点需要多次尝试 之前的调用zmq bind直到成功失败并出现错误 地址正在使用 EADDRINUSE 下面的代码演示了这个问题 include
  • 是否有一个好的数据结构可以执行查找、并集和解并操作?

    我正在寻找一种可以相当有效地支持并集 查找和解并的数据结构 一切至少 O log n 或更好 因为标准的不相交集结构不支持解并 作为背景 我正在用 MCTS 编写 Go AI http en wikipedia org wiki Monte
  • SSL 和 SocketChannel

    理想情况下 我只需要一个简单的SSLSocketChannel 我已经有一个可以通过普通方式读取和写入消息的组件SocketChannel 但对于其中一些连接 我必须通过网络使用 SSL 然而 这些连接上的操作是相同的 有谁知道免费的SSL