~~NOTOC~~ ====== 2. Richieste di certificato (CSR) ====== **Scenari:** 4 \\ **Funzioni FFI:** ~25 \\ **Stato:** ⏳ Pianificato Questa categoria comprende tutti gli scenari per la creazione e l'elaborazione di Certificate Signing Request (CSR). Dalle semplici richieste server alle complesse richieste Multi-SAN. ---- ===== Scenari ===== ^ ID ^ Scenario ^ Descrizione ^ Complessita ^ Stato ^ | [[.:csr_server|2.1]] | Creare CSR server | CSR per certificato server TLS | ⭐⭐ | ⏳ | | [[.:csr_client|2.2]] | Creare CSR client | CSR per autenticazione client | ⭐⭐ | ⏳ | | [[.:csr_multi_san|2.3]] | CSR Multi-SAN | CSR con piu Subject Alternative Names | ⭐⭐⭐ | ⏳ | | [[.:csr_verarbeiten|2.4]] | Elaborare CSR | Validare, verificare, firmare CSR | ⭐⭐⭐ | ⏳ | ---- ===== Workflow ===== flowchart LR subgraph CLIENT["📝 Richiedente"] K[Generare coppia di chiavi] C[Creare CSR] S[Firmare CSR] end subgraph CA["🔐 Certificate Authority"] V[Validare CSR] P[Verificare policy] I[Emettere certificato] end K --> C --> S --> V --> P --> I style K fill:#e3f2fd style I fill:#e8f5e9 ---- ===== Contenuti CSR ===== ^ Campo ^ Descrizione ^ Esempio ^ | Subject | Distinguished Name | CN=server.example.com, O=Org, C=IT | | Public Key | ML-DSA-65 o Hybrid | Codificato SPKI | | Attributes | Extensions richieste | SAN, Key Usage | | Signature | Prova di possesso della chiave privata | Self-signed | ---- ===== Avvio rapido codice ===== using WvdS.Security.Cryptography.X509Certificates.Extensions.PQ; using var ctx = PqCryptoContext.Initialize(); // Coppia di chiavi per server using var serverKey = ctx.GenerateKeyPair(PqAlgorithm.MlDsa65); // Creare CSR var csr = ctx.CreateCertificateRequest( serverKey, new DnBuilder().AddCN("server.example.com").AddO("My Org").Build(), extensions: new ExtBuilder() .SubjectAlternativeName(new[] { "server.example.com", "www.example.com" }) .KeyUsage(KeyUsageFlags.DigitalSignature | KeyUsageFlags.KeyEncipherment) .ExtendedKeyUsage(ExtKeyUsage.ServerAuth) .Build() ); // Salvare CSR come PEM File.WriteAllText("server.csr.pem", csr.ToPem()); -> //Esempio completo:// [[.:csr_server|Scenario 2.1]] ---- ===== Categorie correlate ===== ^ Categoria ^ Relazione ^ | [[.:pki:start|1. Infrastruttura PKI]] | CA per firmare i CSR | | [[.:zertifikate:start|3. Emissione certificati]] | Il CSR diventa certificato | | [[.:schluessel:start|11. Gestione chiavi]] | Gestire la chiave privata del CSR | ---- << [[it:int:pqcrypt:szenarien:pki:start|← 1. Infrastruttura PKI]] | [[it:int:pqcrypt:szenarien:start|↑ Scenari]] | [[.:zertifikate:start|3. Emissione certificati →]] >> ---- //Wolfgang van der Stille @ EMSR DATA d.o.o. - Post-Quantum Cryptography Professional// {{tag>categoria csr richiesta-certificato request}}