전체 도구 ↗
💻 이 도구는 PC에서 더 편하게 쓸 수 있어요 · 코드 복사·붙여넣기 작업용
🔑

JWT 디코더

JWT를 붙여넣으면 안에 담긴 헤더·페이로드를 즉시 펼쳐 확인. 토큰은 이 브라우저 밖으로 나가지 않아요.

브라우저에서만 처리 · 서버 전송 없음
Bearer 접두어는 자동 정리됩니다 Ctrl+Enter 로 즉시 디코드

3조각 확인 · 헤더·페이로드 디코드 완료

헤더 (Header)
페이로드 (Payload)

이 도구가 손에 익었다면 Ctrl+D로 즐겨찾기 · 결과는 카드별 ‘복사’ 버튼으로 가져가세요

광고

설명

JWT의 헤더·페이로드를 디코딩해 내용을 확인합니다. 서명 검증은 하지 않으며, 토큰은 브라우저에서만 처리됩니다.

광고

관련 도구

JWT(JSON Web Token)는 로그인 인증에 널리 쓰이는 토큰 형식으로, 점(.)으로 구분된 세 부분(헤더·페이로드·서명)이 Base64URL로 인코딩된 긴 문자열입니다. 이 도구는 JWT를 붙여넣으면 각 부분을 디코딩해 헤더와 페이로드의 내용을 사람이 읽을 수 있는 JSON 형태로 즉시 보여줍니다. 토큰 만료 시각, 사용자 정보, 권한 스코프 등을 빠르게 확인할 때 유용합니다.

사용 방법

입력창에 JWT 문자열 전체를 붙여넣으면 헤더(Header), 페이로드(Payload), 서명(Signature) 세 부분이 분리되어 표시됩니다. 헤더에서는 알고리즘(alg)과 토큰 타입(typ)을 확인할 수 있고, 페이로드에서는 sub(주체), iat(발급 시각), exp(만료 시각) 등의 클레임을 볼 수 있습니다. exp 값은 Unix 타임스탬프로 저장되어 있는데, 이 도구는 사람이 읽기 쉬운 날짜·시간 형식으로 자동 변환해 보여줍니다.

이럴 때 유용해요

API 개발 중 '401 Unauthorized' 오류가 발생했을 때 토큰이 실제로 만료됐는지, 발급 대상(aud)이 올바른지, 권한 스코프가 포함됐는지를 빠르게 점검할 수 있습니다. 프론트엔드 개발자가 백엔드에서 받은 토큰에 어떤 사용자 정보가 들어 있는지 확인하거나, QA 단계에서 특정 환경의 토큰이 의도한 대로 생성됐는지 검증하는 데도 자주 활용됩니다. Postman이나 브라우저 DevTools에서 토큰을 복사해 바로 붙여넣어 쓸 수 있습니다.

알아두면 좋은 점

JWT 디코더는 토큰의 내용을 보는 도구이지, 서명을 검증하는 도구가 아닙니다. Base64URL 디코딩은 누구나 할 수 있으므로 JWT 페이로드를 비밀 정보 저장소로 사용해서는 안 됩니다. 서명 검증은 서버에서 시크릿 키(HMAC) 또는 공개 키(RSA/ECDSA)를 이용해 수행해야 합니다. 또한 이 도구는 브라우저에서만 처리되므로 토큰이 외부 서버로 전송되지 않지만, 실사용 환경의 토큰에는 민감한 사용자 정보가 담겨 있을 수 있으니 공용 컴퓨터에서 사용할 때는 주의하세요.

자주 묻는 질문

이 도구로 서명을 검증할 수 있나요?
아닙니다. 이 도구는 토큰을 디코딩해 내용을 보여줄 뿐이며, 서명의 유효성은 검사하지 않습니다. 서명 검증은 시크릿 키나 공개 키를 알고 있는 서버에서만 신뢰성 있게 수행할 수 있습니다.
토큰이 만료됐는지 어떻게 확인하나요?
페이로드의 exp 항목이 만료 시각을 나타내는 Unix 타임스탬프입니다. 이 도구는 exp 값을 현재 시각과 비교해 토큰이 유효한지 만료됐는지 바로 표시해줍니다.
JWT가 아닌 문자열을 넣으면 어떻게 되나요?
점(.)으로 구분된 세 부분이 없거나 Base64URL 형식이 아니면 파싱 오류 메시지가 표시됩니다. 토큰 앞뒤에 'Bearer ' 같은 접두어가 붙어 있으면 제거하고 토큰 부분만 붙여넣으세요.
페이로드에 있는 정보가 안전한가요? 서버로 전송되나요?
이 도구는 100% 브라우저(클라이언트) 측에서 처리됩니다. 입력한 JWT는 외부 서버로 전송되지 않으므로 개인 정보 유출 걱정 없이 사용할 수 있습니다.
HS256, RS256 등 알고리즘에 따라 사용법이 다른가요?
디코딩 자체는 알고리즘과 무관하게 동일하게 동작합니다. 헤더의 alg 필드에 어떤 알고리즘이 적혀 있든 페이로드 내용을 읽는 방식은 같습니다. 알고리즘 정보는 헤더 섹션에서 확인할 수 있습니다.

