我正在使用openssl(c / c ++)开发一个涉及TLS流的专有协议的项目。基本上,SSL客户端/服务器协商密钥,然后使用内存BIO加密/解密数据。 现在,我希望能够将此加密流保存在文件中,同时还有一个密钥材料,并且能够将其解密以用于测试目的,并作为正确加密发生的证据。 Wireshark可能不是一个选项,因为它通过专有协议发生,它不是L3网络数据。
我看到我可以使用SSL_SESSION_print保存SSL会话数据,我也可以使用SSL_export_keying_material导出密钥材料,但我不确定如何在没有正确的SSL协商的情况下使用任何一个。 理想情况下,我希望能够使用服务器端keymat使用客户端keymat和客户端流量解密服务器端流量。 谢谢!