我只想使用 GPG 进行本地加密,在阅读 man 文件后,我将执行以下操作来加密整个目录:
我使用密码“”压缩目录,然后使用密码短语zip -r -e foo foo
“”对其进行加密。gpg -c foo.zip
这是一种优雅且安全的目录加密方式吗?我是否使用了 GPG 的全部加密功能?有更好的选择吗?
那么没有办法在不压缩或 tar 的情况下加密整个目录吗?
答案1
这是一种优雅且安全的目录加密方式吗?
优雅——不。安全——就像安全一样gpg
。
我是否使用了 GPG 的全部加密功能?
是的。
有更好的选择吗?
tar
首先是目录而不是zip
. gpg
无论如何都会压缩数据。
答案2
GPG 本身一次作用于一个文件。对目录进行操作不是它的工作。将目录打包成单个对象是归档程序的工作。因此,如果您想加密它,创建一个存档(例如使用tar
)并调用它是非常自然的。gnupg
或者,您可以单独加密每个文件。如果您只担心文件内容,这两种方法是等效的。如果您还想隐藏文件名、大小细分等,则只有加密存档才有帮助。
一些应用程序,包括Emacs和Vim,可以透明地编辑使用GPG加密的文件;他们只会在需要时提示您输入密码。
还可以编写可堆栈文件系统,即将文件作为加密文件存储在另一个文件系统上的文件系统。构建可堆叠文件系统的方法是保险丝。至少有一个 FUSE 文件系统使用 GPG 进行存储,GPFS。我从未使用过它,无法保证其质量。还有环境管理系统,同样基于FUSE,它不使用gpg但使用类似的原理。
加密文件系统是 Linux 的另一个文件系统,它将文件作为加密文件存储在另一个文件系统上。 Ubuntu 使用它来加密主目录。它的目标是加密整个主目录而不是一个特定目录。