秘密共享-Feldman方案

参数声明:

假设有这样一些参数:p 是一个素数,长度l ≥512;q是一个160比特的素数,且q 整除p-1;g 是整群Z∗p 中阶为q的元素。三元组( p,q,g)是公开的,k 是门限值,n 为全体可参与者集合中元素的个数。

密钥分发过程:

庄家在z_{q} 中任选一多项式f(x)=\sum_{i=0}^{k-1}a_{i}x^i,使得a_{0}=s 是原始密钥,假设s 将被n 个参与者P1,P2,…,Pn 分享。

庄家通过密道向每个参与者Pj 发送一个密钥份\sigma _{j}=f(j)mod \: q,随后广播\alpha _{j}=g^{a_{j}}mod\:p,其中j=0,1,2,…,k -1。
验证过程:对于每个j =1,2,…,n,参与者Pj 验证是否有g^{\sigma _{j}}=\prod_{i=0}^{k-1}\alpha ^{j^{i}}_{i}mod\: p,若不成立,则说明密钥份\sigma ^{j}是非法的,放弃。

验证过程说明:(个人理解)

由于Pj的密钥份 \sigma _{j}=f(j)mod \: q=\sum_{i=0}^{k-1}a_{i}j^{i}mod\:q 

且广播有 \alpha _{j}=g^{a_{j}}mod\:p

则验证公式右侧 \prod_{i=0}^{k-1}\alpha ^{j^{i}}_{i}mod\: p =\prod_{i=0}^{k-1}g^{a_{j}j^{i}}mod\:p =g^{\sum_{i=0}^{k-1}a_{j}j^{i}}mod\:p =g^{f(j)}mod\:p =g^{\sigma _{j}}mod\:p 等于左侧

密钥重组过程:

当k 个参与者经过合法验证后准备重组恢复原始密钥时,首先每个Pj 向其他合作者广播他的密钥份\sigma ^{j} 每个合作者先通过g^{\sigma _{j}}=\prod_{i=0}^{k-1}\alpha ^{j^{i}}_{i}mod\: p 验证\sigma ^{j} 的有效性,若对j =1,2,…,k,所有的\sigma ^{j} 都是有效的,则可利用拉格朗日插值公式重组得出原始密钥。这是第一个非交互式的无可信任第三方参与的密钥分割方案,也属于门限接入结构的VSS 方案,是目前比较有效的一个著名方案。该方案可防止庄家的欺骗行为,因为一旦某个密钥分享者收到一个虽然是相容但却是错误的密钥份时,他可以向庄家提出抱怨或投诉,当庄家收到多于某个门限值的投诉时,他的此次分发密钥行为将被认为是失败的。该方案可包容包括庄家在内的至多( n -1)/2的恶意欺骗或错误,但是该方案只是基于计算安全的。

参考文献:

[1]王海艳,王汝传.秘密共享方案的研究[J].微机发展,2005,(3): 32-34+37

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值