그러나 암호화의 세부 사항이 처음에는 혼란스러울 수 있지만, 정보를 분류하는 방법을 알게 되면 상황이 매우 명확해진다. TLS와 RSA 인증서, 키, AES 암호화 등과 같은 개념은 훨씬 덜 낯설고, VPN이 얼마나 유용한지 평가하는 것은 생각보다 간단하다. 방법은 다음과 같다.
VPN 암호화 동작 방식
일반적으로 암호화는 데이터를 코드로 변환(인코딩)하는 프로세스로 승인된 당사자만 디코딩할 수 있다. 컴퓨터가 VPN에 연결되면, 다단계 암호화 프로세스가 수행된다. 각 단계의 보안 수준은 사용되는 프로토콜에 따라 다르다. 각 프로토콜은 설정된 연결의 인증, 키 교환, 암호화 같은 요소를 각각의 방식으로 처리한다. 일반적으로 최신 VPN 암호화 프로토콜은 다음과 같이 4부분으로 나눌 수 있다.
1. 연결이 처음 시작되는 방법(핸드셰이크(Handshake))
2. 연결에 세션 중에 데이터를 암호화하고 해독하는 데 사용되는 코드(키)를 생성하는 방법(키 교환이라고도 함)
3. 암호화 키가 유지되는 기간
4. 설정된 연결을 보호하는 데 사용되는 암호화 방법
VPN에서 지원하는 프로토콜은 일반적인 암호화 강도 수준을 나타내지만, 취향에 맞게 구성할 수 있다. 결과적으로 VPN 서비스는 같은 프로토콜을 사용할 수 있지만, 다른 수준의 보안을 제공한다. 한 기업은 더 빠른 속도를 자랑하기 위해 업계 기본값에 더 가깝게 맞추고, 다른 기업은 보안을 극대화하기 위해 암호화에 사용하는 키 길이/크기를 늘릴 수 있다.
VPN 암호화의 세부 사항을 이해하는 방법
VPN 암호화의 세부 사항을 푸는 방법은 특정 VPN 서비스가 지원하는 프로토콜을 결정하는 것부터 시작한다.현재 업계에서는 높은 수준의 보안을 위해 오픈VPN(OpenVPN), IKev2/IPSec, 와이어가드(Wireguard)의 3가지를 선호한다. 알려진 프로토콜뿐 아니라 소프트이더(SoftEther), SSTP, L2TP/IPSec 같은 더 느리고 덜 안전한 프로토콜에 대한 독점적인 리프(Riff)를 볼 수도 있다. PPTP(Point-to-Point Tunneling Protocol)는 오래된 프로토콜이므로 더 이상 적절한 보호를 제공하지 않기 때문에 요즘에는 드물다.
다음으로 VPN이 선택한 프로토콜을 구성하는 방법에 대한 세부 정보를 살펴본다. 대부분의 서비스는 고객 지원 페이지, FAQ, 블로그 게시물에서 기본적인 설명을 제공한다. ‘RAS 인증서’와 ‘ECDH(Elliptic Curve Diffie Hellman) 프로토콜’ 같은 익숙하지 않은 용어를 접해야 한다.
마지막으로 발견한 모든 전문용어를 업계 표준과 비교해 본다. 온라인 검색은 지식 격차를 메우는 데 많은 도움이 된다. 현재 업계 기본값을 충족하지 않는 VPN을 주의한다. 예를 들어 RSA 인증서용 2048비트 키와 128비트 AES 암호화 등이다. VPN의 암호화 수준도 마케팅하는 내용과 일치해야 한다. 강력한 보안을 자랑하지만 PPTP 또는 심지어 L2TP/IPSec을 사용하는 제공업체는 의심할 필요가 있다.
예를 들어, 핫스팟 쉴드(HotSpot Shield) VPN의 암호화 방법에 대한 설명을 해석하는 방법은 다음과 같다.
먼저 지원되는 VPN 프로토콜을 식별한다. 여기서 핵심 문구는 ‘오픈VPN 기반의 독점 프로토콜’이다. 이는 핫스판 쉴드 업체가 가장 안전한 VPN 프로토콜 중 하나를 사용해 자체적으로 강화했음을 알려 준다. 코드를 공개적으로 검토할 수 없기 때문에 이러한 변경 사항을 잘 구현했음을 신뢰해야 한다(반대로, 오픈VPN은 오픈소스 프로토콜임).
다음으로 나머지 용어가 오픈VPN 프로토콜 내에서 어떤 기능을 나타내는지 알아보자. 약간의 수고를 들이면 다음과 같은 사항이 분명해진다.
- TLS 1.2는 연결 시작시 보안과 관련된다.
- RAS 인증서는 해당 암호화 프로세스의 일부다.
- ECDH(Elliptic Curve Diffie Hellman) 알고리즘은 키 교환이 발생하는 방식을 지정한다.
- 이 키 교환은 임시 교환이다.
- 연결은 나중에 128비트 AES 암호화로 전환된다. 256비트 AES 암호화를 대신 사용하도록 연결을 구성할 수도 있다.
핫스팟 쉴드 VPN이 설정을 현명하게 선택했는지 여부를 확인하려면, 더 많은 분석이 추가 맥락을 제공한다.
1. TLS 1.2 오픈 VPN은 전송 계층 보안(Transport Layer Security, TLS)을 사용해 시작 시 연결을 보호한다. 버전 1.2는 전문가가 최소 기본값으로 간주한다. 더 새롭고 안전한 버전 1.3도 있지만 아직 널리 채택되지 않았다.
2. 2048비트 키가 있는 RSA 인증서. TLS 인증서는 데이터 전송을 안전하게 유지하기 위해 RSA 알고리즘을 사용한다. 요즘 권장되는 최소 키 길이는 2048 비트다. 일부 VPN은 더 긴 키 길이(4096비트)를 사용하지만, 단점은 속도가 느리다는 것이다.
3. ECDH 알고리즘. 이 프로토콜은 VPN을 통해 라우팅되는 데이터를 암호화 및 해독하는 데 사용되는 데이터(키)가 생성되는 방식을 지정한다. RSA 알고리즘과 마찬가지로, ECDH는 비대칭 공개-개인 키 쌍을 사용하지만 취약점이 다르다. RSA 인증서에 따른 사용은 이런 약점을 완화하는 데 도움이 된다.
4. 임시 키 교환. 세션마다 고유 키가 생성된 다음 폐기되므로, 서드파티가 키를 획득해 데이터를 해독할 가능성이 줄어든다.
5. 128비트 AES와 256비트 암호화. 256비트 AES 암호화는 128비트 유형보다 더 복잡하고 무차별 대입 공격으로부터 더 많은 보호를 제공한다. 하지만 속도도 더 느리다. 128비트 AES 암호화를 설정된 연결에 대한 기본값으로 선택하지만 256비트를 옵션 구성으로 허용함으로써, 핫스팟 쉴드는 업계 표준을 유지하면서 보안 수준을 높일 수 있는 선택권을 제공한다.
VPN을 테스트해 시간을 들일 가치가 있는지 추가로 확인해야 하지만, 온라인 리뷰와 이번 분석 간에 충분한 정보를 바탕으로 프로세스를 진행할 수 있다. 전반적으로 이 정도의 분석을 수행할 수 있으면, 사용자의 기준을 충족하지 않는 VPN을 걸러낼 수 있다.
이러한 세부 정보를 검토하는 데는 시간이 걸릴 수 있으며, 대부분의 사람이 원하는 것보다 더 길어질 수 있다. 해당 분야의 많은 전문가가 권장하고 잘 알려진 서비스를 선택한다면 이런 수고를 피할 수 있다. editor@itworld.co.kr