1

正確な問題が報告されています

Jarsigner: の証明書チェーンが見つかりません

私の出発点は .pem ファイルでした。私の感覚では、これには秘密鍵も含まれています。次のコマンドを使用して、これをキーストアにインポートしました。

keytool -importcert -alias myalias -file myfile.pem

「この証明書を信頼しますか? [いいえ]」で「いいえ」を選択すると、インポートに失敗します。だから、私は「はい」で行きました。インポートは成功します。じぶんの

keytool -リスト

Jarsigner: certificate chain not found for にリストされているものと同様の出力を生成します。

私の感覚では、これを正しくインポートしていない正しい証明書ビットを持っているということです。つまり、「キー エントリ」ではなく「信頼できる証明書エントリ」が作成されているのではないかと疑っていますが、keytool に「キー エントリ」を強制的に作成させる方法がわかりません。

どうすればこの問題を解決できますか?

追加情報:

さらなる作業の後、私は上記の結論とは正反対の結論に傾いています。私のpemファイルに何か問題があると思います。期限切れのキーを持つ以前のキーストア エントリを調べました。私のインポートはtrustedCertEntryを示していますが、PrivateKeyEntryを明確に示しています。

4

1 に答える 1

1

証明書チェーン全体を含むファイルから pkcs12 の作成を試みることができます。公開証明書とルート CA 証明書が必要です。コマンドは次のようになります。

openssl pkcs12 -export -inkey file.pem -in file.crt -out file.p12 \
-CAfile root-CA.pem -chain -name mykey

file.p12 ファイル全体を取得したら、完全な証明書を pem 形式にエクスポートできます。

openssl pkcs12 -in file.p12 -out new-cert.pem -nodes -clcerts

または、チェーン全体を含む Java キーストア形式にエクスポートする場合、コマンドは次のとおりです。

keytool -importkeystore -srcstoretype pkcs12 -srckeystore file.p12 \
-srcstorepass <password> -keystore keystore.jks
于 2013-11-07T22:22:07.680 に答える