参数声明:
假设有这样一些参数:p 是一个素数,长度l ≥512;q是一个160比特的素数,且q 整除p-1;g 是整群Z∗p 中阶为q的元素。三元组( p,q,g)是公开的,k 是门限值,n 为全体可参与者集合中元素的个数。
密钥分发过程:
庄家在
中任选一多项式
,使得
是原始密钥,假设s 将被n 个参与者P1,P2,…,Pn 分享。
庄家通过密道向每个参与者Pj 发送一个密钥份
,随后广播
,其中j=0,1,2,…,k -1。
验证过程:对于每个j =1,2,…,n,参与者Pj 验证是否有,若不成立,则说明密钥份
是非法的,放弃。
验证过程说明:(个人理解)
由于Pj的密钥份
且广播有
则验证公式右侧
等于左侧
密钥重组过程:
当k 个参与者经过合法验证后准备重组恢复原始密钥时,首先每个Pj 向其他合作者广播他的密钥份
每个合作者先通过
验证
的有效性,若对j =1,2,…,k,所有的
都是有效的,则可利用拉格朗日插值公式重组得出原始密钥。这是第一个非交互式的无可信任第三方参与的密钥分割方案,也属于门限接入结构的VSS 方案,是目前比较有效的一个著名方案。该方案可防止庄家的欺骗行为,因为一旦某个密钥分享者收到一个虽然是相容但却是错误的密钥份时,他可以向庄家提出抱怨或投诉,当庄家收到多于某个门限值的投诉时,他的此次分发密钥行为将被认为是失败的。该方案可包容包括庄家在内的至多( n -1)/2的恶意欺骗或错误,但是该方案只是基于计算安全的。
参考文献:
[1]王海艳,王汝传.秘密共享方案的研究[J].微机发展,2005,(3): 32-34+37