Sto utilizzando OpenSSL 's des3 strumento per crittografare un file, ad es.
openssl des3 -salt -k SUPER_SECURE_PASSPHRASE < inputFile > outputFile
Funziona tutto, ma ora devo scegliere una passphrase di crittografia definitiva e fissa. Non ha bisogno di essere memorizzato, quindi ovviamente sceglierei una sorta di personaggi generati casualmente. Tuttavia, quanto è utile il random e quanto è utile? Sono preoccupato del fatto che inconsapevolmente sto buttando via entropia utile.
Ad esempio, AZQBB
sarebbe una passphrase scadente, probabilmente sia a causa della lunghezza che del set di caratteri limitato. Ma, kecqnutaspyyhgheikfzuwkjaoitqooasujjfhhsiiwqoekihaeyhflpijfmnhssdyyy
sarebbe povero a causa del suo set di caratteri limitato? Oppure, dU# i?|m:v
sarebbe povero a causa della sua lunghezza? È importante sapere come openssl utilizza la passphrase per generare i bit delle chiavi di crittografia e non l'ho trovato documentato da nessuna parte.
Come altro esempio, se openssl ottiene solo i suoi 156 bit dalla rappresentazione ASCII a 8 bit dei primi 21 caratteri della mia passphrase, quindi se mi limito a caratteri non a basso controllo ASCII basso mi butterò via circa 30 bit di entropia.
Quindi, per una passphrase altamente sicura, le mie domande sono:
- Quanto è lunga la passphrase?
- Quanto è diverso un set di caratteri di cui ho bisogno?