Do OpenPGP / GnuPG applica l'hash lento alla password durante la cifratura / decodifica della chiave?

6

Lo spazio della password è silenzioso. Pertanto è necessario applicare l'hash lento alla password prima di utilizzarla per la crittografia.

Dovrebbe essere applicata la lenta funzione hash (come bcrypt) alla password prima di usarla con OpenPGP / GnuPG? Lo fanno da soli?

    
posta Andrei Botalov 02.06.2012 - 19:32
fonte

2 risposte

1

Implementazioni OpenPGP applica l'hashing della password durante il processo S2K. Consentono di modificare l'algoritmo e il numero di iterazioni.

Di default GnuPG 1.4.12 usa SHA1 per l'hashing con 65536 round. Algoritmo può essere commutato su MD5, RIPEMD160 o SHA2s. Anche il numero di iterazioni può essere modificato. Le impostazioni correnti possono essere visualizzate digitando gpg --list-packets ~/.gnupg/secring.gpg

Tuttavia, tutti gli algoritmi di GnuPG 1.4.12 supportati possono essere implementati in modo efficiente su GPU . E quindi non sono le migliori opzioni per l'hashing della password.

Sarà meglio usare bcrypt o scrypt invece --s2k-* Opzioni GnuPG. Poiché non sono supportati da GnuPG, puoi utilizzarne l'implementazione.

    
risposta data 04.06.2012 - 13:48
fonte
8

Sì. Quando si crittografa un file usando una passphrase, dovrebbero usare una lenta funzione hash per ricavare la chiave crittografica dalla password.

Sì, GPG lo fa già. Vedi la mia risposta che spiega altrove come usare GPG con un hash lento , se hai bisogno di criptare un file con passphrase basato sulla crittografia convenzionale. La versione breve è che consiglio di utilizzare i seguenti flag della riga di comando:

gpg -c --force-mdc --s2k-mode 3 --s2k-count 65011712 personal.zip

Questo richiede a GPG di utilizzare una lenta funzione hash per l'hashing della password.

    
risposta data 03.06.2012 - 04:49
fonte

Leggi altre domande sui tag