7个在Linux中加密/解密和密码保护文件的工具

加密是一种将文件编码的过程,只有获得授权的人才能访问它们。即使在计算机不存在的时代,人类也一直在使用加密。在战争期间,他们会传递一些只有他们部落或相关人员能够理解的消息。

Linux发行版提供了一些标准的加密/解密工具,有时可能会很方便。在本文中,我们介绍了7种这样的工具,并提供了适当的标准示例,这将帮助您加密、解密和对文件进行密码保护。

如果您想了解如何从Linux命令行生成随机密码,请阅读以下文章:

[ 您可能还喜欢:如何在Linux中生成/加密/解密随机密码 ]

1. GnuPG

GnuPG代表GNU隐私保护,通常称为GPG,它是一套加密软件集合。由GNU项目用C编程语言编写。最新的稳定版本是2.0.27

在今天的大多数Linux发行版中,gnupg软件包默认安装,如果没有安装,您可以从存储库中安装aptyum

$ sudo apt-get install gnupg
# yum install gnupg

我们有一个位于~/Desktop/Tecmint/的文本文件(tecmint.txt),将在本文后续示例中使用。

在继续之前,请检查文本文件的内容。

$ cat ~/Desktop/Tecmint/tecmint.txt

现在使用gpg加密tecmint.txt文件。一旦您使用选项-c(仅对称密码加密)运行gpg命令,它将创建一个文件tecmint.txt.gpg。您可以列出目录内容以进行验证。

$ gpg -c ~/Desktop/Tecmint/tecmint.txt
$ ls -l ~/Desktop/Tecmint

注意:输入Paraphrase两次以加密给定文件。上述加密是使用CAST5加密算法自动完成的。您可以选择指定不同的算法。

要查看所有可用的加密算法,您可以执行以下操作。

$ gpg --version

现在,如果您想解密上述加密文件,您可以使用以下命令,但在我们开始解密之前,我们将首先删除原始文件即tecmint.txt,并保留加密文件tecmint.txt.gpg不变。

$ rm ~/Desktop/Tecmint/tecmint.txt
$ gpg ~/Desktop/Tecmint/tecmint.txt.gpg

注意:在提示时解密时需要提供与加密时相同的密码。

2. bcrypt

bcrypt是基于Blowfish密码的密钥派生函数。自发现该密码算法可以被攻击以来,不推荐使用Blowfish密码。

如果您尚未安装bcrypt,您可以使用aptyum安装所需的软件包。

$ sudo apt-get install bcrypt
# yum install bcrypt

使用bcrypt加密文件。

$ bcrypt ~/Desktop/Tecmint/tecmint.txt

一旦您执行以上命令,将创建一个名为texmint.txt.bfe的新文件,原始文件tecmint.txt将被替换。

使用bcrypt解密文件。

$ bcrypt tecmint.txt.bfe

注意: bcrypt没有安全的加密形式,因此至少在Debian Jessie上已禁用其支持。

3. ccrypt

ccrypt设计为UNIX crypt的替代品,是用于文件和流加密解密的实用程序。它使用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

解密一个文件。

$ ccdecrypt ~/Desktop/Tecmint/tecmint.txt.cpt

提供您在加密时使用的相同密码以解密。

4. Zip

它是最著名的存档格式之一,以至于我们通常在日常交流中将存档文件称为zip文件。它使用pkzip流密码算法。

如果您尚未安装zip,您可以使用apt或yum安装。

$ sudo apt-get install zip
# yum install zip

创建一个加密的zip文件(将多个文件组合在一起)使用zip。

$ zip --password mypassword tecmint.zip tecmint.txt tecmint1.1txt tecmint2.txt

这里mypassword是用来加密的密码。创建一个名为tecmint.zip的存档,其中包含被压缩的文件tecmint.txttecmint1.txttecmint2.txt

使用unzip解密受密码保护的压缩文件。

$ unzip tecmint.zip

您需要提供与加密时提供的相同密码。

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

解释上述命令中使用的每个选项。

  1. enc:加密
  2. -aes-256-cbc:要使用的算法。
  3. -in:要加密的文件的完整路径。
  4. -out:解密后的完整路径。

使用openssl解密文件。

$ openssl enc -aes-256-cbc -d -in ~/Desktop/Tecmint/tecmint.dat > ~/Desktop/Tecmint/tecmint1.txt

6. 7-zip

非常著名的开源7-zip压缩工具是用C++编写的,能够压缩和解压大多数已知的存档文件格式。

如果您尚未安装7-zip,您可能希望使用apt或yum安装它。

$ sudo apt-get install p7zip-full
# yum install p7zip-full

使用7-zip将文件压缩为zip并加密。

$ 7za a -tzip -p -mem=AES256 tecmint.zip tecmint.txt tecmint1.txt

使用7-zip解压加密的zip文件。

$ 7za e tecmint.zip

注意: 在加密和解密过程中,当提示时请使用相同的密码。

到目前为止,我们使用的所有工具都是基于命令行的。Nautilus提供了一个基于图形界面的加密工具,它将帮助您使用图形界面加密/解密文件。

7. Nautilus加密实用程序

使用Nautilus加密实用程序在图形界面中加密文件的步骤。

在图形界面中加密文件

1.右键单击要加密的文件。

2.选择zip格式并提供保存位置。也提供要加密的密码。

Encrypt File Using Nautilus

3.注意消息-成功创建加密zip文件。

Encrypted Zip File Confirmation
在图形界面中解密文件

1.尝试在图形界面中打开zip文件。注意文件旁边的 LOCK-ICON。它会提示输入密码。输入密码。

Decryption of File

2.成功时,它会为您打开文件。

Decryption Confirmation

就这些了。我会再次带来另一个有趣的主题。在那之前,请继续关注并与Tecmint保持联系。别忘了在下面的评论中提供您宝贵的反馈。喜欢并分享我们,帮助我们扩散。

Source:
https://www.tecmint.com/linux-password-protect-files-with-encryption/