.Pfx birimini .cer birimine dönüştür


155

Bir .pfx (Kişisel Bilgi Değişimi) dosyasını .cer (Güvenlik Sertifikası) dosyasına dönüştürmek mümkün mü? Yanılmıyorsam, bir .cer bir şekilde .pfx içine gömülü değil mi? Mümkünse çıkarmak için bir yol istiyorum.

Yanıtlar:


90

basitçe inandığım yolu Windows Yönetim Konsolu'ndaki sertifika yöneticisini kullanarak içe aktarıp sonra dışa aktarmak.


5
Bunu yapmaya çalıştım ama özel anahtar verme seçildiğinde, .cer (DER kodlu) seçeneği devre dışı bırakıyorum. ve midletsigner programı nasıl olsa provatekey gerekir ..
Joshi

3
İçe aktarırken kutuyu işaretlemeniz gerekiyor, bu "bu anahtarı verilebilir olarak işaretle" yazıyor
Andrew Cox

11
Windows'ta Sertifika Yöneticisi'ne nasıl gidilir
James White

12
Windows sertifika yöneticisini açmanın daha kolay yolu komut istemine "certmgr.msc" yazmaktır.
Jan Derk

@AndrewCox, Bununla birlikte, dışa aktarılabilir olarak işaretleme ve bu şekilde işaretlememe arasında perde arkasında herhangi bir fark var. Yoksa sadece bir kullanıcı arayüzü seçeneği mi?
Pacerier

212

PFX dosyaları PKCS # 12 Kişisel Bilgi Değişimi Sözdizimi Standart paketleridir. X.509 sertifikalarına ve sertifika yetkilisi zincirine (set sertifikalar) eşlik eden isteğe bağlı sayıda özel anahtar içerebilir.

İstemci sertifikalarını ayıklamak istiyorsanız, OpenSSL'nin PKCS12 aracını kullanabilirsiniz .

openssl pkcs12 -in input.pfx -out mycerts.crt -nokeys -clcerts

Yukarıdaki komut sertifika (lar) ı PEM formatında verecektir. ".Crt" dosya uzantısı hem macOS hem de Window tarafından işlenir.

DER kodlu dosyalar için geleneksel olarak kullanılan soruda ".cer" uzantısından bahsediyorsunuz. İkili kodlama. Önce ".crt" dosyasını deneyin ve kabul edilmezse, PEM'den DER'e dönüştürmek kolaydır:

openssl x509 -inform pem -in mycerts.crt -outform der -out mycerts.cer

9
Komutları sağlamanın yanı sıra dosyanın ne olduğunu açıklayan +1.
Joshua Drake

"Mac doğrulama hatası: geçersiz şifre?" denediğimde. Parola bilmiyorum, sadece satıcımın sağladığı dosya var.
Brian Knoblauch

1
Özel anahtarlarıyla bir sertifikayı dönüştürmeye çalıştığınızda "-nokeys" i düşürmek gibi görünüyor, Fiddler
Gert van den Berg

@Berk, OpenSSL dışında, Windows cmd'nin bunu yapmanın bir yolu var mı?
Pacerier

45

PowerShell'de çalışıyorsanız bir DER kodlu (ikili) sertifika dosyası OutputCert.der oluşturmak için pfx dosyası InputBundle.pfx verildiğinde aşağıdakine benzer bir şey kullanabilirsiniz :

Get-PfxCertificate -FilePath InputBundle.pfx | 
Export-Certificate -FilePath OutputCert.der -Type CERT

Netlik için satırsonu eklendi, ancak elbette bunların hepsini tek bir satırda yapabilirsiniz.

Sertifikaya ASCII / Base64 kodlu PEM biçiminde ihtiyacınız varsa, başka bir yerde belgelendiği gibi bunu yapmak için ek adımlar atabilirsiniz, örneğin: /superuser/351548/windows-integrated-utility-to-convert -der-için-pem

DER kodludan farklı bir biçime dışa aktarmanız gerekiyorsa, Dışa -TypeAktar-Sertifika parametresini, .NET tarafından desteklenen türleri kullanarak aşağıdaki gibi değiştirebilirsiniz help Export-Certificate -Detailed:

-Type <CertType>
    Specifies the type of output file for the certificate export as follows. 
     -- SST: A Microsoft serialized certificate store (.sst) file format which can contain one or more certificates. This is the default value for multiple certificates. 
     -- CERT: A .cer file format which contains a single DER-encoded certificate. This is the default value for one certificate. 
     -- P7B: A PKCS#7 file format which can contain one or more certificates.

Export-Certificate, yalnızca Win 8.1 ve Server 2012 R2 gibi bazı sürümlerde kullanılabilir. Win 7 gibi başka bir sürümdeyseniz, şans yok!
Deep-B

1
Server 2012 ve Windows 8.0'da mevcut olmalıdır ( technet.microsoft.com/en-us/library/hh848628(v=wps.620).aspx ), ancak Windows 7 ve benzeri konularda iyi bir nokta!
Ian Gallagher

@IanGallagher, Bu OpenSSL'nin seçeneği ile nasıl karşılaştırılır?
Pacerier

OpenSSL işlerini kurmak istemiyorsanız bu çok daha kolay!
Leonardo Herrera

25

En basit olduğunu düşündüğüm bir yöntem eklemek istedim.

  1. Sadece pfx dosyasına sağ tıklayın, sihirbazı takip ederek "Yükle" ye tıklayın ve bir mağazaya ekleyin (Kişisel mağazaya ekledim).

  2. Başlat menüsünde certmgr.msc yazın ve CertManager programına gidin.

  3. Pfx sertifikanızı bulun (üstteki sekmeler çeşitli mağazalardır), dışa aktar düğmesini tıklayın ve sihirbazı izleyin (.CER olarak dışa aktarma seçeneği vardır)

Esasen Andrew'un cevabı ile aynı şeyi yapar, ancak Windows Yönetim Konsolu'nu kullanmaktan kaçınır (doğrudan içe / dışa aktarmaya gider).


İhracat için hala certmgr.msc'yi açmanız gerekeceğinden çok daha hızlı değil ....
Pacerier

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.