로컬 분해
로그인 상태 디버깅, exp / sub 확인에 맞습니다. Header에서 알고리즘과 타입을, Payload에서 업무 클레임을 볼 수 있습니다.
서명 구간이 없어도 앞 두 구간 디코딩을 시도해, 잘린 로그를 다루기 쉽습니다.
다음으로도 #data={"name":"Ada"} 또는 #url=... 데이터를 넣을 수 있으며, 읽은 뒤 주소 표시줄에서 지워집니다.
JWT는 Header, Payload, 서명 세 구간으로 이루어집니다. 이 페이지는 브라우저에서 앞 두 구간만 Base64URL 디코딩해 만료 시간과 사용자 정의 claim을 보기 쉽게 합니다. Token은 서버로 가지 않습니다. 로그인 상태를 디버깅하거나 exp 가 만료됐는지 확인할 때, 실제 Token을 알 수 없는 사이트에 붙일 필요가 없습니다.
로그인 상태 디버깅, exp / sub 확인에 맞습니다. Header에서 알고리즘과 타입을, Payload에서 업무 클레임을 볼 수 있습니다.
서명 구간이 없어도 앞 두 구간 디코딩을 시도해, 잘린 로그를 다루기 쉽습니다.
비공개 키는 웹페이지에 있으면 안 됩니다. 운영 서명 검증은 백엔드에 두세요. Token을 가진 사람은 누구나 Payload를 읽을 수 있으니, 기밀은 HTTPS와 짧은 만료에 의존합니다.
이 페이지는 서명 문자열을 보여 주지만 HMAC / RSA가 맞는지는 검증하지 않습니다.
공식 필드 iss로컬 분해aud로그인 상태 디버깅,iat 등을 인식하고 의미를 표시합니다. 숫자 타임스탬프는 되도록 읽기 쉬운 시간으로 바꿉니다.
사용자 정의 claim은 그대로 나열해 자체 로그인 프로토콜과 대조하기 쉽습니다.
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0IiwibmFtZSI6IuW8oOS4iSIsImlhdCI6MTcyMDAwMDAwMCwiZXhwIjoxOTAwMDAwMDAwfQ.signature
{
"header": { "alg": "HS256", "typ": "JWT" },
"payload": { "sub": "1234", "name": "张三", "iat": 1720000000, "exp": 1900000000 }
}
현재는 서명 문자열만 보여 주고 진위를 검증하지 않습니다. 누구나 Payload를 디코딩할 수 있으며, 기밀은 HTTPS와 백엔드 서명 검증에 달려 있습니다.
JavaScript Number에는 정밀도 상한이 있습니다. 아주 큰 ID는 Number로 바꾼 값만 보지 말고 원본 Payload와 대조하세요.
업로드하지 않고 클라우드 기록에도 쓰지 않습니다. 탭을 닫으면 메모리에서 사라집니다.
할 수도 없고 해서도 안 됩니다. 비공개 키 없이는 서버 서명 검증을 통과하는 Token을 만들 수 없습니다. 이 페이지는 읽기 전용입니다.
exp / nbf 이 현재 시간과 맞는지, 그리고 aud 이 올바른 서비스를 가리키는지 확인하세요. JWT를 디코딩할 수 있다는 것이 인증됐다는 뜻은 아닙니다. Token을 비밀번호처럼 보관하고, 만료되면 바로 무효화하세요.