假设存在一个(3,5)—门限方案,方案采用的是模数p为19。已分发5个值给5个参与者,现已知(2,5)、(3,4)、(5,6),请计算相应的拉格朗日插值多项式,并得出秘密。

 Shamir门限方案

选定一个素数p,它大于所有的可能的消息且大于参与者个数w,所有的计算都是执行模p操作。消息M用一个模p数来表示,想要在w个人中拆分秘密,按照这种方式重构消息就需要不少于t个参与者。现在需要随机选定t-1个模p数,分别为S1,S2,...,S t-1

则多项式为

S(x)=M+S_{1}x+S_{2}x^{2}+...+S_{t-1}x_{t-1}(mod p)

随机选取w个不同的值x_{1},x_{2},...,x_{w},通过计算多项式可获得w对二元组

(x_{1},S(x_{1})),(x_{2},S(x_{2})),...(x_{w},(x_{w}))

将这些二元组依次对应分发给w个参与者。由于多项式有t个未知系数

M,S_{1},S_{2},..S_{t-1}

所以任意t个参与者或者多于t个的参与者都能构建t个方程,也就能重构出秘密

S(x)=M+S_{1}x+S_{2}x^{2}(mod 19)

则对应的拉格朗日差值多项式为

S(2)*\frac{(x-3)(x-5)}{(2-3)(2-5)}mod 19=5*(x-3)*(x-5)*13

S(3)*\frac{(x-2)(x-5)}{(3-2)(3-5)}mod 19=4*(x-2)*(x-5)*9

S(5)*\frac{(x-2)(x-3)}{(5-2)(5-3)}mod 19=6*(x-2)*(x-3)*16

则三者相加,并对系数取模

M=11

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值