秘密共享(Secret Sharing,SS)

引言    

    秘密共享是一种重要密码学工具用于构建安全多方计算,其在诸多多方安全计算协议中被使用,例如拜占庭协议、多方隐私集合求交协议、阈值密码学等。

本文首先介绍秘密共享的概念,其次介绍秘密共享生成(基于不同的生成方式我们将其划分为基于位运算的加性秘密共享和基于线性代数的线性秘密共享,举例说明如何实现加法共享和乘法共享),最后介绍具有特定属性的秘密共享方案。

秘密共享的概念

    秘密共享是一种秘密分割存储技术,其目的是一定程度抵御多方合谋与入侵。秘密共享的核心思想是将秘密拆分为n份,分别分发给参与方 P_1,...,P_n 。n-out-of-n秘密共享要求所有参与方结合才能恢复秘密,t-out-of-n秘密共享要求至少任意t个参与方结合才能恢复秘密。从思想可以看出秘密共享算法主要又秘密分发算法和秘密重构算法组成。而秘密分发方式决定重构的方式,因此基于秘密分发,我们将秘密共享分为基于位运算的加性秘密共享和基于线性代数的线性秘密共享。

 基于位运算的加性秘密共享

 基于线性代数的线性秘密共享

 

 

秘密共享方案

·阈值秘密共享:任意大于等于阈值的参与方集合可重构出秘密。

·一般访问结构秘密共享:例如A,B,C,D四个参与方共享秘密,只有A,B或C,D可以恢复出秘密

·多重秘密共享:参与方的子秘密可以多次使用,分别恢复多个共享秘密

·多秘密共享:一次共享,共享多个秘密,且子秘密可以重复使用

·可验证秘密共享:可通过公共变量验证自己子秘密的正确性

·动态秘密共享:允许添加或删除参与方,定期或不定期更新参与方的子秘密,还允许在不同的时间恢复不同的秘密

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
THE END
分享
二维码
< <上一篇
下一篇>>