HTTP HTTPS 간단정리

Seokwon Han·2020년 11월 4일
1

CS 지식 정리

목록 보기
1/6

HTTP란?

  • 텍스트 기반의 통신 규약으로 인터넷에서 데이터를 주고받을 수 있는 프로토콜

HTTP의 동작방식

HTTP는 연결을 유지하지 않는 프로토콜이기 때문에 요청과 응답으로 동작한다.
따라서 클라이언트가 서버로 요청을 보내면 서버는 클라이언트로 응답을 보내는 식으로 통신을 하게 된다.

요청(Request) 메소드 종류

  • GET : 자료를 요청
  • HEAD : GET과 동일하지만 서버에서 Body를 Return하지않음
  • POST : 자료의 생성을 요청
  • PUT : 자료의 수정을 요청
  • DELETE : 자료의 삭제를 요청
  • OPTION : endpoint가 허용하는 메소드목록을 조회
  • TRACE : 최종 자원까지 경로를 따라 메세지 루프백 테스트를 수행

GET vs POST

  • GET : 데이터를 읽거(Read)나 검색(Retrieve)할 때 사용. 요청 성공 시 200 (OK) 응답코드 리턴한다. 같은 요청을 여러번 해도 결과가 달라지지않는다.
  • POST : 리소스를 생성(Create)할 때 사용. 요청 성공 시 201 (Created) 응답코드를 리턴한다. 같은 요청을 여러번 했을 때 결과가 같다고 보장할 수 없다.

상태코드 (Status Code)

HTTP 응답은 상태코드와 함께 반환되는 코드로 클라이언트에게 요청에 대한 결과를 알려주는 숫자이다.

HTTPS

HTTP는 클라이언트의 요청을 암호화되지 않은 상태로 주고받을 경우 해커에 의해 도청되기가 쉽다. HTTPS는 SSL 프로토콜 위에서 돌아가는 프로토콜으로 보안이 강화된 HTTP이다.

HTTPS의 암호화 원리

  • 공개키 : A키로 암호화를 하면 B키로 복호화를 할 수 있고, B키로 암호화를 하면 A키로 복호화를 할 수 있다.

  • 대칭키 : 동일한 키로 암호화와 복호화를 할 수 있다.

SSL 인증서

SSL이란 Secure Socket Layer의 약어로 클라이언트와 서버간의 통신을 제3자가 보증해주는 전자화된 인증서이다. 통신에 사용할 공개키를 클라이언트에게 제공해준다.

참고사이트
1. https://opentutorials.org/course/228/4894
2. https://jeong-pro.tistory.com/89
3. https://www.zerocho.com/category/HTTP/post/5b344f3af94472001b17f2da

profile
개발하면서 새로 배우거나 경험한 내용을 정리하고 그 외의 공부한 내용을 기록하는 곳입니다.

0개의 댓글