본문 바로가기
IT Network System/Network

인증 기관(CA)

by Skills 2020. 12. 17.
728x90

✔️ CA(Certificate Authority)

CA를 정의하자면 웹 사이트가 신뢰할 수 있는 사이트인지 아닌지를 구분해주는 인증서를 발급해주는 기관이다.

 

출처 : https://m.blog.naver.com/alice_k106/221468341565

 

✔️ 신뢰 가능한 인증 기관(Root CA)

 - 이 세상에서는 무조건 신뢰할 수 있는 기관이 몇 군데 존재한다. 그 기관들은 보통 최상위 인증 기관이라고 불리며, Root CA라는 인증서를 발급하는 기관이다.

 - Root CA는 본인들만의 고유한 비밀 키를 가지고 있고, 이에 대응하는 공개 키를 전 세계에 배포한다. 그리고 세상 사람들은 암묵적으로 이 기관들은 사용할 수 있음을 서로 약속한다. (위의 사진처럼 Geotrust의 공개 키로 복호화가 가능한 데이터는 Geotrust의 비밀키로 암호화되었기 때문에 신용할 수 있는 데이터라고 간주한다.)

 - 일반적으로 신뢰 가능하다고 여겨지는 기관(ex. Geotrust)의 공개 키는 웹 브라우저인 크롬, 파이어폭스 등에 내장되어있다.

 

✔️ 인증서를 사용하는 이유

 - 우리가 네트워크를 통해 패킷을 주고받을 때 누군가가 우리의 패킷을 훔쳐(Sniffing)볼 수 있다. (패킷을 훔쳐본다는 것은 우리가 입력한 데이터, 비밀번호와 같이 민감한 정보를 열람할 수 있다는 것이다.)

 - 네트워크가 암호화 된다면 공격자가 패킷을 열람하더라도 데이터 유출을 막을 수 있다. 오늘날 가장 많이 쓰이는 암호화 방식이 SSL/TLS이다. ("인증서 = 당신이 신뢰할 수 있는 사람이냐"를 확인한다.)

 

✔️ SSL(Secure Sockets Layer)

 - 두 연결자 사이 인증서를 이용한 보안된 통신을 해주는 프로토콜이다.

 

✔️ 신뢰된 웹 사이트

 

출처 : https://m.blog.naver.com/alice_k106/221468341565

 - 웹 브라우저의 주소 옆에 자물쇠는 인증서 CA를 통해 브라우저 <-> 웹 서버 간 보안 연결이 수립되었다는 것을 의미한다.

 - 인증서를 사용하지 않은 웹 서버의 경우 '주의 요함'이라는 문구가 출력되는데, 이는 데이터가 암호화되지 않은 채로 전송되고 있으며 네트워크에 존재할 수 있는 공격자가 스니핑, 스푸핑 등을 통해 패킷을 훔쳐볼 경우 데이터가 전부 유출될 수 있음을 뜻한다.

 

✔️ 인증서 종류

 - PEM : 주로 사용하는 인증서 포맷 방식 (다른 방식으로는 DER이 있음)

 - CRT, CER : 인증서 파일

 - REQ, CSR : 인증 요청 파일 (인증기관으로 보내 인증서를 발급하게 하는 일종의 신청서)

 - KEY : 인증서 키 파일

 - PKCS#12 : .pfx .p12등의 확장자로 저장됨. 인증서, 개인키 내용을 파일 하나에 모두 담고 있고 백업 또는 이동용으로 주로 사용

 

✔️ 키 종류

 - 공개키 : 공개해도 되는 키로써 이 키를 가지고 암호화를 수행할 수 있다. (개인키와 함께 사용)

 - 개인키 : 공개키로 암호화된 파일을 복호화 할 때 사용하는 키로써 노출되면 안 된다. (공개키와 함께 사용)

 - 대칭키 : 암호화와 복호와에 같은 키를 사용하는 방식이다.

 - 비대칭키 : 암호화할 때와 복호화할 때의 키가 서로 다른 키를 의미한다.

  A의 공개키를 이용하여 암호화된 데이터는 A의 개인키로만 복호화가 가능하다.

  A의 개인키를 이용하여 암호화된 데이터는 A의 공개키로만 복호화가 가능하다.

 

✔️ SSL 인증 과정

 - SSL 통신을 위해서 사용자와 사이트, 인증기관이 필요하다.

① 사이트가 자신의 정보와 공개키를 합쳐서 인증 요청서를 만든다.

② 인증기관이 자신의 개인키로 암호화하여 인증서를 만들고 사이트에게 발급한 뒤 사용자에게 자신의 공개키를 제공한다.

③ 사용자가 사이트에 접속 요청을 하면 사이트는 발급받은 인증서를 전달하고 사용자는 인증기관에서 받은 공개키로 사이트 정보와 사이트 공개키를 얻는다.

④ 사용자는 얻은 사이트의 공개키로 자신의 대칭키를 암호화하여 사이트에 전송하고 사이트는 개인키로 복호화한다.

⑤ 인증서를 이용해 안전하게 얻은 대칭키로 서로 암호문을 주고받는다.

 

References

forgarden.tistory.com/21

www.sslcert.co.kr/guides/kb/54

m.blog.naver.com/alice_k106/221468341565

ssungkang.tistory.com/entry/

728x90

'IT Network System > Network' 카테고리의 다른 글

OSI 7 Layer  (0) 2021.01.19
Cloud  (0) 2021.01.19
DHCP  (0) 2021.01.17
DNS  (0) 2021.01.15
Proxy  (0) 2021.01.14

댓글