Inhaltsverzeichnis

Uvoz/izvoz

Kompaktni primeri za uvoz/izvoz. → Podrobnosti: Scenariji uvoza/izvoza


Izvoz PEM

var cert = new X509Certificate2("certificate.pfx", "geslo");
 
// Certifikat kot PEM
string certPem = cert.ExportCertificatePem();
File.WriteAllText("certificate.pem", certPem);
 
// Zasebni ključ kot PEM (šifriran)
using var key = cert.GetECDsaPrivateKey();
string keyPem = key.ExportEncryptedPkcs8PrivateKeyPem(
    "geslo"u8, new PbeParameters(
        PbeEncryptionAlgorithm.Aes256Cbc,
        HashAlgorithmName.SHA256, 100000));
File.WriteAllText("private.key", keyPem);

Podrobnosti: Izvoz PEM


PFX/PKCS#12

// Izvoz
var cert = new X509Certificate2("certificate.pfx", "staro");
byte[] pfx = cert.Export(X509ContentType.Pfx, "novo");
File.WriteAllBytes("exported.pfx", pfx);
 
// Uvoz
var imported = new X509Certificate2("exported.pfx", "novo",
    X509KeyStorageFlags.Exportable | X509KeyStorageFlags.PersistKeySet);

Podrobnosti: Izvoz PFX


PKCS#7 certifikatna veriga

// Izvoz
var chain = new X509Certificate2Collection();
chain.Add(endEntity);
chain.Add(intermediate);
chain.Add(root);
 
byte[] p7b = chain.Export(X509ContentType.Pkcs7);
File.WriteAllBytes("chain.p7b", p7b);
 
// Uvoz
var imported = new X509Certificate2Collection();
imported.Import("chain.p7b");

Podrobnosti: PKCS#7 veriga


Medplatformno (Java/OpenSSL)

// Za Java: PKCS#12 z združljivimi algoritmi
byte[] pfx = cert.Export(X509ContentType.Pfx, "geslo");
 
// Za OpenSSL: Format PEM
string pem = cert.ExportCertificatePem();
# OpenSSL: PEM → PKCS#12
openssl pkcs12 -export -in cert.pem -inkey key.pem -out cert.pfx
 
# OpenSSL: PKCS#12 → PEM
openssl pkcs12 -in cert.pfx -out cert.pem -nodes

Podrobnosti: Interoperabilnost


Pregled formatov

Format Končnica Vsebina
PEM .pem, .crt, .key Base64 z glavo
DER .der, .cer Binarno
PFX/PKCS#12 .pfx, .p12 Certifikat + ključ + veriga
PKCS#7 .p7b, .p7c Samo certifikati

« ← Kratka referenca | → Scenariji uvoza/izvoza (podrobnosti) »


Wolfgang van der Stille @ EMSR DATA d.o.o. - Post-Quantum Cryptography Professional