openssl - OpenSSL 可以在同一个 SSL 上下文中处理多个身份验证机制吗?
问题描述
我们正在尝试支持使用 TLS1.2 支持 PSK 和 SRP 身份验证机制的服务器。但是,当我们尝试在同一上下文中为两者运行回调时,只会检测到 PSK 回调:
SSL_CTX_set_psk_server_callback(m_ctx, psk_out_of_bound_serv_cb);
SSL_CTX_set_srp_username_callback(m_ctx, srp_server_param_cb);
如果您只设置一个回调或另一个,SRP 和 PSK 目前在我们的代码中工作。我尝试先注册 SRP,但这样做并没有改变唯一的 PSK 正在工作的事实。因此,另一种方法是在 SSL 上下文中单独设置这些。我还确认 SRP 和 PSK 密码套件在设置时组合起来不是问题。
以下是我们拥有的测试场景的快速摘要:
- 仅具有 SRP 回调的 SRP 客户端 - 有效
- 仅具有 PSK 回调的 PSK 客户端 - 有效
- 带有 SRP+PSK 回调的 SRP 客户端 - 不起作用
- 具有 SRP+PSK 回调的 PSK 客户端 - 有效
不同机制的多个回调会在同一个 SSL 上下文上同时工作吗?
解决方案
推荐阅读
- node.js - 使用 node.js 读取 csv 文件
- node.js - Sequelize.js - bulkCreate 退货单
- ruby - 如何测试 ruby 的初始化方法,该方法又调用私有方法
- r - left_join 列表中跨多个数据帧的数据帧
- elasticsearch - 未能在索引中匹配/搜索
- tensorflow - 在 tf.data 输入管道中使用 tf.function 构建自定义地图函数
- php - 通过 cronjob 运行 PHP 脚本并避免重复的 PHP 进程(flock)
- flutter - 如何进行自定义转换并保持 ios 向后滑动
- python - 转置表
- python - 如何以指数形式将混淆矩阵中显示的值修复为正常形式