TIL #43 HTTP와 SSL

채록·2021년 2월 1일
0

Web

목록 보기
2/3

알아보자!

  • HTTP vs HTTPS
  • SSL (간단 개념)

HTTP와 HTTPS


HTTP : Hypertext Transfer Protocol

HTML을 전송하기 위한 통신규약

"http:// 뒤에 오는 domain에 해당되는 컴퓨터와 통신을 할 때 HTTP (protocol)을 이용할 것이다!"

HTTPS : HTTP + "Over Secure Socket Layer"

보안이 강화된 HTTP


HTTP 와 SSL : 계층적 구조

SSL 이라는 통신방법 위에서 동작하는 서비스 중 하나가 HTTP 이다.
HTTP 가 SSL을 이용하게 되면 HTTPS가 되는 것이다.




SSL

암호화 통신에 사용되는 규약

TLS과 같은 말이다. (정식 명칭이 TLS)


SSL 에서는 데이터를 암호화 해서 전송한다.

이때 대칭키 암호화 / 비대칭키 암호화 방식이 있다.

SSL 을 따르면...
1) 통신 내용이 제 3자에게 (a.k.a 공격자) 노출되는 것을 막을 수 있다. => 암호화 수반
2) client가 접속하려는 server가 신뢰할 수 있는 것인지 판단할 수 있다.
3) 통신 내용의 악의적인 변경을 방지할 수 있다. => 1번 내용과 동일


1) 대칭키 방식 (Symmetric key)

암호를 만드는 쪽(암호화 쪽) 과 암호를 푸는 쪽(복호화 쪽) 모두 동일한 key를 갖고 있는 방식

가 A라는 파일을 암호화 하여 B파일의 형태로 만들었다.
가 B파일을 멀리 있는 상대에게 전송한 후 상대가 B를 A로 복호화 하여 확인한다.
이를 위해 상대에게 KEY 를 알려주어야 한다.
=> 치명적 단점!! : KEY가 함께 전달된다 = 제 3자가 KEY를 가로챌 수 있다. (대칭KEY 전달의 어려움)


2) 공개키 방식 (Asymmetric key / 비대칭키)

  • 기존의 대칭키 방식을 개전
  • 기존의 대칭키 방식이 할수 없던 것을 할 수 있다. (의미상으로)
  • 대칭키와 달리 KEY 값이 두개이다 (공개키 / 비공개키)

두개의 키 = A /B 일때
if) A 키로 암호화 => B 키로 복호화
if) B 키로 암호화 => A 키로 복호화


=> 이런 식으로 두개의 KEY가 작용할때 각각 공개키(public key) / 비공개키(privatekey / 개인키)로 구분짓는다.

공개키의 의의 1 : 보안!!

비공개키를 갖고있고, 상대에게 공개키를 알려준다.
그럼 상대가 준 공개키로 정보를 암호화 해서 에게 제공한다.
는 갖고 있던 비공개키로 복호화 한다.

공개키의 의의 2: 전자서명!!

비공개키를 이용해 정보를 암호화 한 후 상대에게 공개키와 함께 암호화 된 정보를 제고안다.
상대는 제공받은 공개키로 복호화 한다.

=> 이때 제 3자가 KEY를 가로챌 수 있다!! 그러나 이 경우 데이터 보호의 목적이 아니라 공개키가 데이터를 제공한 의 신원을 보장시켜준다.

profile
🍎 🍊 🍋 🍏 🍇

0개의 댓글