Hacker News new | past | comments | ask | show | jobs | submit login

* It uses a single set of well-trusted modern primitives and so avoids the attack surface of negotiation.

* Those primitives are used for a Noise construction, and Noise is itself reasonably well studied and increasingly formalized; we can be somewhat confident WireGuard is skipping over the 2 generations of protocol vulnerabilities SSL/TLS faced.

* Perhaps most importantly, the codebase is tiny and designed to minimize its attack surface; for instance, the protocol itself is designed to be implementable without dynamic memory allocation.

* WireGuard is itself minimal and doesn't implement higher-level features like user management, which means that those features aren't coupled and entangled into the core engine, and can be implemented straightforwardly through a clear interface.

In general, and contra this article, "smaller codebase" usually does mean "more secure".




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: