Hacker News new | ask | show | jobs
by josephg 801 days ago
Why does it use the time then? Why not just increment its own 96 bit number whenever you use it?
1 comments

Because it is required to be monotonic per peer. WireGuard has no intrinsic states, so multiple machines with the same peer key will be seen as a single peer and that is actually a legitimate use of WireGuard. These machines would have to be synchronized to each other (but not necessarily to the external clock), and using a time is a straightforward and reasonable way to ensure this.
So could you share a single set of keys on multiple machines and Wireguard will work, as long as all machines use the same ntp server?
Technically yes, but I don't think (but haven't exactly confirmed) that you can initiate a new session to itself.