密码学协议与可验证电子选举相关技术解析
1. 密码学协议中的证明与验证
在密码学协议里,Peggy 和 Vic 之间存在着特定的证明与验证流程。Peggy 会进行如下计算:
- 计算 (d = c - \tilde{d})
- 计算 (b = r - dx),(\tilde{b} = \tilde{r})
然后将 ((b, \tilde{b}, d, \tilde{d})) 发送给 Vic。Vic 仅在满足以下条件时才会接受:
- (c = d + \tilde{d})
- (a_1 = g^b y^d),(a_2 = h^b z^d)
- (\tilde{a}_1 = g^{\tilde{b}} \tilde{y}^{\tilde{d}}),(\tilde{a}_2 = h^{\tilde{b}} \tilde{z}^{\tilde{d}})
这个证明展示了 Σ - 证明的 OR 组合。Peggy 知晓见证值 (x),所以她清楚哪个情况为真,例如情况 1。她会将自己知晓见证值的情况 1 的证明与情况 2 的模拟证明相结合。这是因为 Vic 的挑战 (c) 被拆分为 (d) 和 (\tilde{d}) 两个组件,它们分别作为两种情况的挑战。Peggy 可以提前确定其中一个组件,进而模拟该情况的证明。
2. 非交互式知识证明
通过应用 Fiat - Shamir 启发式方法,公共硬币证明可以转换为非交互式证明。在交互式协议中,Vic 的任务是随机生成挑战并发送给证明者 Peggy,而现在 Peggy 自己承担了这个任务。她通过对自己的第一条消息和协议的公共输入参数应用抗碰撞哈希函数 (h : {0,
超级会员免费看
订阅专栏 解锁全文
50

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



