2012-04-09 19 views
5

Recentemente, sono stato indirizzato a un post dal 2011 da un amico, che ha descritto la mossa di Google verso la segretezza in avanti. Da quello che ho capito, l'essenza della segretezza in avanti sembra risiedere nel fatto che le chiavi private non sono conservate nella memoria persistente.Informazioni sul segreto in avanti

Ho vari dubbi su come qualcosa di simile potrebbe essere implementato.

  1. Che cosa succede se il server va giù senza preavviso - fare le coppie di chiavi devono essere rigenerate? La chiave pubblica deve essere nuovamente firmata per creare un altro certificato?
  2. Qualcuno potrebbe indicarmi post/pdf in cui è descritta l'implementazione di qualcosa di simile. Risorse di lettura consigliate?
  3. Sei a conoscenza di qualcun altro che ha implementato la segretezza in avanti? Hai provato qualcosa di simile sul tuo posto di lavoro?

Grazie!

+0

Vedere anche [Che cosa dovrei sapere prima di configurare Perfect Forward Secrecy] (http://security.stackexchange.com/q/7690/396) – LamonteCristo

+0

La segretezza di inoltro perfetta non deve significare che la chiave non è mai persistente, succede quando si distruggono tutte le chiavi che crittografano i dati. –

risposta

4

In Segreto inoltro, ci sono ancora le chiavi a lungo termine. L'unica implicazione è che la compromissione di una chiave a lungo termine non consentirà a un utente malintenzionato di compromettere le chiavi di sessione temporanee, quando la chiave a lungo termine è cambiata. Ciò significa che una chiave a lungo termine non deve essere derivata da un'altra chiave (precedente).

Here è un buon sondaggio su questo argomento.

Secondo Wikipedia:

  • PFS è una funzione opzionale in IPsec (RFC 2412).
  • SSH.
  • La messaggistica off-the-record, un protocollo di crittografia e una libreria per molti client di messaggistica istantanea, offre una perfetta sicurezza in avanti e crittografia.
  • In teoria, Transport Layer Security può scegliere cifrari appropriati da SSLv3, ma nella pratica quotidiana molte implementazioni rifiutano di offrire PFS o forniscono solo un grado di crittografia molto basso.
1

In TLS e molti altri protocolli la segretezza di inoltro viene fornita tramite l'algoritmo Diffie-Hellman (DH). Vanilla DH è piuttosto semplice e fornisce un perfetto segreto in avanti se gli esponenti vengono generati casualmente ogni volta, ma non fornisce autenticazione. Pertanto in TLS viene utilizzato in combinazione con un algoritmo di firma, in genere RSA.

TLS fornisce molti ciphersuites che supportano PFS e molti che non lo supportano. La maggior parte dei client TLS supporta PFS ma molti server no, perché si pensa che PFS impieghi troppa CPU.

+0

Pensavo avessi bisogno di "DH effimero" (edh), e non solo di DH per la segretezza in avanti. Vedi http://crypto.stackexchange.com/questions/8933/how-can-i-use-ssl-tls-with-perfect-forward-secrecy –