mirror of
https://github.com/amnezia-vpn/amneziawg-go.git
synced 2026-10-13 21:34:25 +00:00
[GH-ISSUE #172] AES-GCM cipher support: interested in a PR to AmneziaWG? #84
Labels
No labels
pull-request
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
amnezia-vpn/amneziawg-go#84
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @janeblower on GitHub (Aug 6, 2026).
Original GitHub issue: https://github.com/amnezia-vpn/amneziawg-go/issues/172
Hello!
I have a long-standing pain point — chacha20-poly1305 encryption in WG.
This isn't much of an issue in the userspace implementation of the protocol (there's already so much overhead besides the cipher itself). However, kernel WG plays a fairly large role in my work — KubeSpan, an SDN fabric in Proxmox, routers, etc.
On modern hardware, especially server-grade AMD CPUs, the performance difference between aes-gcm and chacha20 is simply massive. (You can find an example of my benchmarks here: https://forum.proxmox.com/threads/feature-ipsec-for-sdn.184374/).
https://github.com/janeblower/wireguard-go/blob/cipher-negotiation/CIPHERS.md
I finally got around to it and bolted aes-gcm onto wireguard-go (as a starting point). It works and is fully backward-compatible with vanilla WG. But, as I mentioned, userspace and Go add so much overhead that the performance difference doesn't really show.
So, here's what I'd like to ask you:
If I implement the same thing in the kmod and submit a PR to AmneziaWG, would it have a chance of being accepted or even considered? I understand that getting this into official WireGuard is basically unrealistic, but are there any chances of pushing it into AWG?