一次性匿名证书:支持匿名性的X.509
1. 匿名凭证
在匿名凭证的场景中,用户需要展示一种令牌来证明关于自身的陈述。为此,每个用户拥有一个或多个由某些组织颁发的凭证,这些组织会确认信息的真实性,并且可以根据需求提供这些凭证来核查相关信息。认证的属性可以是姓名、地址、年龄等。用户可能还需要证明其凭证中编码属性的谓词,例如证明其年龄大于某个固定值,而不透露其年龄或其他属性。
匿名凭证系统的主要要求如下:
- 不可伪造性 :用户不能证明伪造凭证或其已颁发凭证中编码谓词的有效性。
- 隐私性 :验证者除了从已证明谓词的状态中逻辑推断出的信息外,不应能够了解用户凭证的任何其他信息(例如其他属性)。
可以使用与群组签名方案相同的技术来构建匿名凭证系统。例如,可以基于ACJT群组签名方案构建这样的系统。凭证 $(A, e)$ 的形式为 $A^e = a_0a_1^{c_1} \cdots a_{\ell}^{c_{\ell}}b^x \pmod{n}$,其中 $n$ 是安全的RSA模数,$b, a_0, \cdots, a_{\ell}$ 是 $QR(n)$ 中公开已知的随机元素,$c_i$ 是认证的属性(例如 $c_1$ 代表国籍,$c_2$ 代表地址,$c_3$ 代表出生日期等),$x$ 是只有用户知道但联合计算得出的秘密值。
凭证拥有证明的过程与群组签名类似。例如,如果一个用户想证明其第一个属性(国籍)是值 $c_1$,她首先需要计算:
$T_1 = A^{yw}, T_2 = g^w, T_3 = g^{ehw}$
其中 $w$ 是一个随机值,然后生
超级会员免费看
订阅专栏 解锁全文
1613

被折叠的 条评论
为什么被折叠?



