JWTジェネレーター
カスタムヘッダー、ペイロード、秘密鍵で署名付きJWTを生成。HS256、RS256、ES256に対応。
JWTとは何ですか?
JWT(JSON Web Token、RFC 7519)は、コンパクトなJSONオブジェクトとしてパーティ間で情報を安全に送信するためのオープン標準です。Header.Payload.Signatureの3つの部分をドットで区切って構成されます。
JWTの一般的な用途は何ですか?
JWTは認証(シングルサインオン)、API認可、安全な情報交換に広く使用されています。ログイン後、サーバーがJWTを発行し、クライアントは後続のリクエストでそのトークンを提示して身元を証明します。
HS256、RS256、ES256はどうやって選びますか?
HS256は共有シークレットを使用し最速で、単一サービスに適しています。RS256はRSA鍵ペアを使用し、マルチサービスアーキテクチャに向いています。ES256は楕円曲線鍵を使用し、短い署名で高いセキュリティを提供します。
JWTのクレームとは何ですか?
クレームはペイロード内の情報です。登録クレームにはiss(発行者)、sub(件名)、exp(有効期限)、aud(対象者)があります。公開クレームはIANAに登録可能で、プライベートクレームは当事者間のカスタムフィールドです。
JWTの検証方法は?
ヘッダーをデコードしてアルゴリズムを取得し、適切な鍵(HMACは共有シークレット、RSA/ECDSAは公開鍵)で署名を検証します。exp、iss、audのクレームも確認してください。
ブラウザでJWTを生成するのは安全ですか?
はい、このツールはWeb Crypto APIを使用しています。キーとトークンはブラウザから送信されません。データはサーバーに送信されません。
エンコーディングと署名の違いは何ですか?
エンコーディング(Base64)はデータを送信可能な形式に変換するだけで、誰でもデコード可能です。署名は暗号学的ハッシュを作成し、トークンが改ざんされていないことを証明します。
JWTを暗号化することはできますか?
はい、JWE(JSON Web Encryption)はペイロードの内容を暗号化します。標準JWT(JWS)は完全性のみを保証し、ペイロードはトークンを持つ誰でも読み取り可能です。
JWTのセキュリティベストプラクティスは?
常に短い有効期限を設定してください。HMACには強力でランダムなシークレットを使用。RSA/ECDSAの秘密鍵は安全に保管。ペイロードに機密データを入れない。本番環境ではHTTPSを使用。
JWTとセッション認証の違いは何ですか?
JWTはステートレスで、サーバーがセッションデータを保存しないため、マイクロサービスやクロスドメインに適しています。セッションはサーバー側の保存が必要ですが、即時取り消しが可能です。
JWTはログアウトやセッション管理に向いていますか?
JWTは設計上ステートレスなので、ログアウトにはブラックリストや短命トークンとリフレッシュトークンの組み合わせなど追加の仕組みが必要です。短寿命のアクセストークン(例:15分)の使用を推奨します。
リフレッシュトークンの仕組みは?
API呼び出しに短寿命のアクセストークン(JWT)を使用し、より長寿命のリフレッシュトークンで新しいアクセストークンを取得します。アクセストークンが期限切れになると、クライアントはリフレッシュトークンを送信して新しいJWTを取得します。
「none」アルゴリズムとは?
「none」アルゴリズムはJWTが署名されていないことを意味します。テスト目的のみで使用してください。多くのライブラリはセキュリティのためデフォルトで無効化しています。
JWTにサイズ制限はありますか?
JWTに固定サイズ制限はありませんが、HTTPヘッダーで送信されるため4KB以内に収めるべきです。ペイロードは最小限に抑え、必要なクレームのみを含めてください。
JWTジェネレーターの使い方
カスタムのヘッダー、ペイロード、シークレットまたは鍵を使って署名付き JSON Web Token を作成します。HS256/384/512、RS256/384/512、ES256/384/512 から選択でき、生成はすべてブラウザ内で行われます。
- ドロップダウンでアルゴリズムを選択します。共有シークレットには HS256・HS384・HS512、鍵ペアには RS256/384/512 や ES256/384/512、未署名トークンには 'none' を選びます。
- ヘッダーとペイロードの JSON を編集し、sub・iss・exp などのクレームを追加します。
- シークレット(HS* アルゴリズム用)を入力するか、秘密鍵(RS*・ES* アルゴリズム用)を貼り付けます。
- トークンを生成し、出来上がったドット区切りの JWT を API リクエストやテストにコピーします。
'none' は未署名トークンを生成します。ほとんどのサーバーは拒否するため、デバッグ専用にしてください。
関連ツール
- JWTデコーダー 無料のオンラインJWTデコーダー。JWTを即座にデコードしてヘッダー、ペイロード、署名を表示。登録不要。
- ファイルハッシュ MD5、SHA-1、SHA-256、SHA-512ファイルハッシュをローカル計算・検証
- Chmod 計算機 無料オンラインchmod計算機でチェックボックス付きLinuxファイル権限を視覚化・計算。数値(755, 644)とシンボリック表記(rwxr-xr-x)を即座に変換。setuid、setgid、sticky bit等の特殊権限に対応。
- ASCIIコード表 10進数、16進数、8進数、2進数コード、HTMLエンティティ、文字説明を含む完全なASCII文字エンコーディングリファレンス。即座に検索・フィルタリング。
- Hexビューアー 検索、オフセットナビゲーション、仮想スクロール付きのHexダンプ形式でファイル内容を表示
- HTTPリクエストテスター ブラウザで直接REST APIをテスト。カスタムヘッダー、ボディ、クエリパラメータでGET、POST、PUT、DELETEリクエストを送信。レスポンスのステータス、ヘッダー、JSONボディを即座に確認。
- .htaccessジェネレーター Apache .htaccessルールを生成します。リダイレクト、リライト、セキュリティヘッダー、キャッシュなど。
- Robots.txtジェネレーター 無料オンラインrobots.txtジェネレーター。robots.txtファイルを作成・カスタマイズして検索エンジンのクロールを制御、クローラーアクセスを管理、サイトのSEOを最適化します。