브라우저에서 처리하는 개발자 도구
JWT 디코더
JSON Web Token을 즉시 디코딩하고 확인합니다. 토큰을 디코딩 API로 보내지 않고 헤더, 페이로드, claims와 만료 상태를 읽을 수 있습니다.
100% 브라우저에서 처리. JWT는 이 브라우저 탭에서 디코딩되며 디코딩 API로 전송되거나 이 도구에 저장되지 않습니다.
브라우저 처리
디코딩은 현재 브라우저 탭에서 실행됩니다.
secret 불필요
서명된 JWT의 헤더와 페이로드는 서명 key 없이 읽을 수 있습니다.
시간 claims
exp, iat, nbf를 읽기 쉬운 시각으로 변환합니다.
디코딩 ≠ 검증
내용을 읽었다고 서명 진위가 증명되지는 않습니다.
JWT 디코더란?
JWT 디코더는 Base64URL로 인코딩된 헤더와 페이로드를 읽기 쉬운 JSON으로 바꿉니다. 일반적인 서명 JWT/JWS는 header.payload.signature 3개 세그먼트입니다.
인증 문제를 디버깅할 때 alg, kid, iss, aud, scope, role, exp를 먼저 확인합니다. 서명 JWT는 보통 암호화가 아니라 인코딩이므로 claims를 읽는 데 signing secret이 필요하지 않습니다.
읽을 수 있는 것과 신뢰할 수 있는 것은 다릅니다. 실제로 토큰을 허용하기 전에 신뢰 key로 서명을 검증하고 애플리케이션이 기대하는 claims를 검증합니다.
JWT claims 이해하기
claims는 payload 안의 값입니다. 인증과 권한 부여에서 자주 쓰는 등록 claim부터 보면 원인을 빠르게 좁힐 수 있습니다.
issIssuer
JWT를 발급한 주체입니다.
subSubject
토큰이 나타내는 주체입니다.
audAudience
JWT가 대상으로 하는 수신자입니다.
expExpiration
이 시각 이후에는 토큰을 허용하지 않아야 합니다.
nbfNot Before
이 시각 전에는 토큰을 허용하지 않아야 합니다.
iatIssued At
토큰이 발급된 시각입니다.
디코딩, validation, 서명 검증은 서로 다른 작업입니다
디코딩
Base64URL 헤더와 페이로드를 JSON으로 읽습니다.
고급 JWT 및 Identity 도구
보안 정책 검사, 토큰 비교, OIDC Discovery, JWK 검사로 단순 디코딩을 넘어섭니다.
JWT 보안 분석기
alg=none, 예상 밖 알고리즘, 토큰 제어 키 URL, 수상한 kid, 시간 claims, issuer/audience를 검사합니다.
JWT Diff
두 JWT를 필드별로 비교해 refresh, login, 환경 변경, key rotation 전후 차이를 찾습니다.
OIDC Discovery Checker
Issuer URL에서 OIDC/OAuth metadata를 확인하고 issuer, JWKS, endpoints를 검사합니다.
JWK Inspector
단일 JWK를 검사하고 비공개 자료를 감지하며 RFC 7638 SHA-256 thumbprint를 계산합니다.
JWT 코드 예제
JavaScript, Node.js, Python, Java, C#, Go, PHP에서 Base64URL과 UTF-8을 올바르게 처리하며 JWT header/payload를 디코딩합니다.
JWT Claims Reference
48개 JWT, OpenID Connect, OAuth claim을 값 타입, 출처 사양, validation note와 함께 정리한 참고 자료입니다.
추천 JWT 디코딩 가이드
페이로드를 읽은 뒤 더 깊게 확인할 때 사용하는 가이드입니다.
JWT 디코더 FAQ
secret 없이 JWT를 디코딩할 수 있나요?
가능합니다. 일반 JWS의 header와 payload는 Base64URL 인코딩입니다. secret 또는 공개 키는 서명 검증에 필요합니다.
디코딩되면 유효한 JWT인가요?
아닙니다. 읽을 수 있는 구조라는 뜻일 뿐입니다. 진위는 서명, 수용 가능성은 exp, nbf, iss, aud 등의 검증이 필요합니다.
JWT 검증붙여넣은 JWT가 서버로 전송되나요?
디코더는 브라우저에서 실행되며 토큰 본문을 디코딩 API로 전송하거나 localStorage, 쿠키, URL에 의도적으로 저장하지 않습니다.
exp, iat, nbf는 무엇인가요?
exp는 만료, iat는 발급 시각, nbf는 사용 가능 시작 시각입니다.
JWT 만료 확인읽을 수 있는 JWT가 왜 401을 반환하나요?
만료, nbf, 잘못된 key, issuer/audience 불일치, scope/role 부족 등이 원인일 수 있습니다.
JWT 디버깅테스트용 또는 마스킹 토큰으로 재현할 수 있다면 실제 production credential을 붙여넣지 마세요. 브라우저 처리는 확장 프로그램이나 기기 내 악성코드까지 막아주지는 않습니다.