7장 웹을 안전하게 하는 HTTPS
7.1 HTTP의 약점
7.1.1 평문이기 때문에 도청 가능
7.1.2 통신 상대를 확인하지 않기 때문에 위장 가능
7.1.3 완전성을 증명할 수 없기 때문에 변조 가능
7.2 HTTP + 암호화 + 인증 + 완전성 보호 = HTTPS
7.2.1 HTTP에 암호화와 인증과 완전성 보호를 더한 HTTPS
7.2.2 HTTPS는 SSL의 껍질을 덮어쓴 HTTP
7.2.3 상호간에 키를 교환하는 공개키 암호화 방식
7.2.4 공개키가 정확한지 아닌지를 증명하는 증명서
7.2.5 안전한 통신을 하는 HTTPS의 구조
1) HTTP의 약점
1.1) 평문이기 때문에 도청 가능
1.2) 통신 상대를 확인하지 않기 때문에 위장 가능
- 누구나 리퀘스트가 가능하다.
- 네이버에 접속했는데, 네이버의 서버가 아닌, 다른 해커의 서버에서 리퀘스트 해도 알 방법이 없다
- 근데 이건, 브라우저가 기본적인 보안검사를 하기 때문에(인증서..) 브라우저에 보이는 화면이 다를 수 있다.
- 다른 해커의 서버를 위장 서버라고 한다.
- 완전성의 증명은 불가능하다
- 수신한 내용이 다를지도 모른다
- 변조방지를 위해서 쓰이는 해쉬값 : MD-5, SHA-1
1.3) 완전성을 증명할 수 없기 때문에 변조 가능
2) HTTP + 암호화 + 인증 + 완전성 보호 = HTTPS
2.1) HTTP에 암호화와 인증과 완전성 보호를 더한 HTTPS
- HTTPS 가 바로, 기존의 HTTP에 보안을 더한것인데
2.2) HTTPS는 SSL의 껍질을 덮어쓴 HTTP
- 여기서 말하는 보안이 바로 SSL, TLS 임
- 공개키, 비공개키 두가지 방식이 있는데 공부해라
2.3) 상호간에 키를 교환하는 공개키 암호화 방식
2.4) 공개키가 정확한지 아닌지를 증명하는 증명서
2.5) 안전한 통신을 하는 HTTPS의 구조
- HTTPS 구조는 더럽게 복잡하다
- SSL은 느리다