JWT 디코더

관련 도구

JWT란?

JWT(JSON Web Token)는 두 시스템 간에 정보를 안전하게 전달하기 위한 토큰 형식입니다. Header, Payload, Signature 세 부분이 마침표(.)로 구분되며, 각 부분은 Base64URL로 인코딩되어 있습니다.

JWT 구조

  • Header — 토큰 유형과 서명 알고리즘 정보를 담고 있습니다.
  • Payload — 전달할 데이터(Claims)가 포함됩니다. sub, exp, iat 등의 표준 클레임이 있습니다.
  • Signature — Header와 Payload를 서명한 값으로, 토큰의 무결성을 검증합니다.

주요 클레임

  • exp — 토큰 만료 시간 (Unix timestamp)
  • iat — 토큰 발급 시간
  • sub — 토큰 주체 (사용자 ID 등)
  • iss — 토큰 발급자

보안 유의사항

  • 디코딩과 검증은 다릅니다 — 이 도구는 내용을 읽기 쉽게 풀어 보여줄 뿐, 서명(Signature)의 유효성을 검증하지 않습니다. 토큰이 위조되지 않았는지는 비밀 키를 가진 서버만 확인할 수 있습니다.
  • Payload는 암호화가 아닙니다 — Base64URL은 누구나 풀 수 있는 인코딩입니다. JWT에 비밀번호 같은 민감 정보를 담으면 안 되는 이유입니다.
  • 실서비스 토큰 취급 주의 — 유효한 토큰이 유출되면 세션을 탈취당할 수 있습니다. 이 도구는 토큰을 서버로 전송하지 않고 브라우저 안에서만 디코딩하지만, 토큰을 다른 곳에 붙여넣거나 공유할 때는 항상 주의하세요.

자주 묻는 질문

이 도구가 JWT 서명을 검증하나요?
아니요. 내용(Header·Payload)을 디코딩해 보여줄 뿐 서명 유효성은 검증하지 않습니다. 위조 여부는 비밀 키를 가진 서버만 확인할 수 있습니다.
입력한 토큰이 서버로 전송되나요?
아니요. 브라우저 안에서만 디코딩되며 외부로 전송되지 않습니다. 다만 유효한 토큰은 유출 시 세션이 탈취될 수 있으니 공유에 주의하세요.
JWT에 비밀번호 같은 민감 정보를 담아도 되나요?
안 됩니다. Payload는 암호화가 아니라 Base64URL 인코딩이라 누구나 디코딩해 볼 수 있습니다.
토큰 만료 여부는 어떻게 확인하나요?
Payload의 exp(만료 시간, Unix timestamp)로 판단합니다. 이 도구는 디코딩 시 만료 시간을 함께 표시합니다.