数学构造沙米尔的门限秘密共享算法
- 格式:doc
- 大小:19.50 KB
- 文档页数:2
门限共享秘密的数学设计 1.定义
在密码学中,秘密共享是指一个方法用于分发一个秘密在一组参与者,每个分配一个共享的秘密。这个秘密只能将每个人的密钥共享组合在一起才能解密;在他们自己的个人密钥是无法单独使用的。
2.目的
a.给了严格的控制和消除单点漏洞。
b.个人密钥持有人不能改变/访问数据。
3.数学定义
a.目标是将一些数据D 分为n 块,每块取名D1、D2…,Dn:
知道的k 或多与D 的n 个模块使D 容易可计算的。
b.知道的任何k-1或更少的子块使D 完全隐藏(在某种意义上,其所有可能的值也同样无法解密)。
这个方案被称为(k,n)阈值方案。如果k = n 然后需要所有参与者一起重建的秘密。
4.沙米尔的秘密共享:
假设我们想要使用(k,n)阈值方案分享我们的秘密S,k < n 。
随意选择(k-1)系数a1,a2,a3…ak-1,让S 是a0
112210.....)(--++++=k k a x a x a a x f
构造一个点(i,f(i)),i=1,2,3.....n
鉴于任何子集的这些k,我们可以找到的系数的多项式插值,然后评估a0 = S,这是秘密。
例子:
S=1234;
n = 6和k = 3,获得随机整数 a1 = 94和a2 = 166
共享密钥:
(1,1494), (2,1942) (3,2598) (4,3402) (5,4414) (6,5614)
我们给每个参与者不同的单点(包括x 和f(x))。
为了重构秘密任何3点就够了
222220212102022
212010122021010221100941661234)()
3/2223/1(4414)52/312/1(3402)3/312/116/1(1942)()(3
/2223/145/4*25/2/*/5
2/312/154/5*24/2/*/3
/312/116/152/5*42/4/*/sin )4414,5(),(),3402,4(),(),1924,2(),(x x x f x x x x x x x l y x f x x x x x x x x x x x x l x x x x x x x x x x x x l x x x x x x x x x x x x l olynomials
gLagrangep U y x y x y x j j j ++=+-+---++-==+-=----=----=---=----=----=+-=----=----====∑
=
期待解决:
1.添加用户怎么办?
2.删除用户怎么办?
3.我们希望持有n 块的用户互相做身份认证?
基于沙米尔的门限秘密共享算法,提出动态门限秘密算法。