JWT 디코더

JWT(JSON Web Token)를 디코딩하여 Header, Payload, Signature를 확인합니다. 토큰의 만료 시간과 클레임 정보를 쉽게 확인할 수 있습니다.

표준 클레임 (Registered Claims)

iss - 발급자 (Issuer)
sub - 주제 (Subject)
aud - 대상 (Audience)
exp - 만료 시간 (Expiration)
nbf - 유효 시작 시간 (Not Before)
iat - 발급 시간 (Issued At)
jti - 토큰 ID (JWT ID)

JWT(JSON Web Token)란?

JWT는 JSON 형식의 데이터를 안전하게 전송하기 위한 개방형 표준(RFC 7519)입니다. 주로 웹 애플리케이션에서 사용자 인증과 정보 교환에 사용됩니다. JWT는 Header(헤더), Payload(페이로드), Signature(서명) 세 부분으로 구성되며, 각 부분은 점(.)으로 구분됩니다. 서버는 비밀키를 사용하여 서명을 검증함으로써 토큰의 무결성을 확인할 수 있습니다.

사용 방법

  1. JWT 토큰을 입력창에 붙여넣습니다. (붙여넣기 시 자동으로 디코딩됩니다)
  2. '디코딩' 버튼을 클릭하면 Header, Payload, Signature가 분리되어 표시됩니다.
  3. 토큰 상태(유효/만료)와 남은 시간을 확인할 수 있습니다.
  4. 클레임 상세 섹션에서 각 클레임의 의미와 값을 확인합니다.
  5. 서명을 검증하려면 비밀키를 입력하고 '검증' 버튼을 클릭하세요.

자주 묻는 질문

Q: JWT를 디코딩하면 내용이 노출되는데 안전한가요?

JWT의 Header와 Payload는 Base64로 인코딩되어 있어 누구나 디코딩할 수 있습니다. 따라서 민감한 정보(비밀번호 등)는 JWT에 포함하면 안 됩니다. JWT의 보안은 서명 검증에 있으며, 서명이 유효해야만 토큰을 신뢰할 수 있습니다.

Q: exp, iat, nbf 클레임은 무엇인가요?

exp(Expiration)는 토큰 만료 시간, iat(Issued At)는 토큰 발급 시간, nbf(Not Before)는 토큰이 유효해지는 시작 시간입니다. 모두 Unix Timestamp(초 단위)로 표현됩니다.

Q: RS256과 HS256의 차이점은?

HS256은 대칭키 알고리즘으로 같은 비밀키로 서명과 검증을 합니다. RS256은 비대칭키 알고리즘으로 개인키로 서명하고 공개키로 검증합니다. 이 도구는 HMAC(HS256/384/512) 알고리즘만 검증을 지원합니다.