JWT

onebbu·2024년 5월 23일
0

Study(개념 정리)

목록 보기
2/7

JWT

JSON 객체를 사용해서 토큰 자체에 정보들을 저장하고 있는 Web Token

구성

Header(헤더), Payload(내용), Signature(서명) 3가지로 구성되어 있습니다.

typ와 alg로 구성되어 있습니다.

typ: 토큰의 타입을 지정합니다.

alg: 알고리즘 방식을 지정하며, 서명(signature) 및 토큰 검증에 사용합니다.

Payload

토큰에서 사용할 정보의 조각들인 클레임이 담겨 있습니다.

클레임은 등록된 클레임(Registered Claim), 공개 클레임(Public Claim), 비공개 클레임(Private Claim)으로 구성되어 있습니다.

특징

Header와 Payload 모두 Base64로 인코딩 되어 있으며, 디코딩 하면 내용을 읽어낼 수 있습니다.

Header에는 알고리즘과 타입, Payload는 데이터를 담고, Signature를 이용하여 검증합니다.

Payload에 노출될 수 있는 정보를 담아서는 안됩니다.

장점

  • 중앙 인증 서버
  • 데이터 스토어에 대한 의존성 없음
  • Base64 URL Safe Encoding을 사용하기 때문에 URL, Cookie, Header 모두 사용 가능

단점

  • Payload의 정보가 많아지면 네트워크 사용량(traffic) 증가하기 때문에 설계 시 주의가 필요
  • 토큰이 클라이언트에 저장되므로 서버에서 클라이언트의 토큰을 조작할 수 없다.

레퍼런스

JWT 기본개념

JWT.IO

[Server] JWT(Json Web Token)란?

profile
기록하는 습관

0개의 댓글