隐私计算 2.8 Shamir门限秘密共享的乘法同态性

1 Shamir门限秘密共享的乘法同态性

Shamir门限秘密共享方案具有(×,×)(\times, \times)(×,×)同态的性质,即:
SA×SB=FI(S1A,…,StA)×FI(S1B,…,StB)=FI(S1A⊗S1B,…,StA⊗StB)\begin{array}{l} S^A \times S^B &=& F_I(S_1^A, \dots, S_t^A) \times F_I(S_1^B, \dots, S_t^B)\\ &=&F_I(S_1^A \otimes S_1^B, \dots, S_t^A \otimes S_t^B) \\ \end{array} SA×SB==FI(S1A,,StA)×FI(S1B,,StB)FI(S1AS1B,,StAStB)

2 具体实现

2.1 秘密分割

对于主密钥 SA∈GF(p)S^A \in GF(p)SAGF(p), p>np > np>n, 选取任意的 a1,a2,..,at−1∈GF(p)a_{1}, a_{2}, . ., a_{t-1} \in GF(p)a1,a2,..,at1GF(p), 构造 t−1t-1t1 次多项式:
f(x)=EClog⁡aSA+∑i=1t−1aixi(modp)f(x) = EC\log_a {S^A} +\sum_{i=1}^{t-1} a_{i} x^{i}(\bmod p)f(x)=EClogaSA+i=1t1aixi(modp)
并计算 f(x1),f(x2)..,f(xn)f\left(x_{1}\right), f\left(x_{2}\right) . ., f\left(x_{n}\right)f(x1),f(x2)..,f(xn), 然后将 (xi,f(xi))\left(x_{i}, f\left(x_{i}\right)\right)(xi,f(xi)) 秘密地发送给参与者iii
对于主密钥 SB∈GF(p)S^B \in GF(p)SBGF(p), p>np > np>n, 选取任意的 a1′,a2′,..,at−1′∈GF(p)a_{1}^{\prime}, a_{2}^{\prime}, . ., a_{t-1}^{\prime} \in GF(p)a1,a2,..,at1GF(p),构造 t−1t-1t1 次多项式:
f′(x)=EClog⁡aSB+∑i=1t−1ai′xi(modp)f^{\prime}(x) = EC\log_a {S^B} +\sum_{i=1}^{t-1} a_{i}^{\prime} x^{i}(\bmod p)f(x)=EClogaSB+i=1t1aixi(modp)
并计算 f′(x1),f′(x2)..,f′(xn)f^{\prime}\left(x_{1}\right), f^{\prime}\left(x_{2}\right) . ., f^{\prime}\left(x_{n}\right)f(x1),f(x2)..,f(xn), 然后将 (xi,f′(xi))\left(x_{i}, f^{\prime}\left(x_{i}\right)\right)(xi,f(xi)) 秘密地发送给参与者iii

2.2 秘密重构

