무료 JWT 디코더
모든 JSON Web Token을 디코딩하고 검사합니다. 헤더, 페이로드, 만료, 표준 클레임을 확인합니다. 브라우저에서 로컬로 실행 — 토큰이 기기를 떠나지 않습니다.
🔒 토큰은 브라우저에서 완전히 디코딩됩니다. 서버로 전송되지 않습니다.
주요 용도
- JWT 디코더로 인증 문제 디버깅앱에서 JWT를 검사하여 로그인 실패, 권한 문제 및 토큰 만료 문제를 디버깅합니다.
- 끝점을 테스트할 때 API 토큰 검사API가 반환한 JWT를 디코딩하여 올바른 클레임, 범위 및 권한이 발급되는지 확인합니다.
- 보안 감사 JWT 토큰보안 감사의 일부로 JWT를 검토하고 약한 서명 알고리즘, 과도한 토큰 수명 또는 페이로드의 민감한 데이터를 확인합니다.
- OAuth 및 OpenID Connect 토큰 검사Google, Auth0, Okta, Microsoft 및 기타 OAuth 제공자의 액세스 토큰, ID 토큰 및 새로 고침 토큰을 디코딩합니다.
- JWT 토큰 작동 방식 알아보기예제 JWT를 디코딩하여 구조를 이해합니다: 헤더, 페이로드 및 서명. 실제 클레임 예제를 참조하십시오.
사용 방법
디코더는 전적으로 브라우저에서 실행되는 직접 작성한 무의존성 파서입니다. 토큰을 점으로 나누고, 각 Base64URL 조각을 문자열 치환으로 일반 Base64로 바꾼 뒤 4의 배수가 되도록 패딩을 붙이고, 브라우저 기본 atob()와 JSON.parse를 호출해 헤더와 페이로드 객체를 복원합니다. 선택적 서명 검증은 Web Crypto API(crypto.subtle.verify)를 사용하며, 라이브러리도 서버도 없습니다.
- 1Base64URL 디코딩도구는 JWT를 두 개의 마침표 구분자로 나누어 세 조각을 얻습니다. 각 조각은 + 와 / 대신 - 와 _를 쓰고 패딩을 생략하는 Base64URL입니다. 코드는 이 문자들을 되돌리고 = 기호로 패딩한 뒤 브라우저 내장 atob()를 호출해 바이트를 디코딩합니다.
- 2JSON 파싱과 클레임 추출디코딩된 바이트는 JSON.parse를 거쳐 헤더와 페이로드 객체가 됩니다. 등록된 클레임 exp, iat, nbf는 Unix 타임스탬프로 추출되어 Date 객체로 변환됩니다. 만료 상태는 setInterval로 20초마다 다시 검사되므로, 탭이 열려 있는 동안 만료된 토큰은 자동으로 유효에서 만료로 바뀝니다. 상대 시간('3일 후', '2시간 전')은 브라우저 로캘의 Intl.RelativeTimeFormat으로 형식화됩니다.
- 3서명 표시와 선택적 검증원시 Base64URL 서명 문자열이 헤더, 페이로드와 함께 표시됩니다. 키를 입력하면 도구가 crypto.subtle.importKey와 crypto.subtle.verify를 호출해 로컬에서 서명을 검사합니다. 헤더의 alg 필드에 따라 HMAC 공유 비밀(HS256/384/512), PEM 인코딩 RSA 공개 키(RS256/384/512), ECDSA 공개 키 또는 JWK/JWKS 객체(ES256/384/512)를 받습니다.
- 4네트워크 요청 없음디코딩, 타임스탬프 계산, 암호 검증의 모든 단계가 브라우저 JavaScript 엔진 안에서 실행됩니다. 토큰과 입력한 키 정보는 기기를 떠나지 않습니다.
JWT에는 세션 자격 증명, 사용자 신원, 권한 범위가 담기는 경우가 많습니다. 이 도구는 atob()와 Web Crypto API로 전적으로 브라우저에서 디코딩하고 선택적으로 검증하므로, 토큰과 입력한 키 모두 어디로도 전송되지 않습니다.
관련 도구
URL 인코더 및 디코더
URL과 쿼리 문자열을 인코딩하고 디코딩합니다. encodeURIComponent, decodeURIComponent 및 쿼리 문자열 구문 분석을 지원합니다.
UUID 검사기
UUID 또는 ULID를 디코딩합니다 — 버전, 변형, v1, v6, v7 및 ULID에 내장된 생성 타임스탬프를 확인합니다. 브라우저에서 완전히 실행됩니다.
Base64 인코더 & 디코더
텍스트나 파일을 Base64로 인코딩하거나, Base64 문자열을 일반 텍스트로 디코딩합니다. 즉각적이고 프라이빗하며 무료입니다.