ByteScope

Certificate Generator

自己署名証明書・CSR・ブラウザベースのローカルCA — 秘密鍵がマシンから出ることはありません。

ファイルはブラウザから送信されません — 処理はすべてローカルで行われます。

Keys are generated by your browser's WebCrypto and never leave this page — no key, certificate, common name or SAN value is ever transmitted. Works offline; disconnect the network and try it.

Subject Alternative Names
Key algorithm

このツールについて

コモンネームを入力し、SAN(ドメインとIP)を追加し、鍵の種類(RSA 2048/4096またはECDSA P-256)と有効期間を選べば、すぐに使えるPEM証明書と秘密鍵をダウンロードできます。鍵はブラウザのWebCrypto — opensslが生成するものと暗号学的に等価 — で生成され、デバイスから外に出ることはありません。他のオンラインジェネレーターに貼り付けることの根本的な問題を、アーキテクチャで解決しています。

ローカルCAモードはmkcertのワークフローをブラウザで再現したもので、このツールが存在する理由でもあります:個人用CAを一度生成し、システムの信頼ストアにインポートし(手順のガイド付き)、それを使ってlocalhostや内部の開発ドメイン用の証明書に署名します — すると、そのCAが署名したすべての証明書についてブラウザの証明書警告が消えます。CA鍵をダウンロードして保管しておき、次回それを再び読み込ませれば、同じCAから発行を続けられます — サーバーなしでの継続性です。

CSRジェネレーターは実在CAのワークフローにも対応します:鍵ペアと証明書署名要求(CSR)を、認証局に提出できる状態で生成します。すべてのダウンロードには対応するnginx、Apache、Node.jsの設定スニペットが付属するので、証明書は生成から配信まで一度の貼り付けで完了します。

よくある質問

mkcertと何が違いますか?
ワークフローは同じ — ローカルCAを作成し、一度信頼し、開発ドメイン用の証明書を発行する — ですが、インストールするものは何もありません:鍵生成とX.509署名はブラウザ内のWebCryptoで実行されます。mkcertは信頼ストアへのインポートを自動化しますが、ここではその代わりにお使いのOS向けの短いガイド手順に従います。
秘密鍵はどこで生成され、マシンの外に出ますか?
鍵はこのタブのメモリ内でブラウザのWebCrypto APIによって生成され、ダウンロードをクリックしたときにのみディスクに書き込まれます。何も送信されません — ページはネットワークを切断した状態でも動作し、それはご自由に確認いただけます。
自己署名証明書なのにブラウザが警告を出し続けるのはなぜですか?
素の自己署名証明書は、お使いのシステムが信頼する何者にも署名されていないため、警告が出るのは想定どおりです。それを解決するのがローカルCAモードです:個人用CAを一度信頼すれば、それが署名するすべての証明書 — localhost、*.testドメイン、LANのIP — が警告なしで受け入れられます。
RSAとECDSAのどちらを使うべきですか?
開発にはECDSA P-256を:より小さく、より速く、モダンなスタックで広くサポートされています。構成内の一部のレガシーコンポーネントが要求する場合はRSA 2048、ポリシーが要求する場合にのみRSA 4096(これは明らかに遅くなります)を使ってください。
これらの証明書を本番環境で使えますか?
いいえ — 本番環境には公的に信頼されたCAの証明書が必要です(Let's Encryptは無料です)。自己署名証明書とローカルCA証明書は、開発・テスト・内部ツール向けであり、そこではまさに適切なツールです。