算法原理
(t,w)门限密钥共享方案,该方案是Shamir在1979年提出。Shamir(t,w)门限方案是通过构造一个t-1次多项式,将需要共享的主密钥S作为常数项,碎片密钥分成w部分给w个参与者,当碎片密钥数量大于或者等于t的话,就可以求解出这个主密钥S。
子密钥生成
构造多项式
![e85eedb9d721fde37b55e794e8d9febc.png](https://i-blog.csdnimg.cn/blog_migrate/c00f86c1b01cca30bbfd368b39bc3938.jpeg)
其中s为密钥,p为素数(s
取w个不相等的x带入F(x)中,得到w组子密钥,分发给w个人保管
将p公开,销毁子密钥生成多项式,每个人保管自己的子密钥
恢复密钥
构造多项式
此多项式为上面多项式的变形
取x=0,代入t组密钥可以求解出F(0),也就是主密钥s
算法实现代码
python代码
import random
import math
# 输入p, w, t, s 程序入口