EN
返回档案库

案例库 · 软件与 IT · 技术决策 · 1979

阿迪·沙米尔把秘密分成若干份,任意k份即可重建,k-1份则一无所获

1979年,阿迪·沙米尔将一个秘密分成n份,任意k份可重建,但k-1份无法泄露任何信息,其方法是将秘密隐藏在多项式在零点的取值中。

麻省理工学院

那一手

保护重要事物通常意味着由一人保管,这成为单点故障,或者信任所有人,这更糟糕。将其分成几部分也行不通:每一部分都是真实信息,因此窃贼汇集各部分不会一无所获。

沙米尔1979年的方案将秘密编码为随机k-1次多项式的常数项。每个股东获得一个点;多项式截距——即秘密——通过任意k个点的拉格朗日插值恢复,并且可证明从k-1个点无法恢复。

这使得保密阈值是精确的,而非近似。这就是一组受托人或机器共同保管密钥、签名或解锁而无需任何人单独持有的方法,并广泛应用于密码学和分布式系统中。

为什么管用

  • 单一保管者一旦被攻破就丢失资产;份额分散了风险。
  • 阈值重建是精确的,而非概率性的,因此安全保证是可证明的。
  • k-1个股东确实一无所获,因此低于阈值的任何合谋都无法作弊。
  • 这相当于无需共享密钥仪式或单一权威即可恢复秘密。
值了多少把秘密藏在多项式里;份额是多项式上的点神来之笔

可以搬走什么

不要将资产分成碎片分发出去——那会泄露。将整体藏于一个对象中,并给每个持有者一个视图,使得任意阈值可重建,而更小组一无所获。

后来呢

秘密共享成为阈值密码学、多方签名以及云保险库和区块链中密钥托管的基础。它用于分割加密密钥,使任何节点都无法持有签名密钥,并保护分布式系统免受单个受损组件的影响。

资料来源

发现哪里写错了?告诉我们。

同一路聪明