我想知道,在椭圆曲线密码学中,是否可能有两方持有部分私钥。这样做的想法是用两个子密钥加密(对于DSA)数据,而不需要任何一方获得原始私钥。
例如:
这东西有可能吗?理想情况下,两个子密钥应该是原始私钥的大小,不应该泄漏任何信息。
谢谢
编辑:对不起,不清楚,当谈到加密时,它是用于DSA的
发布于 2014-06-10 02:30:41
使用非对称加密技术,通常使用公钥加密,而不是私钥加密;使用私钥解密。此外,非对称加密通常是随机的,因此很难判断您得到的结果与使用单个私钥时得到的结果是一样的,因为您实际上可以得到整个范围的值(这将解密到相同的消息)。也许你想谈谈签名?
在任何情况下,有许多可能的协议用于多方计算(这是这类事情的术语)。有关许多链接,请参见本站。在您的情况下,我假设您有两方需要使用私钥,以便它们的合并操作在某种意义上等同于可以通过一个单独的秘密值实现的结果,而这两者都不知道。实现这一目标的议定书取决于双方了解和行动的确切程度:
作为一个例子,假设你有一个素数阶为n的椭圆曲线E,A和B分别知道密钥a和b,这两个键都是在1.n-1范围内一致选择的。假设您可以将一些输入消息M映射到曲线点M中,则A可以通过将M与a相乘来“加密”消息;类似地,b将点乘以b。如果A和B都按适当的顺序处理消息:
最后的结果等于( ab )M,这是由密钥ab(乘积为模n)对M的“加密”的结果,而A或B都不知道。可以证明,无论他发送给B的是什么,A都不能学习ab;如果B是恶棍,同样的情况也适用于B。当然,如果A和B向对方透露私钥,那么他们就可以计算ab。
(这是Pohlig-Hellman密码的椭圆曲线变体-不要与其他波利格-赫尔曼算法混淆。(又称SRA。)
发布于 2014-06-10 14:39:50
用两个公钥加密没有解决问题的原因吗?这就需要双方对内容进行解密才能获得访问权限。另一种方法是对称加密有效载荷,将密钥分成两半,用用户的公钥对每一半进行加密。然后,每个用户必须对该消息的一半密钥进行解密,并将其与另一个共享,以便对消息进行解密。
发布于 2014-06-10 06:06:27
一般情况下,非对称加密将使用公钥加密,而私有加密则使用私有密钥对数据进行解密。我不知道你在这里用私密加密数据的目的是什么。即使在需要的情况下,也可以生成ECC密钥对,并且可以使用shamir秘密算法将密钥拆分为M和N parts.whenever you ant,使用私钥对daa进行加密,可以组合密钥并进行加密。
https://security.stackexchange.com/questions/60687
复制相似问题