Perché è valido per i certificati sopra il certificato dell'entità finale essere basato su SHA-1?

8

Ho sentito dell'eliminazione graduale dei certificati basati su SHA-1 per l'utilizzo dell'entità finale e dei passaggi descritti per Google Chrome per visualizzare avvisi progressivamente più aggressivi per i certificati SHA-1 che non scadono prima del 1 gennaio 2016.

Nella parte inferiore del loro blog bost, SHA- graduale tramontare gradualmente 1 , su questo, citano, citano:

Note: SHA-1-based signatures for trusted root certificates are not a problem because TLS clients trust them by their identity, rather than by the signature of their hash.

Non capisco la differenza qui.

L'identità non è provata dall'autore (autorità superiore) che firma un hash del certificato?

    
posta Breakhty 18.06.2015 - 14:16
fonte

2 risposte

13

Questo non è per "certificati superiori all'entità finale" ma solo per "certificati radice".

In puro X.509 , non esiste un "certificato radice". Esistono certificati e ci sono trust anchors . Un certificato contiene una chiave pubblica, il nome dell'entità che possiede quella chiave e è firmata da un'altra entità (una "autorità di certificazione superiore"). Questo processo di firma deve iniziare da qualche parte, e quella da qualche parte è un "punto di riferimento". Un'ancora di fiducia è un nome e una chiave pubblica.

X.509 non specifica in che modo un'entità dovrebbe codificare gli ancoraggi di trust, dal momento che i trust ancore sono qualcosa che è noto a priori , non qualcosa che deve essere scambiato sulla rete. Tuttavia, un metodo tradizionale per l'archiviazione di trust ancore consiste nell'utilizzare lo stesso formato dei certificati. Un certificato contiene, tra le altre cose, un campo non facoltativo per una firma da qualche CA superiore. Invece di definire un nuovo formato per un'ancora di fiducia, Tradition deve riempire il "campo firma" con un'auto-firma. Così nasce un certificato radice : un'ancora di trust codificata come certificato autofirmato.

Ma quella firma di sé non ha senso! Non ha alcun valore di sicurezza. Corrispondentemente, nessuno lo verifica (*). Pertanto, non vi è alcun problema relativo al suo uso di una funzione di hash che è altrimenti considerata con qualche sospetto.

(*) Alcuni sistemi controllano euristicamente tale firma perché i certificati autofirmati possono solo essere usati come root, non come altro. Ma questa non è una funzionalità di sicurezza; questo è per comodità di interfaccia utente, senza fare affidamento sulla sicurezza di quella firma. Quindi, nessun problema con SHA-1 o, come potrebbe, MD5 o MD2.

    
risposta data 18.06.2015 - 14:40
fonte
4

Isn't identity proven by the advocate (higher authority) signing a hash of the certificate?

I certificati root sono integrati nel sistema (o forniti con il browser). Sono la fine della catena di fiducia e non esiste un'autorità più alta che li abbia firmati. Sono autofirmati, ma solo perché deve esserci qualche firma. La firma non ha bisogno di essere controllata e quindi la sicurezza dell'hash della firma non ha importanza.

In altre parole: la fiducia dei certificati foglia e catena si basa sulla fiducia nel firmatario ed è espressa dalla firma. È necessario che questo trust non possa essere falsificato, io uso SHA-256 invece di SHA-1. Per i certificati autofirmati ciò significherebbe la fiducia in sé. Non importa quanto qualcuno si fida di sé, importa solo quanto gli altri si fidano di lui (cioè certificato incorporato significa piena fiducia).

Si noti che la fiducia in questo caso significa solo la fiducia che qualcuno ha rilasciato un certificato. Non significa quanto sia sicuro un sito. Gli hacker possono anche ottenere facilmente i certificati!

    
risposta data 18.06.2015 - 14:29
fonte

Leggi altre domande sui tag