安全多方计算之六:秘密共享
Posted 机器学习Zero
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了安全多方计算之六:秘密共享相关的知识,希望对你有一定的参考价值。
秘密共享
1. 秘密共享简介
秘密共享通过将秘密以适当的方式拆分,拆分后的每一个份额由不同的参与者管理,单个参与者无法恢复秘密信息,只有若干个参与者一同协作才能恢复秘密消息。
秘密共享定义如下:秘密持有者
S
S
S需要将原始秘密
m
m
m在参与者集合中
P
1
,
P
2
,
.
.
.
,
P
n
P_1,P_2,...,P_n
P1,P2,...,Pn分享,
S
S
S分发给
P
1
P_1
P1子秘密
m
p
i
m_p_i
mpi,使得只有特定参与者的集合才能够从他们的子秘密中恢复秘密
m
m
m,而其他参与者不能得到秘密
m
m
m的任何信息。
能够计算出秘密 m m m的参与者集合 P P P的一个子集 A ⊆ P A \\subseteq P A⊆P,称为一个授权子集。令 Γ \\Gamma Γ为所有授权子集构成的集合,则称 Γ \\Gamma Γ访问结构。
秘密共享方案一般描述如下:将共享的秘密 m m m分割成 n n n个子秘密,并将其分发至 n n n个参与者,使得授权子集 Γ \\Gamma Γ中的参与者可共同恢出复秘密 m m m,而非授权子集中的参与者无法得到关于秘密 m m m的任何信息。
2. Shamir秘密共享方案
Adi Shamir于1979年提出了基于拉格朗日(Lagrange)插值定理的 ( t , n ) (t,n) (t,n)-门限方案。该方案利用有限域上的次随机多项式来分享秘密,被分享的秘密为多项式的零次系数,恢复秘密至少需要t个多项式上的点。
方案描述如下:
设 G F ( q ) G F(q) GF(q) 是一个有限域, q q q为公开大素数, 共享的密钥 k ∈ G F ( q ) k \\in G F(q) k∈GF(q), 可信中心给 n ( n < q ) n(n< q) n(n<q)个共享者 P i ( 1 ≤ i ≤ n ) P_i(1 \\leq i \\leq n) Pi(1≤i≤n) 分配共享的过程如下:
(1) 秘密分发
可信中心随机选取多项式 f ( x ) = a t − 1 x t − 1 + … + a 2 x 2 + a 1 x + a 0 ∈ f(x)=a_t-1 x^t-1+\\ldots+a_2 x^2+a_1 x+a_0 \\in f(x)=at−1xt−1+…+a2x2+a1x+a0∈ G F ( q ) [ x ] G F(q)[x] GF(q)[x], 常数 a 0 = k a_0=k a0=k 为要分享的秘密。
可信中心在 G F ( q ) G F(q) GF(q) 中选择 n n n 个非零的互不相同的 元素 x 1 , x 2 , … , x n x_1, x_2, \\ldots, x_n x1,x2,…,xn, 计算 y i = f ( x i ) , 1 ≤ i ≤ n y_i=f\\left(x_i\\right), 1 \\leq i \\leq n yi=f(xi),1≤i≤n, 将子密钥 ( x i , y i ) \\left(x_i, y_i\\right) (xi,yi) 分配给共享者 P i ( x i P_i\\left(x_i\\right. Pi(xi 是公开的, y i y_i yi 为 P i P_i Pi 的秘密共享)。
(2) 秘密重构
给定 t t t 个共享 y i s ( 1 ≤ s ≤ t ) y_i_s(1 \\leq s \\leq t) yis(1≤s≤t), 从Lagrange多项式重构的
f ( x ) = ∑ s = 1 t y i s ∏ j = 1 , j ≠ s t x − x j x i s − x i j , k = a 0 = f ( 0 ) = ∑ s = 1 t y i s ∏ j = 1 , j ≠ s t − x j x i s − x i j = ∑ s = 1 t b s y i s , \\beginaligned & f(x)=\\sum_s=1^t y_i_s \\prod_j=1, j \\neq s^t \\fracx-x_jx_i_s-x_i_j, \\\\ & k=a_0=f(0)=\\sum_s=1^t y_i_s \\prod_j=1, j \\neq s^t \\frac-x_jx_i_s-x_i_j=\\sum_s=1^t b_s y_i_s, \\endaligned f(x)=s=1∑tyisj=1,j=s∏txis−xijx−xj,k=a0=f(0)=s=1∑tyisj=1,j=s∏txis−xi区块链BaaS云服务(14)华大BGI区块链“安全多方计算“