브라우저에 URL을 입력하면?

yoo chang heon·2022년 3월 21일
0

Web

목록 보기
2/6

1. URL을 해석

URL 형식: Scheme://< user >:< password >@< host >:< Port >/< URL-Path>

2. DNS를 조회(Domain Name System)

  • DNS는 도메인과 IP주소를 서로 변환
  • DNS로 요청을 보내기 전에 브라우저 캐시와 hosts파일을 참조

3. 해당 IP가 존재하는 서버로 이동

  • 라우터를 이용해서 동적 라우팅

4. ARP로 MAC 주소로 변환

  • 논리 주소 IP => 물리 주소 MAC으로

5. TCP 통신을 통해 Socket 열기

  • 네트워크를 통해 해당 기기로 패킷을 전달
  • 3 way handshake
  • 요청이 수락되면 기기는 패킷을 받아 처리

6. 서버는 응답을 반환

  • HTTP 프로토콜로 들어온 패킷을 읽고 처리

7. 브라우저에서 렌더링

  • HTML을 읽어 DOM Tree 구축 => DOM Tree를 이용하여 화면에 그림
  • 스크립트 실행

추가과제

HTTP vs HTTPS

HTTP란?

HTTP(HyperText Transfer Protocol)는 W3 상에서 정보를 주고 받을 수 있는 프로토콜로 주로 HTML 문서를 주고 받는데 쓰인다.

HTTPS란?

HTTPS(HTTP Secure)는 HTTP 프로토콜의 암호화된 버전이다.
클라이언트와 서버 간의 모든 커뮤니 케이션을 암호화하기 위해 SSL(Secure Sockets Layer) 이나 TLS(Transport Layer Security)을 사용한다. 전자 상거래에서 널리 쓰인다.
소켓 통신에서 일반 텍스트를 이용하는 대신에 SSL이나 TLS 프로토콜을 통해 세션 데이터를 암호화한다.

HTTPS 사용 이유

서버와 클라이언트가 주고 받는 메시지를 암호화하여 제 3자가 볼 수 없다.

HTTPS 사용 시 추가 되는 것

SSL, TLS

SSL : Secure Sockets Layer (보안 소켓 계층)

SSL은 웹사이트와 브라우저 사이에 전송된 데이터를 암호화하여 인터넷 연결을 보안을 유지하는 표준 기술.

TLS: Transport Layer Security (전송 계층 보안)

TLS는 가장 최신 기술로 더 강력한 버전의 SSL. 하지만 SSL이 더 일반적으로 사용되는 용어이기에 보안 인증서는 여전히 SSL이라 부름. (점점 TLS로 넘어가는 추세)
(SSL과 TLS는 같은 뜻으로 말하며 SSL3.0을 참고로 하여 표준화 된 것이 TLS 1.0이다. SSL의 최신 버전이 TLS)

SSL 암호화 종류

대칭키

  • 암호화와 복호화에 동일한 키를 사용하는 방법

단점) 클라이언트와 서버는 대화를 하기 위해 대칭키를 알고 있어야 한다. \Rightarrow 키 배송 문제, 배송 중 대칭 키 유출 시 무용지물 \Rightarrow 공개키 기법

공개키

  • 공개키와 비밀키 2개의 키를 가짐. 비밀키는 자신만이 소지, 공개키는 타인에게 제공
  • 공개키로 암호화하면 비밀키로 복호화, 비밀키로 암호화하면 공개키로 복호화
  • 공개키는 공개되어 있으며, 보통 디지털 인증서에 포함 (전자서명)

단점) 계산이 느림

0개의 댓글