Ho sentito che l'hashing SHA-1 sta diventando meno sicuro e che la maggior parte delle chiavi GPG è protetta con SHA-1. C'è un modo per determinare se SHA-1 è nella mia chiave GPG e cosa fare se questo è il caso?
SHA-1 è solo uno dei molti algoritmi di hashing disponibili in Standard OpenPGP. Puoi (e dovresti) scegliere algoritmi migliori per firma di documenti o chiavi.
Tuttavia, SHA-1 è l'algoritmo solo usato per generare un OpenPGP Impronta digitale V4 .
Questo è un problema? Penso non per l'immediato futuro. Ci sono due tipi di attacchi su un algoritmo di hashing. Attacchi di collisione consentono il attacker per trovare due messaggi con lo stesso hash. Preimage gli attacchi consentono all'utente malintenzionato di trovare un messaggio che hash a un dato hash.
Gli attacchi di collisione su SHA-1, meglio della forza bruta, sono stati conosciuti per un lungo tempo e sta migliorando tempo . Gli attacchi pratici sono pensati per essere alla portata di ben finanziati organizzazioni ora , e diventerà più economico nel tempo a causa della legge di Moore.
Tuttavia, poiché le chiavi PGP sono generalmente generate dai loro utenti, collisione gli attacchi non sono un problema Potrebbero in teoria essere un problema contesti in cui la chiave di qualcuno è generata da una terza parte, che potrebbe si verificano in alcuni ambienti aziendali o altre grandi organizzazioni. esso potrebbe anche essere un problema per qualsiasi software keyserver che si aspetta il impronta digitale per essere una chiave unica: qualcuno potrebbe caricare due chiavi con il stessa impronta digitale e possibilmente bollix cose fino a quando il software è rattoppato. (Non so se un software per il keyserver lo sia effettivamente questo.)
Gli attacchi preimage su SHA-1 potrebbero essere un problema, se uno si affida solo al impronta digitale. Posso immaginare vari scenari in cui un aggressore potrebbe ingannare qualcuno per accettare la propria chiave al posto di un'altra chiave. Alice scarica una chiave da qualche parte e chiama Bob per verificare l'impronta digitale. Un utente malintenzionato organizza una parte per l'assegnazione delle chiavi e sostituisce la chiave per qualcun'altro. Tali attacchi sarebbero difficili, ma fattibili.
Tuttavia, per quanto posso dire, non c'è alcuna prospettiva di un pratico attacco preimage su SHA-1 in qualsiasi momento. Il migliore che riesco a trovare è il documento di Kelsey e Schneier del 2004 che trova una preimage in 2 106 passaggi .
Detto questo, SHA-1 sta sicuramente mostrando la sua età e non si sa mai quando sarà trovato un attacco migliore Sarei abbastanza felice se OpenPGP standard sono stati modificati per aggiungere un'impronta digitale V5 utilizzando SHA-2 o SHA-3. io spero che la gente inizi a lavorarci presto.
'gpg --version' mostrerà i tuoi pref.
Aggiungi simile a gpg.conf (i tuoi prefs, ovviamente):
preferenze di crittografia personale AES256 TWOFISH AES192 AES
preferenze-del-personale SHA512 SHA384 SHA256
personal-compress-preferences ZLIB BZIP2 ZIP
Per quanto riguarda la tua chiave, non ho questa risposta. Ma, poiché la tua chiave giornaliera dovrebbe essere un SUB, revocare il SUB e ri-emettere una nuova chiave. Se non è un SUB, allora hai un problema più grande.
GnuPG è un'implementazione di OpenPGP . Puoi utilizzare GnuPG (GPG) per crittografare e firmare i tuoi dati e messaggi. Puoi anche utilizzare GPG per calcolare l' hash di alcuni dati . Quando lo fai puoi scegliere quale algoritmo di hashing usi. Sembra che GPG supporti una varietà di algoritmi incluse le "più recenti" funzioni SHA-2.
Puoi utilizzare vari codici per crittografare i tuoi dati con GPG. Quando si cripta, si sceglie una passphrase. Da questa passphrase viene generata una chiave. Quindi se usi AES 256 la chiave sarà 256 bit. Il modo in cui la chiave viene generata dalla passphrase sta utilizzando la pianificazione della chiave. Alcuni algoritmi potrebbero usare SHA1, ma non credo che GnuPG faccia.
L'unico punto in cui entra in gioco l'algoritmo di hashing è al momento della firma. In base al post di questo blog casuale (del 2013 ) GPG utilizza per impostazione predefinita SHA1. Ma puoi cambiarlo come accennato nell'altra risposta (e come descritto nel post del blog casuale).
Quindi, alla fine, non dovresti preoccuparti perché SHA1 non ha nulla a che fare con la chiave.
Inoltre, da quello che ho capito SHA1 è ancora considerato generalmente sicuro. Sto indovinando che molte persone stanno cercando di scappare perché è in giro da un po '. Anche se è una figura controversa, "L'esperto di sicurezza" Steve Gibson ha discusso di SHA1 su un episodio recente di Security Now . Questo potrebbe essere interessante (anche se potrebbe non essere effettivamente un "esperto di sicurezza"). (Per favore non downvotare solo perché non ti piace Steve Gibson.) Un punto che fa è che quando MD5 è stato trovato insicuro, le persone sono state sorprese un po '. Quindi, per evitare questo, alcuni suggerirebbero di non usare SHA1 semplicemente perché è troppo vecchio ed è probabile che si sgretoli presto (se non lo è già). E questo è presumibilmente il motivo per cui Google smetterà di usare SHA1 (vedi anche qui ).
Qualche altra lettura interessante potrebbe essere