CSR・自己署名証明書ジェネレーター
RSA または ECDSA の秘密鍵と、証明書署名要求(CSR)または自己署名 X.509 証明書を、すべてブラウザー内で生成します。
CSR・自己署名証明書ジェネレーター — サブジェクトの各フィールドと必要なサブジェクト代替名を入力し、RSA か ECDSA を選び、認証局に送る証明書署名要求(CSR)と、すぐ使える自己署名 X.509 証明書のどちらを作るかを決めます。新しく生成された秘密鍵と CSR または証明書は、コピーできる PEM ブロックとして表示されます。鍵はすべて Web Crypto API で生成し、pkijs でブラウザー内だけでエンコードするため、秘密鍵がサーバーに送られることはありません。
CSR・自己署名証明書ジェネレーターとは?
このツールは、秘密鍵と、証明書署名要求(CSR)または自己署名証明書のどちらかを生成する無料のブラウザー内ジェネレーターです。CSR は認証局(CA)に送って署名してもらい、信頼される TLS 証明書にするためのファイルで、自己署名証明書は自分の鍵で署名するもので、ローカル開発・社内サービス・手早いテストに便利です。開発者・DevOps エンジニア・システム管理者は、ドメイン用の証明書を申請したり、ステージング環境で HTTPS を立ち上げたり、正しい Common Name と SAN を持つ使い捨て証明書を作ったりするときに使います。鍵アルゴリズム(RSA 2048/3072/4096 または ECDSA P-256/P-384)を選び、サブジェクトの識別名(Common Name・組織・国など)と DNS のサブジェクト代替名を入力し、CSR と自己署名モードを切り替えて「生成」を押します。秘密鍵は常に PKCS#8 PEM で出力され、PKCS#10 CSR または X.509 証明書の PEM が併せて、すべてローカルで生成されます。
CSR・自己署名証明書ジェネレーターの使い方
- 鍵アルゴリズムを選びます。RSA(2048・3072・4096 ビット)または ECDSA(P-256・P-384)。
- サブジェクトの各フィールドを入力します。最低でも Common Name(CN)、必要に応じて組織・組織単位・国・都道府県・市区町村も入力します。
- 証明書が複数のホスト名をカバーする必要があれば、サブジェクト代替名をカンマ区切りの DNS 名のリストで入力します。
- セグメントコントロールで CSR(CA に送る)か自己署名(すぐ使える)を選びます。
- 「生成」を押し、出力ブロックから秘密鍵の PEM と、得られた CSR または証明書の PEM をコピーします。
- 秘密鍵は安全な場所に保管して非公開にし、CSR は CA に提出するか、自己署名証明書を必要な場所にインストールします。
使用例
単一ドメイン向けの RSA 2048 CSR
入力
アルゴリズム: RSA 2048、CN: example.com、O: Example Inc、国: US、モード: CSR
出力
PKCS#8 秘密鍵 PEM(-----BEGIN PRIVATE KEY-----)と、認証局にアップロードできる PKCS#10 CSR PEM(-----BEGIN CERTIFICATE REQUEST-----)。
複数 SAN 付きの ECDSA P-256 自己署名証明書
入力
アルゴリズム: ECDSA P-256、CN: localhost、SAN: localhost, dev.local, 127.0.0.1、モード: 自己署名
出力
秘密鍵 PEM と、列挙したすべての SAN エントリをカバーする X.509 証明書 PEM(-----BEGIN CERTIFICATE-----)。ローカル HTTPS にそのまま使えます。
より厳格なポリシー向けの RSA 4096 CSR
入力
アルゴリズム: RSA 4096、CN: api.example.org、O: Example Org、OU: Platform、モード: CSR
出力
より長い 4096 ビットの秘密鍵 PEM と、サブジェクト識別名を完全にエンコードした対応する CSR PEM。
よくある質問
- 秘密鍵はどこかに送信されますか?
- いいえ。鍵ペアは Web Crypto API で生成し、pkijs でブラウザー内だけでエンコードします。何もサーバーにアップロード・保存されないため、秘密鍵がページの外に出ることはなく、読み込み後はオフラインで動作します。
- CSR と自己署名証明書の違いは何ですか?
- CSR(証明書署名要求)は認証局に送る要求で、認証局がそれを署名して信頼される証明書にします。自己署名証明書は外部の認証局を使わず自身の鍵で署名するため、ブラウザーは既定では信頼しませんが、ローカル開発や社内テストに最適です。
- 対応している鍵アルゴリズムとサイズは?
- RSA は 2048・3072・4096 ビット、ECDSA は P-256 または P-384 曲線に対応します。RSA は互換性が最も高く、ECDSA はより小さく高速な鍵を生成でき、最近のシステムが対応しています。
- 出力の形式は何ですか?
- 秘密鍵は PKCS#8 の PEM(-----BEGIN PRIVATE KEY-----)です。CSR は PKCS#10 PEM(-----BEGIN CERTIFICATE REQUEST-----)、自己署名証明書は X.509 PEM(-----BEGIN CERTIFICATE-----)です。各ブロックはそれぞれの出力エリアからコピーします。
- 複数のホスト名を追加するには?
- サブジェクト代替名のフィールドに、カンマ区切りの DNS 名のリストとして入力します。例: example.com, www.example.com, api.example.com。それぞれが要求または証明書の dNSName SAN エントリになります。
関連ツール
AES テキスト暗号化(AES-GCM + PBKDF2)
パスフレーズから導出した鍵(PBKDF2 SHA-256)で AES-GCM によりテキストを暗号化・復号します。すべてブラウザ内で完結し、アップロードはありません。
Argon2・scrypt ハッシュ
Argon2id または scrypt でパスワードをハッシュ化し、Argon2 ハッシュとパスワードを照合します。すべてブラウザー内で動作します。
Bcrypt ハッシュ生成・検証ツール
平文から選んだコストファクターで bcrypt パスワードハッシュを生成したり、既存の bcrypt ハッシュとパスワードを照合したりを、すべてブラウザー内で行います。
BIP39 ニーモニック生成ツール
12〜24 語のランダムな BIP39 リカバリーフレーズを複数の言語で生成したり、既存のニーモニックを元のエントロピーに戻したりします。すべてブラウザー内で行われます。