JWT 디코더는 JWT 토큰을 헤더·페이로드·서명 세 부분으로 나눠 디코딩하고, 만료 여부와 서명 유효성까지 확인할 수 있는 개발자 도구입니다. iss, sub, aud, exp, iat, nbf 같은 표준 클레임을 한국어 라벨과 함께 보여 주고, 시간 값은 한국 시간(KST)으로 읽기 쉽게 표시합니다.

로그인 토큰이 왜 거부되는지 디버깅하는 백엔드 개발자, OIDC 연동을 점검하는 엔지니어, 토큰 보안을 학습하는 사람에게 유용합니다. 토큰은 브라우저 안에서만 처리되고 서버로 전송되지 않습니다.

자세한 사용법과 자주 묻는 질문 보기

사용 방법

토큰을 붙여넣으면 즉시 3분할 디코딩되어 헤더의 알고리즘, 페이로드의 클레임, 서명이 표시됩니다. 만료 시각까지 남은 시간이 1초 단위 카운트다운으로 갱신되며, 시계 오차를 감안한 leeway 슬라이더로 판정 기준을 조정할 수 있습니다.

카카오, 네이버, 구글, 애플, Firebase, Supabase, Auth0, Cognito, Keycloak 등 자주 쓰는 IdP 프리셋을 선택하면 해당 발급자의 클레임 규칙에 맞춰 검증됩니다.

서명 검증과 보안 경고

비밀 키나 공개 키를 입력하면 Web Crypto API로 HS·RS·ES·EdDSA 계열 서명을 브라우저에서 직접 검증할 수 있습니다. JWKS URL이나 OIDC Discovery 주소를 넣어 공개 키를 자동으로 가져오는 방식도 지원합니다.

alg가 none이거나 약한 HS256 시크릿이 의심되는 경우 보안 경고를 표시하며, 알고리즘 변조 공격을 재현해 보는 학습 모드와 JWT 생성 playground도 제공합니다. 페이로드의 민감 정보는 자동 마스킹할 수 있고 토큰을 짧게 가려 복사하는 기능도 있습니다.

자주 묻는 질문

토큰을 붙여넣어도 안전한가요?
디코딩과 서명 검증 모두 브라우저 안에서 처리되며 토큰이 서버로 전송되지 않습니다. 그래도 운영 환경의 실토큰은 만료 후 폐기하는 습관을 권장합니다.
JWT 디코딩과 서명 검증은 무엇이 다른가요?
디코딩은 base64로 인코딩된 내용을 읽는 것이고, 서명 검증은 토큰이 위조되지 않았는지 키로 확인하는 것입니다. 디코딩은 키 없이 누구나 할 수 있으므로 JWT에 비밀 정보를 담으면 안 됩니다.
만료된 토큰인지 어떻게 확인하나요?
exp 클레임을 한국 시간으로 변환해 보여 주고, 남은 시간을 1초 단위 카운트다운으로 표시합니다. 서버 간 시계 오차를 감안하려면 leeway 값을 조정하면 됩니다.
alg none 경고는 왜 뜨나요?
알고리즘이 none인 토큰은 서명이 없어 누구나 위조할 수 있으므로 서버가 절대 신뢰해서는 안 됩니다. OWASP에서도 대표적인 JWT 취약점으로 다루는 항목입니다.
카카오나 Firebase 토큰도 검증할 수 있나요?
네, 한국에서 자주 쓰는 IdP 9종의 프리셋이 준비되어 있어 발급자별 JWKS 주소와 클레임 규칙에 맞춰 검증할 수 있습니다.