JWT 생성기 / 서명 도구
브라우저에서 JWT 토큰을 생성하고 서명(HS256, HS384, HS512). 헤더와 페이로드 JSON을 편집하고, 비밀 키를 설정하여 서명된 토큰을 복사. 데이터는 서버로 전송되지 않습니다.
사용 방법
- 서명 알고리즘을 선택합니다 (HS256, HS384, HS512).
- 필요한 경우 헤더 JSON을 편집합니다.
alg필드는 알고리즘 변경 시 자동으로 동기화됩니다. - 페이로드 JSON에 클레임을 입력합니다.
- 비밀 키를 입력합니다 (UTF-8 또는 Base64 형식).
- 결과 박스에서 생성된 토큰을 복사합니다.
주요 사용 사례
- 로컬 개발: 백엔드 없이 API 엔드포인트나 인증 흐름 테스트용 토큰을 빠르게 생성.
- 디버깅: 헤더와 페이로드 JSON이 JWT에 어떻게 인코딩되는지 확인.
- 문서화: API 문서나 README 파일용 예시 토큰 생성.
- 학습: JWT의 구조와 서명 방식 이해.
FAQ
JWT란 무엇인가요?
JSON Web Token(JWT)은 RFC 7519에서 정의된 컴팩트하고 URL 안전한 토큰 형식입니다. 점으로 구분된 3개의 Base64URL 인코딩 부분(헤더, 페이로드, 서명)으로 구성됩니다. 인증과 정보 교환에 널리 사용됩니다.
비밀 키가 서버로 전송되나요?
아니요. 모든 서명은 브라우저 내장 Web Crypto API(SubtleCrypto)를 사용하여 브라우저 내에서 수행됩니다. 헤더, 페이로드, 비밀 키는 브라우저 밖으로 전송되지 않습니다.
어떤 알고리즘을 선택해야 하나요?
HS256(HMAC-SHA256)은 가장 널리 사용되며 대부분의 사용 사례에 적합합니다. HS384와 HS512는 더 큰 해시 출력을 생성하며 추가 보안 마진이 필요한 경우에 적합합니다. 세 가지 모두 대칭 알고리즘으로, 서명과 검증에 동일한 비밀 키를 사용합니다.
'비밀 키가 비어 있습니다 — 서명 없는 토큰이 생성됩니다'는 무슨 의미인가요?
비밀 키 필드가 비어 있으면, 도구는 서명 부분이 빈 토큰을 생성합니다. 이 토큰은 기술적으로 검증이 무효이지만 헤더와 페이로드의 인코딩 구조를 확인하는 데 유용합니다.
jwt.io에서 여기서 생성한 토큰을 검증할 수 있나요?
네. 생성된 토큰을 복사하여 jwt.io에 붙여넣고, 동일한 비밀 키를 입력하고 해당 알고리즘을 선택하면 서명을 검증할 수 있습니다.
Base64 비밀 키 형식 옵션은 무엇인가요?
일부 서비스는 Base64(또는 Base64URL)로 사전 인코딩된 비밀 키를 제공합니다. 비밀 키가 이미 그 형태인 경우 Base64 옵션을 선택하세요. 서명 전에 디코딩되어 올바른 서명이 생성됩니다.