加密文件 gpg

来自艾毕思知识库
跳转至: 导航搜索


在LInux平台上,使用gpg工具对文件进行加密,防止敏感数据的未授权访问。通过指定密码来加密和解密文件,实现对文件内容的保护目的。


以debian为例:

加密

$ gpg -c aaa.txt

  • -c选项指定使用密码来进行对称加密
  • aaa.txt为需要加密的文件

执行后系统提示输入希望使用的加密密码,在

Enter passphrase: 提示后输入期望使用加密的密码,和系统登录时一样,该处输入的内容将不显示。

Repeat passphrase: 重复输入加密密码。

回车后创建加密的aaa.txt.gpg文件。

⚠ 原始文件aaa.txt依然存在。


可以使用

$ cat aaa.txt.gpg

来检查加密后的文件内容。

解密

$ gpg aaa.txt.gpg

输出如下:

gpg: CAST5 encrypted data
Enter passphrase: 

显示当前的加密方式(CAST5),并提示输入密码,输入后创建文件名为aaa.txt的文件;如果希望指定解密后的文件名,可以使用-o参数,如

$ gpg -o new.txt aaa.txt.gpg

将不创建默认的aaa.txt,而是创建new.txt的文件。

解密完成后输出:

gpg: encrypted with 1 passphrase

更复杂的加密算法

在新近版本的gpg中使用默认的CAST5进行加密时,在解密后会输出

gpg: WARNING: message was not integrity protected

警告信息,为了避免这个信息和更加安全的加密,可使用更安全的AES256算法进行加密。

$ gpg -o aaa.gpg --cipher-algo AES256 --symmetric aaa.txt

手工指定加密算法,并且指定加密后的输出文件名(aaa.gpg)而不是用默认的原文件名后添加.gpg模式(aaa.txt.gpg)。

⚠ 解密命令相同。