Linux下加密/解密及用密碼保護文件的七把利器
譯文加密是指對文件進行編碼的過程,那樣只有有權訪問的人才可以訪問文件。人類早在計算機還沒有問世的時候就開始使用加密了。戰(zhàn)爭期間,人類會傳輸只有其部落或相關人員才能理解的某種信息。
Linux發(fā)行版提供了幾個標準的加密/解密工具,它們有時候用起來很方便。本文就介紹了這樣7個工具,并附以標準例子,幫助加密、解密及密碼保護你的那些文件。
1. GnuPG
GnuPG的全稱是GNU隱私保護(GNU Privacy Guard),常常被稱為GPG,它結合了一組加密軟件。它是由GNU項目用C編程語言編寫的。最新的穩(wěn)定版本是2.0.27。
在如今的大多數(shù)Linux發(fā)行版中,gnupg程序包都是默認隨帶的,所以萬一它沒有安裝,你可以使用apt或yum從軟件庫來安裝它。
$ sudo apt-get install gnupg # yum install gnupg
我們有一個文本文件(tecmint.txt)位于~/Desktop/Tecmint/,本文后面的幾個例子將用到該文件。
在采取下一步之前,先查看該文本文件的內(nèi)容。
$ cat ~/Desktop/Tecmint/tecmint.txt
查看文件內(nèi)容
現(xiàn)在,使用gpg加密tecmint.txt文件。一旦你運行帶-c選項(完全使用對稱密碼算法加密)的gpc命令,它會生成一個文件texmint.txt.gpg。你可以列出文件夾的內(nèi)容,予以證實。
$ gpg -c ~/Desktop/Tecmint/tecmint.txt $ ls -l ~/Desktop/Tecmint
Linux下加密文件
注意:Paraphrase輸入兩次,對這個特定的文件進行加密。上述加密自動由CAST5加密算法完成。你可以指定不同的算法。
想查看提供的所有加密算法,你可以運行該命令。
$ gpg --version
查看加密算法
現(xiàn)在,如果你想解密上述加密文件,可以使用下面這個命令,但在我們開始解密之前,先要刪除原始文件,即tecmint.txt,加密文件tecmint.txt.gpg則不要去動它。
$ rm ~/Desktop/Tecmint/tecmint.txt $ gpg ~/Desktop/Tecmint/tecmint.txt.gpg
Linux下解密文件
注意:出現(xiàn)提示時,你需要提供加密時輸入的同一個密碼才能解密。#p#
2. bcrypt
bcrypt是一種密鑰導出函數(shù),它基于Blowfish密碼。自從被爆出密碼算法可能被攻破時,Blowfish密碼就不被推薦使用。
如果你還沒有安裝bcrypt,可以使用apt或yum命令安裝所需的程序包。
$ sudo apt-get install bcrypt # yum install bcrypt
使用bcrypt加密文件。
$ bcrypt ~/Desktop/Tecmint/tecmint.txt
一旦你運行上述命令,新的文件名texmint.txt.bfe被創(chuàng)建,原始文件tecmint.txt被更換。
使用bcrypt解密文件。
$ bcrypt tecmint.txt.bfe
注意:bcrypt沒有一種安全的加密機制,因而對它的支持至少在Debian Jessie上被禁用了。#p#
3. ccrypt
ccrypt是為了取代UNIX crypt而設計的,這個實用工具可用于文件和數(shù)據(jù)流加密及解密。它使用Rijndael密碼。
如果你還沒有安裝ccrypt,可以使用apt或yum命令來安裝它。
$ sudo apt-get install ccrypt # yum install ccrypt
使用ccrypt加密文件。它使用ccencrypt來加密、使用ccdecrypt來解密。一定要注意,加密時,原始文件(tecmint.txt)換成了tecmint.txt.cpt;解密時,加密文件(tecmint.txt.cpt)換成了原始文件(tecmint.txt)。你可以使用ls命令來予以核查。
加密文件。
$ ccencrypt ~/Desktop/Tecmint/tecmint.txt
解密文件。
$ decrypt ~/Desktop/Tecmint/tecmint.txt.cpt
提供加密時輸入的同一個密碼才能解密。
Linux下使用ccdecrypt解密文件。#p#
4. Zip
它是最著名的歸檔格式之一,名氣實在太大了,以至于我們在日常的通信中通常把歸檔文件稱為zip文件。它使用pkzip流密碼算法。
如果你還沒有安裝zip,可以使用apt或yum命令來安裝它。
$ sudo apt-get install zip # yum install zip
使用zip,創(chuàng)建加密的zip文件(幾個文件組合在一起)。
$ zip --password mypassword tecmint.zip tecmint.txt tecmint1.1txt tecmint2.txt
加密Zip文件
這里,mypassword是用來加密文件所用的密碼。創(chuàng)建的歸檔文件名稱為tecmint.zip,壓縮文件包括tecmint.txt、tecmint1.txt和tecmint2.txt。
使用unzip,解密密碼保護的壓縮文件。
$ unzip tecmint.zip
解密Zip文件
你需要提供加密時提供的同一個密碼。#p#
5. Openssl
openssl是一個命令行加密工具包,可以用來加密文件及加密消息。
如果openssl之前還沒有安裝,你需要安裝它。
$ sudo apt-get install openssl # yum install openssl
使用openssl加密,加密文件。
$ openssl enc -aes-256-cbc -in ~/Desktop/Tecmint/tecmint.txt -out ~/Desktop/Tecmint/tecmint.dat
使用Openssl,加密文件
上述命令中所用的每個選項解釋如下。
•enc:加密
•-aes-256-cbc:所使用的算法
•-in:待加密文件的完整路徑。
•-out:將被解密所在的完整路徑。
使用openssl,解密文件。
$ openssl enc -aes-256-cbc -d -in ~/Desktop/Tecmint/tecmint.dat > ~/Desktop/Tecmint/tecmint1.txt
使用openssl,解密文件
#p#
6. 7-zip
大名鼎鼎的開源7-zip壓縮工具用C++編寫而成,能夠壓縮及解壓縮大多數(shù)常見的歸檔文件格式。
如果你還沒有安裝7-zip,需要使用apt或yum命令來安裝它。
$ sudo apt-get install p7zip-full # yum install p7zip-full
使用7-zip壓縮文件,并加密文件。
$ 7za a -tzip -p -mem=AES256 tecmint.zip tecmint.txt tecmint1.txt
使用7-Zip,壓縮文件
使用7-zip,解壓縮加密的zip文件。
$ 7za e tecmint.zip
使用7-Zip,解密文件
注意:出現(xiàn)提示時,需要在整個加密及解密過程中提供同一個密碼。
上述所有這些工具都基于命令。Nautilus提供了一款基于圖形用戶界面(GUI)的加密工具,它可以幫助你使用圖形化界面,加密/解密文件。#p#
7. Nautilus加密實用工具
下面介紹使用Ntuilus加密實用工具在GUI中加密文件的步驟。
在GUI中加密文件
1. 鼠標右擊你想要加密的文件。
2. 選擇壓縮格式,并提供保存的位置。還要提供加密所需的密碼。
使用Nautilus加密文件
3. 注意相關信息-加密的zip文件已成功創(chuàng)建。
加密的Zip文件確認
在GUI中解密文件
1. 試著在GUI中打開zip文件。請注意文件旁邊的鎖圖標(LOCK-ICON)。它會提示輸入密碼,輸入密碼。
解密文件
2. 解密成功后,它會為你打開文件。
解密確認
英文:7 Tools to Encrypt/Decrypt and Password Protect Files in Linux