Processo certificato digitale SSL - alto livello

0

Sono un project manager e sto parlando di un progetto IT composto dal solito database a 3 livelli - web / client - middleware.

In questo caso, ho un server web e devo implementare la certificazione SSL. Anche se questo non è nel mio campo di applicazione, ma ho sentito la comprensione dell'intero processo sarà vantaggioso per tutti.

Comprendo il concetto di crittografia a chiave pubblica e simmetrica.

Capisco il concetto di firma digitale.

Ma non riesco a collocare l'intera immagine insieme. Quindi, per favore mi scusi per il lungo post.

Ecco qui,

  1. L'intero motivo della certificazione HTTP / SSL, se non sbaglio, è per 2 scopi

    • crittografia (quindi i dati tra client e server web sono protetti)
    • autenticazione (in modo che "abc.com" sia effettivamente "abc.com")

Giusto?

Per provare "abc.com" è "abc.com", "abc.com" deve richiedere un certificato da un'autorità di certificazione - che eseguirà controlli in background ecc. prima di rilasciare il certificato.

Il certificato è quindi firmato da CA.

  1. Qui, poiché il certificato è firmato digitalmente dalla CA. Quindi, credo, due cose verranno inviate al client quando il client accederà al browser

    • il certificato stesso
    • hash e firma digitale del certificato

Giusto?

  1. Poiché il certificato è firmato dalla CA (ad esempio, Verisign), viene crittografato con la sua chiave privata. Quindi dove posso ottenere la chiave pubblica di Verisign?
  1. Supponendo che la chiave pubblica sia stata ottenuta, la firma digitale viene decrittografata e il valore hash corrisponde al valore hash del certificato,

La chiave pubblica all'interno del certificato (che appartiene al "abc.com") verrà quindi utilizzata dal client per crittografare i suoi dati da inviare a "abc.com".

Giusto?

  1. Questo "dato" è in realtà parte di una negoziazione tra il client e il server web per l'uso di un uso simmetrico della chiave per la successiva comunicazione.

Una volta stabilita la chiave simmetrica su entrambi i lati, la comunicazione successiva verrà crittografata utilizzando quella chiave simmetrica e non la chiave pubblica all'interno del certificato.

Giusto?

Sto ottenendo questo ad alto livello o sono completamente fuori strada?

(aggiunto)

Ripensandoci, Quando creiamo un certificato autofirmato, come possiamo "passare" la chiave pubblica al cliente oa chiunque stia accedendo al nostro sito web? se la chiave pubblica della firma non viene fornita al client - > è questo lo scenario in cui un popup apparirà sul browser del client e chiederà se "fidarsi" del sito web?

    
posta Noob 17.01.2016 - 18:49
fonte

2 risposte

4
  1. A: solo autenticazione. Puoi ancora fare la crittografia "nulla" in seguito, se vuoi. Ma se fai una crittografia non nullo, avrai un'idea di chi sta facendo ciò con te. Questa è la parte di autenticazione. - C'era un tempo in cui SGC, Server-Gated-Cryptography, era una cosa. Un bit in più nel certificato consentirebbe o meno qualsiasi crittografia decente più strong di una dimensione di "esportazione" di 40 bit. Al giorno d'oggi questo non esiste più e i certificati non dicono NESSUNA forza o sorta di crittografia che accade.

  2. two things will be send to the client when the client access the browser

    Quasi. Al server è richiesto di inviare il proprio certificato e la catena dei certificati di firma. Fino a una CA radice. (L'invio del certificato CA radice di per sé è facoltativo e ti è permesso di lasciarlo fuori.)

  3. So where do i obtain Verisign public key ?

    Sul loro sito web. Ma l'idea reale è che non hai bisogno di farlo. L'idea è che qualsiasi software client che utilizzi già include certificati di Autorità di certificazione "affidabili". Microsoft, Mozilla, Apple, Java mantengono tutti i loro "certificati trust store".

  4. Ordina. La firma è verificata (non "decrittografata") e si utilizza la chiave pubblica dall'interno del certificato.

  5. Chiudi abbastanza.

Ulteriori letture:

risposta data 17.01.2016 - 20:15
fonte
0

Per rispondere a Q3, la chiave pubblica di Verisign (in realtà il suo certificato di origine) è inclusa nel tuo browser web, insieme a molti altri certificati di root.

    
risposta data 17.01.2016 - 18:53
fonte