web/NETWORK

HTTP
HTTP (HyperText Transfer Protocol)는, HTML과 같은 문서를 전송하기 위한 Application Layer 프로토콜이다. 프로토콜은 컴퓨터 간의 통신을 원활하게 하기 위해 지키기로 한 규약이다. Client - Server 아키텍처에서 클라이언트가 HTTP messages 양식에 맞춰 요청을 보내면, 서버도 HTTP messages 양식에 맞춰 응답을 한다. HTTP는 특정 상태를 유지하지 않는 무상태성 (Stateless)의 특징을 갖고 있다. HTTP messages HTTP messages는 클라이언트와 서버 사이에서 데이터가 교환되는 방식이고 다음의 2 가지 유형이 있다. 요청 ( Request ) 응답 ( Responses ) HTTP messages는 몇 줄의 텍스..

HTTPS 인증/보안 기초 정리
HTTPS Hyper Text Transfer Protocol Secure socket layer(HTTPS)는 HTTP over SSL(TLS), HTTP over Secure라고도 불리며, 통상적인 HTTP 요청을 SSL 혹은 TLS 라는 알고리즘을 통하여 HTTP가 통신하는 과정에서 데이터를 암호화하여 전송하는 방법이다. HTTP + SSL 주목적으로는 '암호화'에 있다. 데이터가 암호화되어 전송되기 때문에 정확한 Key로 decoding 하기 전 까지는 내용을 알 수 없다. HTTPS는 암호화를 위해 [대칭 / 비대칭 키 알고리즘]을 사용한다. handshaking 과정에서 [비 대칭키]를 사용하여 인증서에 [대칭 키]를 보내고 해당 인증서에서 대칭키를 안전하게 확인하였다면 그 이후로는 대칭 키를..

브라우저의 작동 원리
택배배달 생각해보기( 판매자 - 포장 - 택배로이동 - 도착 - 포장까기 - 구매자 ) Client - Server 리소스가 존재하는 공간과 리소스를 사용하는 앱을 분리시킨 것 리소스 사용 앱( Client ) / 리소스 존재 공간 ( Server ) 일반적으로 서버는 리소스를 전달해 주는 역할만 한다. 리소스를 저장하는 공간을 별도로 마련해 두는데 이때 이 공간을 Database라고 한다 (DB) // 3-Tier Archietecture 클라이언트는 보통 플랫폼에 따라 구분됨 ( 웹사이트 (웹앱), 스마트폰/태블릿 앱, 데스크탑 앱) 서버는 어떤 작업을 하냐에 따라 종류가 달라짐 (파일서버, 메일서버, DB서버, 웹서버 등) 서버 통신과 API 클라이언트와 서버 간의 통신은 요청과 응답으로 구성됨. ..