6. Opoziv (Revocation)

Scenariji: 4
FFI funkcije: ~35
Status: ⏳ Planirano

Ova kategorija obuhvaća sve scenarije za opoziv certifikata. Kreiranje CRL-a, postavljanje OCSP Respondera i upravljanje Delta-CRL-om.


Scenariji

ID Scenarij Opis Složenost Status
6.1 Kreiranje CRL-a Generiranje Certificate Revocation List ⭐⭐⭐
6.2 OCSP Responder Online Certificate Status Protocol ⭐⭐⭐⭐
6.3 Delta-CRL Inkrementalna CRL ažuriranja ⭐⭐⭐⭐
6.4 Opoziv certifikata Opoziv pojedinačnog certifikata ⭐⭐

Arhitektura opoziva

flowchart TB subgraph CA["🔐 Certificate Authority"] REVOKE[Zahtjev za opoziv] DB[(Revocation DB)] CRL_GEN[CRL Generator] OCSP_SIGN[OCSP Signer] end subgraph DIST["📤 Distribucija"] CDP[CRL Distribution Point] OCSP_SRV[OCSP Responder] end subgraph CLIENT["🖥️ Klijent"] VAL[Validator] end REVOKE --> DB DB --> CRL_GEN --> CDP DB --> OCSP_SIGN --> OCSP_SRV VAL --> |HTTP GET| CDP VAL --> |OCSP Request| OCSP_SRV style DB fill:#e3f2fd style CDP fill:#e8f5e9 style OCSP_SRV fill:#fff3e0


Razlozi opoziva (RFC 5280)

Kod Razlog Opis
0 unspecified Razlog nije naveden
1 keyCompromise Privatni ključ kompromitiran
2 cACompromise CA kompromitiran
3 affiliationChanged Organizacija promijenjena
4 superseded Zamijenjen novim certifikatom
5 cessationOfOperation Usluga ukinuta
6 certificateHold Privremeno blokiran

CRL vs OCSP

Aspekt CRL OCSP
Ažuriranje Periodično (sati/dani) Realtime
Veličina Raste s opozivima Konstantno (~4 KB)
Offline ✅ Moguće ❌ Potreban poslužitelj
Privatnost ✅ Upiti nisu vidljivi ⚠️ Poslužitelj vidi upite
Standard RFC 5280 RFC 6960

Specifični zahtjevi po industrijama

Industrija Metoda Interval ažuriranja Posebnosti
Energetika/SCADA CRL 24-72h Offline okruženja, ručna distribucija
Zdravstvo OCSP Realtime gematik zahtjevi, QES
Automobilska CRL + OCSP 1-6h V2X zahtijeva brzu provjeru
Standardni IT OCSP Stapling Realtime Optimizirano za performanse

Brzi početak koda

Kreiranje CRL-a

// Inicijalizacija CRL Buildera
var crlBuilder = ctx.CreateCrlBuilder(issuerCert, issuerKey);
 
// Dodavanje opozvanih certifikata
crlBuilder.AddRevokedCertificate(
    serialNumber: revokedCert.SerialNumber,
    revocationDate: DateTimeOffset.UtcNow,
    reason: RevocationReason.KeyCompromise
);
 
// Generiranje CRL-a
var crl = crlBuilder.Build(
    thisUpdate: DateTimeOffset.UtcNow,
    nextUpdate: DateTimeOffset.UtcNow.AddDays(7),
    crlNumber: 42
);
 
File.WriteAllBytes("intermediate.crl", crl.ToDer());

Opoziv certifikata

// Učitavanje certifikata za opoziv
var certToRevoke = ctx.LoadCertificate("compromised.crt.pem");
 
// Unos u Revocation-DB
ctx.RevokeCertificate(
    certificate: certToRevoke,
    reason: RevocationReason.KeyCompromise,
    invalidityDate: DateTimeOffset.UtcNow.AddHours(-2)  // Kompromitacija prije 2h
);
 
// Generiranje i distribucija novog CRL-a
var newCrl = ctx.GenerateCrl(issuerCert, issuerKey);
await PublishCrl(newCrl, "http://crl.example.com/intermediate.crl");

Povezane kategorije

Kategorija Odnos
1. PKI infrastruktura CRL Distribution Points u CA konfiguraciji
5. Validacija Provjera opoziva kod validacije
4. Upravljanje certifikatima Re-Key nakon opoziva

« ← 5. Validacija | ↑ Scenariji | 7. Šifriranje → »


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

Zuletzt geändert: 30.01.2026. u 07:28