每个参与者iii对自己所持有的子份额进行加法运算得到 Si=f(xi)+f′(xi)S_{i}=f\left(x_{i}\right)+f^{\prime}\left(x_{i}\right)Si=f(xi)+f(xi) 。密钥重构阶段我们假设 i1,i2,…,il,(l≥t)i_{1}, i_{2}, \ldots, i_{l},(l \geq t)i1,i2,,il,(lt)是参与重构的合作者, 因为
f(x)+f′(x)=(EClog⁡aSASB)+(a1+a1′)x+⋯+(at−1+at−1′)xt−1(modp)f(x)+f^{\prime}(x)=\left(EC\log_a {S^AS^B}\right)+\left(a_{1}+a_{1}^{\prime}\right) x+\cdots+\left(a_{t-1}+a_{t-1}^{\prime}\right) x^{t-1}(\bmod p) f(x)+f(x)=(EClogaSASB)+(a1+a1)x++(at1+at1)xt1(modp)
那么利用
(i1,S1),…,(il,Sl)\left(i_{1}, S_1\right), \ldots,\left(i_{l}, S_l\right)(i1,S1),,(il,Sl)
构造线性方程组:
{EClog⁡aSASB+(a1+a1′)x1+(a2+a2′)x12+⋯+(at−1+at−1′)x1t−1=f(x1)+f′(x1)EClog⁡aSASB+(a1+a1′)x2+(a2+a2′)x22+⋯+(at−1+at−1′)x2t−1=f(x2)+f′(x2)⋮EClog⁡aSASB+(a1+a1′)xl+(a2+a2′)xl2+⋯+(at−1+at−1′)xlt−1=f(xl)+f′(xl)\left\{\begin{array}{c} EC\log_a {S^AS^B} + \left(a_{1}+a_{1}^{\prime}\right) x_1+\left(a_{2}+a_{2}^{\prime}\right) x_1^{2}+\cdots+\left(a_{t-1}+a_{t-1}^{\prime}\right) x_1^{t-1}=f\left(x_1\right)+f^{\prime}\left(x_1\right) \\ EC\log_a {S^AS^B} +\left(a_{1}+a_{1}^{\prime}\right) x_2 +\left(a_{2}+a_{2}^{\prime}\right) x_2^{2}+\cdots+\left(a_{t-1}+a_{t-1}^{\prime}\right) x_2^{t-1}=f\left(x_2\right)+f^{\prime}\left(x_2\right) \\ \vdots \\ EC\log_a {S^AS^B} +\left(a_{1}+a_{1}^{\prime}\right) x_l +\left(a_{2}+a_{2}^{\prime}\right) x_l^{2}+\cdots+\left(a_{t-1}+a_{t-1}^{\prime}\right) x_l^{t-1}=f\left(x_l\right)+f^{\prime}\left(x_l\right) \end{array}\right. EClogaSASB+(a1+a1)x1+(a2+a2)x12++(at1+at1)x1t1=f(x1)+f(x1)EClogaSASB+(a1+a1)x2+(a2+a2)x22++(at1+at1)x2t1=f(x2)+f(x2)EClogaSASB+(a1+a1)xl+(a2+a2)xl2++(at1+at1)xlt1=f(xl)+f(xl)
EClog⁡aSASB,a1+a1′,…,at−1+at−1′EC\log_a {S^AS^B}, a_{1}+a_{1}^{\prime}, \ldots, a_{t-1}+a_{t-1}^{\prime}EClogaSASB,a1+a1,,at1+at1 是方程组的ttt个末知数。解这个方程组就可以得到秘密的和SASBS^AS^BSASB , 从而实现了乘法同态性, 即对份额做加法运算可以重构出秘密的乘法。同理, 可以实现任意多个秘密的乘法运算。

3 秘密重构的正确性分析

根据Shamir门限秘密共享原理,EClog⁡aSA,a1,a2,..,at−1EC\log_a {S^A}, a_{1}, a_{2}, . ., a_{t-1}EClogaSA,a1,a2,..,at1是下列线性方程组的解:
{EClog⁡aSA+a1x1+a2x12+⋯+ai−1x1t−1=f(x1)EClog⁡aSA+a1x2+a2x22+⋯+at−1x2t−1=f(x2)⋮EClog⁡aSA+a1xl+a2xl2+⋯+at−1xlt−1=f(xl)\left\{\begin{array}{c} EC\log_a {S^A} + a_{1} x_1 +a_{2} x_1^{2}+\cdots+a_{i-1} x_1^{t-1}=f\left(x_1\right) \\ EC\log_a {S^A} + a_{1} x_2 +a_{2} x_2^{2}+\cdots+a_{t-1}x_2^{t-1}=f\left(x_2\right) \\ \vdots \\ EC\log_a {S^A} + a_{1} x_l +a_{2} x_l^{2}+\cdots+a_{t-1} x_l^{t-1}=f\left(x_l\right) \end{array}\right. EClogaSA+a1x1+a2x12++ai1x1t1=f(x1)EClogaSA+a1x2+a2x22++at1x2t1=f(x2)EClogaSA+a1xl+a2xl2++at1xlt1=f(xl)
EClog⁡aSB,a1′,a2′,..,at−1′EC\log_a {S^B}, a_{1}^{\prime}, a_{2}^{\prime}, . ., a_{t-1}^{\prime}EClogaSB,a1,a2,..,at1是下列线性方程组的解:
{EClog⁡aSB+a1′x1+a2′x12+⋯+at−1′x1t−1=f′(x1)EClog⁡aSB+a1′x2+a2′x22+⋯+at−1′x2t−1=f′(x2)⋮EClog⁡aSB+a1′xl+a2′xl2+⋯+at−1′xlt−1=f′(xl)\left\{\begin{array}{c} EC\log_a {S^B} +a_{1}^{\prime} x_1 +a_{2}^{\prime} x_1^{2}+\cdots+a_{t-1}^{\prime}x_1^{t-1}=f^{\prime}\left(x_1\right) \\ EC\log_a {S^B} +a_{1}^{\prime} x_2 +a_{2}^{\prime} x_2^{2}+\cdots+a_{t-1}^{\prime}x_2^{t-1}=f^{\prime}\left(x_2\right) \\ \vdots \\ EC\log_a {S^B} +a_{1}^{\prime} x_l +a_{2}^{\prime}x_l^{2}+\cdots+a_{t-1}^{\prime}x_l^{t-1}=f^{\prime}\left(x_l\right) \end{array}\right. EClogaSB+a1x1+a2x12++at1x1t1=f(x1)EClogaSB+a1x2+a2x22++at1x2t1=f(x2)EClogaSB+a1xl+a2xl2++at1xlt1=f(xl)
将这两个线性方程组对应的方程分别相加便可以得到如下的线性方程组:
{EClog⁡aSA+EClog⁡aSB+(a1+a1′)x1+(a2+a2′)x12+⋯+(at−1+at−1′)x1t−1=f(x1)+f′(x1)EClog⁡aSA+EClog⁡aSB+(a1+a1′)x2+(a2+a2′)x22+⋯+(at−1+at−1′)x2t−1=f(x2)+f′(x2)⋮EClog⁡aSA+EClog⁡aSB+(a1+a1′)xl+(a2+a2′)xl2+⋯+(at−1+at−1′)xlt−1=f(xl)+f′(xl)\left\{\begin{array}{c} EC\log_a {S^A} + EC\log_a {S^B} + \left(a_{1}+a_{1}^{\prime}\right) x_1+\left(a_{2}+a_{2}^{\prime}\right) x_1^{2}+\cdots+\left(a_{t-1}+a_{t-1}^{\prime}\right) x_1^{t-1}=f\left(x_1\right)+f^{\prime}\left(x_1\right) \\ EC\log_a {S^A} + EC\log_a {S^B} +\left(a_{1}+a_{1}^{\prime}\right) x_2 +\left(a_{2}+a_{2}^{\prime}\right) x_2^{2}+\cdots+\left(a_{t-1}+a_{t-1}^{\prime}\right) x_2^{t-1}=f\left(x_2\right)+f^{\prime}\left(x_2\right) \\ \vdots \\ EC\log_a {S^A} + EC\log_a {S^B} +\left(a_{1}+a_{1}^{\prime}\right) x_l +\left(a_{2}+a_{2}^{\prime}\right) x_l^{2}+\cdots+\left(a_{t-1}+a_{t-1}^{\prime}\right) x_l^{t-1}=f\left(x_l\right)+f^{\prime}\left(x_l\right) \end{array}\right. EClogaSA+EClogaSB+(a1+a1)x1+(a2+a2)x12++(at1+at1)x1t1=f(x1)+f(x1)EClogaSA+EClogaSB+(a1+a1)x2+(a2+a2)x22++(at1+at1)x2t1=f(x2)+f(x2)EClogaSA+EClogaSB+(a1+a1)xl+(a2+a2)xl2++(at1+at1)xlt1=f(xl)+f(xl)
EClog⁡aSA+EClog⁡aSB,a1+a1′,…,at−1+at−1′EC\log_a {S^A} + EC\log_a {S^B}, a_{1}+a_{1}^{\prime}, \ldots, a_{t-1}+a_{t-1}^{\prime}EClogaSA+EClogaSB,a1+a1,,at1+at1应该是这个线性方程组的解。
上述线性方程组含有ttt 个末知数, 即EClog⁡aSA+EClog⁡aSB,a1+a1′,…,at−1+at−1′EC\log_a {S^A} + EC\log_a {S^B}, a_{1}+a_{1}^{\prime}, \ldots, a_{t-1}+a_{t-1}^{\prime}EClogaSA+EClogaSB,a1+a1,,at1+at1, 系数矩阵的秩是 ttt。因此该方程组存在唯一解。可以通过求解方程组得到EClog⁡aSA+EClog⁡aSBEC\log_a {S^A} + EC\log_a {S^B}EClogaSA+EClogaSB , 即在保证初始秘密隐私的情况下得到了两个共享秘密的和。
根据易计算离散对数的性质
EClog⁡ab(modm)+EClog⁡ac(modm)=EClog⁡a(bc)(modm)E C \log _{a} b(\bmod m)+E C \log _{a} c(\bmod m)=E C \log _{a}(b c)(\bmod m) EClogab(modm)+EClogac(modm)=ECloga(bc)(modm) , 也 就是得到了 EClog⁡aSA⋅SBE C \log _{a} S^A \cdot S^{B}EClogaSASB , 进一步做指数运算得到 SA⋅SBS^A \cdot S^{B}SASB

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/507345.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

备份数据库的expdp语句_【ORACLE语句备份】数据库表同步 ——定时任务管理器(EXPDP导出,IMPDP导入)...

1、C:\Users\Administrator>sqlplus sys/xxxxxx as sysdba;2、SQL> create directory dbbak4 as e:\app\temp4;3、SQL> grant read,write on directory dbbak4 to xxx;--xxx:源数据库用户名4、SQL> exit;5、备注:还需手动创建目录,否则报错C…

python的setting怎么找_django项目的配置文件settings.py详解

1.2.1 ABSOLUTE_URL_OVERRIDES:默认值:{} 一个字典映射“app_label_module_name”字符串到一个函数,该函数接收一个Model对象作为参数并返回它的url,这是一个安装上覆盖get_absolute_url()方法的方式 1.2.2 ADMIN_FOR:默认值&…

隐私计算 2.9 秘密共享应用于横向联邦学习

1 简介 1.1 横向联邦学习 横向联邦学习也称为按样本划分的联邦学习,主要应用于各个参与方的数据集有相同的特征空间和不同的样本空间的场景,例如两个地区的城市商业银行可能在各自的地区拥有非常不同的客户群体,所以他们的客户交集非常小&a…

array js 二分法_JS常见的算法

虽说我们很多时候前端很少有机会接触到算法。大多都交互性的操作,然而从各大公司面试来看,算法依旧是考察的一方面。实际上学习数据结构与算法对于工程师去理解和分析问题都是有帮助的。如果将来当我们面对较为复杂的问题,这些基础知识的积累…

python缩进说法_【多选题】关于Python程序中与“缩进”有关的说法中,以下选项中错误的是()。...

问题:【多选题】关于Python程序中与“缩进”有关的说法中,以下选项中错误的是()。更多相关问题 因方某将赵某打伤,方某住所地的市劳动教养委员会对方某作出劳动教养2年的决定,并将方某送交劳动 根据行政诉讼…

智能测井解释

1 智能测井解释的需求分析 1、岩性识别 2、储层划分 3、参数计算 4、流体判别 5、井数据批量处理 岩性识别:分类任务 曲线预测、曲线补齐:回归任务 2 岩性识别 2.1 岩性识别主要方法简介 目前岩性识别的方法主要有重磁、测井、地震、遥感、电 磁、地…

wpf 点击按钮弹出选择框_关于WPF的弹出窗口

几个重要的概念需要清楚:Show和ShowDialog区别1、调用Show方法后弹出子窗口后,线程会继续往下执行。调用ShowDialog方法弹出子窗口后,线程会阻塞,直到子窗口关闭才继续往下执行。2、ShowDialog弹出的子窗口会使父窗口不能获得焦点…

基于移动设备的OCR识别工作进展(1)

1 模型调研 模型1:Tesseract-OCR 模型2:PaddleOCR Android上面有体验版的demo:https://ai.baidu.com/easyedge/app/openSource?frompaddlelitePP-OCR模型:https://github.com/PaddlePaddle/PaddleOCR/blob/release/2.5/README_…

2020.2idea创建web_IntelliJ IDEA 2017.3 完整的配置Tomcat运行web项目教程(多图)

小白一枚,借鉴了好多人的博客,然后自己总结了一些图,尽量的详细。在配置的过程中,有许多疑问。如果读者看到后能给我解答的,请留言。Idea请各位自己安装好,还需要安装Maven和Tomcat,各自配置好环…

swift 将图片保存到本地_Swift实现截屏并保存相册

func saveToLocal() {//截屏let screenRect UIScreen.mainScreen().boundsUIGraphicsBeginImageContext(screenRect.size)let ctx:CGContextRef UIGraphicsGetCurrentContext()!self.view.layer.renderInContext(ctx)let image UIGraphicsGetImageFromCurrentImageContext()…

OCR基本原理

学习内容为《动手学OCR.pdf》 1 OCR基础 1.1 OCR是什么 OCR(Optical Character Recognition,光学字符识别); 传统意义上的OCR:面向扫描文档类对象; 一般意义上的OCR:场景文字识别&#xff08…

实用供暖通风空调设计手册 第三版_实用供热空调设计手册第三版即将出版随想...

看到西北院组织豪华的暖通空调大师阵容编写的《实用供热空调设计手册》第三版即将出版的信息,暖通空调人都期盼着2020年底见到具有更多新理念、新技术、新方法、新设备、新材料内容的新版《实用供热空调设计手册》。看到《实用供热空调设计手册》第二版,…

json非法字符有哪些_JSON文件中非法字符的处理

JSON是一种很好的数据格式,但是简单之处也有麻烦的地方,比如如果JSON的字符串里面出现了双引号的话,那真是搞死人了。之前我很傻,每次抛出异常,我就根据异常显示的位置,去慢慢一个一个找错误的地方&#xf…

python查询模块路径_Visual Studio 2017中的Python无法通过“搜索路径”查找模块

我正在尝试将一个带有python虚拟环境的现有python项目添加到visual studio 2017,以便我可以调试它。 该项目还有一些外部依赖项, 所有内容都安排在以下文件夹中 C:\myproject\code C:\myproject\portablepython C:\myproject\pylibrary 我使用了创建项目…

python pyquery库_python解析HTML之:PyQuery库的介绍与使用

前言Python关于爬虫的库挺多的,也各有所长。了解前端的也都知道, jQuery 能够通过选择器精确定位 DOM 树中的目标并进行操作,所以我想如果能用 jQuery 去爬网页那就 cool 了。就搜了下看 Python 有没有与 DOM 相关的库什么的,还真…

android 北斗定位代码_iPhone 11 确认支持北斗导航,真相来了!

点击 哎咆科技 关注我们最近“北斗”火了。因为7月31日,北斗三号全球卫星导航系统正式开通。截止8月7日,微博话题“北斗三号全球卫星导航系统正式开通”已有5.3亿次阅读、8万次讨论。北斗三号全球卫星导航系统的开通,意味着中国自主研发的北斗…

冯雪 手术机器人的应用_未来达芬奇手术机器人的应用将更为广阔

达芬奇手术机器人在缝合葡萄皮。在两三厘米见方的人体空间内,机械臂可以如绣花般精细操作。如今,手术机器人正在让很多原本无法想象的手术场景变为现实。其中,达芬奇外科手术机器人系统(以下简称“达芬奇手术机器人”)更是代表了该领域的尖端…

python如何读取数据时出现错误_连接数据库时出现的错误,怎样解决??

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 Traceback (most recent call last): File "src\pymssql.pyx", line 636, in pymssql.connect File "src\_mssql.pyx", line 1957, in _mssql.connect File "src\_mssql.pyx", line 676, in _mssql…

FCENet学习笔记

论文: Fourier Contour Embedding for Arbitrary-Shaped Text Detection Yiqin Zhu and Jianyong Chen and Lingyu Liang and Zhanghui Kuang and Lianwen Jin and Wayne Zhang CVPR, 2021 1 动机 2021年金连文团队提出了一个FCENet,方法比较新颖&…

10a大电流稳压芯片_IC芯片大小的完整10A DC/DC电源

引言对于数字系统设计师来说,DC/DC电源的定义和设计常常是最后一个设计步骤。设计师必须在DC/DC稳压器电路的设计、布局和调试上花费宝贵的时间。确定合适的DC/DC控制器IC、MOSFET、电感器、电容器、电阻器和二极管只是所面临的诸多挑战的一部分。电源的布局、元件选…