I'm trying to write a function in c++ that will take UDP payload_buffer as an argument and return hostname used by the the QUIC session if the buffer contain the SNI.
It should be able to detect QUIC version compatible with 3 versions: Google QUIC Q043, Google QUIC Q046 and Google QUIC Q050.
You need to decrypt the initial packet. The salt of each Quic version might be different. Suggest you to check the wireshark's source code.
A good article: https://blogs.keysight.com/blogs/tech/nwvs.entry.html/2021/07/17/looking_into_quicpa-pUtF.html