多密钥加密算法

信息安全 加密
2021-08-13 18:26:52

我正在寻找一种使用设定数量的解密密钥进行多密钥加密的方法。目标是获取一个文件,对其进行加密并生成多个解密密钥,以便必须使用多个(不仅是一个,而且是全部)密钥。

用例:

接收 image.jpeg 生成加密的 image.jpeg.crypt, image.jpeg.key1, image.jpeg.key2, image.jpeg.key3 将密钥分发给三个不同的人

在此之后必须存在 2 个密钥才能解密,但上述 3 个中的任何 2 个。

在完美的情况下,我应该能够说:“生成 X 密钥,其中需要 Y 密钥来解密”。

PS 这不是生产系统中多用户访问的加密策略的副本,其中任何一个密钥都可以解密,也不是必须提供每个密钥的加倍或循环加密算法的副本。

1个回答

您正在寻找秘密共享算法。这种方案曾由 Shamir 提出,称为Shamir 的秘密共享算法

引用维基百科:

...一个秘密被分成几个部分,给每个参与者自己独特的部分,其中一些部分或全部是重建秘密所必需的。