주요 콘텐츠로 건너뛰기
이미지
보라색 육각형 패턴

HTTP(Hypertext Transfer Protocol)는 웹 브라우저와 웹사이트 간에 데이터를 전송하는 데 사용되는 기본 프로토콜입니다. HTTPS는 TLS(전송 계층 보안)를 사용하여 HTTP 요청 및 응답을 암호화하므로 동일한 프로토콜의 보안 버전(따라서 "S")이 됩니다. 몇 가지 예를 들면 계정 로그인, 전자 상거래 및 웹 메일 애플리케이션과 같은 다양한 애플리케이션에서 사용됩니다.

참고: TLS 인증서는 종종 TLS/SSL 인증서라고도 합니다.

HTTPS는 어떻게 작동합니까? (기본 사항)

HTTPS는 HTTP 프로토콜의 최상위에 TLS 암호화를 구현한 것입니다. 따라서 사용자가 HTTPS를 지원하는 사이트를 방문하면 다음과 같은 보안 이점을 얻을 수 있습니다.

  • 인증: 웹사이트의 신원을 확인하는 데 도움이 됩니다. 예를 들어 브라우저 표시줄에 https://www.entrust.com이 표시되면 해당 사이트는 Entrust Corporation의 소유임을 확신할 수 있습니다.
  • 암호화: 타사로부터 이동 중인 데이터를 숨깁니다.
  • 무결성: 데이터가 변조되지 않았음을 확인합니다.
HTTPS가 하는 일

HTTPS에서 인증이 중요한 이유는 무엇입니까?

웹사이트 인증은 사이트 방문자가 웹사이트의 신원과 소유권을 확인할 수 있도록 하여 실제 웹사이트와 가짜 또는 사기일 가능성이 있는 웹사이트를 구별하는 데 도움이 되기 때문에 중요합니다.

사이트 방문자는 DNS 중독, 맬웨어 또는 피싱 사이트와 같은 다양한 공격 벡터를 통해 잘못된 웹사이트에 들어갈 수 있습니다.

웹사이트와 ID 연결은 일반적으로 엄격한 업계 지침을 따르는 Certificate Authority(CA)와 같은 타사 조직에서 수행합니다.

HTTPS의 ID는 어떻게 작동합니까?

웹사이트에 연결하는 웹 브라우저가 HTTPS 웹사이트에 인증하기 위해 Entrust와 같은 Certificate Authority에서 발급한 TLS/SSL 인증서를 사용합니다.

TLS/SSL 인증서 요청

웹사이트에 ID를 추가하려면 웹사이트 소유자가 TLS/SSL 인증서를 요청하고 Entrust와 같이 공개적으로 신뢰할 수 있는 Certificate Authority에서 해당 인증서를 발급해야 합니다. TLS/SSL 인증서에는 다음과 같은 확인된 세부사항이 포함되므로 비즈니스를 위한 디지털 여권과 비슷합니다.

  • 웹사이트 URL
  • 웹사이트를 소유한 조직
  • 인증서 발급일과 만료일
  • 인증서를 발급한 Certificate Authority의 이름
  • 공개 키(데이터 암호화에 사용됨)

웹사이트 소유자가 TLS/SSL 인증서를 얻으려면 다음 단계를 거쳐야 합니다.

  1. 공개/개인 키 쌍을 포함하는 인증서 서명 요청(CSR) 생성
  2. TLS/SSL 인증서에 포함될 도메인을 관리하고 있음을 Certificate Authority에 입증
  3. 조직의 ID와 조직을 대신하여 TLS/SSL 인증서를 요청할 권한이 있음을 증명

확인 프로세스가 완료되면 TLS/SSL 인증서가 발급되며 웹사이트 소유자가 이를 해당 사이트에 설치할 수 있습니다. 그러면 사이트 방문자가 https://를 통해 웹사이트 URL에 연결할 때마다 TLS/SSL 인증서가 제공됩니다.

웹사이트가 사이트 방문자와 ID를 공유하는 방법

