2023. 1. 6. 15:59ㆍ카테고리 없음
HTTP
-Hypertaxt Transfer Protocol(정보를 담고 있는 문서/파일)
-Hypertext 문서인 HTML을 전송하기 위한 통신규약
-암호화 도지 않은 방법으로 데이터를 전송 -> 메세지 감청이 매우 쉽다
HTTPS
-Hypertaxt Transger protocol over (SSL)
-보완이 강화된 HTTP
HTTPS VS SSL
-HTTPS와 SSL를 같은 의미로 혼동하는 경우가 많다.
-인터넷 위에서 웹이 작동 -> 유사 개념 -> SSL위에서 HTTPS가 작동한다.
통신 계층 과 SSL/TLS관계
응용계층 여기서 SSL/TLS가 있다 통과시 "HTTPS"
HTTP ( SSL)인증서?
-네트워크 통신 암호화 목적
1. 메세지가 노출되더라도 해석할수 없게 한다.
- 암호와 알고리즘으로 해결, 메세지를 맘대로 훔쳐가도 된다, 하지만 해석은 안됨
- 접속하려는 서버는 믿을만 하다.
- 메세지를 함부로 바꾸지 못한다.
SSL 인증서의 목표
-접속한 서버가 신뢰할수 있는지 보장
-SSL 통신에 사용될 공개키(서버)를 클라이언트에게 제공
-인증서
-> CA이름 , 서비스 도메인 , 서버측 공개키
CA
-클라이언트가 접속한 서버가 의도한 서버인지 보장하는 기관
EX) 은행 인증서 (유효 기간)
구글 HTTPS 정책 훝어보기
안전하지 않은 혼합 콘텐츠
-수동 혼합 콘텐츠
EX) 이미지 , 비디오 , 오디오 ,컨텐츠
-활성 혼합 콘텐츠
EX)스크립트, 스타일 시트, CSS
-> 구글은 기본적으로 HTTPS 로 보완성을 유지하지만 사용자에 의해서 2가지 상황이 발생할 경우 HTTP로
전달 되기에 보완성이 떨어지는 문제가 발생할 수 있다.
SSL 인증서 작동원리 뽀개기
*SSL암호 통신
-대칭키 방식과
-비대칭키 방식을 모두 사용한다.
대칭키 알고리즘
EX) "사랑해" 메시지를 보내게 될시 서로 같은 비밀키를 사용해서 그대로 "사랑해"를 수신자가 받을수 있다.
비대칭키 알고리즘
EX)"사랑해 "메세지를 보내게 될시 , 수신측은 본인이 가지고 있는 비밀키가 있고 그것만으로 발신자의 메시지를 풀수있다.
활용 사이트 : https://www.devglan.com/online-tools/rsa-encryption-decryption
-> 공개키/ 프라이빗 키를 생성수 , 텍스트를 내가 적고 공개키로 알고리즘 돌리면 변환된 값이 나온다 그것을
수신측에 보내면 그것을 프라이빗 키로 돌렸을때 내가 보낸 "text를 확인 할수 있다"
SSL 기본원리
- 브라우저가 서버에 접속 -> 서버 자신의 인증서를 제고 ㅇ
-서버가 제공한 인증서가 CA리스트에 포함되어 있는지 확인
-의문점
인증서에 담겨있는 서버의 공개키는 왜 있는 건가?
실제 SSL작동
-암호화 방식
실제 데이터-> 대칭키 암호화
대칭키의 키 -> 서버의 공개키
-3단계로 구성
1.악수 (Hand shaking)
2.데이터 전송
3.섹션 종료
대칭키는 빠르지만 , 보안에 취약하다.
비대칭키는 이상적이지만 , 비용에 많이 든다
-SSL 솔루션
초반에 약갼의 삽질을 통해 서버와 클라이언트만 알 수 있는 대칭키를 만들자
3-Way -handshake 통해 둘만 알수 있는 값 즉... pre-master값 생성
이후에는 그 대칭키를 이용해서 빠르게 통신하쟈
=pre-master 값을 통신 세션의 대칭키 값으로 그대로 적용
참고:https://www.youtube.com/watch?v=H6lpFRpyl14
https://www.youtube.com/watch?v=cAInFAY_Ki8&list=PLRUS1nW-CfneHE_Ajr-iYMdyuCUIp1e_r