JWK鍵コンバーター 🔒 ブラウザ内で完結 — 何もアップロードされません。

RSA/EC鍵をPEMとJWK(JSON Web Key)形式間で変換。

出力
 

このツールについて

JSON Web Key(JWK)は、JWTライブラリ、JWKSエンドポイント(/.well-known/jwks.json)、多くのWeb APIで使われる暗号鍵のJSON表現です。PEMはより古い、Base64で包まれたテキスト形式で、ほとんどの暗号ツール、サーバー、認証局が今も使用しています。このツールはブラウザがすでにTLSのために信頼しているのと同じWebCryptoエンジンを使い、ブラウザ内だけで両者を変換します。

方向を選び、次に変換する鍵に一致する鍵の種類(RSA、または楕円曲線P-256/P-384)と用途(署名か暗号化か)を選んでください——WebCryptoがバイト列を正しく解釈するためにこれらの情報が必要です。公開鍵はdフィールドのないJWKに変換されます。秘密鍵/鍵ペアのPEM(PKCS#8)はn/e/d(RSA)またはx/y/d(EC)を持つJWKを生成します。サポートされるのは暗号化されていないPKCS#8秘密鍵とSPKI公開鍵のみです——古いPKCS#1(RSA PRIVATE KEY)やパスワード保護されたPEMは先にPKCS#8へ変換してください(例: openssl pkcs8)。

よくある質問

JWKSエンドポイントとは何で、なぜ必要なのですか?

JWKS(JSON Web Key Set)エンドポイントは、認証プロバイダー(OAuth/OIDCアイデンティティプロバイダーなど)がJWTの署名に使用する公開鍵をJWK形式で公開するURL(多くは`/.well-known/jwks.json`)で、これにより依拠当事者がそれを取得してトークン署名の検証に使用できます。自分のトークン発行者を設定している場合、署名鍵の公開部分をJWKに変換してそこに公開することになります。

なぜ変換がインポートエラーで失敗するのですか?

最も一般的な原因は、鍵タイプまたは用途セレクターの不一致です——例えば実際にはRSAである鍵に「EC P-256」を選択したり、署名用に生成された鍵に「暗号化」を選択したりすることです。WebCryptoは実際の鍵素材に対してアルゴリズムを厳密に検証するため、セレクターが鍵が元々作成された目的と一致しているか再確認してください。