~~NOTOC~~ ====== 5. Validacija i povjerenje ====== **Scenariji:** 5 \\ **FFI funkcije:** ~40 \\ **Status:** ⏳ Planirano Ova kategorija obuhvaća sve scenarije za validaciju certifikata i lanaca certifikata. Izgradnja lanca, provjere opoziva i validacija politika. ---- ===== Scenariji ===== ^ ID ^ Scenarij ^ Opis ^ Složenost ^ Status ^ | [[.:chain_building|5.1]] | Izgradnja lanca | Izgraditi lanac certifikata | ⭐⭐⭐ | ⏳ | | [[.:chain_validation|5.2]] | Validacija lanca | Potpuna provjera lanca | ⭐⭐⭐⭐ | ⏳ | | [[.:revocation_check|5.3]] | Provjera opoziva | CRL/OCSP provjera statusa | ⭐⭐⭐ | ⏳ | | [[.:policy_validation|5.4]] | Validacija politika | Provjera politika certifikata | ⭐⭐⭐ | ⏳ | | [[.:name_constraints|5.5]] | Ograničenja imena | Provjera ograničenja prostora imena | ⭐⭐⭐⭐ | ⏳ | ---- ===== Proces validacije ===== flowchart TB START[Certifikat primljen] --> BUILD[Izgradnja lanca] BUILD --> SIG[Provjera potpisa] SIG --> TIME[Provjera valjanosti] TIME --> REV[Provjera opoziva] REV --> POLICY[Provjera politike] POLICY --> CONSTR[Provjera ograničenja] CONSTR --> RESULT{Rezultat} RESULT --> |OK| VALID[✅ Valjan] RESULT --> |Greška| INVALID[❌ Nevaljan] style VALID fill:#e8f5e9 style INVALID fill:#ffcdd2 ---- ===== Koraci validacije ===== ^ Korak ^ Provjera ^ Greška kod ^ | 1. Izgradnja lanca | Izgraditi lanac do Trust Anchora | Nedostaje Intermediate | | 2. Potpis | Svaki certifikat potpisan od Issuera | Nevaljani potpis | | 3. Valjanost | notBefore ≤ now ≤ notAfter | Istekao / Još nije valjan | | 4. Basic Constraints | CA-Flag, pathLen | Ne-CA potpisuje certifikat | | 5. Key Usage | keyCertSign za CA-e | Pogrešna namjena | | 6. Opoziv | CRL ili OCSP | Opozvan | | 7. Politika | Certificate Policies | Politika nije prihvaćena | | 8. Ograničenja imena | permitted/excluded Subtrees | Ime izvan opsega | ---- ===== Strategije provjere opoziva ===== ^ Metoda ^ Prednosti ^ Nedostaci ^ Primjena ^ | **CRL** | Moguće offline, jednostavno | Velike datoteke, kašnjenje | Enterprise, Offline | | **OCSP** | Realtime, kompaktno | Potreban poslužitelj | Online servisi | | **OCSP Stapling** | Performanse, privatnost | Potrebna TLS-Server podrška | Web poslužitelji | ---- ===== Specifični zahtjevi po industrijama ===== ^ Industrija ^ Opoziv ^ Posebnosti ^ | **Energetika/SCADA** | CRL (Offline) | Nije moguća internetska veza | | **Zdravstvo** | OCSP | Validacija u stvarnom vremenu za eRecept | | **Automobilska** | CRL + OCSP | V2X zahtijeva brzu provjeru | | **Industrija 4.0** | CRL | Proizvodne mreže izolirane | ---- ===== Brzi početak koda ===== using WvdS.Security.Cryptography.X509Certificates.Extensions.PQ; // Učitavanje Trust Store-a var trustStore = ctx.LoadTrustStore("trust-store.p7b"); // Validacija certifikata var result = ctx.ValidateCertificate( certificate: serverCert, trustStore: trustStore, options: new ValidationOptions { CheckRevocation = true, RevocationMode = RevocationMode.Online, // CRL + OCSP ValidatePolicy = true, AcceptedPolicies = new[] { "1.3.6.1.4.1.99999.1.1" } // Prilagođeni Policy OID } ); if (result.IsValid) { Console.WriteLine("Certifikat valjan"); Console.WriteLine($"Lanac: {string.Join(" → ", result.Chain.Select(c => c.Subject))}"); } else { Console.WriteLine($"Greška: {result.ErrorCode} - {result.ErrorMessage}"); } ---- ===== Povezane kategorije ===== ^ Kategorija ^ Odnos ^ | [[.:pki:start|1. PKI infrastruktura]] | Postavljanje Trust Store-a | | [[.:widerruf:start|6. Opoziv]] | Pružanje CRL/OCSP | | [[.:tls:start|10. TLS/mTLS]] | Validacija u TLS rukovanju | ---- << [[hr:int:pqcrypt:szenarien:verwaltung:start|← 4. Upravljanje certifikatima]] | [[hr:int:pqcrypt:szenarien:start|↑ Scenariji]] | [[.:widerruf:start|6. Opoziv →]] >> ---- //Wolfgang van der Stille @ EMSR DATA d.o.o. - Post-Quantum Cryptography Professional// {{tag>kategorija validacija lanac povjerenje opoziv politika}}