Firefoxの[証明書]タブに証明書を追加しようとすると、このメッセージが表示されます。以前はサーバー(CAでもあります)を介して作成して署名しました。
ファイルをデコードできません。 PKCS#12形式ではない、破損している、または入力したパスワードが正しくありません。
パスワードを求めて、このメッセージが表示されます。何が問題なの?私はこれをフォローしています地図時間。
アップデート#1
私が使用したコマンドは次のとおりです。
openssl genrsa -out rootCA.key 2048
openssl req -x509 -new -nodes -key rootCA.key -days 1024 -out rootCA.pem
openssl genrsa -out device.key 2048
openssl req -new -key device.key -out device.csr
openssl x509 -req -in device.csr -CA rootCA.pem \
-CAkey rootCA.key -CAcreateserial -out device.crt -days 500
追加された証明書はdevice.crtで、証明書タブにはFirefoxから要求されたPKS12があります。形式を変更する必要がありますか?
ベストアンサー1
1:証明書ファイルの種類を確認してください。
インポートするファイルが実際には.pk12ファイルではないようです。インポートするファイルの種類を確認するには、次のコマンドを実行します。
openssl pkcs12 -info -in keyStore.p12
以下が表示されます。
Enter Import Password:
MAC Iteration 2048
MAC verified OK
PKCS7 Encrypted data: pbeWithSHA1And40BitRC2-CBC, Iteration 2048
Certificate bag
Bag Attributes
localKeyID: 74 FF 2A 04 58 90 06 B5 A0 5C EF DA C0 9B 6C AD 91 BD 1F 54
friendlyName: [friendly name]
subject=/C=US/ST=NY/O=My Company/OU=dept/CN=blah.blah.com
issuer=/O=My Company/OU=dept/[email protected]/L=My Town/ST=NY/C=US/CN=blah.blah.com
-----BEGIN CERTIFICATE-----
!!!REMOVED CERTIFICATE!!!!
-----END CERTIFICATE-----
Certificate bag
Bag Attributes: <No Attributes>
subject=/O=My Company/OU=dept/[email protected]/L=My Town/ST=NY/C=US/CN=blah.blah.com
issuer=/O=My Company/OU=dept/[email protected]/L=My Town/ST=NY/C=US/CN=blah.blah.com
-----BEGIN CERTIFICATE-----
!!!REMOVED CERTIFICATE!!!
-----END CERTIFICATE-----
PKCS7 Data
Shrouded Keybag: pbeWithSHA1And3-KeyTripleDES-CBC, Iteration 2048
Bag Attributes
localKeyID: 74 FF 2A 04 58 90 06 B5 A0 5C EF DA C0 9B 6C AD 91 BD 1F 54
friendlyName: [friendly name]
Key Attributes: <No Attributes>
Enter PEM pass phrase:
Verifying - Enter PEM pass phrase:
-----BEGIN ENCRYPTED PRIVATE KEY-----
!!!REMOVED CERTIFICATE!!!
-----END ENCRYPTED PRIVATE KEY-----
OPは上記のコマンドを実行しましたが、次のエラーが発生しました。
your command didn't work
3077953260:error:0D0680A8:asn1 encoding routines:ASN1_CHECK_TLEN:wrong tag:tasn_dec.c:1320: 3077953260:error:0D07803A:asn1 encoding routines:ASN1_ITEM_EX_D2I:nested asn1 error:tasn_dec.c:382:Type=PKCS12
このエラーは、OPに保持されている.crtファイルがpkcs12 / pfxファイルではないことを示しています。
この時点でOPは別の質問をしました。CAのルートキーを使用してCSRに署名することはできません。「彼らは同じ問題に関する質問をしました。
コメントの1つを読んだ後、OPは実際にpkcs12 / pfx形式の証明書を必要とするFirefoxのダイアログボックスに.crtファイルをロードしようとします。 .crtをpkcs12/pfx証明書に変換する方法については、下記をご覧ください。
2. Firefox「証明書」ダイアログボックス
Firefoxサポートフォーラムで次の質問を見つけました。 証明書に .crt 形式の証明書をインストールします。その内容は次のとおりです。
[ユーザー証明書]タブには、必要な.crt形式の証明書があります。
Firefoxでは、.p12および.pfx形式の証明書のみを受け入れます。
この証明書を「証明書」タブにどのようにインポートしますか?
.crtを.p12に変換できることを確認しようとしましたが、成功しませんでした。 (同じ証明書を.p7bおよび.spc形式に変換できました)
.crtファイルがあるかのように聞こえるので、opensslを使用してファイルをpkcs12 / pfxファイルに変換できます。
openssl pkcs12 -export -in certificate.cer -inkey privateKey.key \
-out certificate.pfx -certfile CACert.cer
メモ:この例では、CACert.cer は CA の .crt ファイルです。このコマンドは、.crtファイルとCAの.crtファイルをpkcs12 / pfxファイルに混在させます。
OPは次のコマンドを実行しました。
sudo openssl pkcs12 -export -in certs/device.crt -inkey private/device.key -out safaa.pfx -certfile certs/myca.crt