JWT署名ツール — ブラウザで動く HS256 トークン生成
開発者ツールJWT署名ツールは、header と payload の JSON 値を base64url でエンコードし、secret を使って HMAC-SHA256 署名を付加することで HS256 の JSON Web Token を生成するブラウザ向け開発者ツールです。
AI支援翻訳をレビュー中
このページはAIの支援で翻訳され、まだ専門家によるレビューを完了していません。重要な判断の前に、引用元をご確認ください。
概要
JWT(JSON Web Token)は、header・payload・署名の3つの部分をドット(.)で連結したトークン形式です。このツールは一般的な対称鍵方式である HS256 のみに対応しています。header と payload の JSON を正規化したうえで、ブラウザの Web Crypto API を使って入力に署名します。テスト用トークンやドキュメントの例、ローカルでのデバッグには便利ですが、共有端末や画面共有中に本番の 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 などのサーバー側ポリシーを別途検証してください。