개인정보처리방침

JWT 디코더 사용법

토큰 입력란에 eyJhbGciOi...로 시작하는 JWT 문자열 전체를 붙여넣으면 됩니다. 이 도구는 점(.)을 기준으로 토큰을 세 조각(헤더·페이로드·서명)으로 나눈 뒤, 앞의 두 조각을 Base64URL 디코딩해 사람이 읽을 수 있는 JSON으로 즉시 펼쳐 보여줍니다. Bearer 접두어가 붙어 있어도 알아서 걸러 처리합니다. 모든 계산은 브라우저 안에서만 실행되므로, 붙여넣은 토큰이 서버로 전송되지 않습니다.

세 조각이 각각 무엇을 담는가

JWT는 헤더.페이로드.서명 구조입니다. 각 부분의 의미는 다음과 같습니다.

조각내용
헤더(Header)서명 알고리즘 alg(예: HS256, RS256), 타입 typ
페이로드(Payload)클레임 데이터 — iss(발급자), sub(주체), exp(만료), iat(발급시각), 사용자 정의 필드
서명(Signature)헤더+페이로드를 알고리즘으로 서명한 값 — 위·변조 검증용

이 도구는 exp, iat, nbf 같은 유닉스 타임스탬프를 함께 사람이 읽는 날짜·시각으로 변환해 만료 여부를 바로 확인하도록 돕습니다.

작동 원리 — 왜 '복호화'가 아니라 '디코딩'인가

흔히 오해하지만 JWT의 헤더·페이로드는 암호화된 것이 아니라 단순히 Base64URL로 인코딩된 것입니다. 즉 누구나 키 없이 내용을 읽을 수 있습니다. 서명은 내용을 감추는 장치가 아니라, 내용이 발급 이후 바뀌지 않았음을 증명하는 장치일 뿐입니다. 따라서 이 도구는 페이로드를 '해독'하는 게 아니라 '펼쳐서 보여줄' 뿐이며, 서명 조각은 검증용 바이너리라 JSON으로 풀리지 않습니다.

이럴 때 씁니다

API 개발 중 401/403 오류가 났을 때 토큰의 exp가 지났는지, scope·role 클레임이 기대한 값인지 눈으로 확인할 때 유용합니다. OAuth·소셜 로그인 연동 시 발급된 access token/ID token의 aud, iss가 설정과 맞는지 대조하거나, 프론트엔드에서 로그인 사용자 정보(sub, 이메일 등)가 토큰에 제대로 들어갔는지 점검할 때도 씁니다.

활용 팁

만료 확인이 목적이라면 exp 값을 현재 시각과 비교하세요. 값이 초 단위인지 밀리초 단위인지 헷갈리면 자릿수로 판단합니다(10자리는 초, 13자리는 밀리초). 민감한 개인정보나 비밀번호를 페이로드에 넣지 않는 것이 원칙인데, 이 도구로 실제 토큰을 열어 그런 값이 노출되고 있지 않은지 스스로 감사하는 용도로도 좋습니다. 붙여넣을 때 앞뒤 공백이나 줄바꿈이 섞여도 되지만, 점(.)의 개수가 2개(조각 3개)인지 확인하면 형식 오류를 빠르게 잡을 수 있습니다.

자주 묻는 질문

이 도구로 서명이 올바른지 검증할 수 있나요?

서명 검증은 발급 서버가 쓴 비밀키(HS256) 또는 공개키(RS256)가 있어야 가능합니다. 이 디코더는 키 없이 내용을 펼쳐 보여주는 것이 목적이므로, 서명의 유효성 자체를 판정하지는 않습니다. 만료·클레임 확인용으로 쓰세요.

붙여넣은 토큰이 외부로 유출되나요?

디코딩은 전부 브라우저 안에서 처리되어 서버로 전송되지 않습니다. 다만 JWT는 그 자체가 인증 자격이므로, 아직 만료되지 않은 실서비스 토큰은 취급에 주의하고 확인 후 폐기·재발급하는 편이 안전합니다.

'Invalid token' 또는 깨진 결과가 나옵니다.

점(.)으로 나뉜 세 조각이 아니거나, 복사 과정에서 일부가 잘렸을 가능성이 큽니다. 또한 헤더·페이로드가 올바른 Base64URL·JSON 형식이어야 합니다. 토큰 전체를 다시 복사해 붙여넣어 보세요.

exp가 지났는데 왜 아직 로그인이 됩니다?

많은 서비스가 access token 만료 후 refresh token으로 자동 재발급합니다. 이 경우 실제로는 새 토큰이 발급된 것이며, 디코더에 넣은 것은 이미 교체된 옛 토큰일 수 있습니다.