HTTP & HTTPS
HTTP : Hypertext Transfer Protocol : HTML 전송을 위한 통신규약
HTTP 동작 순서 : TCP → HTTP
HTTPS 동작 순서 : TCP → SSL → HTTP
SSL(Secure Socket Layer)프로토콜 = TLS(Transport Layer Security) : 정보를 암호화시킴
- 대칭키 : 암호화 키 = 복호화 키
- 공개키-개인키 : 두개의 키/ 공개키-암호화, 개인키(비밀키)-복호화
- SSL 동작법 : 클라이언트-서버 주고받는 실제 데이터 = 대칭키 / 대칭키의 키 = 공개키
RSA : SSL/TLS에 가장 많이 사용되는 공개키 암호화 알고리즘 (이름 뜻 : 개발한 세 사람의 성을 따서 만든거;)
- 공개키로 암호화 > 개인키로만 복호화 / 개인키로 암호화 > 공개키로만 복호화
모든 사이트가 HTTPS로 하지 않는 이유 : 암호화 과정으로 인한 속도 저하 발생
GET & POST
가장 많이 사용되는 HTTP 메서드로 HTTP 프로토콜을 이용해 서버에 무언가 요청할 때 사용하는 방식이다.
GET (select) : 데이터 조회, 검색
URL을 통해 모든 파라미터를 전달 > 주소창에 전달 값이 노출됨. URL 길이가 제한이 있기 때문에 전송 데이터 양이 한정되어 있고, 형식에 맞지 않으면 인코딩해서 전달해야 함POST (수행) : 데이터/서버의 값이나 상태 변경 (등록, 수정)
HTTP BODY에 데이터를 포함해서 전달 > 웹 브라우저 사용자의 눈에는 직접적으로 파라미터가 노출되지 않고 길이 제한도 없음.
하기 메소드들은 POST 메소드로도 구현 가능하다. 좀더 기능을 세부화 했다고 보면 된다.
- PUT: 리소스를 대체, 해당 리소스가 없으면 생성
- PATCH: 리소스 부분 변경
- DELETE: 리소스 삭제
그외
- HEAD: GET과 동일하지만 메시지 부분을 제외하고, 상태 줄과 헤더만 반환
- OPTIONS: 대상 리소스에 대한 통신 가능 옵션(메서드)을 설명(주로 CORS에서 사용)
- CONNECT: 대상 자원으로 식별되는 서버에 대한 터널을 설정
- TRACE: 대상 리소스에 대한 경로를 따라 메시지 루프백 테스트를 수행
Reference
반응형
'CS Interview > Network' 카테고리의 다른 글
[TCP] 흐름제어, 혼잡제어, 오류제어/ 슬라이딩 윈도우, ARQ (GBn, SR), AIMD (0) | 2021.05.06 |
---|---|
[TCP] 연결, 해제, FLAG/ 3-way handshake, 4-way handshake (0) | 2021.05.04 |
TCP와 UDP (0) | 2021.05.04 |