Perché dovrei scegliere SHA-256 su SHA-512 per un certificato SSL / TLS?

37

Sto cercando di rinnovare un certificato jolly SSL (okay, TLS) con un servizio ben noto. Devo fornire un CSR, che ho creato utilizzando una chiave a 2048 bit. Devo anche scegliere un hash della firma. Il servizio offre tre scelte: SHA-256 , SHA-384 e SHA-512 . Di questi, SHA-256 è l'impostazione predefinita.

Questo mi confonde. Non è un hash più presunto essere sempre più strong? C'è una buona ragione per cui potrei volere il più piccolo hash della firma a 256-bit rispetto al più grande 512 o è probabilmente solo un errore dell'interfaccia utente? Ci sono alcune applicazioni che non possono ancora usare gli hash di 512 bit?

    
posta Joel Coehoorn 19.07.2017 - 16:58
fonte

2 risposte

57

Dal punto di vista della sicurezza, sarebbe piuttosto inutile. In termini pratici, SHA-256 è altrettanto sicuro di SHA-384 o SHA-512. Non possiamo produrre collisioni in nessuno di essi con la tecnologia attuale o prevedibile, quindi la sicurezza che ottieni è identica.

Da un punto di vista non di sicurezza, i motivi per scegliere SHA-256 sui digest più lunghi sono probabilmente più facilmente evidenti. È più piccolo, richiede meno larghezza di banda per archiviare e trasmettere, meno memoria e in molti casi meno potenza di elaborazione per il calcolo. (Ci sono casi in cui SHA-512 è più veloce ed efficiente.)

In terzo luogo, ci sono probabili problemi di compatibilità. Dal momento che virtualmente nessuno usa i certificati con SHA-384 o SHA-512, è molto più probabile imbattersi in sistemi che non li capiscono. Probabilmente ora ci sono meno problemi rispetto al passato, ma, di nuovo, ti stai vendendo rischi senza alcun guadagno.

Quindi, al momento, non ci sono chiari vantaggi nello scegliere SHA-384 o SHA-512, ma ci sono evidenti svantaggi. Questo è il motivo per cui SHA-256 è la scelta universale per i moderni certs per i siti web.

    
risposta data 19.07.2017 - 18:09
fonte
19

L'unico vero vantaggio che SHA-512 potrebbe avere su SHA-256 è resistenza collisione , un termine che in crittografia ha un significato molto stretto . SHA-256 afferma resistenza di collisione a 128 bit, SHA-512 afferma 256 bit. Se o quando viene creato un pratico computer quantistico , potremmo aver bisogno della resistenza alla collisione a 256 bit.

Poiché i certificati SSL in genere hanno date di scadenza in un termine relativamente breve, è giusto avere un certificato SHA-256 oggi, perché scadrà prima che venga creato un computer quantistico pratico (sempre che ciò accada).

A parte questo:

  • Le uscite SHA-256 sono più corte, risparmiando larghezza di banda.
  • Hardware diverso favorisce diverse funzioni. SHA-512 è generalmente più veloce sui processori a 64 bit, SHA-256 più veloce sui processori a 32 bit. (Prova il comando openssl speed sha256 sha512 sul tuo computer.)
  • SHA-512/256 si trova tra le due funzioni: la dimensione dell'output e la sicurezza livello di SHA-256 con le prestazioni di SHA-512, ma quasi nessun sistema lo utilizza fino ad ora.
risposta data 19.07.2017 - 22:45
fonte

Leggi altre domande sui tag