// Paste a JWT to decode
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkphbmUgRG9lIiwiaWF0IjoxNzA1MzEwOTAwLCJleHAiOjE5OTk5OTk5OTl9.dQw4w9WgXcQ검색하려면 입력하거나 도구를 선택하세요.
JSON Web Token의 헤더, 페이로드, 서명을 디코딩. 디코딩은 로컬 — 토큰이 브라우저를 떠나지 않습니다.
JWT
Decoded
// Paste a JWT to decode
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkphbmUgRG9lIiwiaWF0IjoxNzA1MzEwOTAwLCJleHAiOjE5OTk5OTk5OTl9.dQw4w9WgXcQ아니요. 디코딩은 헤더와 페이로드를 읽을 뿐, 서명을 확인하거나 진위를 증명하지 않습니다.
아니요. 디코딩은 브라우저에서 완전히 실행됩니다.
JWT 사양은 iss(발행자), sub(주체), aud(청중), exp(만료), nbf(not before), iat(발행일시), jti(토큰 ID) 등의 표준 클레임을 정의합니다.
exp 클레임은 초 단위의 Unix 타임스탬프입니다. 만료일을 계산하고 토큰이 만료되었는지 확인합니다.
JWT(JSON Web Token)는 세 부분으로 구성됩니다: 헤더, 페이로드, 시그니처. 각 부분은 점(.)으로 구분되며, Base64URL 인코딩됩니다.
디코딩은 페이로드 부분을 Base64URL에서 디코딩하여 읽을 수 있는 JSON으로 변환하는 과정입니다. 시그니처 검증 없이도 페이로드 내용을 확인할 수 있습니다.
JWT는 `Bearer ' 접두사와 함께 Authorization 헤더에 포함되어 전송됩니다. 토큰의 내용을 확인하거나 디버깅할 때 디코딩이 유용합니다.'
iss(issuer): 토큰을 발급한 주체를 나타냅니다.通常은 도메인이나 서비스 이름이 사용됩니다.
sub(subject): 토큰의 주체, 즉 사용자 ID나 식별자를 나타냅니다. 토큰이 누구에 대한 것인지를 식별합니다.
exp(expiration): 토큰의 만료 시간을 유닉스 타임스탬프로 나타냅니다. 이 시간 이후에는 토큰이 유효하지 않습니다.
iat(issued at): 토큰이 발급된 시간을 유닉스 타임스탬프로 나타냅니다. 토큰의 생성 시점을 추적하는 데 사용됩니다.
aud(audience): 토큰이 의도된 수신자를 나타냅니다. 특정 API나 서비스에 대한 토큰임을 명시할 때 사용됩니다.
디코딩은 토큰의 내용을 읽을 수 있는 형태로 변환하는 과정입니다. 시그니처 검증은 하지 않으며, 토큰이 위조되었는지 확인할 수 없습니다.
검증은 시그니처를 확인하여 토큰이 신뢰할 수 있는 발급자에 의해 생성되었고, 변조되지 않았음을 보장합니다. 검증에는 시크릿 키나 공개키가 필요합니다.
보안이 중요한 경우 반드시 검증을 수행해야 합니다. 디코딩만으로는 토큰의 진위를 확인할 수 없으므로, 인증 시스템에서는 검증이 필수적입니다.