사이트 방문자가 HTTPS 웹사이트로 이동하면 웹 브라우저에 TLS/SSL 인증서 사본이 전송됩니다. URL 표시줄 왼쪽의 자물쇠 아이콘을 클릭한 다음 연결이 안전함인증서가 유효함을 선택하면 아래 이미지와 비슷한 웹사이트 인증서가 표시됩니다.

인증서 일반 인증서 정보

사이트 방문자는 세부사항 탭을 열어 아래 이미지와 같이 웹사이트를 소유한 조직에 대한 자세한 정보를 볼 수 있습니다.

인증서 세부 사항 제목

entrust.com용 SSL 인증서 세부사항

인증서에 웹사이트 소유자의 회사 세부사항(회사 이름, 위치)이 표시되면 EV(Extended Validation) 또는 OV(Organization Validation) 인증서가 보입니다.

 

브라우저가 TLS/SSL 인증서를 확인하는 방법

웹사이트에서 제공하는 TLS/SSL 인증서가 정확하고 합법적인지 확인하기 위해 브라우저에서 일련의 검사를 수행합니다. 브라우저에서 다음을 수행합니다.

  1. Certificate Authority의 디지털 서명을 확인하여 인증서가 브라우저의 신뢰할 수 있는 루트 저장소에 있는 Certificate Authority에서 발급되었는지 확인
  2. SSL 인증서의 도메인이 사이트 방문자가 액세스하는 웹사이트의 도메인과 일치하는지 확인
  3. SSL 인증서가 유효하고, 만료되거나 해지되지 않았는지 확인

이러한 검사를 완료하면 사이트 방문자의 브라우저에서 웹사이트 URL 앞에 https://자물쇠 아이콘이 표시됩니다.

아래 이미지는 웹사이트의 인증서가 Entrust에서 발급되었으며 사이트 방문자의 브라우저에서 인증서가 유효하고 Entrust에서 발급한 것인지 확인하는 데 사용할 수 있는 Entrust의 디지털 서명이 포함되어 있음을 나타냅니다.

인증서 세부 정보 서명 알고리즘

Entrust Certificate Authority에서 발급한 SSL 인증서의 디지털 서명

루트 저장소

웹사이트의 TLS/SSL 인증서를 확인하려면 브라우저에 Certificate Authority의 공개 키 사본이 필요하며, 이 사본은 브라우저의 루트 저장소에 저장됩니다.

루트 저장소에는 신뢰하는 모든 Certificate Authority의 디지털 인증서와 관련 공개 키가 포함됩니다.

인증 경로

Entrust.com의 SSL 인증서 인증 경로

  1. 최상위 인증서는 루트 인증서입니다. 브라우저의 루트 저장소에 미리 로드되어 있습니다.
  2. 중위의 인증서는 중간 인증서입니다. 루트 인증서 CA에서 디지털 서명하므로 브라우저에서도 이를 신뢰하게 됩니다. 브라우저는 미리 로드된 루트 인증서에서 Entrust의 공개 키를 사용하여 서명을 확인합니다.
  3. 하위 인증서는 최종 엔터티 인증서이며 브라우저가 사이트에 연결될 때 웹 서버에서 보내는 Entrust의 TLS/SSL 인증서입니다. 브라우저는 중간 인증서의 디지털 서명을 사용하여 최종 엔터티 인증서를 확인할 수 있습니다.

HTTPS의 암호화는 어떻게 작동합니까?

데이터가 브라우저에서 서버로 전송되기 전에 사이트 방문자가 정보(신용 카드 세부사항, 로그인 세부사항, 양식 작성 등)를 입력하는 모든 HTTPS 웹사이트에서 브라우저는 웹사이트의 TLS/SSL 인증서에 있는 공개 키를 사용하여 데이터를 암호화합니다.

암호화 프로세스는 승인된 당사자만 읽을 수 있도록 전송 중인 데이터를 스크램블하는 방법입니다. 따라서 암호화는 사람이 읽을 수 있는 일반 텍스트를 이해할 수 없는 암호문으로 변환합니다.

암호화는 데이터를 무작위로 보이도록 만들지만 암호화된 데이터는 논리적이고 예측 가능한 패턴을 따릅니다. 그러나 데이터를 수신하는 웹사이트는 데이터 암호를 해독할 적절한 개인 키를 가지고 있어야 합니다.

