쿠키와 세션의 공통점 : 매번 페이지 로그인을 다시 하는 등의 번거로움을 해결하기 위해 클라이언트와 서버의 웹 통신 정보와 상태를 기록하여 다시 페이지에 접속했을때 그대로 로그인 정보가 남아있기 하기 위한 용도로 사용 됨.
쿠키와 세션의 차이점 :
- 쿠키 : 해당 접속 정보를 클라이언트에 저장함. 즉, 사용자가 임의로 변조하는 등으로 악용될 가능성이 있음 .
- 세션 : 해당접속 정보를 접속중인 웹서버에 저장함. 쿠키에 비해서 보안적으로 안전하지만, 서버의 자원을 소모된다는 단점이 있음.
세션쿠키란? : 쿠키의 종류중 하나로, 클라이언트와 웹서버의 활성화된 연결을 의미함. 로그오프 하거나 브라우저를 닫으면 만료된다.
JWT(Json Web Token) : 클라이언트와 서버 통신시 권한 인가를 위해 사용하는 Json 형태의 토큰이다. 웹서버의 경우에는 http나 url 헤더에 넣어서 전달하는게 가능고, 토큰은 비공개 서명 및 암호화를 사용하여 만들기 때문에 정보를 안전성 있게 전달 해준다. 또한 c, python, java 등 많은 프로그래밍 언어에서 범용적으로 지원한다.
JWT 구조 :
AAAAAA.BBBBBB.CCCCCC
해더 내용 서명
해더 : 토큰 타입과 해싱 알고리즘을 지정함.
내용 : 토큰에 담을 정보가 들어가 있음.
서명 : 헤더의 인코딩 값과, 정보의 인코딩 값을 합친 후 비밀키로 해쉬하여 생성함
JWT 동작 과정 :
1. 사용자가 id, password을 입력하여 로그인
2. 서버가 요청을 확인하고 비밀키를 통해 접근 토큰 지급
3. 서버가 클라이언트에게 JWT 전달
4. 클라이언트가 서비스 요청과 권한을 확인하기 위해 헤더에 JWT 전달
5. JWT 서명을 체크하고 JWT에서 사용자 정보를 확인
6. 클라이언트 요청에 대한 응답 전달
- 참고 자료
http://www.opennaru.com/opennaru-blog/jwt-json-web-token/
JWT (JSON Web Token) 이해하기와 활용 방안 - Opennaru, Inc.
JWT 는 JSON Web Token의 약자로 전자 서명 된 URL-safe (URL로 이용할 수있는 문자 만 구성된)의 JSON입니다.JWT는 속성 정보 (Claim)를 JSON 데이터 구조로 표현한 토큰으로 RFC7519 표준 입니다.
www.opennaru.com
[JWT] JSON Web Token 소개 및 구조 | VELOPERT.LOG
지난 포스트에서는 토큰 기반 인증 시스템의 기본적인 개념에 대하여 알아보았습니다. 이 포스트를 읽기 전에, 토큰 기반 인증 시스템에 대해서 잘 모르시는 분들은 지난 포스트를 꼭 읽어주세
velopert.com
https://ko.wikipedia.org/wiki/JSON_%EC%9B%B9_%ED%86%A0%ED%81%B0
JSON 웹 토큰 - 위키백과, 우리 모두의 백과사전
JSON 웹 토큰상태인터넷 표준최초 출판일2010년 12월 28일 (2010-12-28)마지막 버전RFC 75192015년 5월조직IETF약어JWT JSON 웹 토큰(JSON Web Token, JWT, "jot”[1])은 선택적 서명 및 선택적 암호화를 사용하여 데
ko.wikipedia.org
https://www.cookiepro.com/knowledge/what-is-a-session-cookie/
What is a Session Cookie?
A Session cookie expires once you log off or close the browser. They are only stored temporarily and are destroyed after leaving the page.
www.cookiepro.com
https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=allstar927&logNo=90162701183
웹브라우저의 쿠키란? (Persistent Cookie & Session Cookie)
웹브라우저의 쿠키란? (Persistent Cookie & Session Cookie) 웹사이트와 네티즌의 컴퓨터를 매개...
blog.naver.com
https://hahahoho5915.tistory.com/32
쿠키(Cookie), 세션(Session) 특징 및 차이
개요 > 쿠키(Cookie), 세션(Session) 각각 특성 및 차이 확실히 분류하기 메모 1. 공통점 : 웹 통신간 유지하려는 정보(ex:로그인 정보 등)를 저장하기 위해 사용하는 것(?) 2. 차이점 : 저장위치, 저
hahahoho5915.tistory.com
https://dreamhack.io/learn/166#6
로그인 | Dreamhack
dreamhack.io
'WHOIS > Web hacking' 카테고리의 다른 글
CORS, CSP 소개 및 webhacking.kr 21 문제 풀이 (0) | 2021.09.20 |
---|---|
LoS Gremlin, Cobolt, Goblin 문제 풀이 및 보안 패치 방안 (0) | 2021.09.07 |
REST API GET, POST, PUT, DELETE 정리 (0) | 2021.09.07 |