SSL/TLS 인증서와 보안키
SSL/TLS 통신을 하려먼 Client와 Server는 인증서(Certificate), 개인키(Private Key, 비밀키) 그리고 공개키(Public Key)를 보유하고 있어야 한다.
여기서 인증서와 공개키는 인증과 암호화를 위해 상대방에게 전달해 주는 내용이며, Client 인증서는 프로토콜 버전이나 암호화 방식에 따라 옵션적으로 필요하다.
1. SSL/TLS 인증서와 보안키 누가 만들어주나?
개인키, 공개키 | IOT 제품에서는 주로 서버에서 만들어 줌 → 개인키(외부노출 금지), 공개키(아낌없이 공개, 인증서의 내용에도 포함되어 있음) |
클라이언트 인증서 | IOT 제품에서 클라이언트 인증서가 필요할 경우에는 주로 서버측에서 서명해준 인증서를 사용 |
서버 인증서 | 신뢰있는 기관(Root CA or CA/ICA)에서 발급 사용→인증서는 인증기관의 비밀키로 서명되고, 내용으로 서명기관의 리스트, 서버의 공개키, 등이 포함 |
⊕ Self Signed Certificate→공인 인증기관의 서명이 없이 자신의 개인키로 서명한 인증서로 주로 테스트(신뢰 없음)용 으로 사용, 신뢰있는 자체 서명 인증서는 Root CA 인증서.
2. 인증서와 보안키 생성 연습
PC 연습에서 OpenSSL를 이용하여 테스트 목적의 인증서와,보안키를 만들어 SSL/TLS 통신 연습을 할것이다. → § TCP, SSL/TLS, 키와 인증서 만들기 | momoiot
인증서와 보안키에 대한 참조 웹싸이트: SSL과 인증서 구조 이해하기