• 秘密共享(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可以恢复出秘密

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

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

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

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

  • 相关阅读:
    c++-json(0)-rapidjson-read-write-实例代码
    Windows10 电脑上配置 Docker 环境
    前端低代码平台H5-Dooring使用文档
    轻松完成Figma导入Sketch的在线方法
    基于FPGA的呼叫设备verilog开发
    Stream流式编程操作
    巧用正则表达式
    卷积神经网络-卷积层
    STFT:解决音频-视频零样本学习 (ZSL) 中的挑战
    虚拟摄像头之二: 配置v4l2loopback虚拟摄像头为前置或后置摄像头
  • 原文地址:https://blog.csdn.net/qq_38798147/article/details/126700015