JWT 해독하는 법
- 점(.)으로 구분된 세 부분(Base64URL)으로 된 토큰을 입력란에 붙여 넣습니다.
- 해독된 헤더와 페이로드를 확인합니다. 시간 값은 내 시간대의 날짜로 표시됩니다.
- 상태(만료됨·유효함·아직 유효하지 않음)를 확인합니다.
- HS256/HS384/HS512 서명은 비밀키를 입력하고 '검증'을 누릅니다.
JWT 구조와 표준 클레임
| 부분 / 클레임 | 의미 | 예시 |
|---|---|---|
| 헤더 | 알고리즘과 토큰 종류 | {"alg":"HS256","typ":"JWT"} |
| 페이로드 | 사용자와 토큰에 관한 정보(클레임) | {"sub":"123","exp":1767225600} |
| 서명 | 헤더와 페이로드가 바뀌지 않았다는 증명 | HMACSHA256(header.payload, secret) |
| iss / sub / aud | 발급자 / 주체(사용자) / 수신자 | "https://auth.example.com" |
| exp / iat / nbf | 만료 / 발급 / 유효 시작 (Unix 초) | 1767225600 |
자주 묻는 질문
- Q. 여기에 JWT를 붙여 넣어도 안전한가요?
- 해독과 검증은 브라우저 안에서만 이루어지며 서버로 아무것도 보내지 않습니다. 그래도 운영 환경 토큰은 비밀번호처럼 다루세요. 유효한 토큰을 가진 사람은 만료 전까지 그대로 쓸 수 있습니다.
- Q. JWT는 암호화되어 있나요?
- 아니요. 일반적인 JWT(JWS)는 Base64URL로 인코딩하고 서명만 한 것이라 누구나 페이로드를 읽을 수 있습니다. 비밀번호나 비밀 정보를 넣으면 안 됩니다. 서명은 위변조되지 않았다는 것만 증명합니다.
- Q. RS256, ES256 토큰은 왜 검증이 안 되나요?
- 이 방식은 공유 비밀키가 아니라 발급자의 공개키로 검증합니다. 이 도구는 입력한 비밀키로 HMAC 방식(HS256, HS384, HS512)을 검증합니다.
- Q. exp, iat, nbf는 무슨 뜻인가요?
- 초 단위 Unix 시간입니다. exp는 만료 시각, iat는 발급 시각, nbf는 그 이전에는 토큰을 받아들이면 안 되는 시각입니다.
관련 도구
최종 업데이트: