인증
1. BASIC 인증
- ① 클라이언트 : 리퀘스트
② 서버 : 401 응답, 인증 요청
③ 클라이언트 : ID / PW (Base64 : 암호화 X, 쉽게 복호화)
④ 서버 : 성공 200, 실패 401 응답
2. DIGEST 인증
- 챌린지 코드를 사용해서 리스폰스 코드를 계산, 이 값을 송신하여 인증
- ① 클라이언트 : 리퀘스트
② 서버 : 401 응답 인증 요청 + 패스워드 & 챌린지코드 (nonce) 송신 , realm/nonce 필수
③ 클라이언트 : 패스워드, 챌린지코드에서 리스폰스 코드를 계산해서 송신
④ 서버 : 성공 200, 실패 401 응답
3. SSL 클라이언트 인증
- 클라이언트 인증서, 배포 설치 필요 → 비용발생
- 2-factor 인증
4. 폼 베이스 인증
- 사전 등록한 유저 정보로 웹 애플리케이션 측에 송신, 검증
- 유저에게 세션ID 발행하고 인증 상태를 기록 → 쿠키로 세션 ID 검증
HTTP + 기능추가 프로토콜
1. SPDY
- 병목현상 해소 목적
- HTTP 클라이언트가 늘 서버로 정보 확인요청, 갱신X => 불필요한 통신 발생
- 클라이언스만 리퀘스트 가능, 리스폰스만은 X
- Ajax , Comet 로 사용성 개선
- HTTP 포르토콜의 근본적 제약 개선필요
2. WebSocket
- 웹 서버와 클라이언트가 한번 접속을 확립하면 그 뒤의 통신을 모두 전용 프로토콜로 하는 방식
3. HTTP/2.0
- SPDY
- HTTP Speed+Mobility
- Hetwork-Friendly HTTP Upgrade
4. WebDAV
- Web-based Distributed Authoring and Versioning
- 직접 파일 복사나 편집 작업등을 할 수 있는 분산 파일 시스템
- 추가 개념 : 컬렉션, 자원, 프로퍼티, 잠금
- 추가 메소드 : PROPFIND. PROPPATCH, MKCOL, COPY, MOVE, LOCK, UNLOCK
- 추가 상태코드 : 102 Processing, 207 Multi-Status, 422 Unprocessable Entity, 424, 507