Classic Feldman VSS
Feldman的VSS是非常经典的. 最近VSS在门限签名的设计中应用非常广. VSS的目标是: 即使存在一些腐化的参与者, 也要保证所有的诚实参与者都收到正确的, 一致的shares(valid, consistent).
方案描述
首先, 我们假设 b0=sb_0 = sb0=s, 多项式 b(x)=∑i=0t−1bixib(x) = \sum_{i = 0}^{t - 1}b_ix^ib(x)=∑i=0t−1bixi. 这个多项式的常数项为秘密值.
在分发秘密时, 第三方广播 Bi=biG(0≤i<t)B_i = b_iG (0 \leq i < t)Bi=biG(0≤i<t).
每个参与者 PjP_jPj, 拿到的分享为 sj=b(αj)s_j = b(\alpha_j)sj=b(αj). 参与者可以进行验证: sj⋅G=∑i=0t−1Biαjis_j \cdot G = \sum_{i = 0}^{t-1} B_i \alpha_j^isj⋅G=∑i=0t−1Biαji.
因为所有的参与者都获得了相同的广播, 所以这保证了他们获得了同一个多项式上的秘密分享.
安全性
经典的Feldman VSS考虑的是诚实者大多数模型. 安全性考虑的是 guaranteed output delivery, 即被腐化的参与者不能阻止诚实的参与者获得输出.
Feldman VSS的安全性. 秘密分享的安全性需要保证: 关于 sss 的任何信息在传播的过程中没有被泄露. 然而在Feldman VSS中, sGsGsG 被泄露了. 所以这个方案并不是特别安全, 除非被分享的是 sss 的hardcore, 不是 sss 本身.