====== X509Certificate2ExportExtensions ======
**Prostor imena:** ''WvdS.System.Security.Cryptography.X509Certificates''
Proširenja za izvoz i uvoz za ''X509Certificate2'' s post-kvantnom persistencijom ključeva. Omogućuje spremanje i vraćanje PQ ključeva u PFX/PKCS#12 datoteke.
===== Metode izvoza =====
^ Metoda ^ Opis ^
| ''ExportPfx(password, mode)'' | Izvozi certifikat kao PFX s PQ ključevima |
| ''ExportPfx(collection, password, mode)'' | Izvozi kolekciju s PQ ključevima |
| ''ExportPfxToFile(fileName, password, mode)'' | Izvozi izravno u datoteku |
===== Metode uvoza =====
^ Metoda ^ Opis ^
| ''ImportPfx(pfxBytes, password, flags)'' | Uvozi PFX s vraćanjem PQ ključeva |
| ''ImportPfx(fileName, password, flags)'' | Uvozi iz datoteke |
| ''ImportPfxCollection(pfxBytes, password, flags)'' | Uvozi kolekciju s PQ ključevima |
===== Primjer =====
// Izvoz certifikata
var cert = GetHybridCertificate();
cert.ExportPfxToFile("certificate.pfx", "MojaLozinka123!");
// Kasniji uvoz
var importedCert = X509Certificate2ExportExtensions.ImportPfx(
"certificate.pfx",
"MojaLozinka123!");
// PQ ključevi su automatski vraćeni
var pqPubKey = PqKeyStore.GetPublicKey(importedCert);
===== PFX format =====
+---------------------------+
| Standardni PKCS#12 podaci |
| (Certifikat + RSA/ECDSA) |
+---------------------------+
| Marker: "WVDS-PQ-KEYS-V1" |
+---------------------------+
| Šifrirani PQ ključevi |
| (AES-256-GCM) |
+---------------------------+
===== Sigurnosne napomene =====
* PQ privatni ključevi su zaštićeni istom lozinkom kao PFX
* Koristite jake lozinke (min. 16 znakova)
* PFX datoteke s PQ ključevima su veće (~4KB dodatno po certifikatu)
===== Vidi također =====
* [[.:x509certificate2extensions|X509Certificate2Extensions]]
* [[.:x509storeextensions|X509StoreExtensions]]
----
//Wolfgang van der Stille @ EMSR DATA d.o.o. - Post-Quantum Cryptography Professional//