If you're interested in seeing an interesting off broadway twist on the Noise Protocol Spec, libdisco and strobe are really interesting:
https://www.discocrypto.com/
https://strobe.sourceforge.io/
The Noise Protocol spec is fantastic. It asks a reasonable set of questions to a protocol designer and in exchange gives a set of safe choices for key exchange. It's a great example of building powerful systems from a handful of simple abstractions. Trevor Perrin (and I'm sure, not just he) did a phenomenal job.