gRPC 是否支持 Android 下的 TLS 1.3?
Does gRPC support TLS 1.3 under Android?
在 Android 应用程序中,使用最新版本的 io.grpc:grpc-okhttp:1.32.1
,我似乎无法与服务器建立 TLS 1.3 连接。 ConnectionSpec.MODERN_TLS
的定义是从 okhttp-2.7.4 引用的,它不包括 TLS 1.3。我看到 okhttp3 具有所需的 ConnectionSpec.MODERN_TLS
定义,但 OKHttpChannelBuilder 不会采用该 class 引用。
有没有办法创建支持 TLS 1.3 的 gRPC ManagedChannel
?
如果您不是特定于 Google 的实现,您可以使用 Wire 的 gRPC 客户端。它将在支持它的设备上执行 TLSv1.3。或者在任何设备上将其与 Conscrypt for TLSv1.3 一起使用。
已解决> 从 io.grpc 版本 1.43.2 开始,有一种不同的方法来构建通道,将 TLS 版本和密码套件作为参数。使用它,我能够创建 TLS 1.3 连接。
((OkHttpChannelBuilder) channelBuilder).tlsConnectionSpec(tlsVersions, cipherSuites);
在 Android 应用程序中,使用最新版本的 io.grpc:grpc-okhttp:1.32.1
,我似乎无法与服务器建立 TLS 1.3 连接。 ConnectionSpec.MODERN_TLS
的定义是从 okhttp-2.7.4 引用的,它不包括 TLS 1.3。我看到 okhttp3 具有所需的 ConnectionSpec.MODERN_TLS
定义,但 OKHttpChannelBuilder 不会采用该 class 引用。
有没有办法创建支持 TLS 1.3 的 gRPC ManagedChannel
?
如果您不是特定于 Google 的实现,您可以使用 Wire 的 gRPC 客户端。它将在支持它的设备上执行 TLSv1.3。或者在任何设备上将其与 Conscrypt for TLSv1.3 一起使用。
已解决> 从 io.grpc 版本 1.43.2 开始,有一种不同的方法来构建通道,将 TLS 版本和密码套件作为参数。使用它,我能够创建 TLS 1.3 连接。
((OkHttpChannelBuilder) channelBuilder).tlsConnectionSpec(tlsVersions, cipherSuites);