apple / swift-nio-ssl

TLS Support for SwiftNIO, based on BoringSSL.
https://swiftpackageindex.com/apple/swift-nio-ssl/main/documentation/niossl
Apache License 2.0
385 stars 139 forks source link

Specify TLS Provider for Swift gRPC Client Connection #419

Closed WiseNN closed 1 year ago

WiseNN commented 1 year ago

What are you trying to achieve?

Is it possible to use Swift gRPC with a custom TLS provider? (like openSSL v3?). The objective is to use a custom TLS provider that will work with the Swift gRPC framework. Has anyone done this before.

What have you tried so far?

I found a SO post that looks like someone may have been able to do this in C++.

I am looking to see if something similar is offered in this framework.

Lukasa commented 1 year ago

swift-nio-ssl does not support pluggable TLS backends.

WiseNN commented 1 year ago

@Lukasa Got it, thanks. We are looking to be fips compliant. Currently not sure if Apple's Network framework is fips compliant (latest version).

If it is compliant, is there is a chance that SWIFTNIO-SSL is still using Native iOS for the SSL connection so that its actually doing SWIFTNIO-SSL -> Apple SSL -> Boring SSL. Can you confirm this? I am aware that we can use a client configuration backed by the network framework.

Lukasa commented 1 year ago

Network.framework is the way you use native iOS TLS.