[解決済み] pem、crt、keyファイルの違いについて
質問
opensslが生成するファイルの違いとその検出方法がわからず困っています。
例えば、私は秘密鍵付きの自己署名証明書を生成し、p12からJKSファイルを生成しようとしています。 形式を使用します。私は狂ったようにググっていますが、次のコマンドを使用できるように正しく生成する方法がまだ分かっていません。
openssl pkcs12 -export -in user.pem -inkey user.key -certfile user.pem -out testkeystore.p12
keytool -importkeystore -srckeystore testkeystore.p12 -srcstoretype pkcs12 -destkeystore wso2carbon.jks -deststoretype JKS
出典 https://www.ibm.com/support/pages/how-generate-jks-keystore-existing-private-key
自己署名証明書と秘密鍵を生成するいくつかの異なるコマンドを見つけましたが、結果のファイルを上記のコマンドにマップする方法がわかりませんし、さらに悪いことに、これらのコマンドが何をするのかがわかりません。 つまり、どんなファイルを生成するかは分かるし、証明書と秘密鍵がそれに署名するために使われることも理解できるのですが(あるいはその逆かもしれませんが:|)、これらのコマンドの違いは何なのか、そしてcert.pem === certificate.crt なのか - これらのファイル拡張子は私を狂わせることになります。
openssl req -x509 -sha256 -nodes -days 365 -newkey rsa:2048 -keyout privateKey.key -out certificate.crt
openssl req -newkey rsa:2048 -new -nodes -x509 -days 3650 -keyout key.pem -out cert.pem
これは、私がopensslコマンドで同様の問題を抱えている別の状況です。この時点で、私はいくつかのRFCを読む準備ができています(こんなことにならなければいいのですが :)
よろしくお願いします。
解決方法を教えてください。
これらのファイル名は、鍵の生成と検証のプロセスの異なる部分を表しています。 この名前は単なる慣例であり、これらのファイルを
pepperoni.pizza
であり、内容は同じですので、ファイル名の使い分けを意識してください。
PKIについて簡単に説明すると、鍵は公開鍵と秘密鍵の2つに分かれる。 公開鍵は広く一般に配布することができ、秘密鍵を用いて生成された情報を検証することはできますが、複製することはできません。 秘密鍵は秘密にしておかなければならない。
.key
ファイルは一般に秘密鍵であり、クライアントが検証するためのデータを暗号化し、パッケージ化するためにサーバーが使用します。
.pem
ファイルは通常、公開鍵であり、クライアントがサーバーから送信されたデータを検証し、復号化するために使用されます。
.p12
ファイルには鍵の両側が埋め込まれているので、管理者は簡単に鍵の両側を管理することができます。
.cert
または
.crt
ファイルは証明書署名要求で、信頼できる第三者が秘密鍵に直接アクセスすることなく鍵ペアの所有権を確認するために使用します (これにより、あなたのウェブサイトを直接知らないエンドユーザが、証明書が有効であると確信することができます)。 自己署名のシナリオでは、自分の秘密鍵を使った証明書署名要求を使って、自分の秘密鍵を検証します(したがって自己署名です)。 あなたのspeficアプリケーションによっては、これは必要ではないかもしれません。(ウェブサーバーやRPCサーバーには必要ですが、それ以外にはあまり必要ありません)。
JKSキーストアは、上記のコンポーネントの一部または全部を保存・管理し、各鍵に対して許可または拒否される関連能力のデータベースを保持するためのJava用ネイティブファイル形式です。
あなたが挙げたコマンドは私には問題なく見えますし、異なるファイルが何のためにあるのかを尋ねる以上の疑問は見当たりません。 もし、もっと情報が必要なら、質問を充実させてください。
関連
-
[解決済み] curlです。(35) error:1408F10B:SSLルーチン:ssl3_get_record:バージョン番号が間違っている
-
[解決済み] NET::ERR_SSL_OBSOLETE_VERSIONとChromeの関係
-
[解決済み] pem、crt、keyファイルの違いについて
-
[解決済み] .keyと.crtファイルから.pemファイルを取得する方法は?
-
[解決済み] .pemを.crtと.keyに変換する
-
[解決済み】windows10にOpenSSLをインストールする方法は?
-
[解決済み】認証局でCertificate Signing Requestに署名する方法は?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン