Assicurati che il tuo sistema Vim abbia il supporto per la crittografia
Alcune distribuzioni Linux, inclusa Ubuntu, includono una versione minima di vim per impostazione predefinita, intesa solo per la modifica di base del testo. Ad esempio, Ubuntu chiama questo pacchetto "vim-tiny". Se si tenta di utilizzare la crittografia in una versione minima di vim, verrà visualizzato il messaggio "Spiacente, questo comando non è disponibile in questa versione".
sudo apt install vim
Come crittografare un file con una password
Il processo di base è relativamente semplice se sai come usare vi. Se non lo fai, potresti rimanere bloccato sull'interfaccia modale di vi. Quando apri un file di testo in vim, ci sono due modalità. Per impostazione predefinita, ci si trova in una "modalità comandi" in cui è possibile utilizzare i tasti della tastiera per eseguire comandi. Puoi anche premere "i" per entrare in "Insert mode", dove puoi digitare normalmente e spostare il cursore con i tasti freccia, come faresti con altri editor di testo. Per uscire dalla modalità di inserimento, premere "Esc" e si tornerà alla modalità di comando.
Innanzitutto, lancia vim. Ad esempio, il seguente comando avvierà vim e lo punterà su un file denominato "example" nella directory corrente. Se quel file non esiste, vim creerà un file denominato "esempio" nella directory corrente al momento del salvataggio:
vi example
Puoi anche puntare vi in un altro percorso con un comando come quello sotto. Non è necessario creare un file nella directory corrente.
vi /path/to/file
:X
e premere Invio.
Vim ti avviserà che stai utilizzando un metodo di crittografia debole per impostazione predefinita. Ti mostreremo come utilizzare un metodo di crittografia più sicuro in seguito.
:wq
e premere Invio per scrivere il file su disco e uscire da Vim.
vi example
-Vim ti chiederà la password associata al file.
avvertimento: Non salvare il file se lo apri e vedi senza senso. Ciò salverà i dati corrotti nel file e sovrascriverà i dati crittografati. Corri
:q
per uscire da Vim senza salvare il file sul disco.
vim /path/to/file
, Puoi eseguire il seguente comando per fare in modo che vim crei o apri un file e ti chieda immediatamente di crittografare il file con una password:
vi -x /path/to/file
Si noti che è necessario utilizzare una x minuscola qui, mentre è necessario utilizzare una X maiuscola quando si esegue il comando di crittografia associato dall'interno di Vim.
Come abilitare la crittografia più forte in Vim
Per impostazione predefinita, Vim utilizza una crittografia molto cattiva per questi file. Il metodo di crittografia predefinito "zip" o "pkzip" è retrocompatibile con le versioni 7.2 e seguenti di vim. Sfortunatamente, può essere rotto molto, molto facilmente, anche su hardware degli anni '90. Come dice la documentazione ufficiale: "L'algoritmo usato per 'cryptmethod'" zip "è fragile. Una chiave di 4 caratteri in circa un'ora, una chiave di 6 caratteri in un giorno (su un PC Pentium 133)."
Non si dovrebbe usare la crittografia pkzip per i propri documenti di testo se si desidera alcuna sicurezza. Tuttavia, Vim fornisce migliori metodi di crittografia. La versione 7.3 di Vim rilasciata nel 2010 ha aggiunto un metodo di crittografia "blowfish", che è meglio. La versione 7.4.399 rilasciata nel 2014 includeva un nuovo metodo di crittografia Blowfish che corregge i problemi di sicurezza nel metodo di crittografia originale "blowfish" e lo duplicava "blowfish2".
L'unico problema è che i file creati con metodi di crittografia più potenti richiedono queste versioni più recenti di Vim. Quindi, se si desidera utilizzare la crittografia "blowfish2", sarà possibile aprire quel file solo con le versioni di Vim 7.4.399 e successive. Finché stai bene, dovresti usare il metodo di crittografia più potente possibile.
Per verificare quale metodo di crittografia utilizza un file, apri il file in vim, premi il tasto Esc per assicurarti di essere in modalità di comando, digita il seguente comando e premi Invio.
:setlocal cm?
Il "cm" indica "cryptmethod".
:setlocal cm=blowfish2:setlocal cm=blowfish:setlocal cm=zip
:w
comando per scrivere il file su disco o il
:wq
comando per scrivere il file su disco e uscire.
Come cambiare o rimuovere una password
Per rimuovere una password da un file, apri quel file in Vim ed esegui il file
:X
comando. Ti verrà richiesto di fornire una nuova chiave di crittografia. Inserisci la nuova password che vuoi usare qui. Per rimuovere completamente la password, lascia vuoto il campo della password e premi due volte Invio.
Salvare il file e uscire con
:wq
. Il file verrà decrittografato, quindi non ti verrà chiesto di inserire una password quando aprirai il file in futuro.