JWT 디코더

JSON Web Token을 붙여넣어 헤더와 페이로드를 정렬된 JSON으로 확인하세요. exp, iat, nbf 같은 타임스탬프는 읽기 쉬운 날짜로 변환되며, 만료된 토큰은 표시됩니다.

JWT의 구조

JWT는 점으로 구분된 세 부분 header.payload.signature로 구성됩니다. 헤더와 페이로드는 패딩 없는 Base64URL로 인코딩된 JSON 객체입니다. 서명은 헤더에 지정된 알고리즘(alg), 예를 들어 HS256 또는 RS256으로 앞의 두 부분에 대해 계산됩니다.

등록된 클레임

클레임의미
iss발급자
sub주체 (보통 사용자 ID)
aud대상(Audience)
exp만료 시각 (1970년 이후 경과 초)
nbf이 시각 이전에는 유효하지 않음
iat발급 시각
jti고유 토큰 ID

JavaScript로 JWT 디코딩하기

const [h, p] = token.split('.');
const json = (s) => JSON.parse(new TextDecoder().decode(
  Uint8Array.from(atob(s.replace(/-/g, '+').replace(/_/g, '/')), (c) => c.charCodeAt(0))));
console.log(json(h), json(p));

자주 묻는 질문

여기에 JWT를 붙여넣어도 안전한가요?

디코딩은 전적으로 브라우저에서 이루어지며 서버로 전송되는 것은 없습니다. 그래도 운영 환경 토큰은 비밀로 취급하세요.

디코딩 시 서명도 검증하나요?

아니요. JWT는 Base64URL일 뿐이라 누구나 디코딩할 수 있습니다. 검증에는 비밀 키나 공개 키가 필요하며 서버에서 수행해야 합니다.

관련 도구 및 가이드

댓글 (0)

“JWT 디코더”에 대한 질문, 아이디어, 버그가 있으신가요? 댓글을 남기거나 도구를 평가하거나 다른 사람에게 답글을 달아 주세요.

아직 댓글이 없습니다. 첫 번째로 의견을 남겨 주세요!

댓글 남기기

이 도구 평가:
Esc
↑ ↓ 이동↵ 열기Esc 닫기