Verifica DHE

0

Sto solo cercando di capire come funziona.

Nella firma del certificato con Diffie Hellman statico la chiave pubblica e le informazioni del certificato vengono inviate alla CA che verifica le informazioni del certificato e crittografa le informazioni del certificato, inclusa la chiave pubblica con la sua chiave privata. La chiave pubblica della CA viene distribuita in modo tale che un certificato crittografato possa essere verificato eseguendo la decrittografia e verificando il contenuto del certificato.

Tuttavia in DHE la chiave pubblica privata viene sempre rigenerata per ogni handshake. Comprendo che ciò significa ora che l'autorizzazione non può più essere raggiunta e che sono necessari altri metodi di autorizzazione, ad es. ECDSA. Che cosa ora firma la CA (ad esempio la parte della chiave pubblica) per fornire l'autenticazione?

    
posta Nark 30.01.2014 - 11:55
fonte

2 risposte

1

(I certificati non sono "crittografati", sono firmati . Le firme non sono uguali alla crittografia. Descrivere le firme come "crittografia con la chiave privata" è un'analogia imperfetta che non funziona con i non - Gli algoritmi di firma RSA e non funzionano bene con RSA, e portano solo a confusione. Utilizziamo la terminologia corretta.)

In DHE, il server SSL ha un certificato, rilasciato (firmato) da una CA e contenente una chiave pubblica che è adatta per le firme (ad esempio RSA, DSA, ECDSA ...). Il server invia quel certificato al client, insieme ai parametri DH appena generati, che il server firma con quella chiave.

Nel DH statico, il client verifica che la chiave pubblica DH sia parte di un certificato firmato dalla CA e che abbia il nome del server previsto. Con DHE, il client verifica che la chiave pubblica DH sia firmata relativamente a una chiave pubblica della firma, che è contenuta in un certificato firmato dalla CA e che riporta il nome del server previsto. DHE implica un ulteriore livello di firma, ma alla fine continua a collegarsi al sistema CA.

(In pratica, la DH statica è estremamente rara, tutti usano RSA per i certificati.)

    
risposta data 30.01.2014 - 13:16
fonte
0

A questo punto potrebbe essere più ragionevole fare riferimento a ElGamal , che puoi considerare come "differito Diffie-Hellman" e fa ciò che descrivi come "Diffie-Hellman statico". Il modo in cui funziona è fondamentalmente come segue

You generate secret/public long-term keypair LTsec and LTpub

Invia LTpub a una CA, che potrebbe contattarti telefonicamente o qualsiasi altra cosa per verificare che sei veramente tu. Una volta eseguita la verifica, firmano LTpub. Ciò significa che ottieni un certificato firmato che comprende la tua chiave pubblica e la firma della CA:

(new) LTpub = (LTpub, CAsig of LTpub)

Puoi quindi usarlo per autenticare te stesso o il tuo server o qualunque cosa tu voglia. Ad esempio, puoi consentire al tuo server web all'indirizzo www.example.com di autenticarsi con quel certificato. Quando John si connette a quel server e desidera utilizzare il contratto chiave DH che si verifica (semplificato):

John genera una nuova coppia di chiavi DH effimera (Jpub, Jsec) e invia la parte pubblica al server web

 John  -----       Jpub     -----> Webserver

Il server web genera una nuova coppia di chiavi DH ephmeral (Wsec, Wpub) e invia la parte pubblica a John. Contrassegna anche Wpub con LTsec dall'alto.

                   Wpub
 John  <---- SIGN_LTsec(Wpub) ---- Webserver
                   LTpub

Ora John ora può fare certe cose:

  • John può ora verificare che Wpub sia stato generato da qualcuno che possiede LTsec (importante!).
  • John può anche verificare che colui che possiede LTsec è quello che ha generato LTpub.
  • John può anche verificare che LTpub sia stato verificato da una CA.
  • John può ora presumere che una CA abbia verificato le informazioni in LTpub da una telefonata (o qualsiasi altra cosa) e che l'emittente sia chi propone di essere (qui: www.example.com)
  • Finalmente John può presumere che condivide una chiave (Wpub ^ Jsec) con www.example.com

Ovviamente questa è solo una panoramica di base della relazione di fiducia e dei dettagli tecnici.

Dopo tutto, dai un'occhiata più da vicino a ElGamal per ulteriori informazioni tecniche.

    
risposta data 30.01.2014 - 15:02
fonte

Leggi altre domande sui tag