JWT 디코더
JSON 웹 토큰을 브라우저에서 해독합니다. 헤더와 페이로드를 JSON으로 읽고 iat/nbf/exp를 날짜로 보며, HMAC 또는 RSA/ECDSA 서명을 선택적으로 검증합니다.
| 클레임 | Unix | UTC | 상태 |
|---|---|---|---|
| 발급 시각 | 1,516,239,022 | 2018-01-18T01:30:22.000Z |
JSON 웹 토큰(JWT)은 헤더, 클레임을 담은 페이로드, 서명을 점으로 이어 붙인 세 개의 Base64URL 부분으로 묶습니다. 이 디코더는 헤더와 페이로드를 읽기 쉬운 JSON으로 보여 주고 시간 클레임을 날짜로 바꾸며, 비밀키나 공개키를 붙여넣으면 서명도 검증할 수 있습니다. 토큰은 브라우저 밖으로 나가지 않습니다.
사용 방법
- 토큰을 붙여넣습니다.
- 보기 좋게 정리된 헤더와 페이로드를 읽습니다.
- iat, nbf, exp 클레임을 현재 시각과 비교합니다.
- 서명을 검증하려면 HMAC 비밀키나 PEM/JWK 공개키를 붙여넣습니다.
계산식
서명은 "header.payload"(앞의 두 Base64URL 부분)에 대해 계산합니다. HS256은 공유 비밀키로 HMAC-SHA-256을 쓰고, RS/PS/ES는 공개키로 RSA나 ECDSA를 씁니다.
해독한다고 신뢰할 수 있는 것은 아닙니다. 누구든 JWT를 읽을 수 있고, 유효한 서명만이 키 소유자가 발급했음을 증명합니다.
예시
대표적인 샘플 토큰은 { "sub": "1234567890", "name": "John Doe", "iat": 1516239022 } 페이로드로 해독되며, 비밀키 "your-256-bit-secret"을 넣으면 HS256 서명이 유효로 검증됩니다.
자주 묻는 질문
토큰이 업로드되나요?
아닙니다. 해독과 서명 검증 모두 Web Crypto API로 브라우저에서 실행되므로 토큰과 비밀키는 내 기기에만 있습니다.
alg가 "none"이면 왜 경고가 나오나요?
alg가 "none"인 토큰에는 서명이 없어 누구나 클레임을 바꿀 수 있습니다. 라이브러리는 이를 거부해야 하며, 경고는 그것을 상기시킵니다.
어떤 서명을 검증할 수 있나요?
공유 비밀키로 HMAC(HS256/384/512)을, 발급자의 공개키(SPKI PEM 또는 JWK)로 RSA, RSA-PSS, ECDSA(RS/PS/ES 256/384/512)를 검증합니다. 웹사이트에 개인키를 절대 붙여넣지 마세요. 검증에는 공개키만 필요합니다. HS256이라고 주장하는 토큰에 공개키를 주면 알려진 위조 수법이므로 거부합니다.
출처
최종 업데이트:
이 입력값이 담긴 페이지 주소: https://kakao.mobile/ko/tools/jwt-decoder/
인용·퍼가기
kakaoCalc. (2026, November 8). JWT 디코더. https://kakao.mobile/ko/tools/jwt-decoder/
“JWT 디코더.” kakaoCalc, 8 Nov. 2026, kakao.mobile/ko/tools/jwt-decoder/.