shamir秘密共享算法_趣说密码学(五)秘密共享方案——shamir,中国剩余定理,Brickell和Blakley...

38c05dddf03041293676b3c6b6488ded.png

秘密分享Seret Sharing

假如你和你的朋友们正在一起面临某种生存困境,比如在野外迷路了,或是被困在沙漠中,或是核冬天,或是丧尸来袭,你们难以获取食物,只好将剩下的食物的收集到一起放进保险箱。但是有个问题——你们并不相信其他人,其他人很可能趁大家不注意将食物偷走。这时候,保险箱的钥匙应该怎么保管?

第一种情况:交给一个人保管

原来住你隔壁的老王接下这个任务。他看起来似乎值得信任。

fcb1c27e5cc247cb804c89d369976606.png

第二天新闻头条:已确认某探险队成员全部遇难!原因据查是保管食物的队员老王扔下大家不管,带着所有食物跑路了!

第二种情况:交给一些人保管,全部到齐才能打开保险箱

只交给一个人保管钥匙非常不安全。不如交给一些人不同的钥匙,必须要所有的人到齐才能打开。于是你把钥匙分成三份,隔壁老王,对面楼小南和你分别拿到了一份钥匙。这下,隔壁老王不能再自己一个人打开保险箱了。你感到很满意。</

  • 12
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Shamir秘密共享算法是一种通过将秘密信息分割成多个部分,分发给不同的参与者,使得只有集齐足够数量的部分才能恢复出原始秘密信息的算法。下面将介绍一个Shamir秘密共享算法的实验设计。 实验目标:验证Shamir秘密共享算法的可行性和正确性。 实验步骤: 1. 确定参与者数量和秘密信息的长度,假设有k个参与者分别称为P1, P2, ..., Pk,并且秘密信息由一个整数表示。 2. 生成一个(k-1)次的多项式函数,其中常数项为秘密信息,其它项为随机生成的系数。将该函数表示为f(x) = a0 + a1*x + a2*x^2 + ... + a(k-1)*x^(k-1)。 3. 将多项式函数f(x)代入不同的x坐标(对应参与者),计算出对应的y坐标(对应分发给参与者的部分秘密信息)。 4. 将生成的坐标对(x, y)分发给相应的参与者,每个参与者只收到一个坐标对。 5. 只有集齐至少k个参与者的坐标对,秘密信息才能被恢复。 6. 验证恢复出的秘密信息是否正确,并与原始秘密信息进行对比。 实验要点: 1. 多项式函数的生成需要保证随机性,可以使用随机数生成器来产生系数。 2. 参与者之间必须保持沟通,以便在恢复秘密信息时,能够及时共享各自持有的部分信息。 3. 实验中的参与者数量k和多项式次数(k-1)需要事先确定,并满足k的选择与算法要求的阈值条件。 通过这样的实验设计,可以验证Shamir秘密共享算法的正确性和可行性。并且,这个实验可以帮助理解Shamir秘密共享算法的原理和应用场景,帮助学习者更好地掌握该算法

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值