JWT 디코더
JSON 웹 토큰을 붙여 넣으면 내용을 읽고, 만료 여부를 확인하고, 서명을 검증할 수 있어요.
이 기기 안에서 봉인됨
브라우저에서 실행돼요. 아무것도 업로드되지 않아요.
봉인됨
디코딩과 검증은 이 기기에서 이루어져요. 토큰은 어디에도 전송되지 않아요.
디코딩 결과
토큰의 헤더, 페이로드, 날짜가 여기에 표시돼요.
헤더
페이로드
등록된 클레임
서명 검증(선택)
먼저 토큰을 디코딩하세요. 토큰의 알고리즘에 따라 필요한 키가 정해져요.
PEM(-----BEGIN PUBLIC KEY-----) 또는 JSON 형식의 JWK. 신뢰할 수 없는 웹사이트에는 개인 키를 절대 붙여 넣지 마세요.
사용 방법
-
토큰 붙여 넣기
Authorization 헤더, 쿠키, 로그에 있는 JWT를 붙여 넣으세요. 앞에 붙은 “Bearer”는 무시돼요.
-
내용 읽기
헤더와 페이로드가 정렬된 JSON으로 표시되고, exp, iat, nbf는 내 시간대의 날짜로 바뀌어요.
-
필요하면 검증하기
공유 비밀 키를 입력하거나 공개 키를 붙여 넣어 서명을 확인하세요. 토큰은 기기 밖으로 나가지 않아요.
자주 묻는 질문
실제 토큰을 여기에 붙여 넣어도 안전한가요?
토큰은 브라우저에서 디코딩하고 검증하며 어떤 서버로도 전송되지 않아요. 그래도 토큰은 임시 비밀번호와 같아요. 공유하지 말고, 다른 곳에 노출되었다면 폐기하세요.
JWT의 내용은 누구나 읽을 수 있나요?
네. 일반적인 서명된 JWT는 암호화가 아니라 Base64url로 인코딩만 되어 있어서, 토큰을 가진 사람은 누구나 페이로드를 읽을 수 있어요. 서명은 아무도 내용을 바꾸지 않았다는 사실만 증명해요. JWT 페이로드에는 절대 비밀 정보를 넣지 마세요.
토큰이 만료되었다고 나오는 이유는 무엇인가요?
exp 클레임에는 1970년 1월 1일(UTC)부터 센 초 단위의 만료 시각이 들어 있어요. 내 기기의 시계로 그 시각이 지났다면 토큰은 만료된 것이고, 서버는 이 토큰을 거부해야 해요.
어떤 서명을 검증할 수 있나요?
공유 비밀 키를 쓰는 HMAC(HS256, HS384, HS512), 그리고 PEM이나 JWK 형식의 공개 키를 쓰는 RSA(RS256–512, PS256–512)와 타원 곡선(ES256, ES384, ES512)을 검증할 수 있어요. 검증에는 브라우저에 내장된 Web Crypto를 사용해요.
iss, sub, aud는 무슨 뜻인가요?
표준 클레임이에요. iss는 토큰을 발급한 곳, sub는 토큰의 주체(보통 사용자 ID), aud는 토큰을 받을 대상이에요. 페이로드의 다른 필드는 토큰을 만든 애플리케이션마다 달라요.