I'm considering the possibility to implement TLS over a non TCP connection. The idea is to use SSLEngine which provides the possibility encrypt/decrypt data to memory buffers and send them by the reliable transport we want.
I would have to implement all the handshake defined by the SSL Protocol (client hello, server hello...etc).
If I do this, how would I test that my implementation is working? Is there some "official TLS Test Suite" that I could run?
Thanks for your advices
The fact that you explicitely exclude TCP makes things more complicated. TLS has some assumption about how the underlying transport works. You can have a look at how QUIC basically provides TLS over UDP and the constraints of it.
As for official "Test Suite" I have some ideas to offer, that will probably not work as is out of the box, because of the TCP dependency but they could be a start:
At a more abstract level (I do not know if they are tools using that, but they may exist), when TLS 1.3 was drafted at the same time a document was created to collect typical handshake messages, so that you can use them as examples.
Find it here: https://datatracker.ietf.org/doc/draft-ietf-tls-tls13-vectors/
Its abstract is: