카테고리 없음

○ SSL 이란 ? - Secure Socket Layer

심심한 낙지 2020. 8. 27. 11:31

POOPOO: 배변 일기 앱

SMALL

 

Centos 7 에서 작성하였습니다.


목차

  • SSL 이란?
  • HTTPS 와 SSL

SSL은 왜 사용하는가?

인터넷 같은 오픈 통신 네트워크를 통한 데이터 보안은 개발자와 사용자들에게는 큰 걱정거리입니다. 따라서, 여러분이 사용하고 있는 제품에 보안 환경을 설정하는 것이 매우 중요합니다.

 

Netscape Communications와 RSA Data Security가 합동으로 개발한 Secure Sockets Layer (SSL)는 효율적인 방식으로 이러한 보안을 이룩할 수 있습니다. SSL은 암호화, 인증서 기반 인증, 구축된 네트워크 연결을 통한 보안 협상을 제공하고, 많은 기업들과 제품들은 자신들의 통신 프로토콜에 SSL을 채택하고 있습니다.

 

 

SSL이란 무엇인가?

SSL은 TCP/IP를 사용하는 두 개의 통신 애플리케이션 간 프라이버시와 무결성을 제공하는 프로토콜입니다. 클라이언트와 서버를 오고 가는 데이터는 시메트릭 알고리즘을 사용하여 암호화 됩니다.

 

퍼블릭 키 알고리즘(RSA)는 암호 키들의 교환과 디지털 서명에 사용됩니다. 퍼블릭 키 암호는 메시지를 암호화 하는데 사용되는 두 개의 키들을 사용하는 알고리즘을 정의합니다. 하나의 키가 메시지를 암호화 하는데 사용되면, 다른 키는 암호 해제에 사용됩니다. 하나의 키(퍼블릭 키)를 공개하고 다른 키(개인 키)는 숨겨서 안전한 메시지를 받을 수 있습니다.

 

 

디지털 인증서

SSL에서 중요한 역할을 하는 디지털 인증서에 대해 알아봅시다. 디지털 인증서는 두 가지 목적을 갖고 있습니다:

 

소유자의 신원 확인

소유자가 퍼블릭 키를 사용할 수 있도록 함

디지털 인증서는 신용 기구 -- 인증서 기구 (CA) -- 에서 발행하며, 제한된 시간 동안에만 발행됩니다. 만료일이 지나면, 디지털 인증서는 교체되어야 합니다. SSL은 키 교환, 서버 인증, 클라이언트 인증에 디지털 인증서를 사용합니다.

 

디지털 인증서에는 인증서 소유자의 신분과 인증서 기구에 대한 정보가 포함되어 있습니다:

 

소유자의 이름

소유자의 퍼블릭 키

디지털 인증서가 발행되었던 날짜

디지털 인증서가 종료하는 날짜

발행 기관의 이름 (CA의 기명)

발행 기의 디지털 서명

 

SSL 연결은 http:// 대신 https:// 로 시작하는 URL을 사용하여 클라이언트에 의해 시작된다.

 

 

SSL 인증서 유형

SSL은 인증서를 사용하여 연결을 확인합니다. 이러한 SSL 인증서는 보안 서버에 놓이고, 데이터를 암호화 하고 웹 사이트를 확인하는데 사용됩니다.

SSL 인증서는 그 사람이 속해 있는 사이트를 확인하고, 인증서 보유자에 대한 정보, 인증서가 발행되었던 도메인, 인증서를 발행했던 Certificate Authority의 이름을 포함하고 있습니다.

 

다음은 SSL 인증서를 얻을 수 있는 세 가지 방법이다:

 

Certificate Authority(CA) 인증서를 사용한다.

자가 서명 인증서를 사용한다.

더미 인증서를 사용한다.

 

Certificate Authority(CA) 인증서 사용하기

Certificate Authority는 업계의 신임을 받는 기구이며, 인터넷 인증서를 발행하고 있습니다. 대표적인 예로 VeriSign을 들 수 있습니다. CA 서명 인증서를 획득하려면, 충분한 정보를 CA에 제공하여 CA가 여러분의 신원을 확인할 수 있도록 해야 합니다. CA는 새로운 인증서를 만들고, 이것을 디지털 서명을 한 다음, 여러분에게 제공합니다. 대중적인 웹 브라우저들은 특정 CA에 의해 서명된 인증서를 신임하도록 미리 설정되어 있습니다. 클라이언트가 SSL을 통해 인증서가 발행된 서버로 연결하기 위해 추가적인 클라이언트 설정이 필요 없습니다.

 

자체 서명 인증서 사용하기

자체 서명 인증서는 사용자가 생성한 인증서입니다. 자체 서명 인증서를 사용할 때, 인증서 발행자는 주제와 같습니다. 이 솔루션의 강점은 CA 서명 서버 인증서를 획득하는 것보다 자체 서명 서버 인증서를 만드는 시간이 덜 걸린다는 점입니다. 하지만, 자체 서명 인증서는 SSL 연결을 통해 인증서를 설치하는 서버로 연결된 클라이언트가 인증서의 서명자를 신임하도록 설정되어야 합니다. 인증서는 자가 서명되었기 때문에, 서명은 클라이언트의 트러스트 파일에 있지 않으므로, 추가되어야 합니다. 모든 클라이언트의 트러스트 파일에 액세스 하는 것이 비현실적이라면, 이러한 설정을 사용하지 않습니다. 대신 CA 서명 인증서를 얻어야 합니다. 자체 서명 인증서는 서버와 인터랙팅 하는 클라이언트가 인증서를 신임하도록 설정될 수 있을 때에만 유용합니다.

 

더미(dummy) 인증서 사용하기

멍청이(dummy) 인증서를 뜻하는 것이 아닙니다. 일반적으로 더미 인증서에는 지정된 환경에 SSL을 설정하고 그 기능을 테스트하는데 임시적으로 사용될 수 있는 플레이스홀더로서 작동하는 "가상의" 정보를 포함하고 있습니다. Integrated Solutions Console은 더미 인증서와 서버 및 클라이언트 트러스트와 키 파일을 제공합니다.

 

그러면 이제, 인증서를 얻은 후에는 어떻게 해야할까요?

 

 

SSL 인증

인증서를 획득한 후에는 인증을 받아야 합니다. 두 가지 유형의 SSL 인증이 있습니다:

 

서버 인증

SSL 서버 인증은 서버의 신원을 확인할 수 있도록 합니다. SSL을 실행하는 클라이언트 소프트웨어는 퍼블릭 키 암호라는 표준 기술을 사용하여 서버의 인증서와 퍼블릭 ID가 유효하고, 신임을 받는 CA의 클라이언트 리스트에 있는 인증서 기관에서 발행된 것인지를 검사합니다.

만약 사용자가 네트워크를 통해서 신용카드 번호를 보내고, 서버가 이를 받았는지 검사하고 싶을 경우 이와  같은 확인은 중요합니다.

 

클라이언트 인증

SSL 클라이언트 인증은 사용자의 신원을 서버가 확인할 수 있도록 합니다. 서버 인증에 사용되었던 것과 같은 기술을 사용하여, SSL을 실행하는 서버 소프트웨어는 클라이언트의 인증서와 퍼블릭 ID가 유효하고, 신임을 받는 CA의 클라이언트 리스트에 있는 인증서 기구에서 발행된 것인지를 확인합니다. 만약 서버가 기밀 금융 정보를 고객에게 보내고 있는 은행이고, 수신자 신원을 확인해야 하는 경우 이러한 확인은 중요합니다.

 

그림 1. 인증절차 

 

클라이언트/서버 인증 절차

 

 

SSL이 중요한 이유

왜 이것이 문제가 되는가? 오픈 통신 채널을 통해 안전하게 데이터를 전송하는 것은 현대적인 IT 시스템을 관리하는데 있어 필수적인 요소이며, SSL은 이러한 보안을 확립하는데 도움이 되는 강력한 프로토콜이기 때문입니다.

 

 

 

출처

 

데이터 기술 동향 < 정보마당 - 한국데이터산업진흥원

SSL on ISC, Part 1: SSL은 무엇이며, 왜 이것을 사용해야 하는가? Integrated Solutions Console을 사용하여 오픈 통신 채널을 통한 데이터 보안 이룩하기 암호화, 인증서 기반 인증, 보안 협상을 제공하는 Secur

www.kdata.or.kr

 

LIST