Ho esaminato alcune chiavi private generate casualmente generate da PG Gnu e ho trovato molta ridondanza.
- È racchiuso tra
-----BEGIN PGP PRIVATE KEY BLOCK-----
e-----END PGP PRIVATE KEY BLOCK-----
- C'è un checksum CRC alla fine (ad esempio
=WXYZ
) - Tutte le chiavi RSA che ho generato iniziano con "lQ"
Ho provato a rimuovere il checksum e le operazioni di importazione. Inoltre, rimuovere i marcatori BEGIN / END e il prefisso "lQ" comune sembra reversibile. Mi chiedo quanto ancora posso andare per rendere la chiave meno ridondante e più offuscata?
Il mio principale problema di sicurezza è:
Se l'utente malintenzionato ruba la chiave privata crittografata , può (più) verificare rapidamente e facilmente che la decrittografia sia riuscita (nel caso precedente, verificando che inizi con "lQ" e che il checksum è giusto).
Nota : Ho usato gpg -a --export-secret-key
, ma sembra che la chiave codificata non ASCII (no -a
) abbia praticamente la stessa ridondanza (l'ho verificato usando un editor esadecimale).
Esiste una specifica / standard che specifica quali parti delle chiavi private sono "veramente segrete" e quali servono come descrittore, checksum e possono essere rimosse in sicurezza (a condizione che abbia fiducia che la chiave non sia modificata)?