標籤:

VIM學習筆記 加密(crypt)

演算法

如果:version命令的輸出信息中包含了+cryptv 選項, 那麼說明你安裝的Vim已經啟用了加密功能。7.3之前的版本提供用於向後兼容的PkZip加密演算法;自7.3版本開始提供較強的Blowfish加密演算法;而從7.4.399版本開始支持更新的Blowfish2加密演算法。

使用以下命令,可以查看當前使用的加密演算法:

:set cm?

使用以下命令,可以切換使用的不同加密演算法:

:set cm=zip:set cm=blowfish:set cm=blowfish2

加密

我們可以使用Vim的-x啟動參數,創建加密文件:

vim -x filename

Vim會要求你重複輸入兩次密鑰。而當我們完成編輯並退出時,Vim就會對文本進行加密處理。此後,如果使用其它軟體查看加密後的文件,那麼將只會看到無意義的亂碼;而如果使用Vim打開加密文件,則會要求你輸入密鑰以正確顯示內容。

解密

使用以下命令將選項key置空,解除加密:

:set key=

我們也可以通以下命令,重置密鑰:

:set key=secret

但以上命令將會以明文顯示輸入的密碼,顯然不夠安全。而使用以下X(大寫)命令,則會以星號*顯示輸入的密碼,所以更加安全。

:X

安全

在編輯文件時所使用的交換文件(swap file)、撤銷文件(undo file)和備份文件(backup file)也會同時被加密。當然我們也可以在命令行中利用-n參數,指定不使用交換文件(注意:不使用交換文件,我們也就不能夠通過交換文件來恢復文件了。):

vim -x -n filename

由於viminfo文件並不會被加密,所以我們可以使用以下命令禁用vimifno文件:

:set viminfo=

推薦閱讀:

Vim C/C++函數名,宏定義和變數的高亮
Sublime Text 會取代 vim 或 emacs 嗎?
Vim 對特定行處理常用方法(四):刪除、壓縮重複行
Mac OS X Lion 下 Vi 怎麼回到行首/行尾以及 page up/page down 呢?
11 個超棒的 Vi 技巧和竅門

TAG:Vim |