2026년 WireGuard 대 OpenVPN: 암호 프리미티브, 코드베이스 규모, 그리고 각각이 올바른 기본값이 되는 경우
WireGuard는 더 새롭고, 더 작으며, 현대적인 프리미티브를 사용한다. OpenVPN은 더 오래되었고, 더 크며, 제한적인 네트워크를 통과하기 위해 TCP 443 위에서 동작한다. 둘 다 개방형 표준이다. 이것이 정직한 프로토콜 선택의 틀이다.
WireGuard와 OpenVPN이 무엇인지 간단히
WireGuard는 Jason A. Donenfeld이 설계해 2020년 Linux 커널에 통합된 VPN 프로토콜이다. wireguard.com/papers/wireguard.pdf의 백서가 그 암호 프리미티브를 규정한다. 키 교환에 Curve25519, 대칭 암호화에 ChaCha20, 인증에 Poly1305, 해싱에 BLAKE2s, 키 유도에 HKDF, 해시 테이블 키에 SipHash24를 사용한다. Linux 커널 구현은 약 4,000줄의 코드다. OpenVPN은 더 오래되었고(2001년 최초 공개), GPL 라이선스이며, 사용자 공간(커널이 아니라)에서 동작하고, 암호화에 OpenSSL 또는 mbedTLS를 사용한다. OpenVPN 2.6 레퍼런스 매뉴얼은 openvpn.net에 공개되어 있다.
코드베이스 규모와 감사 대상면
WireGuard의 작은 코드베이스(Linux 커널 구현에서 약 4,000줄)는 의도적인 설계 선택이다——코드베이스가 작을수록 감사 대상면이 작고 버그가 숨을 곳도 적어진다. OpenVPN의 코드베이스는 더 크다(openvpn 바이너리, 플러그인, 지원 라이브러리를 포함한 전체 프로젝트는 훨씬 더 방대하다)——그 절충점은 20년이 넘는 CVE 이력으로, 즉 모든 흔한 코너 케이스가 발견되고 패치되어 이제 테스트 스위트의 일부가 되었다는 뜻이다. 어느 쪽도 일률적으로 더 안전하지는 않다. 작은 코드베이스는 더 짧은 기간 동안 더 적은 눈에 의해 검토되어 왔다.
전송: UDP 대 TCP
WireGuard는 UDP만 사용한다. OpenVPN은 UDP와 TCP를 모두 지원한다. 그 결과, UDP를 차단하는 네트워크——제한적인 송신 규칙을 가진 기업 Wi-Fi, 일부 호텔 네트워크, 비HTTPS UDP에 플래그를 붙이는 심층 패킷 검사를 하는 네트워크——는 WireGuard를 차단한다. OpenVPN의 TCP 모드는 HTTPS가 사용하는 것과 같은 TCP 포트 443에서 동작하므로, 일반 웹 트래픽을 깨뜨리지 않고 차단하기가 더 어렵다. 제한적인 송신 규칙을 가진 네트워크에서 정기적으로 연결한다면, 비록 더 느리더라도 OpenVPN-TCP가 더 믿을 만한 선택이다. 대부분의 주요 VPN 클라이언트는 계정을 바꾸지 않고도 프로토콜을 전환할 수 있게 해준다.
성능 차이는 커널 공간에서 나온다
Linux에서 WireGuard의 가장 큰 성능 이점은 커널 공간에서 동작한다는 것이다——패킷이 암호화나 복호화를 할 때마다 사용자/커널 경계를 넘을 필요가 없다. OpenVPN은 사용자 공간에서 동작하며, 이는 역사적으로 무시할 수 없는 오버헤드였다. Data Channel Offload(DCO)를 갖춘 OpenVPN 2.6은 대칭 암호 작업을 커널로 옮겨 그 격차의 상당 부분을 좁힌다. 우리는 원시 처리량 수치를 공표하지 않는다. 그 수치는 네트워크 상황, 서버 부하, 하루 중 시간대에 따라 크게 달라지기 때문이다. 공개된 WireGuard 백서는 프로토콜 설계를 기록하고 프로토타입을 벤치마크하지만, 실제 소비자용 VPN의 처리량은 프로토콜만큼이나 제공업체의 인프라에 의존한다.
어떤 감사받은 VPN이 어떤 프로토콜을 구현하는가
주요 감사받은 유료 VPN 5곳은 모두 WireGuard와 OpenVPN을 모두 지원한다: Mullvad는 OpenVPN과 함께 자체 WireGuard 구현을 제공한다(Cure53가 2024년 6월에 두 서버 구성을 모두 감사했다). Proton VPN은 WireGuard, OpenVPN, 그리고 Stealth 프로토콜(제한적인 네트워크용 OpenVPN-on-TLS 변형)을 지원한다. NordVPN의 NordLynx는 맞춤형 WireGuard 구현이다. ExpressVPN의 Lightway는 자체 감사 이력을 가진 독자 프로토콜이다(Cure53 + Praetorian이 2024년에 Lightway의 Rust 재작성을 검토했다). Surfshark는 WireGuard와 OpenVPN을 지원한다.
권장 사항
기본값으로는 WireGuard 또는 업체의 WireGuard 파생 맞춤형 프로토콜(NordLynx, ExpressVPN의 Lightway)을 사용하라. 네트워크가 UDP를 차단할 때——기업 Wi-Fi, 제한적인 송신 규칙을 가진 대학 Wi-Fi, DPI가 있는 호텔 네트워크——는 OpenVPN-TCP로 전환하라. 프로토콜 선택이 소비자용 VPN 성능의 병목이 되는 경우는 드물다. 제공업체의 서버 선택과 현재 부하가 더 중요하다. 프라이버시에 관한 한, 프로토콜은 문제가 되지 않는다——노로그라는 속성은 프로토콜과 무관하며, 바로 그것이 감사가 검증하려고 존재하는 대상이다.
출처
WireGuard 백서: wireguard.com/papers/wireguard.pdf. OpenVPN 2.6 레퍼런스 매뉴얼: openvpn.net/community-resources/reference-manual-for-openvpn-2-6. Mullvad 인프라 감사(Cure53 2024년 6월, OpenVPN과 WireGuard 서버 구성을 모두 다룸): mullvad.net/en/blog/fourth-infrastructure-audit-completed-by-cure53. ExpressVPN Lightway 감사: expressvpn.com/blog/lightway-audits-cure53-praetorian. 모든 URL은 2026-04-30에 접속.