不明白为什么我应该使用公钥/私钥加密而不是密码?

信息安全 加密 密码 密钥管理 文件加密 公钥
2021-08-24 15:19:12

我对这些主题的了解非常初级,如果我说的完全错误的话,请“教我”,它肯定会帮助我更好地理解这些东西。现在,我的问题。

现在我有一台笔记本电脑并且在安装过程中没有加密整个磁盘,我正在寻找加密某些特定文件夹或文件的方法。我发现了两种不同的方法来保护文件,但我不明白两者之间的区别:密码和一对公钥/私钥。

选项 1:我加密一个文件并对其进行解密,我必须插入一个密码,我可以接受并理解它。

选项 2:我想改用一对公钥/私钥。所以我生成了这对,并用公钥加密了文件。此时,当我创建私钥时,我应该对其进行密码保护,否则任何有权访问我的笔记本电脑的人都可以访问和使用密钥,从而能够解密文件。

那么,如果私钥本身受密码保护,那么使用私钥而不是密码有什么意义呢?为什么我不想直接使用选项 1?

抱歉,我对这些主题缺乏了解,请随时像我 5 岁一样向我解释。

3个回答

这两个选项适用于不同的用例。

选项 1 适用于您的用例。它使用从密码派生的密钥加密文件,因此只有知道密码的人(即最有可能首先加密它的人)才能解密它。

选项 2 旨在让您可以与他人共享加密的文件/消息。其背后的想法是您可以将文件加密为其他人的公钥,将加密文件发送给他们,他们(只有他们)可以解密它,而无需在两者之间建立预先共享的秘密密码/密钥你的。此外,您可以使用自己的私钥对文件进行签名,以便收件人可以确认该文件确实来自您。

当然,您可以使用此系统将文件加密为您自己的密钥,但正如您所指出的,在解密文件之前您仍然需要密码来解密您自己的私钥(并且它会增加一些(通常可以忽略不计)额外计算开销)。有些人可能更喜欢使用这种方法来加密他们自己的文件,因为这意味着他们可以在两个用例中使用同一个系统,而不是维护两个系统。

当您为自己加密文件时,使用公钥加密而不是私钥加密有一个优势。

使用对称加密时,每次需要加密或解密文件时都需要公开密码。

使用公钥加密,您只需要在需要解密文件时解密私钥。

在公钥加密中,您仅使用公钥加密文件,该公钥可以未加密(或使用与私钥不同的密码加密)。所以只需要在需要数据的时候解密私钥即可。

这意味着,如果您的用例是用于备份或数据存档,大多数情况下您只需要附加到备份,但很少解密以恢复数据,您不需要将解密密钥暴露给保存实时数据。这也允许您删除已经从活动机器存档的旧数据,但仍然可以从备份中解密它们以防您再次需要它们。

例如,您可以将解密密钥放入防篡改信封或保险箱中,或者更常见的是放入加密智能卡中,如果防篡改封条没有损坏,您就会知道您的数据仍然是安全的。

你需要这些能力吗?在许多情况下,您不需要,因此对称密码学要简单得多,而且简单性有利于安全性。但是,如果您需要具有这些属性的安全系统,那么即使您只是为自己加密文件,非对称加密也很有用。

那么,如果私钥本身受密码保护,那么使用私钥而不是密码有什么意义呢?为什么我不想直接使用选项 1?

在这种情况下,这可能不是一个大问题。但是证书可以存储在智能卡上。智能卡拒绝分发证书的副本,但它们可以根据证书进行计算——因此您可以使用它进行身份验证——但攻击者将无法复制智能卡。此外,它可以限制 pin 尝试的次数,并在超过计数器时安全地销毁密钥材料。

现在我有一台笔记本电脑并且在安装过程中没有加密整个磁盘,我正在寻找加密某些特定文件夹或文件的方法。

别。使用全盘加密。否则,文件的临时副本将被存储在未加密的位置,这是非常现实的风险。此外,未加密的磁盘使对您的磁盘具有物理访问权限的攻击者可以轻松地将您使用的程序替换为分发加密文件的版本。