Command Palette

Search for a command to run...

JW

JWT 디코더

JWT 헤더 및 페이로드 디코딩, 클레임 검사 및 토큰 만료 확인

JWT 디코더란?

JWT 디코더는 JSON 웹 토큰을 3개의 점으로 구분된 세그먼트로 분할하고 base64url-header와 payload를 디코딩하고 둘 다 형식화된 json으로 렌더링합니다. JWT는 암호화되지 않습니다. "인코딩"은 가역 변환인 Base64URL일 뿐입니다. 따라서 토큰을 보유한 사람은 누구나 그 안에 있는 모든 클레임을 읽을 수 있습니다. 이 도구를 사용하면 Set-Cookie 헤더, 인증 헤더(베어러 접두사가 자동으로 제거됨) 또는 인증 공급자의 대시보드에서 토큰을 붙여넣고 서버가 거기에 무엇을 넣었는지 정확히 확인합니다.

클레임 테이블은 디버깅이 일어나는 곳입니다. 등록된 시간 클레임 - exp (만료), iat (발행), nbf (이전 아님) - 은 유닉스 타임스탬프이며,원시 읽기에 쓸모가 없습니다. 디코더는 각각을 UTC 날짜와 "만료됨 (3 시간 전)" 또는 "유효함 (14 분 후에 만료됨)" 으로 표시된 상대 시간으로 변환하고 만료된 토큰을 빨간색으로 표시합니다. 대부분의 "401 무단이지만 토큰은 괜찮아 보입니다" 인시던트는 만료된 exp,시계 왜곡 nbf 또는 API 가 검증한 것과 일치하지 않는 aud 클레임으로 내려옵니다. 모두 2 초 안에 여기에 표시됩니다.

이 도구가 의도적으로 하지 않는 한 가지는 서명을 확인하는 것입니다. 확인을 위해서는 서명 비밀(HS256) 또는 공개 키(RS256/ES256)가 필요하며 HMAC 비밀을 붙여넣으라는 클라이언트 측 도구는 나쁜 습관을 가르치는 것입니다. 디코딩은 100% 클라이언트 측입니다. 토큰은 브라우저를 떠나지 않고 서버에 도달하지 않으며 요청 로그에 나타나지 않습니다. 이는 라이브 프로덕션 JWT가 베어러 자격 증명이기 때문에 중요합니다. 그것을 가진 사람은 누구든지 당신입니다.

디코딩이 확인되지 않으며 구별은 JWT의 전체 보안 모델입니다. 헤더와 페이로드는 암호화되지 않은 base64url이므로 토큰을 보유한 사람은 키 없이 모든 클레임을 읽을 수 있습니다. 서명이 제공하는 것은 내용이 변경되지 않았다는 증거이며, 그것을 확인하려면 서버 측 작업인 비밀 또는 공개 키가 필요합니다. 페이로드를 공개 정보로 취급하십시오. 민감한 내용을 넣지 마십시오.

JWT 토큰을 온라인으로 디코딩하고 결과를 확인하는 빠른 방법: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOi0MiIsImlhdCI6MTc2NzIyNTYwMCwiZXhwIjoxNzY3MjIwfQ.sig를 붙여넣고 디코드를 클릭합니다. Bearer 접두사가 삭제되고 헤더 패널에 {"alg": "HS256", "typ": "JWT"}가 표시되고 JWT 페이로드 뷰어로 작동하는 페이로드 패널에 자체 복사 버튼이 표시되며 하위 "42", iat 1767225600 및 exp 1767229200이 표시됩니다. 클레임 테이블은 이를 2026-01-01T00:00:00.000Z 및 2026-01-01T01:00:00.000Z로 바꾸고 exp를 만료된 것으로 표시합니다. 여기서 서명 세그먼트는 자리 표시자 텍스트 시그이며 도구는 서명을 확인하지 않기 때문에 여전히 토큰을 디코딩합니다.

JWT 디코더를 사용하는 방법?

  1. 토큰 붙여넣기

    JWT를 입력 영역에 놓습니다. 브라우저 DevTools 네트워크 탭, 쿠키, LocalStorage 또는 컬 응답의 인증 헤더에서 가져옵니다. 선행 "Bearer" 접두어와 주변 공백이 자동으로 제거되므로 정리하지 않고 전체 헤더 값을 붙여넣을 수 있습니다.

  2. 디코딩된 헤더 및 페이로드 읽기

    두 세그먼트 모두 형식이 지정된 JSON으로 나란히 렌더링됩니다. 헤더는 서명 알고리즘을 알려줍니다(ALG: RS256, HS256 등). 및 키 ID(kid) - JWKS 회전이 잘못된 동작일 때 유용합니다. 페이로드에는 Sub, ISS, AUD, 범위, 역할 및 인증 계층이 추가된 모든 사용자 지정 데이터와 같은 클레임이 포함됩니다.

  3. 만료에 대한 클레임 테이블 확인

    시간 클레임(exp, IAT, nbf)은 UNIX 초에서 상대적인 시간이 있는 읽을 수 있는 날짜로 디코딩됩니다. 만료된 경험치가 정확히 얼마나 오래 경과한지 빨간색으로 표시되고, 유효한 경험이 남은 시간에 녹색으로 표시됩니다. NBF가 미래에 있다면(일반적으로 서버 사이에서 시계 왜곡이 있음) "잘 보이지만" 토큰이 거부됩니다.

  4. 기억하십시오: 디코딩, 확인되지 않음

    이 도구는 비밀 또는 공개 키가 필요하고 브라우저 도구가 아닌 서버에 속하는 서명을 확인하지 않습니다. 디코딩된 클레임을 신뢰할 수 있는 입력으로 취급하지 마십시오. 공격자는 원하는 페이로드로 토큰을 생성할 수 있습니다. 확인된 서명만 청구가 수정되지 않은 발급자로부터 왔음을 증명합니다.

주요 특징

  • 인스턴트 헤더 + 페이로드 디코딩

    순수한 TypeScript의 Base64URL 디코딩 - 두 가지 모두 JSON 세그먼트가 포맷되고 즉시 읽을 수 있음

  • 만료 감지

    만료 시 EXP 청구가 빨간색으로 표시되고 유효한 경우 녹색, 정확한 상대 시간 모두

  • 인간화 된 시간 주장

    EXP, IAT 및 NBF가 원시 UNIX 초에서 ISO 날짜 및 "3시간 전" 스타일의 프레이징으로 변환됨

  • 베어러-접두어 허용

    전체 권한 부여 헤더 - "Bearer" 붙여넣기 및 스트레이 공백이 자동으로 제거됩니다.

Frequently Asked Questions

디코딩 자체는 안전합니다. 브라우저에서 완전히 발생하며 토큰은 네트워크를 통해 전송되지 않습니다. 원하는 경우 DevTools Network 탭에서 확인하십시오. 더 넓은 주의는 라이브 프로덕션 JWT가 베어러 자격 증명이므로 붙여넣기하는 곳마다 암호처럼 취급한다는 것입니다. 신뢰할 수 없는 타사 도구의 경우 만료된 토큰 또는 준비 환경에서 제공하는 토큰을 선호합니다.

Comments

0 comments

0/2000 characters

No comments yet. Be the first to share your thoughts!

jwtjwt decoderjson web tokendecode jwtjwt debuggertoken decoderjwt claimsexp claimbearer tokendecode jwt token onlinejwt token decode onlinejwt payload viewerinspect jwt claims