Scenariji: 4
FFI funkcije: ~30
Status: ⏳ Planirano
Ova kategorija obuhvaća sve scenarije za Post-Quantum sigurnu TLS komunikaciju. Postavljanje servera, konfiguracija klijenta i mTLS deployment.
| ID | Scenarij | Opis | Složenost | Status |
|---|---|---|---|---|
| 10.1 | Postavljanje TLS servera | Server s PQ certifikatom | ⭐⭐⭐ | ⏳ |
| 10.2 | Konfiguracija TLS klijenta | Klijent za PQ-TLS | ⭐⭐⭐ | ⏳ |
| 10.3 | mTLS Deployment | Obostrana autentifikacija | ⭐⭐⭐⭐ | ⏳ |
| 10.4 | Hybrid-TLS | ECDHE + ML-KEM Key Exchange | ⭐⭐⭐⭐ | ⏳ |
| Cipher Suite | Key Exchange | Autentifikacija | Šifriranje |
|---|---|---|---|
| TLS_AES_256_GCM_SHA384 | x25519_mlkem768 | ML-DSA-65 | AES-256-GCM |
| TLS_CHACHA20_POLY1305_SHA256 | x25519_mlkem768 | ML-DSA-65 | ChaCha20-Poly1305 |
| TLS_AES_256_GCM_SHA384 | x25519 (Hybrid fallback) | ECDSA P-384 | AES-256-GCM |
| Server | Konfiguracija | PQ podrška |
|---|---|---|
| Nginx | ssl_certificate + ssl_protocols | Putem OpenSSL 3.6 |
| Apache | SSLCertificateFile + SSLProtocol | Putem OpenSSL 3.6 |
| Kestrel (.NET) | HttpsConnectionAdapterOptions | Nativno |
| HAProxy | bind … ssl crt | Putem OpenSSL 3.6 |
| Sektor | TLS zahtjev | Posebnosti |
|---|---|---|
| Energetika/SCADA | TLS 1.2+ | IEC 62351, offline fallback |
| Zdravstvo | TLS 1.3 | gematik TI konektor |
| Automobilska industrija | TLS 1.3 | V2X, kratki handshake |
| Industrija 4.0 | TLS 1.3 + mTLS | OPC UA Security |
// Program.cs var builder = WebApplication.CreateBuilder(args); builder.WebHost.ConfigureKestrel(options => { options.ListenAnyIP(443, listenOptions => { listenOptions.UseHttps(httpsOptions => { // Učitavanje PQ certifikata var cert = ctx.LoadCertificate("server.crt.pem"); var key = ctx.LoadPrivateKey("server.key.pem", password); httpsOptions.ServerCertificate = ctx.CreateX509Certificate2(cert, key); // Forsiranje TLS 1.3 httpsOptions.SslProtocols = SslProtocols.Tls13; // Klijentski certifikat za mTLS httpsOptions.ClientCertificateMode = ClientCertificateMode.RequireCertificate; httpsOptions.ClientCertificateValidation = (cert, chain, errors) => { return ctx.ValidateCertificate(cert, trustStore).IsValid; }; }); }); });
// Konfiguracija HttpClient-a za PQ-TLS var handler = new SocketsHttpHandler { SslOptions = new SslClientAuthenticationOptions { EnabledSslProtocols = SslProtocols.Tls13, RemoteCertificateValidationCallback = (sender, cert, chain, errors) => { // PQ validacija certifikata return ctx.ValidateCertificate(cert, trustStore).IsValid; } } }; var httpClient = new HttpClient(handler); var response = await httpClient.GetAsync("https://pq-server.example.com/api/data");
# /etc/ssl/openssl.cnf [openssl_init] providers = provider_sect [provider_sect] default = default_sect oqsprovider = oqsprovider_sect [default_sect] activate = 1 [oqsprovider_sect] activate = 1 module = /usr/lib/ossl-modules/oqsprovider.so
| Kategorija | Odnos |
|---|---|
| 3. Izdavanje certifikata | Server certifikati |
| 9. Autentifikacija | mTLS Client-Auth |
| 7. Šifriranje | Key Exchange |
« ← 9. Autentifikacija | ↑ Scenariji | 11. Upravljanje ključevima → »
Wolfgang van der Stille @ EMSR DATA d.o.o. - Post-Quantum Cryptography Professional