PKCS12 anahtar deposunda saklanan sertifikaları listelemek istedim.
Anahtar deposunda uzantı var .pfx
PKCS12 anahtar deposunda saklanan sertifikaları listelemek istedim.
Anahtar deposunda uzantı var .pfx
Yanıtlar:
Anahtar deposu PKCS12 türü ( .pfx
) ise, bunu belirtmeniz gerekir -storetype PKCS12
(okunabilirlik için satır sonları eklenir):
keytool -list -v -keystore <path to keystore.pfx> \
-storepass <password> \
-storetype PKCS12
.p12
) ile çalışmalı mı? I getjava.io.IOException: Invalid keystore format
openssl
Aynı şeyi başarmak için de kullanabilirsiniz :
$ openssl pkcs12 -nokeys -info \
-in </path/to/file.pfx> \
-passin pass:<pfx's password>
MAC Iteration 2048
MAC verified OK
PKCS7 Encrypted data: pbeWithSHA1And40BitRC2-CBC, Iteration 2048
Certificate bag
Bag Attributes
localKeyID: XX XX XX XX XX XX XX XX XX XX XX XX XX 48 54 A0 47 88 1D 90
friendlyName: jedis-server
subject=/C=US/ST=NC/L=Raleigh/O=XXX Security/OU=XXX/CN=something1
issuer=/C=US/ST=NC/L=Raleigh/O=XXX Security/OU=XXXX/CN=something1
-----BEGIN CERTIFICATE-----
...
...
...
-----END CERTIFICATE-----
PKCS7 Data
Shrouded Keybag: pbeWithSHA1And3-KeyTripleDES-CBC, Iteration 2048
Girişleri (sertifika ayrıntıları) tuş takımıyla listeleyebilirsiniz ve hatta mağaza türünü belirtmenize gerek kalmaz.
keytool -list -v -keystore cert.p12 -storepass <password>
Keystore type: PKCS12
Keystore provider: SunJSSE
Your keystore contains 1 entry
Alias name: 1
Creation date: Jul 11, 2020
Entry type: PrivateKeyEntry
Certificate chain length: 2
openssl pkcs12 -info -in keystore_file
Soruda ve tüm yanıtlarda eksik olan şey, PKCS # 12 (.pfx) anahtar deposundaki genel verileri okumak için parolaya ihtiyacınız olabileceğidir. Bir parolaya ihtiyacınız olup olmadığı, PKCS # 12 dosyasının nasıl oluşturulduğuna bağlıdır. PKCS # 7 verileri (örn. OID öneki 1.2.840.113549.1.7) 'şifreli' olarak listelenmişse, dosyanın ASN1 yapısını kontrol edebilirsiniz (bunu bir ASN1 ayrıştırıcı, openssl veya certutil aracılığıyla çalıştırarak bunu da yapabilir) bir şifre spesifikasyonuyla veya asn1 ağacındaki verilerin konumu şifrelenmiş bir düğümün altındaysa, parolayı bilmeden onu okuyamazsınız. Bu, 'openssl pkcs12' komutunuzun hatalarla başarısız olacağı anlamına gelir (çıktı sürüme bağlıdır). Parola bilgisi olmadan bir PKCS # 12 sertifikasıyla neden ilgilenebileceğinizi merak edenler için. Pek çok anahtar deponuzun ve birçok phassphrase'iniz olduğunu ve onları düzenli tutmakta gerçekten kötü olduğunuzu ve tüm kombinasyonları test etmek istemediğinizi, dosyanın içindeki sertifika, hangi şifre olabileceğini bulmanıza yardımcı olabilir. Veya bir anahtar deposunu taşımak / yenilemek için yazılım geliştiriyorsunuz ve kullanıcı etkileşimi olmadan içerilen sertifikaya göre hangi prosedürü başlatacağınıza önceden karar vermeniz gerekiyor. Bu nedenle son örnekler, PKCS # 12 yapısına bağlı olarak parola olmadan çalışır. Veya bir anahtar deposunu taşımak / yenilemek için yazılım geliştiriyorsunuz ve kullanıcı etkileşimi olmadan içerilen sertifikaya göre hangi prosedürü başlatacağınıza önceden karar vermeniz gerekiyor. Bu nedenle son örnekler, PKCS # 12 yapısına bağlı olarak parola olmadan çalışır. Veya bir anahtar deposunu taşımak / yenilemek için yazılım geliştiriyorsunuz ve kullanıcı etkileşimi olmadan içerilen sertifikaya göre hangi prosedürü başlatacağınıza önceden karar vermeniz gerekiyor. Dolayısıyla, son örnekler, PKCS # 12 yapısına bağlı olarak parola olmadan çalışır.
Bunu eklemek istedim çünkü kendime bir cevap bulamadım ve çözmek için çok zaman harcadım.