使用多人共用的伺服器時不應該將機敏性檔案長置在上面,但是每次需要使用時都要重新上傳的話又有點麻煩。如果需要多次使用機敏性檔案,將檔案加密後供日後使用不失為一個好方法。能夠實現的工具非常多種,這邊使用 GnuPG 作為例子。
安裝
GnuPG 在 Ubuntu 為預設安裝,如果未安裝的話執行以下安裝指令即可。
1
|
sudo apt install gnupg -y
|
加密
使用 gpg -c
進行加密,會跳出提示輸入密碼
1
2
3
4
5
6
7
|
# 新增一個文字檔
echo 'caloskao.org' > my-file.txt
# 對文字檔加密
gpg -c my-file.txt
gpg: gpg-agent is not available in this session
Enter passphrase:
|
輸入兩次密碼後會產生額外一個加密後的檔案,檔名以 .gpg
結尾
1
2
|
-rw-rw-r-- 1 calos calos 13 2019-09-17 11:05:02 my-file.txt
-rw-rw-r-- 1 calos calos 94 2019-09-17 11:05:12 my-file.txt.gpg
|
解密
使用 gpg -d
進行解密
1
2
3
4
|
gpg -d my-file.txt.gpg
gpg: AES encrypted data
gpg: gpg-agent is not available in this session
Enter passphrase:
|
解密完成後會提示檔案已解密,並顯示解密後的檔案內容
1
2
|
gpg: encrypted with 1 passphrase
caloskao.org
|
可以搭配參數 -o
直接將解密後的內容輸出至檔案
1
2
3
4
5
6
|
gpg -o my-file.txt.decryped my-file.txt.gpg
gpg: AES encrypted data
gpg: gpg-agent is not available in this session
gpg: encrypted with 1 passphrase
cat my-file.txt.decryped
caloskao.org
|
參數 -c
與 -d
為 對稱式加解密,如需追求更強的加密強度,請使用 非對稱式加密(亦稱為公開金鑰加密)。
References: