[SSL 사용 이유와 원리]
SSL이란?
“HTTP에 ‘S’가 붙은 HTTPS는 SSL을 적용한 암호화된 프로토콜이라는 뜻!”
SSL은 클라이언트와 서버가 주고받는 데이터를 암호화해 통신할 수 있게 만든 프로토콜을 말합니다. 인증서(SSL 방식)나 암호화 소프트웨어를 웹서버에 설치하여 사용할 수 있죠. 참고로 SSL은 Secure Sockets Layer(보안 소켓 계층)의 약자입니다.
왜 의무화?
“개인정보를 취급하는 웹사이트 운영자는 의무적으로 보안 서버 구축해야”
해커에 의한 개인 정보 유출 사고가 증가하면서 의무화 법안이 생겼습니다. 개인정보보호법 제75조 2항에 의거, 개인정보 등을 취급하는 웹사이트 운영자는 의무적으로 보안 서버를 구축해야 하고, 이를 어길 경우 3천만 원 이하의 과태료 등 행정 처분을 받게 됩니다.
221만 고객 개인 정보 털려… 과징금 75억 ‘철퇴’ “이름, 연락처, 주민등록번호 등 암호화하지 않아.” 해커, 파일 서버 속 개인 정보 모두 다크웹에 공개. 2023년 3월, 안전조치 의무 위반으로 해당 업체에 과징금을 부과하고, 개인 정보 파기 의무를 준수하지 않은 행위에 대해 과태료 부과해. 2024.06.04 연합뉴스 |
SSL의 작동 원리를 이해하기 위해서 대칭키, 공개키 두 기법에 대한 이해가 필요합니다.
대칭키
동일한 모양의 키를 클라이언트와 서버가 각자 보유하고, 해당 키로 암호화와 복호화(암호 풀기)할 수 있는 기법입니다. 쉽게 말해 복사한 2개의 동일한 키를 보유한 부부가 현관 문을 여닫을 수 있는 것과 같은 원리입니다. 클라이언트가 개인정보를 a라는 키로 암호화해서 서버에 전송하고, 서버 또한 a라는 대칭키로 개인정보를 복호화하는 거죠.
공개키 기법보다 속도가 빠르지만, 해킹에 취약하다는 특징이 있습니다. 키 하나로 열고 닫을 수 있기 때문에 한쪽만 해킹 당하더라도 암호화된 정보를 쉽게 파악할 수 있죠.
공개키
공개키는 대칭키의 취약점을 보완했습니다. 이 기법에는 공개키와 개인키 총 2개가 존재합니다. 대칭키와 달리 이제부턴 부부에게 서로 다른 키 각 1개가 부여됩니다. 이 키는 특이하게도 남편이든 부인이든 누군가 현관문을 잠궜다면 무조건 상대의 키로만 현관문을 열 수 있습니다. 귀가하려면 무조건 상대가 필요한 셈이죠. 결국 도둑은 2명의 키를 모두 훔쳐야 집 속 물건을 훔칠 수 있죠.
공개키도 같은 원리입니다. 공개키로 암호화했다면 개인키로만 복호화할 수 있고, 반대로 개인키로 암호화했다면 공개키로만 복호화할 수 있습니다. 이 작동 원리를 통해 보다 안전한 정보 보호가 가능해집니다. 예컨대 누군가 공개키를 몰래 가로채더라도 개인키가 없으므로 복호화할 수 없기 때문이죠.
SSL의 작동 과정
작동 과정은 총 3개로 나눌 수 있습니다. 핸드쉐이크, 세션, 세션 종료.
1. 클라이언트, 서버 간 핸드쉐이크(Handshake)
- 클라이언트(예: 웹 브라우저)가 서버(예: 웹사이트)에 연결을 요청합니다.
- 클라이언트는 서버에 자신이 지원하는 SSL 버전, 암호화 알고리즘들의 목록, 그리고 임의로 생성된 데이터를 전송합니다.
2. 서버의 응답
- 서버는 클라이언트에게 SSL 인증서와 함께 사용할 암호화 알고리즘을 선택하여 응답합니다. 이 인증서에는 서버의 공개키와 인증 기관의 서명이 포함되어 있습니다.
- 서버 역시 임의로 생성된 데이터를 클라이언트에게 전송합니다.
3. 인증서 검증
- 클라이언트는 서버로부터 받은 인증서의 유효성과 신뢰성을 검증합니다. 인증서가 유효한 인증 기관에 의해 발급된 것인지 확인합니다.
4. 세션 키 생성
- 클라이언트와 서버 양쪽에서 임의로 생성한 데이터를 토대로 “세션 키”를 생성합니다. 이 세션 키는 대칭 키 암호화에 사용되며, 이후 통신에서 모든 데이터를 암호화하고 복호화하는 데 사용됩니다.
5. 클라이언트의 키 교환
- 클라이언트는 세션 키를 서버의 공개키로 암호화하여 서버에게 전송합니다. 이렇게 하면 서버만이 자신의 비공개키로 세션 키를 복호화할 수 있습니다.
6. 핸드쉐이크 완료
- 서버는 세션 키를 받고 복호화한 후, 클라이언트에게 핸드쉐이크가 성공적으로 완료되었다는 메시지를 암호화하여 전송합니다.
- 클라이언트가 이 메시지를 받고 성공적으로 복호화하면, 양쪽 모두 같은 세션 키를 가지고 있음이 확인됩니다.
7. 보안 통신
- 핸드쉐이크 이후, 클라이언트와 서버는 세션 키를 사용하여 통신 데이터를 암호화하고 복호화하며 안전하게 정보를 교환합니다.
SSL/TLS는 이러한 복잡한 과정을 통해 인터넷 상의 데이터 보안을 확보하며, 사용자와 웹사이트 간의 안전한 연결을 제공합니다.
iwinv 서비스 소개
iwinv는 SSL 대표 상품으로써 Sectigo를 서비스하고 있습입니다.
Sectigo는 업계 최대 규모의 상용 인증 기관이면서 200여 개국, 1억 건 이상의 SSL 인증서를 발행한 신뢰할 수 있는 서비스입니다. iwinv는 Sectigo를 할인된 가격으로 제공하고 있습니다(‘24년 6월 기준).
이벤트 가격은 베이직은 15,000원, 멀티는 45,000원, 와일드카드는 150,000원이며 자세한 내용은 아래 표를 참고해주길 바랍니다.