Pack Camo

JWT シークレットジェネレーター

hex または Base64 の HS256・HS384・HS512 用ランダムシークレットキーを生成。そのまま .env に貼り付けられます。 処理はすべて端末内で完結し、アップロードは一切ありません。

入力
HS256 · HS384 · HS512
出力
Hex · Base64 · Base64URL · .env

HS256 には少なくとも 32 バイトが必要です。

生成されたシークレット

256 ビットのキー · HS256 · 0 文字

.env の行

JWT_SECRET=
JWT デコーダーでテスト

お使いのデバイス上で crypto.getRandomValues により生成されます。送信も保存も行われません。

安心して署名に使えるシークレット

HMAC で署名された JWT の強度は、シークレットの強度で決まります。推測されてしまえば、サーバーが信頼するトークンを誰でも発行でき、短いシークレットや人が考えたシークレットはオフラインのクラッキングツールが真っ先に試すものです。このジェネレーターは、ブラウザーの暗号論的乱数生成器から、アルゴリズムが求める長さのキーを生成します。

シークレットの長さの目安

  • HS256 には少なくとも 32 バイト (256 ビット) が必要です。それより短いと組み合わせるハッシュより弱くなり、多くのライブラリが受け付けません。
  • HS384 には少なくとも 48 バイト (384 ビット) が必要です。
  • HS512 には少なくとも 64 バイト (512 ビット) が必要です。
  • 長い分には問題ありません。ハッシュのブロックサイズより長いキーは先にハッシュ化されるため、HS256 で 64 バイト、HS512 で 128 バイトを超えても得られるものはありません。

シークレットの使い方

  • コードには含めないでください。環境変数やシークレットマネージャーに保存します。「.env 形式でコピー」を使えば、そのまま貼り付けられる行が得られます。
  • エンコードに注意してください。シークレットをテキストとして受け取るライブラリもあれば、Base64 の生バイトを期待するものもあります。バイト列にデコードする場合はここで Base64 または Base64URL を選び、ライブラリが文字列をそのまま使う場合は hex が最も安全です。
  • ローテーションすると全員がログアウトされます。古いシークレットで署名されたトークンはすべて検証に失敗するようになるため、慌てて行わず、計画的に切り替えてください。
  • デプロイ前にテストしましょう。「JWT デコーダーでテスト」を押すと、このシークレットで署名したサンプルトークンとともにデコーダーが開き、有効な署名がどのようなものか確認できます。

よくある質問

JWT シークレットキーを生成するには?
サーバーで使うアルゴリズムを選ぶと、適切な長さのシークレットがすぐに生成されます。ライブラリが期待するエンコードを選び、シークレット、または .env 形式の行をコピーしてください。「再生成」を押すと新しいものに変わります。
HS256 の JWT シークレットはどのくらいの長さが必要ですか?
最低 32 バイト、つまり 256 ビットで、hex なら 64 文字、Base64URL なら 43 文字です。これより短いと、組み合わせて使う SHA-256 ハッシュより弱くなります。
ブラウザーでシークレットを生成しても安全ですか?
はい。キーはブラウザーが TLS にも使う暗号論的乱数生成器 crypto.getRandomValues から作られ、お使いのデバイス上で生成されます。サーバーへの送信、ログへの記録、保存は行われません。
JWT シークレットは hex と Base64 のどちらにすべきですか?
どちらも同じランダムなバイト列を表します。ライブラリがシークレットをプレーンテキストとして扱うなら hex が最も安全で、多くの設定オプションのようにライブラリがシークレットを先に生のバイト列へデコードするなら Base64 または Base64URL が適しています。
パスワードを JWT シークレットとして使えますか?
おすすめできません。パスワードはランダムな 32 バイトに比べて短く予測しやすく、トークンを 1 つ手に入れた人が、ハードウェアの許す限りの速さでオフラインでシークレットを推測できてしまいます。

ほかのツール

データ変換ツールJSON・YAML・TOML・CSV・Markdownの間で構造化テキストを相互変換します。JWT デコーダートークンのヘッダーとクレームを読み取り、有効期限を確認し、署名を検証します。パスワードジェネレーター強度をビット数で表示する、強力なランダムパスワード。モックデータ生成ツール独自の列に対応した、リアルなダミーのユーザー・商品・注文を JSON、CSV、SQL で出力。画像コンバーター変換前後をその場で見比べながら、画像の再エンコード・リサイズ・ベクター化ができます。圧縮とアーカイブどんなファイルもgzipやBrotliで圧縮し、フォルダーをZIPにまとめられます。DOCXをPDFにWord文書を、選択できる本物のテキストを持つPDFに変換します。PDFをDOCXにPDFのテキストレイヤーから編集可能なWord文書を復元します。背景リムーバーAIによる自動背景切り抜きと高精度な編集ツール。PDFエディタブラウザ上で直接ドキュメントの電子署名、テキスト編集、画像追加、白塗り修正。ケースコンバーターテキストを kebab-case、camelCase、snake_case、Title Case などほかにも 10 種類のケースに変換します。Lorem Ipsum ジェネレーター段落・文・単語単位のダミーテキストを、プレーンテキストまたは HTML で生成します。画像をASCIIに写真をASCIIアートに変換。白黒でもフルカラーでも。