Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/292.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
C#中使用各方公钥的门限可验证秘密共享_C#_Cryptography_Bouncycastle - Fatal编程技术网

C#中使用各方公钥的门限可验证秘密共享

C#中使用各方公钥的门限可验证秘密共享,c#,cryptography,bouncycastle,C#,Cryptography,Bouncycastle,我知道Shamir的秘密共享算法可以生成一个密钥集,该密钥集可以分发给N个参与方,其中可以设置阈值以解密密文,并且每个参与方都可以验证签名。但它负责创造部分秘密,然后分享它们 我正在寻找一种替代解决方案,该方案采用各方/参与者的现有公钥,并使用这些密钥创建可验证的秘密。我相信它被称为“可验证秘密共享”,但有一个门限方案。我希望能在BouncyCastle中找到一些东西,但我一直在努力寻找我想要的东西。我相信以太坊也在使用类似的东西 有没有人知道是否有任何现有的.NET库实现了这样一个方案,因为我

我知道Shamir的秘密共享算法可以生成一个密钥集,该密钥集可以分发给N个参与方,其中可以设置阈值以解密密文,并且每个参与方都可以验证签名。但它负责创造部分秘密,然后分享它们

我正在寻找一种替代解决方案,该方案采用各方/参与者的现有公钥,并使用这些密钥创建可验证的秘密。我相信它被称为“可验证秘密共享”,但有一个门限方案。我希望能在BouncyCastle中找到一些东西,但我一直在努力寻找我想要的东西。我相信以太坊也在使用类似的东西

有没有人知道是否有任何现有的.NET库实现了这样一个方案,因为我对使用自己的加密非常谨慎?这样的方案是否可以直接使用BouncyCastle

我的目标是提供一个可验证的部分密钥,由发送方创建,作为受托方提供给每个节点,并且给定可用的部分阈值,然后可以由接收方重构。我假设这以前已经做过了,如果必要的话,我不想重新发明众所周知的轮子

与其在这里发布大量代码,不如提供一个我不敢投入生产的粗略实现: