Domande di certificato autofirmato di base

9

Alcune domande di base sui certificati autofirmati

Domanda 1

Un certificato autofirmato deve avere una CA? Mi rendo conto che un certificato "reale" deve come altrimenti può essere convalidato a catena, ma per quanto riguarda gli autofirmati?

Domanda 2

Se un autofirmato non ha una CA - dovrebbe ancora andare nell'archivio CA di fiducia per non causare errori di validazione della catena quando lo si usa per il test?

Domanda 3

C'è un modo per vedere se un certificato autofirmato è firmato da una CA - se ha una CA ciò influisce sulla domanda sopra? Devo quindi fare in modo che la CA si fidi di essa o posso semplicemente inserire il certificato effettivo nell'archivio CA per creare un canale SSL sicuro, ad esempio?

    
posta Riri 23.10.2013 - 19:29
fonte

2 risposte

20

Un certificato è firmato dalla CA che lo emette. Un certificato autofirmato, per definizione, non viene emesso da una CA (o è la propria CA, se si desidera visualizzarla in questo modo).

Un certificato può avere alimentazione CA , ovvero essere attendibile per firmare altri certificati o meno, a seconda che contenga un'estensione Basic Constraints con il flag cA impostato su TRUE ( cf lo standard ).

Quello che succede è il seguente: quando alcune applicazioni vogliono convalidare un certificato (es. un browser Web che vuole fare SSL con un server e appena ottenuto il certificato del server), vorranno costruire una catena di certificati che inizia con un "trust anchor" (uno dei certificati nel suo archivio di certificati "trusted root") e termina con il certificato da convalidare (chiamato "EE" come "end-entity"). Le regole esatte per la validità di una catena sono intricate e complete di dettagli; Ai fini di questa risposta, limitiamoci a queste condizioni necessarie:

  • La catena deve iniziare con un'ancora di fiducia.
  • Ogni certificato è firmato dal certificato precedente nella catena (ad esempio, la firma su ciascun certificato deve essere verificata relativamente alla chiave pubblica come è stata memorizzata nel certificato precedente).
  • Ogni certificato eccetto l'entità finale ha un'estensione Basic Constraints con il flag cA impostato su TRUE .

Quindi un certificato CA autofirmato ma non CA, quando usato come ancoraggio sicuro, sarà accettato come certificato di entità finale (cioè in una catena ridotta esattamente a quel certificato) ma non altrimenti. Questo è il caso normale. Quando, come utente del browser, desideri accettare un determinato certificato autofirmato come valido, in realtà dici al tuo browser che il certificato autofirmato dovrebbe diventare un'ancora di sicurezza, ma sicuramente non vuoi affidarti a quel certificato per emettere altri certificati con altri nomi! Vuoi affidarti a solo per autenticare un sito specifico.

Come al solito, i dettagli possono variare - non tutti i browser reagiscono nello stesso identico modo. Ma i concetti chiave rimangono:

  • Un certificato autofirmato vive al di fuori del mondo CA: non è emesso da una CA.
  • Un client (browser) utilizza trust anchors come base per ciò che si fida.
  • Un certificato autofirmato per un server Web, di solito, dovrebbe essere considerato attendibile (se non del tutto) solo per quel server, ovvero aggiunto come un'ancora di trust, ma non taggato come "valido per l'emissione certificati".

Quando una catena viene ridotta a un singolo certificato, vale a dire che l'entità finale è anche l'ancoraggio sicuro, allora questo è noto come trust diretto : un certificato specifico è considerato affidabile già conosciuto, esattamente , invece di essere considerato affidabile in virtù del rilascio da parte di una CA fidata.

    
risposta data 23.10.2013 - 20:02
fonte
6
  1. No. Un certificato autofirmato non è firmato da una CA - è firmato da solo. Tuttavia, tutte le CA pubblicano un certificato autofirmato che viene utilizzato per firmare altri certificati. Una "CA attendibile" è quella che è inclusa nel tuo sistema operativo o browser, o in cui scegli esplicitamente di fidarti.

  2. Dipende dal certificato autofirmato. Se la stai usando come CA e per firmare altri certificati nella tua organizzazione, allora I potrebbe aggiungerla al mio negozio Trusted Trusted. Se viene utilizzato solo per autenticare un determinato server e non viene utilizzato come CA, lo includerei in un altro negozio, ad esempio "editori attendibili". Anche in questo caso, farei attenzione a garantire che il certificato venga archiviato e gestito con cura - chiunque lo ottenga può fare tutto ciò che desidera sulle macchine che si fidano di esso. Non inserirò mai un certificato casuale nel mio negozio CA di fiducia.

  3. Un certificato autofirmato è alla fine una catena di fiducia - dice "Io sono il mio genitore". Convalidare la catena di certificati che firma un certificato ordinario significa convalidare le firme di ciascun firmatario, fino a trovare un certificato autofirmato. A quel punto, il certificato autofirmato deve essere nell'archivio CA di fiducia.

risposta data 23.10.2013 - 19:52
fonte

Leggi altre domande sui tag