电子选举的强可验证性与免收据K选L投票方案
1. 强可验证性说明
在选举场景中,我们对正确性和可验证性进行了定义,以满足公平选举的基本要求并达到一定的概念简洁性。然而,这些定义存在技术缺陷。在某些情况下,可能出现受控制的选民投出对应选票β,但该选票被计为β′的情况。不过,这一缺陷仅意味着控制者可能在选举过程中改变受控选民的投票,并不会让控制者控制更多选票。而且,我们提出的协议满足更强的定义,可避免这种情况。
为了消除这种攻击的可能性,我们需要修改可验证性的定义。具体来说,要求证明P能表明每个计票的选票都唯一对应一个有效选票已投出的凭证。同时,对投票函数有自然的技术限制,即输出选票对于投票β和凭证sk必须完全明确,若β0 ≠ β1或sk0 ≠ sk1,则⟨vote(sk0, PKT, nC, β0, k2)⟩ ∩ ⟨vote(sk1, PKT, nC, β1, k2)⟩ = φ。
为加强可验证性定义,我们修改实验Expver ES,A(k1, k2, k3, nV),当满足以下条件时输出为’1’,否则为’0’:
1. verify(PKT, BB, nC, X, P) = ’1’
2. 对于每个单射映射f : ⟨X⟩→ZnV,满足以下两个条件之一:
- (a) ∃B : B ∈ BB, B ∈ ⟨vote(ski, PKT, nC, β, k2)⟩, ∀j f(j) ≠ i
- (b) ∃β ∈ X : f(β) = i, ∀B ∈ BB, B ∉ ⟨vote(ski, PKT, nC, β, k2)⟩
条件2(a)和2(b)分别表示攻击者通过使与特定凭证关联的所有有效选票不被计票,或使单个凭证的多张选票被计票,成功破坏了
超级会员免费看
订阅专栏 解锁全文
13

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



