Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/141.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Cryptography 基于XOR的密钥拆分,有3个参与方,阈值为2_Cryptography_Xor - Fatal编程技术网

Cryptography 基于XOR的密钥拆分,有3个参与方,阈值为2

Cryptography 基于XOR的密钥拆分,有3个参与方,阈值为2,cryptography,xor,Cryptography,Xor,我有一个任务: 假设银行有一个密码键K(只是一个长的随机字符串)。那个 银行希望将其分为两部分p1和p2,以便两者都是相同的 需要解密。然后,p1被分配给一位执行官,p2被分配给另一位执行官 -对于另一个,所以两者都必须贡献自己的片段,以便继续解密 为此,银行生成随机k1并设置k′1←K⊕k1。注 那个k1⊕k′1=k。银行将k1分配给一名高管,将k′1分配给另一名高管。 两者都必须存在才能继续解密,因为它们各自 该段不包含有关密钥k的信息 现在,假设银行想把k分成三部分p1,p2,p3,所以

我有一个任务:

假设银行有一个密码键K(只是一个长的随机字符串)。那个 银行希望将其分为两部分p1和p2,以便两者都是相同的 需要解密。然后,p1被分配给一位执行官,p2被分配给另一位执行官 -对于另一个,所以两者都必须贡献自己的片段,以便继续解密

为此,银行生成随机k1并设置k′1←K⊕k1。注 那个k1⊕k′1=k。银行将k1分配给一名高管,将k′1分配给另一名高管。 两者都必须存在才能继续解密,因为它们各自 该段不包含有关密钥k的信息

现在,假设银行想把k分成三部分p1,p2,p3,所以 任何两个片段都可以使用k进行解密。这确保了 即使有一位高管生病,解密仍然可以成功, 但是没有一个员工可以单独解密消息。为此,世界银行 生成两个随机对(k1,k′1)和(k2,k′2),与前面的步骤相同 段落,以便k1⊕k′1=k2⊕k′2=k。银行应该如何分配资产 因此,任何两个片段都可以使用k进行解密,但不能使用单个片段 你能解密吗

以上问题的答案是什么

 p1 = (k1, k2), p2 = (k`1, k2), p3 = (k`2);

 p1 = (k1, k2), p2 = (k`1, k`2), p3 = (k`2);

 p1 = (k1, k2), p2 = (k1, k2), p3 = (k`2);

 p1 = (k1, k2), p2 = (k1), p3 = (k`2);

 p1 = (k1, k2), p2 = (k2, k`2), p3 = (k`2);

请解释一下,它是如何工作的。

这是一个已解决的问题,请参阅:

Shamir的秘密共享是由Adi Shamir创建的密码学算法。它是一种秘密共享的形式,将秘密分成若干部分,给予每个参与者自己独特的部分,其中需要部分或全部部分来重建秘密

指望所有参与者结合秘密可能是不切实际的,因此有时在任何情况下都会使用阈值方案 k部分足以重建原始秘密


使用三盘RAID5中使用的相同方案,可能会出现一种可能的3选2方法,任何两个都可以重建原始磁盘。

第一个是答案:

p1 = (k1, k2), p2 = (k`1, k2), p3 = (k`2);
因为每个可能的对都可以生成
k

  • p1和p2:k1⊕ k'1=k
  • p1和p3:k2⊕ k'2=k
  • p2和p3:k2⊕ k'2=k
当然,各方都无法自行重建密钥


其他可能性显然是错误的。让我们看第二个可能的答案,看看p2和p3是否可以构成有效的密钥。它们不能,因为每个都有相同的k'2分量,所以这还不够。然后p2有一个k'1,但p3没有一个k1。

这像是一个家庭作业问题,在这里您必须使用所描述的逻辑异或吗?因为这不是一种公认的将秘密分成几个部分的方法。要求家庭作业帮助的问题必须包括到目前为止你为解决问题所做的工作的摘要,以及对你解决问题的困难的描述。