JWT署名

ヘッダーとペイロードの JSON を編集し、アルゴリズムを選ぶと JWT をローカル署名。HS はシークレット、RS/PS/ES は PEM 秘密鍵。

JWT署名について

hidevtool の JWT エンコーダーはブラウザ内で JSON Web Token に署名します。Header / Payload JSON を編集し、HS または RS/PS/ES アルゴリズムを選び、セグメント色分けされた compact トークンをコピーできます。

秘密鍵と共有秘密は端末から出ません。署名はローカルで行われます。

できること

このエンコーダーの役割

入力した Header / Payload JSON から標準 3 部構成 JWT を組み立て、選択した鍵で署名を計算し、編集に応じて出力を更新します。

アルゴリズムの選択

  1. HS256 / HS384 / HS512 — 対称 HMAC。十分に強い共有秘密を使う。
  2. RS256 / RS384 / RS512 — RSA PKCS#1 v1.5 署名。
  3. PS256 / PS384 / PS512 — RSA-PSS(新しい RS 構成で好まれることが多い)。
  4. ES256 / ES384 / ES512 — ECDSA(P-256 / P-384 / P-521)。

Header / Payload のヒント

  • typ: "JWT" と、選択 alg と一致する alg を Header に含める。
  • exp(と iat)は Unix 秒で、リアルなテストトークン向け。
  • Payload は小さく——大きいクレームは毎リクエストの Header を膨らませる。
  • カスタムクレームは可。Payload にパスワード等の秘密を入れない。

鍵フォーマット

  • HMAC — API で使う UTF-8 秘密文字列を貼る。
  • RSA / EC — PKCS#8 PEM 秘密鍵(BEGIN PRIVATE KEY)を貼る。

安全に使う

  1. 1テスト鍵のみ使用。共有 PC に本番秘密鍵を貼らない。
  2. 2RS/ES または強い HS 秘密を優先。短い推測可能な HMAC パスワードは避ける。
  3. 3access トークンは exp を短く。本番ではリフレッシュフローを使う。
  4. 4本番秘密鍵は HSM/KMS に。本ツールはローカル dev / QA 向け。
  5. 5署名後は同サイトの JWT デバッガーでデコード・検証できる。

よくある使い方

ローカル API テスト

JWT 認証の dev API 向けに Postman / curl 用 Bearer トークンを発行する。

マイクロサービススタブ

ユーザー・ロールを模したクレームで署名トークンを生成し、結合テストする。

JWT を学ぶ

alg やクレームを変えたとき Header / 署名バイトがどう変わるか、色付き出力で確認する。

よくある質問

JWT 署名に使える alg は?
本ページはブラウザ内で以下の Header alg で署名できます(計 12 種類): HMAC(対称鍵):HS256, HS384, HS512 RSA PKCS#1(PKCS#8 PEM 秘密鍵):RS256, RS384, RS512 RSA-PSS(PKCS#8 PEM 秘密鍵):PS256, PS384, PS512 ECDSA(PKCS#8 PEM 秘密鍵):ES256, ES384, ES512 非対応:alg が none、EdDSA(Ed25519 など)、および上記以外の alg。秘密鍵は BEGIN PRIVATE KEY の PKCS#8 形式である必要があります。
JWT をオンラインでエンコードするには?
alg を選び、Header / Payload JSON と秘密または秘密鍵を入力し、出力フィールドからトークンをコピーする。
対応する秘密鍵形式は?
RS / PS / ES は PKCS#8 PEM(BEGIN PRIVATE KEY)。レガシー PKCS#1 RSA PEM は変換が必要な場合があります。
署名鍵はアップロードされますか?
いいえ。エンコードはすべてブラウザ内です。
hidevtool でデコードもできますか?
はい。同サイトの JWT デバッガーでデコードと検証ができます。