Obscura: VPN that can't log your activity
Obscura: 이용 기록을 볼 수 없도록 설계한 VPN
Obscura는 사용자와 Mullvad 출구 서버 사이에 독립된 릴레이를 두는 VPN 서비스입니다. 사용자 IP와 인터넷 트래픽을 한 사업자가 함께 보지 못하게 하고, WireGuard 패킷을 QUIC으로 전달합니다. 다만 이 구조가 보호하는 범위와 QUIC의 우회 효과, 두 사업자 간 공모 가능성은 토론에서 쟁점이 됐습니다.
- 주제
AI 요약
Obscura는 기존 VPN의 ‘로그를 남기지 않는다’는 약속 대신, 운영자가 사용자 신원과 인터넷 활동을 한꺼번에 알 수 없도록 설계했다고 설명합니다. 사용자 기기와 Mullvad의 출구 서버 사이에 Obscura 릴레이를 배치하는 2자 릴레이(Two-Party Relay) 구조입니다. Obscura는 접속 IP를 보지만 암호화된 WireGuard 패킷을 해독하지 못하고, Mullvad는 인터넷 트래픽을 출구로 전달하지만 사용자 기기의 IP 대신 Obscura 릴레이의 IP를 봅니다.
연결 구조와 전송 방식
기기의 WireGuard 터널은 Mullvad 서버의 공개 키를 대상으로 암호화합니다. Obscura 서버는 이 패킷을 중계할 뿐 내용을 열어볼 수 없다는 것이 서비스의 설명입니다. Mullvad 서버는 응답을 Obscura 릴레이로 돌려보냅니다. Obscura는 이 방식으로 한 사업자가 사용자 신원과 트래픽을 함께 연결하기 어렵게 한다고 주장합니다. 전통적인 단일 사업자 VPN은 사업자 한 곳이 침해되면 두 정보를 함께 노출할 수 있지만, Obscura 구조에서는 Obscura와 Mullvad가 모두 침해되거나 협력해야 연결 가능성이 생깁니다.
Obscura 앱은 WireGuard를 QUIC의 비신뢰 데이터그램(Unreliable Datagram) 위에 실어 전송합니다. 서비스는 QUIC이 HTTP/3에도 쓰이는 전송 기술이라 일반 트래픽과 구별하거나 차단하기 더 어렵고, TCP 안에 TCP를 중첩할 때 생기는 성능 문제도 피한다고 설명합니다. 다만 WireGuard 호환 설정을 따로 만들어 쓰면 QUIC 기반 난독화는 이용하지 못합니다. 2자 릴레이 구조는 그대로 적용됩니다.
신뢰와 검증의 범위
앱 소스 코드는 GitHub에 공개돼 있으며, 재현 가능한 빌드(Reproducible Builds)도 제공할 계획이라고 밝혔습니다. 앱에서 현재 출구 서버의 WireGuard 공개 키를 확인하고 Mullvad가 공개한 키와 대조할 수도 있습니다. 다만 개발자는 토론에서 클라이언트가 Mullvad 출구 서버의 공개 키를 현재 Obscura 서버에서 가져온다고 밝혔습니다. 이를 이상적인 방식으로 보지 않으며 Mullvad가 서버 키에 서명하면 그 방식으로 전환할 계획이라고 답했습니다. 당장은 앱에 표시된 키를 사용자가 Mullvad 웹사이트와 직접 비교할 수 있다고 덧붙였습니다.
이 구조가 익명성을 보장하거나 모든 추적을 막는다는 뜻은 아닙니다. 양쪽 사업자가 기록을 결합하거나 트래픽 패턴을 관찰하면 상관관계를 찾을 수 있다는 지적이 나왔습니다. 개발자는 한쪽이 정직하다면 단일 사업자 VPN보다 침해에 필요한 조건이 늘어난다고 답했습니다. 서비스의 미국 관할권, Mullvad에 대한 의존, 암호화폐 결제의 실제 익명성도 댓글에서 문제로 제기됐습니다. Obscura는 월 8달러이며, 계정은 동시에 5개 연결 슬롯을 제공합니다. 신용카드 외에 Lightning 결제와 Monero도 지원한다고 안내합니다.
Hacker News 반응
- @maxloh — Mullvad도 랜딩 페이지에 적힌 장점 대부분을 제공하는데, 더 성숙하고 평판이 좋은 제품이며 클라이언트도 모두 오픈소스입니다. Obscura 출구 서버도 Mullvad가 운영합니다. 왜 Mullvad 대신 이 제품을 골라야 하나요?
- @dongcarl — 전통적인 단일 사업자 VPN은 사업자를 온전히 신뢰하고 정직하다고 가정해도 해킹이나 침해를 당할 수 있습니다. Obscura는 해킹을 당해도 Mullvad 서버용으로 암호화된 WireGuard 패킷 외에는 유출할 정보가 없습니다. 신뢰 대상이 한 곳에서 Obscura와 Mullvad 두 곳으로 바뀌며, 둘 다 침해돼야 합니다.
- @maxloh — Obscura와 Mullvad를 함께 신뢰해야 한다는 설명은 실제로 이해가 됩니다. 다른 관할권에 있는 회사를 두면 두 계층이 동시에 침해되기 어려울 수도 있습니다. 다만 Obscura 클라이언트는 Mullvad 출구 서버의 공개 키를 어디서 가져오나요? Obscura 서버에서 가져온다면 서명 검증이 필요해 보입니다.
- @dongcarl — 좋은 질문입니다. 현재는 Obscura 서버에서 가져오며, 이상적인 방식은 아닙니다. Mullvad가 서버 공개 키에 곧 서명할 것으로 생각하며, 그렇게 되면 서명된 키를 쓰도록 바꿀 계획입니다. 지금은 앱에 키를 표시하고 Mullvad 웹사이트의 키와 쉽게 비교할 수 있게 했습니다.
- @ramblurr — UDP 트래픽에 적용한 OHTTP 같은 방식인가요? MASQUE CONNECT-UDP를 쓰는지 궁금합니다. Tor와 같은 익명성을 정확히 주장하지 않는 점은 좋지만, 일반 독자는 그렇게 받아들일 수 있습니다. Obscura와 Mullvad가 공모해 신원과 IP를 공유하지 않는다는 점은 믿어야 합니다. OHTTP도 마찬가지입니다.
- @dongcarl — 실제로는 WireGuard를 QUIC 비신뢰 데이터그램 위에 올렸습니다.
- @skaul — 기본적으로 두 홉이군요. 첫 번째 홉은 사용자 IP를 보지만 접속하려는 웹사이트를 모르고, 두 번째 홉은 웹사이트를 보지만 사용자 IP를 모릅니다. Private Relay와 비슷합니다.
- @mulmen — 두 서비스가 모두 로그를 남기면 정보를 결합해 익명 사용자를 알아낼 수 있습니다.
- @dongcarl — 맞습니다. 하지만 Obscura와 Mullvad 가운데 한 곳이라도 정직하다면 익명 정보를 풀기 어렵습니다. 단일 사업자 릴레이는 한 곳만 침해하면 되지만, 2자 릴레이는 두 곳을 모두 침해해야 합니다.
- @saligne — QUIC 난독화 주장에 관한 설명을 더 보고 싶습니다. 제한적인 방화벽이 있는 나라에서는 별로 쓸모가 없어 보입니다. QUIC은 쉽게 차단되거나 속도가 제한되기도 합니다.
- @MassPikeMike — Bitcoin이나 Monero 결제가 신용카드보다 더 사적인 결제라는 Obscura FAQ의 주장은 잘못됐습니다. KYC 없는 암호화폐 이용은 대부분 과거의 이야기이고, 분석 업체가 Lightning이나 Monero 주소를 실제 사람과 연결할 수 있습니다. FAQ가 이 점을 언급하지 않아 실망스럽습니다. Mullvad처럼 현금 결제를 지원하는 편이 사생활을 더 잘 지킬 수 있습니다.
- @teravor — Monero 주소를 사람과 거의 완벽하게 연결할 수 있다는 근거를 제시해 주세요. 다만 현재 Monero의 익명 집합은 거래당 16이고 영지식 방식도 아니므로 이상적이지는 않습니다. 이 부분을 바꾸려는 작업이 진행 중인 것으로 압니다.
- @Wowfunhappy — 출구 서버가 개인 정보를 모른다면 트래픽을 어디로 돌려보내나요?
- @dongcarl — 기기에서 Obscura 릴레이를 거쳐 Mullvad 출구 서버로 연결됩니다. 출구 서버는 Obscura 릴레이의 IP를 알지만 기기의 IP는 보지 못합니다.
원문: Obscura FAQ / 번역·요약: Trawling