使用多个密钥进行加密

时间:2016-10-10 05:29:17

标签: security encryption cryptography

使用多个密钥加密

假设我有一个需要加密的文件f。我使用随机生成的密钥(使用任何加密标准,比如AES-256)对文件进行加密,并将此密钥存储在密钥文件k1中。现在我使用另一个(不同的)随机生成的密钥加密k1并将其放在文件k2中。我重复这个过程来获取kn-1文件。现在当我加密文件kn-1时,我将密钥(随机生成)放入文件kn中。所以在kn中,解密kn-1的密钥是在没有任何加密的情况下存储的,可以直接用于解密kn-1 解密过程恰恰相反。密钥文件kn用于解密kn-1,其用于解密kn-2,依此类推,直到k1被解密。 k1中的密钥用于解密起始文件f。

我对加密很新,所以请原谅我,如果这是一个蹩脚的问题,但我已经阅读过多次加密同一文件的优点和缺点,我想到了这一点。我有几个问题。这种加密叫什么?我认为它可以用于存在由n个参与者共享的文件的情况,并且只有当所有n个参与者同时出现时才应该打开,在这种情况下,这n个参与者中的每一个都可以被给予因为键只能按顺序打开,所以每个键都必须存在。可以使用的任何其他情况吗?

此外,一个主要问题是 - 解密链是否可以在某处绕过?我的意思是解密kn文件,你需要kn + 1文件,所以有没有一种方法让我发现攻击者可以在没有kn + 1文件的情况下访问kn文件? (我假设使用了强加密算法,并且不能选择暴力强制。)

我是Stackoverflow的新手,所以如果我在某个地方犯了错误,我会提前道歉。

1 个答案:

答案 0 :(得分:0)

您担心多次加密文件是不安全的,但您不是多次加密文件,而是加密密钥,每个密钥只加密一次。所以基本上你只是用随机字符串加密随机字符串,这些字符串本身会被更多随机字符串加密。

因此,除非黑客破坏加密算法或如何生成随机密钥,否则它应该不是问题。

您还可以生成n个密钥并将它们连接起来以形成真正的密钥。然后可以将这些子项分配给每个参与者。