Vim實戰手冊(7)關於加密

鍾超發表於2012-01-28

轉載請註明來自“柳大的CSDN部落格”:http://blog.csdn.net/poechant


1、加密你的文字檔案


當你用Vim開啟或新建一個檔案時,如果加上-x引數,即:

vim -x filename

那麼Vim會提示你:

Enter entryption key:

當你輸入了密碼後,Vim會提示你重複輸入以確認:

Enter same key again:

你在設定密碼的時候,是以*來顯示的,非明文。當下次有人(包括你自己)開啟該檔案的時候,Vim就會提示:

Need encryption key for "main.cpp"
Enter encryption key:

這時你只要輸入你之前所設定的密碼就可以了。如果你輸入的密碼是錯誤的,Vim並不會提示你密碼錯誤,而是顯示一堆無意義的垃圾程式碼。



2、解除加密與重設密碼


開啟你已經加密的檔案,然後輸入:

:set key=

這樣,你的密碼就被設定為空了,今後進入就不再需要輸入密碼了。而如果你向重設密碼的話,你可以輸入:

:X

注意是個大寫字母X。這時Vim會提示你,只要反覆輸入兩次新的密碼就可以了:

Enter entryption key: *****
Enter sanme key again: *****


3、加密引起的問題


Vim的加密功能,可以說是問題一大堆。比如:


1)如果密碼輸入錯誤,Vim不會拒絕訪問者編輯檔案。在這種顯示亂碼的情況下編輯檔案並儲存,整個檔案就會變得混亂不堪,無法辨識。今後即使使用正確的密碼開啟檔案,也看不到正確的文件了。


2)如果對一個需要編譯的原始碼檔案進行了加密,則無法通過編譯器的語法檢查。


(3)交換檔案是無法加密的。這樣引起什麼問題?問題就是如果其他使用者想辦法讀取到了你的交換檔案,就可以繞過解密環節,你的加密也就無意義了。解決的辦法就是,不使用交換檔案。方法有三個,一是修改你的vimrc檔案(Vim配置檔案):

set noswapfile

二是在用vim開啟檔案之初就輸入命令:

vim -x -n filename

(注意-x是加密引數,與我們所說的swap沒有關係,不要搞混)

三是在進入vim編輯該檔案後,輸入:

:setlocal noswapfile

不過不使用交換檔案的壞處就是,你可能會面臨資料丟失而無法找回的悲劇。所以又想用加密,又想不丟失檔案的朋友們,就勤按“:w”吧。


轉載請註明來自“柳大的CSDN部落格”:http://blog.csdn.net/poechant

-

相關文章