암호화 및 암호 해독 프로세스

암호화 및 암호 해독 프로세스에 대한 대략적인 개요

암호화에서 키는 무엇입니까?

암호화 키는 일반 텍스트 데이터를 무작위로 보이도록 변경하기 위해 암호화 알고리즘 내에서 사용되는 문자열입니다. 암호화 키는 데이터를 암호화하고 암호를 해독하는 데 사용됩니다.

다른 유형의 암호화는 무엇이 있습니까?

암호화에는 두 가지 기본 유형이 있습니다.

대칭 암호화

대칭 암호화에는 통신을 암호화하고 암호를 해독하기 위해 모든 통신 당사자 간에 사용되고 공유되는 하나의 키만 포함됩니다. 대칭 암호화는 비대칭 암호화보다 빠르지만 키의 보안 배포와 관련된 복잡성으로 인해 확장 가능한 형태의 암호화가 아닙니다.

대칭 암호화

비대칭 암호화

비대칭 암호화(공개 키 암호화라고도 함)에는 두 개의 개별 키가 포함됩니다. 하나의 키(공개 키)는 누구나 액세스할 수 있으며 암호화에 사용됩니다. 두 번째 키(개인 키)는 수신자가 안전하게 보관하며 암호 해독에 사용됩니다. 비대칭 암호화는 대칭 암호화보다 느리지만 여러 사용자에게 키를 배포하기가 더 쉽습니다.

비대칭 암호화

암호화 알고리즘은 무엇입니까?

암호화 알고리즘은 일반 텍스트를 암호문으로 변환하는 방법입니다. 암호화 알고리즘이 개인 키를 사용하여 예측 가능한 방식으로 데이터를 변경하면 일반 텍스트가 암호문으로 변환됩니다. 그러면 암호 해독 키를 사용하여 암호문을 다시 일반 텍스트로 변환할 수 있습니다.

많이 사용되는 대칭 암호화 알고리즘은 다음과 같습니다.

  • AES
  • 3-DES
  • SNOW

많이 사용되는 비대칭 암호화 알고리즘은 다음과 같습니다.

  • RSA
  • 타원 곡선 암호화(ECC)

TLS/SSL 핸드셰이크는 무엇입니까?

TLS 연결은 종종 TLS/SSL 핸드셰이크라고 하는 시퀀스를 따라 시작됩니다. 이 프로세스는 웹사이트 방문자가 TLS/SSL 인증서를 사용하는 웹사이트를 열 때 시작됩니다. 사용자의 장치와 사용자가 연결하는 웹사이트 사이에서 프로세스가 시작됩니다.

TLS/SSL 핸드셰이크

1-2단계: Hello 및 암호 스위트 협상

웹사이트 방문자의 브라우저와 웹 서버가 모두 Hello를 말하고 사용할 암호 스위트(암호화 알고리즘)에 동의합니다.

3-4단계: 인증서 및 키 교환

웹 서버는 공개 키와 함께 TLS/SSL 인증서 및 중간 인증서의 사본을 웹사이트 방문자의 브라우저로 보냅니다. 웹사이트 방문자의 브라우저는 디지털 서명과 브라우저의 인증서 루트 저장소에 있는 루트 인증서를 기반으로 TLS/SSL 인증서의 유효성을 확인합니다.

5단계: 서버 Hello 완료

브라우저의 모든 검사를 통과하면 브라우저에서 웹 서버로의 단방향 보안 통신 채널이 설정됩니다.

6-10단계: 클라이언트 키 교환 및 암호 사양 변경

웹 브라우저와 웹 서버는 더 빠르고 효율적이기 때문에 안전한 단방향 통신 채널을 통해 새로운 공유 암호화 키를 설정하여 비대칭 암호화에서 대칭 암호화로 전환합니다. 이 공유 세션 키가 생성되는 방법은 2단계의 암호 스위트 협상 후 동의한 암호 스위트에 따라 다릅니다.

세션 키가 생성되면 TLS 핸드셰이크 프로세스가 완료되고 웹 브라우저와 웹 서버는 세션 키를 사용하여 교환되는 모든 데이터를 암호화하고 암호 해독합니다.