De vim-teksteditor, een standaardtool die wordt meegeleverd op Linux en macOS, kan tekstbestanden snel versleutelen met een wachtwoord. Het is sneller en handiger dan het versleutelen van een tekstbestand met een apart hulpprogramma. Hier leest u hoe u het instelt.
Zorg ervoor dat de Vim van uw systeem coderingsondersteuning heeft
Sommige Linux-distributies, waaronder Ubuntu, bevatten standaard een minimale versie van vim, alleen bedoeld voor eenvoudige tekstbewerking. Ubuntu noemt dit pakket bijvoorbeeld “vim-tiny”. Als je codering probeert te gebruiken in zo’n minimale versie van vim, zie je het bericht “Sorry, deze opdracht is niet beschikbaar in deze versie”.
Mogelijk moet u de volledige versie van vim installeren om deze functie op uw Linux-distributie te krijgen. Op Ubuntu kunt u bijvoorbeeld de volledige versie van vim krijgen door de volgende opdracht uit te voeren:
sudo apt install vim
De versie van vim die standaard bij macOS wordt geleverd, bevat wel ondersteuning voor codering, dus u hoeft niets anders op een Mac te installeren. Start gewoon een terminalvenster vanuit Finder> Toepassingen> Hulpprogramma’s> Terminal en de opdrachten werken op macOS hetzelfde als op Linux.
Een bestand versleutelen met een wachtwoord
VERWANT: Een beginnershandleiding voor het bewerken van tekstbestanden met Vi
Het basisproces is relatief eenvoudig als u weet hoe u vi moet gebruiken. Als u dat niet doet, kan het zijn dat u wordt opgehangen aan de modale interface van vi. Wanneer u een tekstbestand in vim opent, zijn er twee modi. Standaard bevindt u zich in een “opdrachtmodus” waarin u de toetsen op uw toetsenbord kunt gebruiken om opdrachten uit te voeren. U kunt ook op “i” drukken om naar “Invoegmodus” te gaan, waar u normaal kunt typen en de cursor kunt verplaatsen met de pijltjestoetsen, zoals u zou doen in andere teksteditors. Om de invoegmodus te verlaten, drukt u op “Esc” en u keert terug naar de commandomodus.
Start eerst vim. Het volgende commando start bijvoorbeeld vim en verwijst het naar een bestand met de naam “example” in de huidige directory. Als dat bestand niet bestaat, zal vim een bestand aanmaken met de naam “example” in de huidige directory wanneer je het opslaat:
vi example
Je kunt vi ook naar een ander pad wijzen met een commando zoals het onderstaande. U hoeft geen bestand in de huidige directory te maken.
vi /path/to/file
Bewerk het bestand normaal. U kunt bijvoorbeeld op “i” drukken om de invoegmodus te openen en vervolgens de tekst normaal typen. Druk tijdens het bewerken van een bestand op Esc om ervoor te zorgen dat u zich in de opdrachtmodus bevindt en niet in de invoegmodus. Type :X
en druk op Enter.
U wordt gevraagd om een wachtwoord in te voeren, waarmee het tekstbestand wordt gecodeerd. Typ het wachtwoord dat u wilt gebruiken, druk op Enter en typ het nogmaals om te bevestigen. U moet dit wachtwoord elke keer dat u het bestand in de toekomst wilt openen, invoeren.
Vim zal u waarschuwen dat u standaard een zwakke versleutelingsmethode gebruikt. We laten u later zien hoe u een veiligere versleutelingsmethode kunt gebruiken.
Er wordt een wachtwoord gekoppeld aan het huidige tekstbestand in Vim, maar u moet uw wijzigingen opslaan voordat het wachtwoord daadwerkelijk aan het bestand wordt toegewezen. Om dit te doen, drukt u op Esc om ervoor te zorgen dat u zich in de opdrachtmodus bevindt en typt u vervolgens :wq
en druk op Enter om het bestand naar schijf te schrijven en Vim af te sluiten.
De volgende keer dat u het bestand probeert te openen in Vim, bijvoorbeeld door ‘vi example
“—Vim zal je vragen om het wachtwoord dat bij het bestand hoort.
Als u het verkeerde wachtwoord invoert, zal de inhoud van het bestand onzin zijn.
Waarschuwing: Sla het bestand niet op als u het opent en wartaal ziet. Hierdoor worden de beschadigde gegevens weer in het bestand opgeslagen en worden uw gecodeerde gegevens overschreven. Ren gewoon :q
om Vim af te sluiten zonder het bestand op schijf op te slaan.
Er is nog een andere snelkoppeling die u hier kunt gebruiken. In plaats van een bestand te maken of te openen met ‘vim /path/to/file
“, Kunt u de volgende opdracht uitvoeren om vim een bestand te laten maken of openen en u onmiddellijk te vragen het bestand met een wachtwoord te versleutelen:
vi -x /path/to/file
Merk op dat je hier een kleine x moet gebruiken, terwijl je een hoofdletter X moet gebruiken bij het uitvoeren van de bijbehorende coderingsopdracht vanuit Vim.
Hoe sterkere codering in Vim
Vim gebruikt standaard een zeer slechte codering voor deze bestanden. De standaard “zip” of “pkzip” versleutelingsmethode is achterwaarts compatibel met versies 7.2 en lager van vim. Helaas kan het heel, heel gemakkelijk worden gekraakt – zelfs op hardware uit de jaren 90. Zoals de officiële documentatie het stelt: “Het algoritme dat wordt gebruikt voor ‘cryptmethod'” zip “is breekbaar. Een sleutel van 4 tekens in ongeveer een uur, een sleutel van 6 tekens binnen één dag (op een Pentium 133 pc). “
U moet geen pkzip-codering gebruiken voor uw tekstdocumenten als u helemaal geen beveiliging wilt. Vim biedt echter betere versleutelingsmethoden. Versie 7.3 van Vim, uitgebracht in 2010, heeft een “blowfish” -versleutelingsmethode toegevoegd, wat beter is. Versie 7.4.399, uitgebracht in 2014, bevatte een nieuwe Blowfish-versleutelingsmethode die beveiligingsproblemen in de oorspronkelijke “blowfish” -versleutelingsmethode oplost en het “blowfish2” noemt.
Het enige probleem is dat bestanden die u maakt met sterkere versleutelingsmethoden, deze nieuwere versies van Vim vereisen. Dus als je “blowfish2” -versleuteling wilt gebruiken, kun je dat bestand alleen openen met Vim-versie 7.4.399 en hoger. Zolang je dat goed vindt, moet je de sterkst mogelijke versleutelingsmethode gebruiken.
Om te controleren welke versleutelingsmethode een bestand gebruikt, opent u het bestand in vim, drukt u op de Esc-toets om ervoor te zorgen dat u zich in de opdrachtmodus bevindt, typt u de volgende opdracht en drukt u op Enter.
:setlocal cm?
De “cm” staat hier voor “cryptmethod”.
Je ziet de versleutelingsmethode die voor het huidige bestand wordt gebruikt, onder aan het vim-scherm.
Voer een van de volgende opdrachten uit om een versleutelingsmethode te kiezen. De “blowfish2” -versleuteling is het beste voor beveiliging.
:setlocal cm=blowfish2 :setlocal cm=blowfish :setlocal cm=zip
Nadat u uw coderingsalgoritme heeft geselecteerd, gebruikt u de :w
opdracht om het bestand naar schijf of het :wq
opdracht om het bestand naar schijf te schrijven en af te sluiten.
De volgende keer dat u het bestand opnieuw opent in Vim, zal het niet klagen over een zwak coderingsalgoritme. Je ziet ook het versleutelingsalgoritme dat je hebt geselecteerd onder aan het vim-scherm wanneer je het bestand opent.
Hoe u een wachtwoord kunt wijzigen of verwijderen
Om een wachtwoord uit een bestand te verwijderen, opent u dat bestand in Vim en voert u het :X
opdracht. U wordt gevraagd om een nieuwe coderingssleutel op te geven. Voer hier het nieuwe wachtwoord in dat u wilt gebruiken. Om het wachtwoord volledig te verwijderen, laat u het wachtwoordveld leeg en drukt u tweemaal op Enter.
Sla het bestand op en sluit het daarna af met :wq
. Het bestand wordt gedecodeerd, dus u wordt niet gevraagd om een wachtwoord in te voeren wanneer u het bestand in de toekomst opent.
Onthoud het wachtwoord dat u instelt, anders hebt u in de toekomst geen toegang meer tot de inhoud van het bestand.