come cambiare l'algoritmo di cifratura usato di default, l'algoritmo di hashing e la compressione.
articolo originale:
http://www.kernel-panic.org/wiki/GnuPGandPGP
http://ulf.zeitform.de/en/documents/gnupg.html
il comando "gpg --version" vi mostra la lista degli algoritmi supportati:
(/home)# gpg --version
gpg (GnuPG) 1.4.2.2
Copyright (C) 2005 Free Software Foundation, Inc.
This program comes with ABSOLUTELY NO WARRANTY.
This is free software, and you are welcome to redistribute itunder certain conditions.
See the file COPYING for details.
Home: ~/.gnupg
Algoritmi gestiti:
A chiave pubblica: RSA, RSA-E, RSA-S, ELG-E, DSA
Cifrari: 3DES, CAST5, BLOWFISH, AES, AES192, AES256, TWOFISH
Hash: MD5, SHA1, RIPEMD160, SHA256, SHA384, SHA512
Compressione: Non compresso, ZIP, ZLIB, BZIP2
A chiave pubblica: RSA, RSA-E, RSA-S, ELG-E, DSA
Cifrari: 3DES, CAST5, BLOWFISH, AES, AES192, AES256, TWOFISH
Hash: MD5, SHA1, RIPEMD160, SHA256, SHA384, SHA512
Compressione: Non compresso, ZIP, ZLIB, BZIP2
se invece volete visualizzare le preferenze della vostra chiave:
gpg --edit-key vostro_key_ID
e poi date il comando "showpref", vi dovrebbe comparire qualcosa del genere:
Cifrari: AES256, AES192, AES, BLOWFISH, CAST5, 3DES, IDEA
Digest: SHA1, RIPEMD160
Compressione: ZLIB, ZIP, Non compresso
Caratteristiche: MDC, Keyserver no-modify
il comando "pref" invece vi mostra i codici dei vari algoritmi:
S9 S8 S7 S4 S3 S2 S1 H2 H3 Z2 Z1 [mdc] [no-ks-modify]
http://www.faqs.org/rfcs/rfc2440.html
la tabella delle corrispondenze tra i codici scritti qui' sopra e i nomi degli algoritmi e' la seguente:
(ripresa dall'rfc 2440 http://www.faqs.org/rfcs/rfc2440.html )
9.2. Symmetric Key Algorithms
ID Algorithm
-- ---------
0 - Plaintext or unencrypted data
1 - IDEA [IDEA]
2 - Triple-DES (DES-EDE, as per spec -
168 bit key derived from 192)
3 - CAST5 (128 bit key, as per RFC 2144)
4 - Blowfish (128 bit key, 16 rounds) [BLOWFISH]
5 - SAFER-SK128 (13 rounds) [SAFER]
6 - Reserved for DES/SK
7 - Reserved for AES with 128-bit key
8 - Reserved for AES with 192-bit key
9 - Reserved for AES with 256-bit key
100 to 110 - Private/Experimental algorithm.
Implementations MUST implement Triple-DES. Implementations SHOULD
implement IDEA and CAST5.Implementations MAY implement any other
algorithm.
9.3. Compression Algorithms
ID Algorithm
-- ---------
0 - Uncompressed
1 - ZIP (RFC 1951)
2 - ZLIB (RFC 1950)
100 to 110 - Private/Experimental algorithm.
Implementations MUST implement uncompressed data. Implementations
SHOULD implement ZIP. Implementations MAY implement ZLIB.
9.4. Hash Algorithms
ID Algorithm Text Name
-- --------- ---- ----
1 - MD5 "MD5"
2 - SHA-1 "SHA1"
3 - RIPE-MD/160 "RIPEMD160"
4 - Reserved for double-width SHA (experimental)
5 - MD2 "MD2"
6 - Reserved for TIGER/192 "TIGER192"
7 - Reserved for HAVAL (5 pass, 160-bit)
"HAVAL-5-160"
100 to 110 - Private/Experimental algorithm.
riguardo gli algoritmi di hashing non e' riportato ma l'ID 8 e' riservato per lo SHA-256.
se si vuole cambiare l'algoritmo di hashing di default (che come visto sopra e' lo sha1) con la sha256 (sicuramente migliore), bisogna usare il comando setpref elencando tutte le preferenze,
quindi se prima avevo
S9 S8 S7 S4 S3 S2 S1 H2 H3 Z2 Z1
dovrei dare un
setpref S9 S8 S7 S4 S3 S2 S1 H8 H2 Z2 Z1
e dovrebbe comparire:
Cifrari: AES256, AES192, AES, BLOWFISH, CAST5, 3DES, IDEA
Digest: SHA256, SHA1
Compressione: ZLIB, ZIP, Non compresso
Caratteristiche: MDC, Keyserver no-modify
Digest: SHA256, SHA1
Compressione: ZLIB, ZIP, Non compresso
Caratteristiche: MDC, Keyserver no-modify
Dove l'algoritmo di hashing (digest) predefinito ora e' sha256, seguito da sha1
allo stesso modo posso modificare l'ordine degli algoritmi di cifratura (cifrari).