본문 바로가기
나의 개발일지/CS

[jwt] What is JSON Web Token?

by stella_gu 2022. 7. 17.

jwt(JSON Web Token)란?

 

일단 공식문서를 보자

영어?

문제없죠

 

우리의 친구, 파파고가 있으니까요.

 

그만보자..

 

 

 

 JWT란?

  • 당사자 간에 정보를 JSON 객체로 안전하게 전송하는 컴팩트하고 독립적인 방법을 정의하는 개방형 표준(RFC 7519)이다.

 

  JWT의 구조

xxxxx.yyyyy.zzzzz

  • Header . Payload . Signature
    • Header는 토큰의 타입과 해시 암호화 알고리즘으로 구성되어 있습니다. 첫째는 토큰의 유형 (JWT)을 나타내고, 두 번째는 HMAC, SHA256 또는 RSA와 같은 해시 알고리즘을 나타내는 부분입니다.
    • Payload는 토큰에 담을 클레임(claim) 정보를 포함하고 있습니다. Payload 에 담는 정보의 한 ‘조각’ 을 클레임이라고 부르고, 이는 name / value 의 한 쌍으로 이뤄져있습니다. 토큰에는 여러개의 클레임 들을 넣을 수 있습니다. 클레임의 정보는 등록된 (registered) 클레임, 공개 (public) 클레임, 비공개 (private) 클레임으로 세 종류가 있습니다.
    • Signature는 secret key를 포함하여 암호화되어 있습니다.

 

[참고] http://www.opennaru.com/opennaru-blog/jwt-json-web-token/

 
  1. 사용자가 id와 password를 입력하여 로그인을 시도합니다.
  2. 서버는 요청을 확인하고 secret key를 통해 Access token을 발급합니다.
  3. JWT 토큰을 클라이언트에 전달 합니다.
  4. 클라이언트에서 API 을 요청할때  클라이언트가 Authorization header에 Access token을 담아서 보냅니다.
  5. 서버는 JWT Signature를 체크하고 Payload로부터 사용자 정보를 확인해 데이터를 반환합니다.
  6. 클라이언트의 로그인 정보를 서버 메모리에 저장하지 않기 때문에 토큰기반 인증 메커니즘을 제공합니다.
 
 
 
 
 

 

[참고] jwt.io

 

JWT.IO

JSON Web Tokens are an open, industry standard RFC 7519 method for representing claims securely between two parties.

jwt.io

[참고] https://velog.io/@ypo09/JWTJSON-Web-Token-%EB%9E%80-%EB%AC%B4%EC%97%87%EC%9D%B8%EA%B0%80

 

JWT(JSON Web Token) 란 무엇인가?

※ 참고 자료.JWT.IO - JSON Web Tokens Introduction\[JWT] JSON Web Token 소개 및 구조\[Server] JWT(Json Web Token)란?JSON Web Token (JWT) 는 웹표준(RFC 7519)으로서 두 개체에

velog.io

[참고] 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