Advanced Tools from Modern Cryptography Lecture 3 Secret-Sharing - - PowerPoint PPT Presentation

advanced tools from modern cryptography
SMART_READER_LITE
LIVE PREVIEW

Advanced Tools from Modern Cryptography Lecture 3 Secret-Sharing - - PowerPoint PPT Presentation

Advanced Tools from Modern Cryptography Lecture 3 Secret-Sharing (ctd.) Secret-Sharing Last time (n,t) secret-sharing (n,n) via additive secret-sharing Shamir secret-sharing for general (n,t) Shamir secret-sharing is a linear


slide-1
SLIDE 1

Advanced Tools from Modern Cryptography

Lecture 3 Secret-Sharing (ctd.)

slide-2
SLIDE 2

Secret-Sharing

Last time (n,t) secret-sharing (n,n) via additive secret-sharing Shamir secret-sharing for general (n,t) Shamir secret-sharing is a linear secret-sharing scheme

slide-3
SLIDE 3

Linear Secret-Sharing

RT RT W Reconstruction vector RT with support in T, s.t. RT⋅W = [1 0 … 0] Randomness used by the sharing algorithm

M

r s Each share is a set of coordinates

Linear Secret-Sharing over a field: message and shares are field elements Reconstruction by a set T ⊆ [n] : solve for M WT [ M r ] = sT

slide-4
SLIDE 4

Linear Secret-Sharing: Computing on Shares

Suppose two secrets m1 and m2 shared using the same secret-sharing scheme Then for any p,q ∈ F , shares of p⋅m1 + q⋅m2 can be computed locally by each party i as σi = p⋅σ1i + q⋅σ2i

W m1 c11

c12 : c1,u

= m2 c21

c22 : c2,u

p q

:

σ1n σ1

1 :

σ2n σ2

1

p q

slide-5
SLIDE 5

Linear Secret-Sharing: Computing on Shares

More generally, can compute shares of any linear transformation

W m1 c11

c12 : c1,u

= m2 c21

c22 : c2,u

mv cv1

cv2 : cv,u

Q Q

:

σ1n σ1

1 :

σvn σv1

:

σ2n σ2

1

Each row computed locally by a party

slide-6
SLIDE 6

Switching Schemes

Can move from any linear secret-sharing scheme W to any other linear secret-sharing scheme Z “securely” Given shares (w1, …, wn) ← W .Share(m) Share each wi using scheme Z: (σi1,…,σin)← Z.Share(wi) Locally each party j reconstructs using scheme W: zj ← W .Recon (σ1j,…,σnj)

W

m

c

1

c

2 :

c

t

  • 1

=

:

wn w1 R w1

:

wn = m

slide-7
SLIDE 7

Switching Schemes

Can move from any linear secret-sharing scheme W to any other linear secret-sharing scheme Z “securely” Given shares (w1, …, wn) ← W .Share(m) Share each wi using scheme Z: (σi1,…,σin)← Z.Share(wi) Locally each party j reconstructs using scheme W: zj ← W .Recon (σ1j,…,σnj)

R w1

:

wn = m

… :

σvn σv1 Z w1 c11

c12 … : c1,u

= w2 c21

c22 : c2,u

wn cv1

cv2 : cv,u

Party i picks ith column

:

σ1n σ11

:

σ2n σ21

slide-8
SLIDE 8

R

Switching Schemes

Can move from any linear secret-sharing scheme W to any other linear secret-sharing scheme Z “securely” Given shares (w1, …, wn) ← W .Share(m) Share each wi using scheme Z: (σi1,…,σin)← Z.Share(wi) Locally each party j reconstructs using scheme W: zj ← W .Recon (σ1j,…,σnj)

R w1

:

wn = m

… :

σvn σv1 Z w1 c11

c12 … : c1,u

= w2 c21

c22 : c2,u

wn cv1

cv2 : cv,u :

σ1n σ11

:

σ2n σ21 Party j computes jth row R =

:

zn z1

m

r1 r2

:

ru’

slide-9
SLIDE 9

Switching Schemes

Can move from any linear secret-sharing scheme W to any other linear secret-sharing scheme Z “securely” Given shares (w1, …, wn) ← W .Share(m) Share each wi using scheme Z: (σi1,…,σin)← Z.Share(wi) Locally each party j reconstructs using scheme W: zj ← W .Recon (σ1j,…,σnj) Note that if a set of parties T⊆[n] is allowed to learn the secret by either W or Z, then T learns m from either the shares it started with

  • r the ones it ended up with

Claim: If T⊆[n] is not allowed to learn the secret by both W and Z, then T learns nothing about m from this process Exercise

slide-10
SLIDE 10

More General Access Structures

Idea: For arbitrary monotonic access structure A, there is a “basis” B of minimal sets in A. For each S in B generate an (|S|,|S|) sharing, and distribute them to the members of S. Works, but very “inefficient” How big is B? (Say when A is a threshold access structure) Total share complexity = ∑S∈B |S| field elements. (Compare with Shamir’ s scheme: n field elements in all.) More efficient schemes known for large classes of access structures

|B| =( n t) t⋅( n t)

slide-11
SLIDE 11

More General Access Structures

A simple generalization of threshold access structures A threshold tree to specify the access structure Can realize by recursively threshold secret-sharing the shares Note: linear secret-sharing

(2,3) (2,3) (1,3) (2,2) Msg Shares Shares

  • f shares

Fact: Access structures that admit linear secret-sharing are those which can be specified using “monotone span programs”

slide-12
SLIDE 12

Efficiency

Main measure: size of the shares (say, total of all shares) Shamir’ s: each share is as as big as the secret (a single field element) Naïve scheme for arbitrary monotonic access structure: if a party is in N sets in B, N basic shares N can be exponential in n (as B can have exponentially many sets) Share size must be at least as big as the secret: “last share” in a minimal authorized set should contain all the information about the secret Ideal: if all shares are only this big (e.g. Shamir’ s scheme) Not all access structures have ideal schemes Non-linear schemes can be more efficient than linear schemes

slide-13
SLIDE 13

A More General Formulation

Access structure consists of a monotonically “increasing” family A (allowed to learn), and a monotonically “decreasing” family F (forbidden from learning), with A ∩ F = Ø T∈A ⇒ ∀S⊇T, S∈A. T∈F ⇒ ∀S⊆T, S∈F. For T ∉ A ∪ F, no requirements of secrecy or learning the message E.g., Ramp secret-sharing scheme: A = { S ⊆ [n] | |S| ≥ t } and F = { S ⊆ [n] | |S| ≤ s }, where s < t When s = t-1, a threshold secret-sharing scheme

slide-14
SLIDE 14

Packed Secret-Sharing

RT RT W Reconstruction matrix RT with support in columns T, s.t. RT⋅W = A Random, conditioned

  • n Ac = m

c s Each share is a set of coordinates A

m

=

Shamir’ s scheme can be generalized to a ramp scheme, such that longer secrets can be shared with the same share size mj = f(zj) and si = f(ai) where {z1,…,zk} ∩ {a1,…,an} = Ø and f has degree t-1 (t being the reconstruction threshold) Access structure: A = { S : |S| ≥ t } and F = { S : |S| ≤ t-k } T∈A if A spanned by WT, and T∈F if every row of A independent of WT