JWT 서명기 — 브라우저 HS256 토큰 생성
개발자 도구JWT 서명기는 header와 payload JSON을 base64url로 인코딩하고 secret으로 HMAC-SHA256 서명을 붙여 HS256 JSON Web Token을 만드는 브라우저 개발자 도구입니다.
개념 설명
JWT(JSON Web Token)는 header, payload, signature 세 부분을 점(.)으로 연결한 토큰 형식입니다. 이 도구는 가장 흔한 대칭키 방식인 HS256만 지원하며, header와 payload JSON을 정규화한 뒤 브라우저 Web Crypto API로 HMAC-SHA256 서명을 계산합니다. 테스트 토큰, 문서 예시, 로컬 디버깅에는 유용하지만 실제 운영 secret은 공유 기기나 화면 공유 환경에서 붙여넣지 않는 것이 안전합니다.
JWT = base64url(header JSON) + "." + base64url(payload JSON) + "." + base64url(HMAC-SHA256(secret, signingInput))
사용법
- 1header JSON을 확인합니다. alg는 HS256으로 고정됩니다.
- 2payload JSON과 secret을 입력합니다.
- 3생성 버튼을 눌러 토큰을 만들고 JWT 디코더나 서버 검증 로직에서 다시 확인합니다.
참조표
| 항목 | 값 | 설명 |
|---|---|---|
| alg | HS256 | HMAC-SHA256 대칭키 서명 |
| typ | JWT | 토큰 유형 |
| secret | 문자열 | 서명용 공유 비밀값. 브라우저에서만 사용 |
출처/기준
- RFC 7519: JSON Web Token (JWT) - IETF
- RFC 7515: JSON Web Signature (JWS) - IETF
- Web Crypto API: SubtleCrypto.sign() - MDN Web Docs
- MDN Web Docs: Client-side web APIs - MDN Web Docs
자주 묻는 질문
JWT secret은 서버로 전송되나요?
아니요. 서명은 브라우저 Web Crypto API로 수행되며 secret과 payload는 서버로 보내거나 저장하지 않습니다.
RS256이나 ES256도 지원하나요?
아니요. 이번 도구는 번들·키 관리 범위를 작게 유지하기 위해 HS256만 지원합니다. RSA/ECDSA 키 기반 서명은 별도 도구 범위입니다.
이 도구로 만든 토큰을 운영에 바로 써도 되나요?
운영 토큰 발급 정책을 대체하지 않습니다. issuer, audience, expiry, rotation, revocation 같은 서버 정책을 별도로 검증해야 합니다.