I'm not a kernel dev, but WireGuard v2 will probably be implemented as a separate kernel module so they can coexist. It makes sense to do it that way since they're practically entirely separate protocols.
This is the thing I'm afraid of. It's noble to have a lean protocol but leaving things like this to be externalized is just going to create a mess of incompatible middleware when there could have been a "blessed" solution.
That said, I admire opinionated design.
How much trouble do you think it would be for a CPU designer to include a ChaCha20 accelerator or some sort of round/double-round/quarter-round³ primitive? It seems like the cost would be an order of magnitude lower than something like an AES accelerator, and way easier to validate.
I keep wondering if it's going to be this year, the next, or the one after that; but ChaCha20† is getting really popular, so I can imagine something like this could be very valuable, especially on a chip for an infrastructure provider like CloudFlare‡ , or any VPN megacompany.
† which may have more rounds than necessary, good reason not to do all 20 in one primitive if that costs latency/throughput
‡ who use ChaCha-based TLS for devices with poor, nonexistent, or misconfigured AES accel.
³ this relatively straightforward operation https://github.com/jedisct1/libsodium/blob/master/src/libsod...
An interesting question is how will this play out with Wireguard going into the Linux kernel itself.