Come posso risolvere “W: <…> Il repository non è sufficientemente firmato dalla chiave <…> (digest debole)” nel mio repository privato?


8

Mantengo una serie di repository privati. Le chiavi gpg utilizzate per firmare il repository sono state realizzate con "Tipo chiave: RSA" e "Lunghezza chiave: 4096". La versione di GPG utilizzata per generare le chiavi è 1.4.16 su Ubuntu 14.04. La macchina che si lamenta ha gpg 1.4.20 (su una beta del 16.04).

Come posso risolvere "W: <...> Il repository non è sufficientemente firmato dalla chiave <...> (digest debole)" nel mio repository privato?

Devo ammettere che non conosco troppo la crittografia, ma avrei pensato che una chiave RSA di 4096 lunghezze sarebbe stata sufficiente.


1
Questo è sulla funzione hash della firma, NON sulla chiave. Si lamenta di un hash di firma SHA-1 sulla cosa, quando si aspetta SHA-2.
Thomas Ward

1
Devi modificare la tua chiave. Questa pagina lo spiega più o meno. debian-administration.org/users/dkg/weblog/48 Lasciando come commento in quanto non è una risposta corretta.
palloncini

Risposte:


7

Il messaggio di avviso non riguarda l'algoritmo di crittografia (le chiavi 4k RSA sono considerate totalmente valide e le migliori pratiche in questo momento). L' algoritmo digest è un'altra cosa: l'algoritmo di hashing applicato sul corpo del messaggio (nel tuo caso, i pacchetti o gli elenchi di pacchetti) che vengono quindi firmati. GnuPG ha impostazioni predefinite piuttosto conservative per rimanere compatibile, ma quelle sono lentamente superate dai progressi compiuti nella crittoanalisi.

Non è necessario creare una nuova chiave, ma è sufficiente modificare le impostazioni per GnuPG. Le proposte del blog dell'amministratore Debian sono ancora valide e ti aiutano a impostare impostazioni predefinite ragionevoli che sono un po 'troppo esagerate:

  1. Imposta le preferenze che verranno utilizzate da GnuPG (per firmare messaggi, crittografare ad altri, ...):

    cat >>~/.gnupg/gpg.conf <<EOF
    personal-digest-preferences SHA256
    cert-digest-algo SHA256
    default-preference-list SHA512 SHA384 SHA256 SHA224 AES256 AES192 AES CAST5 ZLIB BZIP2 ZIP Uncompressed
    EOF
    
  2. Impostazione degli algoritmi preferiti nella chiave per essere utilizzati da altri (allo stesso tempo aggiunge una nuova auto-firma con le impostazioni aggiornate dal n. 1 sopra):

    $ gpg --edit-key $KEYID
    Command> setpref SHA512 SHA384 SHA256 SHA224 AES256 AES192 AES CAST5 ZLIB BZIP2 ZIP Uncompressed
    Command> save
    

In futuro, GnuPG sceglierà algoritmi digest considerati sicuri.


Sto consumando un repository creato da un altro e non riesco a farli cambiare l'hash ("non supportano" la mia versione più recente del sistema operativo). C'è un modo per arrivare a ignorare questo problema?
Guss,

GnuPG conosce l'opzione --allow-weak-digest-algos, ma non sono sicuro di come si possa passare apt. Avvisare l'altra parte che MD5 è rotto anche per i sistemi operativi precedenti e altri.
Jens Erat,

Ho anche aggiunto l'opzione di configurazione 'digest-algo SHA512', senza di essa ho ancora una firma SHA1. Verificato con l' gpg --verbose --verify Release.gpg Releaseaggiunta di "--verbose", mostra il tipo di digest.
Herman van Rink,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.