首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >集合成员的零知识证明?

集合成员的零知识证明?
EN

Cryptography用户
提问于 2017-06-24 13:09:52
回答 2查看 688关注 0票数 3

从本质上讲,我正在试图建立一个由验证者存储在数据库P中的授权公钥列表。如果公钥属于经过验证的用户数据库中的用户,那么公钥将被认为是授权的。问题是,验证者不应该将公钥链接到特定的授权用户。

我在想以下几点--D中的每个用户都会将一条秘密消息与他们在D中的帐户一起存储起来:

代码语言:javascript
复制
+-------+--------+
| User  |  Hash  |
+-------+--------+
| Bob   | abc123 |
| Alice | xyz789 |
| Eve   | 456fgh |
+-------+--------+

然后,可以使用某种密码累加器来组合散列。当用户想要授权他们的公钥时,他们向V(在零知识中)证明,他们知道一条消息,当散列时,它构成累加器的一部分。如果V能够确认这一点,则将公钥添加到P中,否则将被拒绝。

为了使事情更加复杂,用户应该只能拥有P中的一个公钥,换句话说,Bob不能连续请求将多个密钥添加到P中,因此,一旦每个人都获得了公钥授权,P将如下所示:

代码语言:javascript
复制
+--------+
|   PK   |
+--------+
| MXH452 |
| B6HGJS |
| 67ZC6S |
+--------+

因为不可能知道哪个公钥属于哪个用户。我们所知道的是,这些公钥被验证并属于D中的一个用户,并且只有一个。

如何才能做到这一点?我看过几篇关于这个问题的论文,但它们往往很快就会变得非常技术性。

EN

回答 2

Cryptography用户

发布于 2017-06-24 17:13:41

我想你想要的是戒指签名。这是一种签名机制,允许您证明某人在一组演员中签名,而不透露是哪一位。

你可能想读https://link.springer.com/chapter/10.1007%2F3-540-45682-1_32https://github.com/Blockstream/borromean_纸/生/母/波罗米_草案_0.01_34241bb.pdf

票数 2
EN

Cryptography用户

发布于 2017-06-25 08:09:46

如果公钥属于经过验证的用户D的数据库中的用户,则将被视为授权密钥。问题是验证者不应将公钥链接到特定的授权用户。

公钥也可以被认为是授权的,如果签署。使用盲签名方案,将签名链接到协议实例(向其发出签名)是不可行的。

Chaum提出的RSA盲方案是众所周知的。布兰兹的“重新思考PKI”一书是相关的。

票数 0
EN
页面原文内容由Cryptography提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://crypto.stackexchange.com/questions/48584

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档