【问题标题】:Netty tcnative with OpenSSL and supported groups (elliptic curves)Netty tcnative 与 OpenSSL 和支持的组(椭圆曲线)
【发布时间】:2021-10-17 03:16:58
【问题描述】:

我有一个使用 JRE8、netty 4.1.x 和 netty-tcnative 2.0.36 的服务器。默认配置SslProvider.OPENSSL

SslContextBuilder contextBuilder = SslContextBuilder.forServer(keyMngrFactory)
                    .sslProvider(SslProvider.OPENSSL)
                    .enableOcsp(true);

服务器配置了 TLS 1.2 和 TLS_ECDHE_RSA* 密码套件。

我需要能够在 SSL 握手期间限制(白名单)用于 ECDHE 临时密钥交换的椭圆曲线(supported_groups 扩展)。但是,对于SslProvider.OPENSSL,服务器似乎不支持系统属性-Djdk.tls.namedGroups。相反,服务器总是使用 P-256 进行临时密钥交换。

如果我切换到SslProvider.JDK,则上面的系统属性 (-Djdk.tls.namedGroups) 在 ECDHE 临时密钥交换期间反映。但是,我无法将我的生产应用程序切换为使用 JDK 提供程序。

我遇到了https://github.com/netty/netty-tcnative/issues/567 - 基于此,我相信不支持限制supported_groups 扩展。但不确定是否有任何替代方法。

我的查询:

  1. 在使用 SslProvider.OPENSSL 和 netty-tcnative 时,我们可以限制椭圆曲线(支持的组/命名组)用于密钥交换吗?
  2. 如果是,如何配置?

【问题讨论】:

    标签: java openssl netty elliptic-curve ecdhe


    【解决方案1】:

    Neety-tcnative 已通过此 PR - https://github.com/netty/netty-tcnative/pull/661 更新以支持此功能。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-08-31
      • 1970-01-01
      • 1970-01-01
      • 2021-10-23
      • 2020-01-04
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多