gRPC traffic dissector with TLSv1.3
Hey,
I am trying to read some gRPC traffic that has been encrypted over TLSv1.3, but so far I am not having any success. I am using a client and a server written in C++, and exporting the tls session key to a txt file which has the following format:
SERVER_HANDSHAKE_TRAFFIC_SECRET val
CLIENT_HANDSHAKE_TRAFFIC_SECRET val
EXPORTER_SECRET val
SERVER_TRAFFIC_SECRET_0 val
CLIENT_TRAFFIC_SECRET_0 val
I put this file in the field (Pre)-Master-Secret log filename of the TLS protocol settings. At that point I expect to be able to read the traffic but that is not the case. Is the format of key correct and/or am I misunderstanding something ? Did someone succeed in doing this ?
TLS logs:
Those suspicious line:
- tls13_load_secret Cannot find SERVER_TRAFFIC_SECRET_0, decryption impossible
- tls13_load_secret Cannot find CLIENT_HANDSHAKE_TRAFFIC_SECRET, decryption impossible
But I can't make any sense of this, since those variable are in the file.
Thanks ! I can put sample files if needed.
TLS - Preference Settings - have you tried enabling the debug file and checking the output for errors?
Just did that and updated post but I don't really understand why it doesn't find the variable.
There is a
tls13-debug.txt
attached to issue 12779: Add TLS 1.3 supportDoes your log have the
trying to use SSL keylog in "filename"
entry?It has
trying to use TLS keylog in "path to filename"
Can you share the debug log or the capture and key log file?
(Place them on a public file share and add the link in the question above)