2

我目前正在试验公钥和个人文件加密。我使用的程序分别具有 2048 位 RSA 和 256 位 AES 级加密。作为这个东西的新手(我现在只是一个密码朋克大约一个月 - 并且对信息系统有点陌生)我不熟悉 RSA 算法,但这与这里无关。

我知道,除非某个秘密实验室或 NSA 程序碰巧拥有一台量子计算机,否则目前不可能暴力破解这些程序提供的安全级别,但我想知道加密文件会更安全吗?再次。

简而言之,我想知道的是:

  1. 当我使用 256 位 AES 加密文件,然后再次加密已经加密的文件(再次使用 256)时,我现在是否拥有相当于 512 位 AES 的安全性?这几乎是一个问题,即蛮力方法可能必须测试的可能键的数量是2 x 2 的 256 次方还是 2 的 256次方。悲观的是,我认为是前者,但我想知道 512-AES 是否真的可以通过简单地用 256-AES 加密两次来实现?
  2. 一旦一个文件被多次加密,以至于您必须继续使用不同的密钥或在每一级加密时不断输入密码,有人**会认出他们是否已经通过了第一级加密吗?我在想也许——如果一个文件需要几个不同的密码进行多次加密——破解者将无法知道他们是否已经突破了第一级加密,因为他们所拥有的仍然是加密的文件。

这是一个例子:

  • 解密文件
  • DKE$jptid UiWe
  • oxfialehv u%uk

假装最后一个序列是破解者必须使用的 - 以暴力方式返回原始文件,他们必须得到的结果(在通过下一级加密破解之前)仍然会出现一旦他们突破了第一级加密,就成为一个完全无用的文件(第二行)。这是否意味着任何尝试使用暴力破解的人都无法返回原始文件,因为他们可能除了加密文件之外什么都看不到?

这些基本上是处理同一件事的两个问题:一遍又一遍地加密同一个文件的效果。我已经在网上搜索以了解重复加密对确保文件安全有什么影响,但除了在某处读到第一个问题的答案是否定的轶事之外,我没有发现任何与同一主题的第二次旋转有关的内容. 我对最后一个问题特别好奇。

**假设他们以某种方式暴力破解弱密码 - 因为如果您知道如何制作安全密码,这似乎是 256-AES 现在的技术可能性......

4

3 回答 3

1

一般来说,如果您使用 k 位 AES 加密文件,然后再次使用 k 位 AES,您只会获得 (k+1) 位的安全性,而不是 2k 位的安全性,这是一个中间人攻击. 这同样适用于大多数类型的加密,如 DES。(请注意,由于这个原因,三重 DES 不仅仅是三轮加密。)

此外,使用方法 A 加密文件,然后使用方法 B 甚至不需要像单独使用方法 B 加密那样强大!(不过,除非方法 A 存在严重缺陷,否则这种情况很少发生。)相反,您可以保证至少与方法 A 一样强大。(鼓励任何记得这个定理名称的人发表评论;我'我忘记了。)

通常你最好选择一种尽可能强大的方法。


对于您的第二个问题:是的,使用大多数方法,攻击者会知道第一层已被破坏。

于 2010-10-05T03:46:18.247 回答
0

更多意见在这里...

首先,当计算机强大到足以对 AES-256 进行蛮力攻击时,它也将用于相同的迭代……在那个级别上,时间或精力增加一倍或三倍是微不足道的。

接下来,根据您尝试在其中使用此加密的应用程序,此类考虑可能无效......您需要携带的“秘密”变得更大(迭代次数和您需要的所有不同密钥,如果事实上它们不同),加密和解密的时间也需要增加。

我的预感是迭代加密并没有太大帮助。该算法要么足够强大以维持蛮力附加,要么不是。其余的都在密钥的保护中。

更实际的是,如果你的前门上有三把相同或相似的锁,你认为你的房子会受到更多的保护吗?(这包括您随身携带的钥匙数量,不要松开这些钥匙,确保窗户和后门也固定好.​​.....)

于 2010-10-05T03:46:51.723 回答
0

问题 1:256 位密钥的两次传递的解空间大小将与 512 位密钥相同,因为 2^(256+256) = 2^512

每个 decrypt() 的实际运行时间可能会随着密钥大小的增长而非线性增加(这取决于算法),在这种情况下,我认为强制 256+256 会比 2^512 运行得更快,但是仍然是不可行的。

问题2:可能有一些方法可以识别某些密文。如果许多算法留下一些可用于识别的签名或工件,我不会感到惊讶。

于 2010-10-05T03:49:27.803 回答