Dopo aver letto questo articolo, il mio desiderio di avere password complesse è aumentato. Tale desiderio, però, non va d’accordo con la mia incapacità mnemonica.
Allora ho pensato a un password manager, ma sono tutti troppo complessi (e in certi casi costosi). A me serve solo un software che:
- mi generi delle password
- me le salvi in modo sicuro, proteggendole con una password (l’unica che dovrò ricordare)
- mi permetta di copiare negli appunti una password salvata
Spendere 50 euro per questo mi sembrava eccessivo (keepass è gratuito, ma su Mac serve Mono…).
Per cui, dopo qualche ricerca, il nerd che è in me ha prodotto questo script, che va aggiunto al proprio ~/.bash_profile
:
PWD_DIR=~/Dropbox/passwords
DEFAULT_PWD_FILE=password
function genpwd()
{
head /dev/urandom | uuencode -m - | sed -n 2p | head -c ${2:-15} \
| gpg -c --force-mdc > $PWD_DIR/${1:-$DEFAULT_PWD_FILE}.gpg;
}
function getpwd()
{
gpg -d $PWD_DIR/${1:-${DEFAULT_PWD_FILE}}.gpg | pbcopy
}
In sostanza vengono creati due comandi: genpwd
, che genera una password, la critta con gpg, e la salva. E getpwd
, che permette di copiarla negli appunti.
Per esempio
genpwd google 20
crea una password di 20 caratteri e la salva, crittata, nel file google.gpg
, contenuto nella directory ~/Dropbox/passwords
(per cambiare la directory, basta modificare la variabile PWD_DIR).
Se non si passano parametri, viene generata una password di 15 caratteri (lunghezza di default) e viene salvata nel file password.gpg
(che è il nome di default).
Per ottenere la password salvata
getpwd google
decritta il file google.gpg
e copia il suo contenuto (cioè la password) negli appunti.
Volendo si può svuotare la clipboard con
pbcopy < /dev/null