NoiseGo icon indicating copy to clipboard operation
NoiseGo copied to clipboard

UDP Support

Open andrew-d opened this issue 7 years ago • 2 comments

Hi there!

Thanks a bunch for the library; I really like the interface that you've got here. However, the README says that you support UDP, however I don't believe that this is true. In particular, Conn doesn't implement PacketConn. It might be worth removing this from the README for now? Or, if you know how you would like to support this, I am happy to help implement.

Thanks!

andrew-d avatar Nov 21 '17 08:11 andrew-d

Hey thanks!

The README is definitely supposed to say TCP not UDP :D my bad.

I'm not sure how to support UDP but if you have any ideas we should def. do it!

mimoo avatar Nov 21 '17 10:11 mimoo

If anyone is interested in providing support for UDP I think it would be nice to start brainstorming some ideas. Things that look important:

  • tokens for proof of source ip ownership (can be computed as E(server_k, client_ip_port) and given to the client in a first round trip)
  • window for keeping track of what nonces we've used so far
  • something to get and set nonces. The Noise spec specifies SetNonce() but the API seems a bit dangerous from a developer's point of view.

mimoo avatar Feb 04 '18 13:02 mimoo