少し推測していますが、ブラウザで generateCRMFRequest
を使用していると思われます と importUserCertificate
組み合わせて。プロセスの概要は、Firefox の廃止予定の Javascript_crypto ドキュメントに記載されています。
Internet Explorer でも同様のことができます。調べたことはありませんが、Safari にもある程度のサポートがあると思います。
これらは完全に非標準の拡張機能であり、CA/Browser フォーラムのこの投稿によると、未来ではありません。
キーはローカルで生成されますが、generateCRMFRequest のように「アーカイブ」のためにキーが CA にも送信されるかどうかを判断するのは困難です。 JavaScript は生成されたキーにアクセスできるため、おそらくインターネット経由でキーを送信できます。
最後の情報ですが、Linux でこれを行うための汎用ツールはありますか?私の知る限りではありません。あなたは確かに次のプロセスを経ることができます:
openssl genrsa ... -out private.key
openssl req -new ... -inkey private.key -out certplease.csr
certplease.csr を CA に送信します。それらから、それらによって署名された PKCS#7 証明書が返されます (必要な場合は、チェーン内の他の証明書も含まれる可能性があります)。
ただし、Linux に標準的なユーザーベースの秘密鍵ストアがあるとは思いません。むしろ、各デスクトップ環境にはわずかに異なるものがあります。
これは興味深い質問です。
まず、.cer
についての考え 取得したファイル:PKCS 標準のリストを確認してください。 PKCS#7 は、署名/暗号化されたデータを転送するためのコンテナーに過ぎず、そのデータが何であるかについては何も教えてくれません。内部のデータが PKCS#12 形式である場合、秘密鍵がバンドルされている可能性は十分にあります。重要な質問があると思います:.cer
をインポートする際にパスワードを入力する必要がありましたか? ?
シマンテックマネージド PKI
Symantec™ Managed PKI ServiceDeployment Options ガイドにいくつかのヒントがあります (ただし、答えはありません)。
あなたは明確に説明しています
<ブロック引用>2.1.1 ネイティブ ブラウザの登録
ネイティブ ブラウザーの登録では、エンド ユーザーのコンピューターにソフトウェアをインストールする必要はなく、クラウドとハイブリッドの両方のシナリオで機能します。
ただし、キーが生成される場所に関する詳細はかなり不足しています。
サーバーに秘密鍵を生成させ、それを .cer
にバンドルします。 ファイルは次のような文と一致します:
... このオプションは、スマート カードや USB トークンなどの高度なセキュリティ証明書が適切なストアに保存されるようにするという点で重要です。
証明書は定義上公開されているため、「高セキュリティ証明書」というフレーズが意味をなす唯一の方法は、秘密鍵がバンドルされている場合です。
また、Microsoft Active Directory の登録/キー管理サービスについても多く言及しています。しかし、それではあなたの Linux のケースは説明できません。
編集: 当たり前。他に考えられるのは、ブラウザーが OS の暗号化機能 (Microsoft CAPI など) にアクセスでき、登録ページの JavaScript が OS を取得して秘密鍵を作成し、証明書の所有証明を含む証明書要求を生成することです。